Deep learning for knot theory. Classification As far as I know, there is a classification of all prime knots with less than 16 crossings.
It seems that there is already a fast enough algorithm to distinguish a knot from an unknot.
So in principle there is a huge amount of data to implement a deep learning machine which will recognize (and distinguish) knots up to some very good accuracy.
Is it something that mathematicians have tried to do? Any references?
 A: I saw two articles today (12/2/21) that reminded me of this post.  I am mentioning them here to potentially help the OP:

*

*Learning knot invariants across dimensions by Jessica Craven, Mark Hughes, Vishnu Jejjala, Arjun Kar (on arXiv)

*DeepMind’s AI helps untangle the mathematics of knots, by Davide Castelvecchi (on nature.com).

A: Adding to Sean Lawton's answer, there was an arxiv posting yesterday by Davies-Juhász-Lackenby-Tomasev, The signature and cusp geometry of hyperbolic knots that describes a relation between the cusp geometry of a hyperbolic knot, its signature, and its hyperbolic volume. The authors describe how this was found via machine learning.
This is not exactly what the OP asked for (it doesn't speak specifically to classification) but in many ways seems like a more interesting use of technology to discover heretofore unseen relationships.
A: You may want to take a look at this article . The article is both entertaining and well written, and here are its core ideas:

*

*KNOTS AS WORDS IN A LANGUAGE
First  core idea is to leverage the representation of knots as phrases in a suitable language. This is the cool part of the article, and actually a good recap of the fundamentals of Knot Theory, so I shall say no further. Have fun!


*KNOT WORD EMBEDDING
There are many tools available for handling languages in deep learning. The key point is that one can learn how to embed words, phrases, documents  into a vector space, in such a way as to preserve its contextual meaning.
The first and most famous is word2vec, which is a shallow embedding. But now there is an entire artillery of nural tools which do the embedding at the appropriate level of sofistication, for instance BERT. This step is needed because, after all, deep learner can "eat" only tensors of numbers. Moreover, the embedding, if done right, reduces the dimensionality of the input, and third because the good embedding preserves some contextual information, which can then be leveraged by the downstream classifier

*

*CLASSIFYING KNOTS
At this point every knot is a low dim vector, and you want to classify it. As far as I understand, only basic classification is attempted, namely between knots that can be unknotted and the others (though I think this machinery can be expanded much further).
In the article a Reinforcement Learning paradigm which requires  creating a suitable set of examples of the two categories is  chosen for the binary classification task. My thought is that one should also explore Adversarial Neural Networks o the same purpose (basically one is the Unknotter and the other is the  Cheater, he sends knots that look like they are unknottable but they are not)
Don't know of any concrete implementation, but I would be surprised if something out of this paper is not to be found in github.
