word2vec — Map words to embedding vectors.
word2vec(emb, words) returns one embedding-vector row per requested word from a wordEmbedding object.
Syntax
M = word2vec(emb, words)
M = word2vec(emb, words, 'IgnoreCase', true)Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
emb | Any | Yes | — | wordEmbedding object. |
words | Any | Yes | — | Words to map to vectors. |
NameValue | Any | Variadic | — | Name-value options: IgnoreCase. |
Returns
| Name | Type | Description |
|---|---|---|
M | NumericArray | Embedding vectors, one word per row. |
Errors
| Identifier | When | Message |
|---|---|---|
RunMat:word2vec:InvalidInput | Inputs do not match a supported word2vec form. | word2vec received invalid input |
How word2vec works
embmust be awordEmbeddingobject, normally created byreadWordEmbedding.wordsmay be a string scalar, string array, character vector, character matrix, or cell array of scalar text.- The output is an
n-by-emb.Dimensionnumeric matrix, wherenis the number of requested words after flattening the input text container. - Words missing from the vocabulary return
NaNrows. word2vec(___, 'IgnoreCase', true)performs case-insensitive vocabulary lookup and uses the first matching vocabulary entry.- Words and option names must be host text, and
IgnoreCasemust be logical. Native integer and resident numeric inputs are rejected rather than converted to text.
GPU memory and residency
word2vec reads host model metadata and returns a CPU double matrix. Numeric resident word inputs are rejected before provider access.
Examples
Look Up Word Vectors
emb = readWordEmbedding('vectors.vec');
M = word2vec(emb, ["king" "queen"])Expected output:
`M` has two rows and `emb.Dimension` columns.Ignore Case
M = word2vec(emb, "MATLAB", "IgnoreCase", true)Expected output:
`M` uses a case-insensitive vocabulary lookup.Using word2vec with coding agents
Open a RunMat example with live inputs, then ask the agent to explain how word2vec changes the result.
Run a small word2vec example, explain the result, then change one input and compare the output.
FAQ
What happens for missing words?⌄
RunMat returns a row of NaN values for each missing vocabulary word.
Does word2vec execute on the GPU?⌄
No. It is a host lookup into a text model object.
Related Strings functions
Text Analytics
addDependencyDetails · addEntityDetails · addLemmaDetails · addPartOfSpeechDetails · addSentenceDetails · addTypeDetails · bagOfNgrams · bagOfWords · cosineSimilarity · doc2sequence · encode · extractFileText · extractHTMLText · fastTextWordEmbedding · findElement · getAttribute · htmlTree · ind2word · isVocabularyWord · normalizeWords · readWordEmbedding · removeLongWords · removeShortWords · removeStopWords · removeWords · stopWords · tokenDetails · tokenizedDocument · trainWordEmbedding · vaderSentimentScores · vec2word · word2ind · wordEncoding · writeWordEmbedding
Transform
append · deblank · erase · eraseBetween · erasePunctuation · eraseURLs · extractAfter · extractBefore · extractBetween · insertAfter · insertBefore · join · lower · pad · replace · replaceBetween · reverse · split · splitlines · strcat · strip · strjoin · strjust · strrep · strsplit · strtrim · upper
Core
blanks · char · compose · convertCharsToStrings · convertContainedStringsToChars · convertStringsToChars · genvarname · int2str · isletter · isspace · isStringScalar · isstrprop · mat2str · native2unicode · newline · num2str · sprintf · sscanf · str2double · str2num · strcmp · strcmpi · string · string.empty · strings · strlength · strncmp · strncmpi · strtok · unicode2native
Search
contains · endsWith · matches · startsWith · strfind
Pattern
digitsPattern · lettersPattern · pattern · regexpPattern · textBoundary · wildcardPattern
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how word2vec is executed, line by line, in Rust.
- View the source for word2vec in Rust on GitHub
- Learn how the RunMat runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.
- RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
- Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.