Embeddings vs. Taxonomies for Skills Matching

Overview

Two approaches to connecting skills with opportunities: vector similarity search and structured taxonomy traversal. Each captures different aspects of “relatedness.”

Embedding-Based Matching

How it works: Encode skills and job requirements as vectors. Match based on cosine similarity in embedding space.

Strengths:

  • Handles synonyms and paraphrases naturally (“project management” ≈ “managing projects”)
  • Requires no manual ontology construction
  • Adapts to new terminology through retraining
  • Captures semantic similarity even across different phrasing

Weaknesses:

  • Can’t distinguish types of relationships (prerequisite vs. adjacent vs. broader)
  • Similarity isn’t transitivity (A similar to B, B similar to C doesn’t mean A similar to C in meaningful ways)
  • Struggles with contextual disambiguation without additional signals
  • Black box, hard to explain why two skills matched

Taxonomy-Based Matching

How it works: Navigate explicit hierarchical and associative relationships between classified concepts.

Strengths:

  • Relationships are typed and explicit (broader, narrower, related, required-for)
  • Supports reasoning about skill portability through reusability levels
  • Enables path-based queries (“what skills adjacent to X are required for occupation Y?“)
  • Human-interpretable structure

Weaknesses:

  • Coverage limited to what’s been classified
  • Maintenance-intensive as domain evolves
  • Brittle to terminology variation (“project management” might not find “PM skills”)
  • Requires upfront ontology investment

Key Differences

DimensionEmbeddingsTaxonomies
Relationship typesImplicit similarityExplicit typed relations
CoverageAnything encodableOnly classified concepts
MaintenanceRetrainingManual curation
ExplainabilityLowHigh
Handling new termsNaturalRequires addition

When Each Applies

Use embeddings when: You need fuzzy matching, have diverse/messy input data, can’t afford taxonomy maintenance, or need to bootstrap quickly.

Use taxonomies when: Relationship types matter, explainability is required, skill portability needs explicit modeling, or you’re integrating with systems that expect structured data.

Use both when: You need the coverage and flexibility of embeddings plus the precision and explainability of taxonomies. ESCO demonstrates this hybrid approach.

Related: 07-molecule—vectors-vs-graphs