Skip to content

TheJoseph-Dev/LLGraph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Language Learning Graph

What is the fastest way to learn a set of languages?

This question came up with some queries like:

  • What is the most optimal path to become a polyglot?
  • How much can learning one language ease another?

All of these questions were really familiar to what I found in graph problems, so I decided to model as one!

With this in mind, I created a directed weighted graph with data based on how similar the languages are linguistically and introduced asymmetries to account for the differences in complexity of a given source language to another.

The weight aims to represent a normalized cost of "hardness" to learn from language U to V. For the queries, well, as far as I searched, they're NP-Hard! (at least for this graph) Which was a great opportunity to apply some Dynamic Programming.

For the first one, I modeled it as a steiner path, where you're given a source language, an end language, and S amount of intermediate nodes that would minimize the total cost.

But not every this is a path, sometimes you don't want to learn sequentially, so I also coded one for obtaining the minimum spanning arborescence with fixed S amount of nodes, which gives more freedom to minimize the global cost.

So, because these queries optimize a multi-objective function, it was possible to plot the pareto frontier for some starting languages, and it's very interesting to see the marginal cost it yields as well.

It turns out that this problem could also be generalized to a skill acquisition problem, and language acquisition is an instance of it. It was a really fun experiment overall.

Results

Graph Subset

Pareto Frontiers

Marginal Costs

Portuguese Arborescence

Next Steps

  • Formalize the mathematical choices made
  • Improve data quality and reference
  • Generalize for other skills acquisition problems
  • Include new queries or features

About

Skill/Language Learning Graph framework to resolve combinatorial optimization queries

Topics

Resources

Stars

Watchers

Forks