Job Recommendations Using Neural Network Embeddings of Skills

April 6, 2021

LearnerShape is building the world’s first AI-driven, open source learning infrastructure, and our first open source project is lsgraph. Since the initial release of lsgraph in November, we have continued adding new features, received some excellent user feedback, and expanded the lsgraph documentation to address common questions.

Our latest release of lsgraph makes a major update to our job recommendation and workforce planning functions, and adds support for level predictions on learning resources (i.e. whether they are introductory or more advanced). This blog is about the first of these changes; we’ll write more about resource levels later.

Job Recommendations Using Neural Embeddings

Job recommendation functions were present in the initial release of lsgraph, but the latest changes overhaul those functions to provide significantly improved results and usefulness.

To understand the changes, some background is needed on LearnerShape’s approach to skills and objectives. Each individual has a profile of skills, and can aim to acquire additional skills which we call an objective (a skills profile for a job is one example of an objective, and our job recommendation functions work equally well for objectives that are something other than a job). Each skill in an individual’s profile or an objective has a competency level, which currently is either beginner, intermediate, advanced or expert (we expect to introduce more granular competency levels later).

The essence of our job recommendation functions is to compare individual skill profiles to objectives, to answer questions like:

In the original release of lsgraph, the job recommendation function was based upon identification of skills that are either missing from an individual’s skills profile or at a different competence level than that required for an objective. While this approach generated very useful results, it was based upon exact overlap of skills, ignoring the important practical considerations associated with interdependence between skills. For example, the skills you already know are an important factor determining how long it takes to learn a new skill.

The new release of lsgraph addresses this problem using neural network embeddings of skills, leveraging recent advances in natural language processing (NLP). Using a text representation of a skill, we embed the skill in a high-dimensional space and then calculate the distance to other skills mapped to the same high-dimensional space. These calculations support a model that translates the distances to the learning benefit that might be expected by knowing a skill.

Currently we use the Universal Sentence Encoder to generate 512-dimension embeddings, but other models could easily be added or substituted. Distances between skills are calculated as Euclidean distance in the embedding space, but we intend to consider other distance metrics in the future including cosine similarity. If you’re interested in learning more about the technical details, please check out our code or get in touch – we want to build a community around our open source projects, and we love talking about our work.

Job Recommendations, Workforce Planning and Other Applications

Our job recommendations algorithms can be used for tasks like assisting an individual to explore job options or assisting an organization to plan the training needed to build their future-ready workforce – and we hope that they will be useful for a wide variety of similar, different and unexpected applications. As explained in our recent blogs, the aim of LearnerShape is to provide a toolbox that allows organizations to develop a wide variety of educational applications.

A key reason that this flexibility is crucial is that reskilling decisions involve considerations that can be different for each organization and individual. For example, in their 2018 report Towards a Reskilling Revolution, the World Economic Forum and Boston Consulting Group raised the important distinction between viable job transitions and desirable job transitions. Whether a job transition is desirable is a very personal decision with many considerations, and finding desirable job transitions therefore is a challenging task best performed in partnership with the individual.

Our current job recommendation algorithms focus on identifying viable job transitions. We consider the viability of a job transition to depend on how quickly the skills required for the target job can be learned. The faster the skills of the target job can be learned, the more viable the transition is. Over time, we plan to incorporate features focused on job desirability into our algorithms.

More generally, our approach to job recommendation can be thought of as a bottom-up approach. Jobs are broken up into individual skills and the difficulty of a transition is the sum of the differences. An alternative, top-down, approach could be taken based upon public and other data on how often people move between jobs. Although each approach has advantages, we believe the bottom-up approach is the most flexible and can be used on different skills graphs and objectives tailored for the jobs within an organization. However, there is academic work taking the top-down approach being done at institutions like MIT and the Oxford Martin School, and we are incorporating such thinking into our work.

Please Try Out Our New Functions!

Like the rest of the lsgraph toolbox, the new job recommendation functionality is now available in lsgraph and can be freely downloaded and run. We hope you will try the latest changes to lsgraph, and we welcome suggestions and contributions.

Dr Jonathan Street
Head of Data Science, LearnerShape