For example “parent” and “parents” are aligned, they share letters in the same position, but “skew” and “askew” share no letters in the same position.
713 karma · joined September 3, 2024
For example “parent” and “parents” are aligned, they share letters in the same position, but “skew” and “askew” share no letters in the same position.
As you mention, being in academia is tough. Some people just can't compete, and then get lured into accepting offers like these. In a way, I think this is similar to how vulnerable government officials get bribed. It's not something you do unless you're rock bottom, and don't see anywhere else to go.
Besides that, for alphabetic languages, there exists almost no relation between form and meaning. I.e.: “ring” and “wing” differ by one letter but have no real common meaning. By picking the character or byte as your choice of representation, the model basically has to learn to distinguish ring and wing in context. This is a lot of work!
So, while working on the character or byte level saves you some embeddings and thus makes your model smaller, it puts all of the work of distinguishing similar sequences with divergent meanings on the model itself, which means you need a larger model.
By having subwords, a part of this distinguishing work already has been done by the vocabulary itself. As the article points out, this sometimes fails.
Your point about BM25 is very interesting. We can run some comparisons! Thanks
I don’t think it ever gained traction, probably because people aren’t interested in creating an actual theory of sentiment that matches the real world.
[1]: https://github.com/clips/pattern/wiki/pattern-en#sentiment
You are right, this can only be used to distill models for producing embeddings, although it's not restricted to encoder-only models. For example, you could use it on Llama, but you'd just get a bunch of embeddings out, not a model that can be used to do next-token prediction.