12 ms·
This is genius: https://imgur.com/a/1aRZ3sI https://imgur.com/a/1aRZ3sI Normally this technique wouldn't be useful, because it's overfitting a specific trainin
by shawn 8y ago
This is genius: https://imgur.com/a/1aRZ3sI https://imgur.com/a/1aRZ3sI
Normally this technique wouldn't be useful, because it's overfitting a specific training set. (If you make space X as similar as possible to space Y, then this mapping from X to Y is only useful for X to Y – it can't generalize to other situations, which is often the goal of an ML model.)
But since the task is "Translate from English to Italian," and since all languages have similar embedding structures (Zipf mystery), overfitting is exactly what we want: we want, for any given English phrase, to find the closest-fitting mapping to a corresponding Italian phrase.
The more I learn about ML and data mining, the more I'm astounded by how clever many of the techniques are, and how much artistry is involved. You have to be clever to make a certain model perform well in a certain domain. If you want to make a stock trading bot, you can't randomly subdivide stock market data into e.g. 70% training data and 30% test data, because the data is ordered by time. You have to use the past 3 years of stock market data as a training set, and validate it against the subsequent 1 year of market data.
I really like ML because the techniques applicable for training a stock market bot seem unrelated to the algorithms for doing unsupervised machine translation, which differ from how to model credit fraud, which are no doubt different from how to build a dota 2 bot. :)
- LittlePeter 8y agoSplitting the time series data into training and test datasets by making a single cut is not some artistry or epiphany following years of research. It is common sense if you work in time series domain.