文件交换

图像缩略图

快速文本英语160亿令牌词嵌入的文本分析工具箱模型

预训练的英语单词嵌入模型,用于与文本的机器学习和深度学习

6下载

更新2021年3月10

这个插件提供了一个预先训练的词嵌入和句子分类模型使用FastText用于机器学习和深度学习算法。FastText是一个开源的库,它为文本分析提供了高效和可扩展的库。有关预先训练的词向量模型的更多信息,请参见:https://fasttext.cc/docs/en/english-vectors.html.

从操作系统中或从MATLAB中打开FastText.mlPkginStall文件将启动您拥有的发布的安装过程。
此MLPKGIGSTALL文件对于R2018A及更大的功能。
使用示例:
%加载训练的模型
emb = fasttextwordembeddings;

根据这个词嵌入,%找到最接近的10个最接近的单词“阻抗”
“阻抗”impedanceVec = word2vec (emb);
vec2word(emb,阻抗vec,10)

ANS =.

10×1字符串数组

“阻抗”
“阻抗”
“电容”
“阻抗”
“电阻”
“阻碍”
“电感”
“电压”
”的参数
“欧姆”

意见及评分(11.的)

Jon Cherrie.

@alexander - 可能为您工作的替代方案是从中下载'wiki-news-300d-1m.vec.zip'https://fasttext.cc/docs/en/english-vectors.html.然后使用readwordembeddings将该文件读入matlab。这两个命令应该等同:

>> emb = FastTextWordeMbeddings;
>> emb = readwordembeddings(“wiki-news-300d-1m.vec.zip”);

请注意,其他字向量可供选择https://fasttext.cc/docs/en/english-vectors.html.如果'Wiki-News-300d-1m'不符合您的要求。

亚历山大·迪劳德

安装期间的第三方资产未按何军提到的加载。按照错误时重新安装文本工具箱,在错误时通过链接和问题仍然存在此添加项。不确定是谁经过与支持@ mathworks联系,因为这似乎是与第三方资产连接有关的金宝app问题。道歉,如果我是误解......但是在没有其他建议的情况下,我将致力于支持@ mathworks。金宝appAlex Droud博士

@jiajun,请联系support@mathw金宝apporks.com。他们会愉快地帮助您,这个评论部分并不是一个真正的来回和寻找问题的原因。

@Peter:如果你看看Mikolov论文主题的细节,你会发现他们著名的“王”——“男人”+“女人”≈“女王”的结果而不是仅仅看最接近的词,但只有禁止某些答案返回后,包括三个字从输入。如果您以同样的方式编写代码,它将返回“皇后”,但禁用的词更复杂,需要大量微调,并很容易导致程序引入向量数据本身甚至没有的偏差。(比如著名的问题“男人是医生,女人是x。”)

有关此事,请退房https://arxiv.org/abs/1905.09866

嘉君威

为什么我无法安装此页面?

Peter Krammer.

我觉得有些事情是错误的。看看许多科学论文中最常见的例子(“王” - “男人”+“女人” - >“女王”)。

manvec = word2vec(emb,“man”);
WomenVec = Word2Vec(emb,“女人”);
Kingvec = Word2Vec(emb,“King”);

答案= kingVec - manVec + womanVec;
答案:1 = 5
(vecnorm ((word2vec (emb res1) -回答)“)”

五个最接近的单词是:
“王”
“女王”
“君主”
“国王”
“公主”
距离答案的距离:
1.1425352
1.5177922
1.7698069.
1.7606366
1.7804255

对我来说,这是惊喜(那个王是第一个,女王是第二个)。我想,这是问题。你建议了什么?你确定矢量长度300足够吗?
或者,我做了不正确的事情吗?谢谢你。

ps:我测试了不同形式的单词“man”,“man”,“man”,平均0.5 * (word2vec(“man”)+ word2vec(“man”))…但第一个结果是永远不会成为女王。

@Peter,
要将单词添加到嵌入词汇表中,请按照以下步骤在读入后创建一个新的嵌入对象:
>> emb = FastTextEnglishEmbeddings();
>> vocab = emb.Vocabulary;
>> Mat = Word2vec(emb,covab);
>> newvocab = [词汇“样品1”“样品2”];
>> newmat = [mat;Randn(2,300)];
>> newemb = wordembeddings(newvocab,newmat);

彼得渴望

是否有可能向普里雷雷丁词汇添加额外的单词?如果是这样,这是怎么做的?

成都陆

MATLAB版本兼容性
创建R2018a
兼容R2018A至R2021A
平台兼容性
窗户 苹果系统 Linux.

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!