IP Library Patent Application 14688579
Patent Application
App. No. 14/688,579

AGGREGATING AND TRANSFORMING USER ACTIONS INTO SOCIAL SIGNAL FEATURES FOR A JOB RECOMMENDATION ENGINE

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/688,579
Abstract

A system stores member and job posting pairs in a database, which indicate that a job has been presented to a member, that the member has viewed the job posting, and that the member has applied for the job. The system extracts member attributes from a member profile and job attributes from a job posting file, and creates attribute pairs from the extracted member attributes and the extracted job attributes. The system creates an attribute tracking table, and for each job attribute in the attribute tracking table, create ratios relating to jobs that have been shown to members, jobs that members have viewed, and jobs for which members have applied. The system also determines trends between particular member attributes and particular job attributes. The ratios and trends are provided to a job recommendation engine that uses them in determining jobs to recommend to members.

Claims (70)

1 . A social networking system comprising:

a computer processor configured to:

store member and job posting pairs in a database, each member and job posting pair comprising a vector, each vector indicating that a job posting has been presented to a member, indicating that the member has either viewed or not viewed the job posting, and indicating that the member has either applied for or not applied for the job posting;

for each member and job posting pair, extract one or more member attributes from a corresponding member profile and extract one or more job attributes from a corresponding job posting file;

create a plurality of attribute pairs from the extracted member attributes and the extracted job attributes, each attribute pair comprising the vector of a corresponding job posting pair;

using the plurality of attribute pairs, create a job attribute tracking table by summing vectors associated with each particular job attribute, thereby generating for each particular job attribute a count of job postings that include the particular job attribute and that have been presented to members, a count of members who have viewed job postings that include the particular job attribute, and a count of members who have applied for job postings that include the particular job attribute;

for each particular job attribute in the job attribute tracking table,

create a first ratio of the count of members who have applied for job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been presented to members;

create a second ratio of the count of members who have applied for job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been viewed by members; and

create a third ratio of the count of members who have viewed job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been presented to members;

using the plurality of attribute pairs, determine a count of each particular member attribute and job attribute pair, thereby indicating a trend between the particular member attribute and the particular job attribute;

provide one or more of the first ratio, the second ratio, and the third ratio to a job recommendation engine such that the job recommendation engine recommends one or more job postings as a function of one or more of the first ratio, the second ratio, and the third ratio; and

provide the trend between the particular member attribute and the particular job attribute to the job recommendation engine such that the job recommendation engine recommends one or more job postings as a function of the trend between the particular member attribute and the particular job attribute.

2 . The social networking system of claim 1 , wherein the computer processor is configured to create the job attribute tracking table by summing vectors associated with two or more particular job attributes, thereby generating for the two or more particular job attributes a count of job postings that include the two or more particular job attributes that have been presented to members, a count of members who have viewed job postings that include the two or more particular job attributes, and a count of members who have applied for job postings that include the two or more particular job attributes.

3 . The social networking system of claim 1 , wherein the computer processor is configured to normalize one or more of the first ratio, the second ratio, the third ratio, and the count of each particular member attribute and job attribute pair.

4 . The social networking system of claim 3 , wherein the first ratio, the second ratio, the third ratio, and the count of each particular member attribute and job attribute pair are normalized as follows:

normalized_first_ratio=1+α*[log(β+total_applied)−log(γ+total_presented)];

normalized_second_ratio=1+α*[log(β+total_applied)−log(γ+total_viewed)];

normalized_third_ratio=1+α*[log(β+total_viewed)−log(γ+total_presented)]; and

normalized_count_memberjob_pair=1+α*[log(β+total_applied)−log(γ+total_shown)];

wherein α, β, and γ are empirically determined constant smoothing parameters;

wherein total_presented is the count of job postings that include the particular job attribute that have been presented to members;

wherein total_viewed is the count of members who have viewed job postings that include the particular job attribute; and

wherein total_applied is the count of members who have applied for job postings that include the particular attribute.

5 . The social networking system of claim 1 , wherein the computer processor is configured to use one or more of the first ratio, the second ratio, the third ratio, and the count of each particular member attribute and job attribute pair in a model training process in the job recommendation engine.

6 . The social networking system of claim 1 , wherein the computer processor is configured to analyze a member profile, to determine that the member has started a new job, and to treat the start of the new job by the member as a job apply event in the vector of a corresponding member and job posting pair.

7 . The social networking system of claim 1 , wherein the computer processor is configured to analyze a member profile, to determine that the member has started a new job, and to treat the start of the new job as a confirmed hire in the vector of a corresponding member and job posting pair.

8 . The social networking system of claim 1 , wherein the computer processor is configured to analyze a member profile, to determine that a member has started a new job, and to treat previous attributes of the member as virtual attributes and to treat current attributes of the member as virtual job attributes.

9 . The social networking system of claim 1 , wherein the computer processor is configured to extract the member attributes from one or more of a resume, a curriculum vitae, and an aggregated professional history.

10 . A computer readable medium comprising instructions that when executed by a processor execute a process comprising:

storing member and job posting pairs in a database, each member and job posting pair comprising a vector, each vector indicating that a job posting has been presented to a member, indicating that the member has either viewed or not viewed the job posting, and indicating that the member has either applied for or not applied for the job posting;

for each member and job posting pair, extracting one or more member attributes from a corresponding member profile and extracting one or more job attributes from a corresponding job posting file;

creating a plurality of attribute pairs from the extracted member attributes and the extracted job attributes, each attribute pair comprising the vector of a corresponding job posting pair;

using the plurality of attribute pairs, creating a job attribute tracking table by summing vectors associated with each particular job attribute, thereby generating for each particular job attribute a count of job postings that include the particular job attribute and that have been presented to members, a count of members who have viewed job postings that include the particular job attribute, and a count of members who have applied for job postings that include the particular job attribute;

for each particular job attribute in the job attribute tracking table,

creating a first ratio of the count of members who have applied for job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been presented to members;

creating a second ratio of the count of members who have applied for job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been viewed by members; and

creating a third ratio of the count of members who have viewed job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been presented to members;

using the plurality of attribute pairs, determining a count of each particular member attribute and job attribute pair, thereby indicating a trend between the particular member attribute and the particular job attribute;

providing one or more of the first ratio, the second ratio, and the third ratio to a job recommendation engine such that the job recommendation engine recommends one or more job postings as a function of one or more of the first ratio, the second ratio, and the third ratio; and

providing the trend between the particular member attribute and the particular job attribute to the job recommendation engine such that the job recommendation engine recommends one or more job postings as a function of the trend between the particular member attribute and the particular job attribute.

11 . The computer readable medium of claim 10 , comprising instructions for creating the job attribute tracking table by summing vectors associated with two or more particular job attributes, thereby generating for the two or more particular job attributes a count of job postings that include the two or more particular job attributes that have been presented to members, a count of members who have viewed job postings that include the two or more particular job attributes, and a count of members who have applied for job postings that include the two or more particular job attributes.

12 . The computer readable medium of claim 10 , comprising instructions for normalizing one or more of the first ratio, the second ratio, the third ratio, and the count of each particular member attribute and job attribute pair.

13 . The computer readable medium of claim 12 , wherein the first ratio, the second ratio, the third ratio, and the count of each particular member attribute and job attribute pair are normalized as follows:

normalized_first_ratio=1+α*[log(β+total_applied)−log(γ+total_presented)];

normalized_second_ratio=1+α*[log(β+total_applied)−log(γ+total_viewed)];

normalized_third_ratio=1+α*[log(β+total_viewed)−log(γ+total_presented)]; and

normalized_count_memberjob_pair=1+α*[log(β+total_applied)−log(γ+total_shown)];

wherein α, β, and γ are empirically determined constant smoothing parameters;

wherein total_presented is the count of job postings that include the particular job attribute that have been presented to members;

wherein total_viewed is the count of members who have viewed job postings that include the particular job attribute; and

wherein total_applied is the count of members who have applied for job postings that include the particular attribute.

14 . The computer readable medium of claim 10 , comprising instructions for using one or more of the first ratio, the second ratio, the third ratio, and the count of each particular member attribute and job attribute pair in a model training process in the job recommendation engine.

15 . The computer readable medium of claim 10 , comprising instructions for analyzing a member profile, for determining that the member has started a new job, and for treating the start of the new job by the member as a job apply event in the vector of a corresponding member and job posting pair.

16 . The computer readable medium of claim 10 , comprising instructions for analyzing a member profile, for determining that the member has started a new job, and for treating the start of the new job as a confirmed hire in the vector of a corresponding member and job posting pair.

17 . The computer readable medium of claim 1 , comprising instructions for analyzing a member profile, for determining that a member has started a new job, and for treating previous attributes of the member as virtual attributes and to treat current attributes of the member as virtual job attributes.

18 . The computer readable medium of claim 10 , comprising instructions for extracting the member attributes from one or more of a resume, a curriculum vitae, and an aggregated professional history.

19 . A process comprising:

storing member and job posting pairs in a database, each member and job posting pair comprising a vector, each vector indicating that a job posting has been presented to a member, indicating that the member has either viewed or not viewed the job posting, and indicating that the member has either applied for or not applied for the job posting;

for each member and job posting pair, extracting one or more member attributes from a corresponding member profile and extracting one or more job attributes from a corresponding job posting file;

creating a plurality of attribute pairs from the extracted member attributes and the extracted job attributes, each attribute pair comprising the vector of a corresponding job posting pair;

using the plurality of attribute pairs, creating a job attribute tracking table by summing vectors associated with each particular job attribute, thereby generating for each particular job attribute a count of job postings that include the particular job attribute and that have been presented to members, a count of members who have viewed job postings that include the particular job attribute, and a count of members who have applied for job postings that include the particular job attribute;

for each particular job attribute in the job attribute tracking table,

creating a first ratio of the count of members who have applied for job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been presented to members;

creating a second ratio of the count of members who have applied for job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been viewed by members; and

creating a third ratio of the count of members who have viewed job postings that include the particular job attribute to the count of job postings that include the particular job attribute and that have been presented to members;

using the plurality of attribute pairs, determining a count of each particular member attribute and job attribute pair, thereby indicating a trend between the particular member attribute and the particular job attribute;

providing one or more of the first ratio, the second ratio, and the third ratio to a job recommendation engine such that the job recommendation engine recommends one or more job postings as a function of one or more of the first ratio, the second ratio, and the third ratio; and

providing the trend between the particular member attribute and the particular job attribute to the job recommendation engine such that the job recommendation engine recommends one or more job postings as a function of the trend between the particular member attribute and the particular job attribute.

20 . The process of claim 19 , comprising creating the job attribute tracking table by summing vectors associated with two or more particular job attributes, thereby generating for the two or more particular job attributes a count of job postings that include the two or more particular job attributes that have been presented to members, a count of members who have viewed job postings that include the two or more particular job attributes, and a count of members who have applied for job postings that include the two or more particular job attributes.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2017
From: LINKEDIN CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044746/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2015
From: TANG, LIJUN; HARDTKE, DAVID
To: LINKEDIN CORPORATION
Reel/Frame 035469/0155 →