Да, это имеет смысл.
Вы можете думать о вложениях как о представлении ваших входных данных в другом пространстве.Иногда вы хотите уменьшить размерность, поэтому вложение имеет меньшую размерность, чем ваш ввод.В других случаях вы просто хотите, чтобы ваше вложение очень описывало ваши входные данные, чтобы ваша модель, скажем, нейронная сеть, могла легко отличить ее от всех других входных данных (это особенно полезно в задаче классификации).
Как видите, вложение - это просто вектор, который лучше описывает ваш ввод, чем сам ввод.В этом контексте мы обычно ссылаемся на вложения со словом features .
Но, может быть, то, что вы спрашиваете, немного другое.Вы хотите знать, может ли вложение выразить сходство между автомобилями.Теоретически да.Предположим, у вас есть следующие вложения:
Car A: [0 1]
Car B: [1 0]
Первый элемент встраивания - создатель.0
обозначает Тойоту, а 1
обозначает Ferrari.Второй элемент - модель.0
обозначает F-150, а 1
обозначает 458 Italia.Как вы можете вычислить сходство между этими двумя автомобилями?
Сходство косинусов По сути, вы вычисляете косинус угла между этими двумя векторами в пространстве вложения.Здесь вложения являются 2-мерными, поэтому мы находимся в плоскости.Более того, два вложения являются ортогональными, поэтому угол между ними равен 90 ° и косинусу 0. Таким образом, их сходство равно 0: они совсем не похожи!
Предположим, у вас есть:
Car A: [1 0]
Car B: [1 1]
В этом случае производитель тот же.Хотя модель отличается, вы можете ожидать, что эти две машины будут более похожими, чем две предыдущие.Если вы вычислите косинус угла между их вложениями, вы получите около 0,707, что больше 0. Эти две машины действительно больше похожи.
Конечно, это не так просто.Все зависит от того, как вы разрабатываете свою модель и как изучаются вложения, т.е. какие данные вы предоставляете в качестве входных данных для вашей системы.