fastTextWordEmbedding

Предварительно обученное встраивание слов fastText

Синтаксис

Описание

пример

emb = fastTextWordEmbedding возвращает 300-мерное предварительно обученное вложение слова для 1 миллиона английских слов.

Эта функция требует Text Analytics Toolbox™ Model для fastText English 16 млрд Token Word Embedding пакет поддержки. Если этот пакет поддержки не установлен, функция предоставляет ссылку для загрузки.

Примеры

свернуть все

Загрузите и установите модель Symbolic Math Toolbox для fastText English 16 млрд Token Word Embedding пакет поддержки.

Напечатать fastTextWordEmbedding в командной строке.

fastTextWordEmbedding

Если Symbolic Math Toolbox Модели для fastText English 16 миллиардов Лексем пакет поддержки Word Embedding не установлен, то функция предоставляет ссылку на необходимый пакет поддержки в Add-On Explorer. Чтобы установить пакет поддержки, щелкните ссылку и нажмите кнопку Install. Проверьте успешность установки путем ввода emb = fastTextWordEmbedding в командной строке.

emb = fastTextWordEmbedding
emb = 

  wordEmbedding with properties:

     Dimension: 300
    Vocabulary: [1×1000000 string]

Если установлен необходимый пакет поддержки, то функция возвращает wordEmbedding объект.

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

emb = fastTextWordEmbedding
emb = 
  wordEmbedding with properties:

     Dimension: 300
    Vocabulary: [1×1000000 string]

Сопоставьте слова «Италия», «Рим» и «Париж» с векторами, использующими 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™ Model для fastText English 16 млрд Token Word Embedding пакет поддержки. Если этот пакет поддержки не установлен, то функция предоставляет ссылку на загрузку.

emb = fastTextWordEmbedding;

Загрузите данные заводских отчетов и создайте tokenizedDocument массив.

filename = "factoryReports.csv";
data = readtable(filename,'TextType','string');
textData = data.Description;
documents = tokenizedDocument(textData);

Преобразуйте документы в последовательности векторов слов с помощью doc2sequence. The doc2sequence функция по умолчанию заполняет последовательности так, чтобы они имели одинаковую длину. При преобразовании больших наборов документов с помощью высокомерного вложения слов, заполнение может потребовать большого объема памяти. Чтобы предотвратить заполнение данных функцией, установите 'PaddingDirection' опция для 'none'. Кроме того, вы можете контролировать количество заполнения, используя 'Length' опция.

sequences = doc2sequence(emb,documents,'PaddingDirection','none');

Просмотрите размеры первых 10 последовательностей. Каждая последовательность является D-на-S матрицей, где D - размерность вложения, а S - количество векторов слов в последовательности.

sequences(1:10)
ans=10×1 cell array
    {300×10 single}
    {300×11 single}
    {300×11 single}
    {300×6  single}
    {300×5  single}
    {300×10 single}
    {300×8  single}
    {300×9  single}
    {300×7  single}
    {300×13 single}

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

свернуть все

Предварительно обученное встраивание слов, возвращается как wordEmbedding объект.

Введенный в R2018a