All projectsClassifying jobs from short descriptions

Research project

Classifying jobs from short descriptions

The questionHow can short, everyday descriptions of work be translated into standard occupation codes?

  • Text classification
  • Word2Vec
  • TensorFlow

ApproachI combined Word2Vec representations with five TensorFlow neural networks to rank 120 occupation groups from job titles and duties.

What I developed

A classifier that returns two ranked occupation codes for each description, with model scores and comparisons to human-assigned codes.

  1. 01 · InputJob title and duties

    Short descriptions in everyday language

  2. 02 · RepresentationWord2Vec

    A 256-value representation of each description

  3. 03 · ClassificationFive neural networks

    TensorFlow models rank 120 occupation groups

  4. 04 · OutputTwo suggested codes

    Ranked predictions and model scores for review

From survey text to ranked occupation codes

Learn from survey descriptions and occupation definitions.

I combined short job titles and descriptions from the Education Longitudinal Study (ELS) with Standard Occupational Classification (SOC) titles and definitions. The model predicts the human-assigned, three-digit occupation group from the survey text.

ELS survey response
Prompt 1
What is the job called?
Prompt 2
What are the main duties?

Brief everyday language, sometimes supplied by another household member.

SOC reference text
Input 1
Occupational title
Input 2
Formal definition

Standardized language written to distinguish occupations.

Why the survey descriptions vary

The respondent source changes across survey waves and missing-data conditions. A description may come from a parent, a young person describing a parent, or an imputed (filled-in) fallback. Standardized SOC title-and-definition text helped fit the Word2Vec vocabulary and also entered the training data as labeled examples for the corresponding SOC codes.

Five neural networks classify 120 occupation groups.

Each description became a 256-value vector by averaging its Word2Vec word embeddings. Each TensorFlow neural network used two dense hidden layers—512 and 256 units—with dropout and a 120-category output. I trained five networks and averaged their predicted probabilities to produce the final rankings.

Compare predictions with human-assigned codes.

I examined agreement with human-assigned codes, errors by occupation group, and prediction scores to identify descriptions that were difficult to classify.

Training and evaluation design

I held out 20% of the survey descriptions when training the classifiers. Word2Vec learned its vocabulary and embeddings from the full text corpus before that split, so the held-out descriptions could influence their representation. The evaluation compares model predictions with human-assigned occupation codes.

Occupation categories contain varied work.

ELS questionnaires collect short job titles and descriptions. O*NET combines surveys of people working in each occupation with occupational experts, analysts, job postings, and other sources to build standardized occupational information.

Martin-Caughey (2021) documents substantial variation in job titles and tasks within occupational categories.