vec2word

Сопоставьте вектор встраивания со словом

Описание

пример

words = vec2word(emb,M) возвращает самые близкие слова в векторы встраивания в строках M.

пример

[words,dist] = vec2word(emb,M) возвращает самые близкие слова в векторы встраивания в M, и возвращает расстояния dist из каждого к их исходным векторам.

пример

___ = vec2word(emb,M,k) возвращает главный k самые близкие слова.

пример

___ = vec2word(___,'Distance',distance) задает метрику расстояния.

Примеры

свернуть все

Загрузите предварительно обученное встраивание слова с помощью fastTextWordEmbedding. Эта функция требует Модели Text Analytics Toolbox™ для fastText английских 16 миллиардов Лексем пакет поддержки Word Embedding. Если этот пакет поддержки не установлен, то функция обеспечивает ссылку на загрузку.

emb = fastTextWordEmbedding
emb = 
  wordEmbedding with properties:

     Dimension: 300
    Vocabulary: [1×1000000 string]

Сопоставьте слова "Italy", "Рим" и "Париж" к векторам с помощью word2vec.

italy = word2vec(emb,"Italy");
rome = word2vec(emb,"Rome");
paris = word2vec(emb,"Paris");

Сопоставьте векторный italy - rome + paris к слову с помощью vec2word.

word = vec2word(emb,italy - rome + paris)
word = 
"France"

Найдите лучшие пять самых близких слов к вектору встраивания слова и их расстояниям.

Загрузите предварительно обученное встраивание слова с помощью fastTextWordEmbedding. Эта функция требует Модели Text Analytics Toolbox™ для fastText английских 16 миллиардов Лексем пакет поддержки Word Embedding. Если этот пакет поддержки не установлен, то функция обеспечивает ссылку на загрузку.

emb = fastTextWordEmbedding;

Сопоставьте слова "Italy", "Рим" и "Париж" к векторам с помощью word2vec.

italy = word2vec(emb,"Italy");
rome = word2vec(emb,"Rome");
paris = word2vec(emb,"Paris");

Сопоставьте векторный italy - rome + paris к слову с помощью vec2word. Найдите лучшие пять самых близких слов с помощью Евклидовой метрики расстояния.

k = 5;
M = italy - rome + paris;
[words,dist] = vec2word(emb,M,k,'Distance','euclidean');

Постройте слова и расстояния в столбчатой диаграмме.

figure;
bar(dist)
xticklabels(words)
xlabel("Word")
ylabel("Distance")
title("Distances to Vector")

Входные параметры

свернуть все

Введите встраивание слова, заданное как wordEmbedding объект.

Word, встраивающий векторы, заданные как матрица. Каждая строка M вектор встраивания слова. M должен иметь emb.Dimension столбцы.

Количество самых близких слов, чтобы возвратиться, заданный как положительное целое число.

Метрика расстояния, заданная как 'cosine' или 'euclidean'.

Выходные аргументы

свернуть все

Выведите слова, возвращенные как вектор строки.

Расстояние слов к их исходным векторам, возвращенным как вектор.

Введенный в R2017b