IP Library Granted Patent US 10,303,681
Granted Patent B2
US 10,303,681 · App. 15/600,444 · Granted May 28, 2019

Search query and job title proximity computation via word embedding

Inventors: Yongwoo Noh (Sunnyvale, CA); Dhruv Arya (Sunnyvale, CA); Ganesh Venkataraman (San Jose, CA); Aman Grover (Sunnyvale, CA)
Assignee: Microsoft Technology Licensing, LLC
G06F16/242G06F16/951G06F16/958G06N20/00G06Q10/1053G06Q50/01
View Patent ↗
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 10,303,681
App. No.
15/600,444
Granted
May 28, 2019
Kind
B2
Abstract

Various embodiments described herein provide for systems and methods for using a machine-learning model to rank job search results based on the similarity of the job title of each job search result and a job search query that produces the job search results. According to some embodiments, the machine-learning model comprises a word-embedding machine-learning model that maps a word to a vector.

Claims (55)

1. A method comprising:

executing, by a social networking server having a hardware processor, a job search query to generate a set of job search results;

generating, by the social networking server, a job search query vector based on a word-embedding machine-learning model and the job search query;

generating, by the social networking server, a set of job title vectors, corresponding to a set of job titles from the set of job search results, based on the word-embedding machine-learning model and the set of job titles, the set of job title vectors corresponding to the set of job search results;

generating, by the social networking server, a set of similarity coefficients, corresponding to the set of job title vectors, based on the job search query vector and the set of job title vectors, the set of similarity coefficients corresponding to the set of job search results; and

ranking, by the social networking server, the set of job search results based on the set of similarity coefficients.

2. The method of claim 1 , wherein the generating the job search query vector based on the word-embedding machine-learning model and the job search query comprises:

mapping, by the social networking server, the job search query to the job search query vector based on the word-embedding machine-learning model.

3. The method of claim 2 , wherein the mapping the job search query to the job search query vector based on the word-embedding machine-learning model comprises:

mapping, by the social networking server, each word in the job search query to a word vector based on the word-embedding machine-learning model to generate a set of word vectors; and

combining, by the social networking server, the set of word vectors to generate the job search query vector.

4. The method of claim 3 , wherein the combining the set of word vectors to generate the job search query vector comprises:

calculating, by the social networking server, an average of the set of word vectors to generate the job search query vector.

5. The method of claim 1 , wherein the generating the set of job title vectors corresponding to the set of job titles based on the word-embedding machine-learning model and the set of job titles comprises:

mapping, by the social networking server, a particular job title of each particular job search result, in the set of job search results, to a particular job title vector based on the word-embedding machine-learning model, thereby resulting in the set of job title vectors corresponding to the set of job search results.

6. The method of claim 5 , wherein the mapping the particular job title of each particular job search result to the particular job title vector based on the word-embedding machine-learning model comprises:

mapping, by the social networking server, each word in the particular job title to a word vector based on the word-embedding machine-learning model to generate a set of word vectors; and

combining, by the social networking server, the set of word vectors to generate the particular job title vector for the particular job title.

7. The method of claim 6 , wherein the combining the set of word vectors to generate the particular job title vector for the particular job title comprises:

calculating, by the social networking server, an average of the set of word vectors to generate the particular job title vector for the particular job title.

8. The method of claim 1 , wherein the generating the set of similarity coefficients, corresponding to the set of job title vectors, based on the job search query vector and the set of job title vectors comprises:

determining, by the social networking server, a similarity coefficient between the job search query and a particular job title of each particular job search result, in the set of job search results, based on the job search query vector and a specific job title vector, in the set of job title vectors, that corresponds to the particular job search result, thereby resulting in the set of similarity coefficients corresponding to the set of job title vectors.

9. The method of claim 1 , wherein the word-embedding machine-learning model is trained on a set of job search query-job search result application pairings, each pairing comprising a prior-submitted job search query and a particular job title of a job application associated with the prior-submitted job search query.

10. The method of claim 1 , wherein the generating the job search query vector based on the word-embedding machine-learning model and the job search query comprises:

generating, by the social networking server, a raw job search query based on one or more keywords included by the job search query; and

mapping, by the social networking server, the raw job search query to the job search query vector based on the word-embedding machine-learning model.

11. A system comprising:

a memory storing instructions; and

a hardware processor communicatively coupled to the memory and configured by the instructions to:

generate a job search query vector based on a word-embedding machine-learning model and a job search query;

generate a set of job title vectors, corresponding to a set of job titles from a set of job search results, based on the word-embedding machine-learning model and the set of job titles, the set of job title vectors corresponding to the set of job search results;

generate a set of similarity coefficients corresponding to the set of job title vectors based on the job search query vector and the set of job title vectors, the set of similarity coefficients corresponding to the set of job search results; and

rank the set of job search results based on the set of similarity coefficients.

12. The system of claim 11 , wherein to generate the job search query vector based on the word-embedding machine-learning model and the job search query, the hardware processor is configured by the instructions to:

map the job search query to the job search query vector based on the word-embedding machine-learning model.

13. The system of claim 12 , wherein to map the job search query to the job search query vector based on the word-embedding machine-learning model, the hardware processor is configured by the instructions to:

map each word in the job search query to a word vector based on the word-embedding machine-learning model to generate a set of word vectors; and

combine the set of word vectors to generate the job search query vector.

14. The system of claim 13 , wherein to combine the set of word vectors to generate the job search query vector, the hardware processor is configured by the instructions to:

calculate an average of the set of word vectors to generate the job search query vector.

15. The system of claim 11 , wherein to generate the set of job title vectors corresponding to the set of job titles based on the word-embedding machine-learning model and the set of job titles, the hardware processor is configured by the instructions to:

map a particular job title of each particular job search result, in the set of job search results, to a particular job title vector based on the word-embedding machine-learning model, thereby resulting in the set of job title vectors corresponding to the set of job search results.

16. The system of claim 15 , wherein to map the particular job title of each particular job search result to the particular job title vector based on the word-embedding machine-learning model, the hardware processor is configured by the instructions to:

map each word in the particular job title to a word vector based on the word-embedding machine-learning model to generate a set of word vectors; and

combine the set of word vectors to generate the particular job title vector for the particular job title.

17. The system of claim 16 , wherein to combine the set of word vectors to generate the particular job title vector for the particular job title, the hardware processor is configured by the instructions to:

calculate an average of the set of word vectors to generate the particular job title vector for the particular job title.

18. The system of claim 11 , wherein to generate the set of similarity coefficients, corresponding to the set of job title vectors, based on the job search query vector and the set of job title vectors, the hardware processor is configured by the instructions to:

determine a similarity coefficient between the job search query and a particular job title of each particular job search result, in the set of job search results, based on the job search query vector and a specific job title vector, in the set of job title vectors, that corresponds to the particular job search result, thereby resulting in the set of similarity coefficients corresponding to the set of job title vectors.

19. The system of claim 11 , wherein the word-embedding machine-learning model is trained on a set of job search query-job search result pairings, each pairing comprising a prior-submitted job search query and a particular job title of a job application associated with the prior-submitted job search query.

20. A non-transitory computer storage medium comprising instructions that, when executed by a hardware processor of a device, cause the device to perform operations comprising:

generating a job search query vector based on a word-embedding machine-learning model and a job search query;

generating a set of job title vectors corresponding to a set of job titles, from a set of job search results, based on the word-embedding machine-learning model and the set of job titles, the set of job titles corresponding to the set of job search results;

generating a set of similarity coefficients corresponding to the set of job title vectors based on the job search query vector and the set of job title vectors, the set of similarity coefficients corresponding to the set of job search results; and

ranking the set of job search results based on the set of similarity coefficients.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2017
From: LINKEDIN CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044779/0602 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 19, 2017
From: NOH, YONGWOO; ARYA, DHRUV; VENKATARAMAN, GANESH; GROVER, AMAN
To: LINKEDIN CORPORATION
Reel/Frame 042441/0541 →
Continuity (1)
Related Publication 20180336241A1 · Nov 22, 2018