文档帮助中心文档
潜在语义分析(LSA)模型
潜在语义分析(LSA)模型发现文档之间的关系和它们包含的单词。LSA模型是一种维度减少工具,可用于在高维词数上运行低维统计模型。如果模型适合使用N-r克模型,则软件将n-gram视为个别单词。
使用该模型创建LSA模型fitlsa函数。
fitlsa
全部展开
NumComponents
组件数,指定为非负整数。组件的数量是结果向量的维度。改变价值NumComponents更改生成的向量的长度,而不会影响初始值。你只能设置NumComponents小于或等于适合LSA模型的组件数。
例子:100.
FeatureStrengthExponent
指数缩放特征组件的强度domecesscores.和字节码属性,转变函数,指定为非负标量。LSA模型通过属性的奇异值(特性强度)扩展属性,指数为FeatureStrengthExponent / 2.
domecesscores.
字节码
转变
FeatureStrengthExponent / 2
例子:2.5
ComponentWeights
组件权重,指定为数字向量。LSA模型的组件权重是奇异值,平方。ComponentWeights是1 -NumComponents矢量在哪里j进入对应于组件的重量j.这些成分是按重量递减的顺序排列的。您可以使用权重来估计组件的重要性。
为每个输入文档的向量评分,指定为一个矩阵。LSA模型的文档分数是每个文档在低维空间中用于拟合LSA模型的分数向量。domecesscores.是一个D-经过-NumComponents矩阵D是用于适合LSA模型的文档数量。这(I,J)进入domecesscores.对应于组件的分数j在文档我.
每个组件的字分数,指定为矩阵。LSA模型的单词分数是LSA模型的每个组件中的每个单词的分数。字节码是一个V-经过-NumComponents矩阵V是单词数量词汇表.这(v, j)进入字节码对应于单词的分数v在组件j.
词汇表
模型中的唯一单词,指定为字符串向量。
数据类型:字符串
字符串
全部收缩
将潜在语义分析模型应用于文档集合。
加载示例数据。该文件sonnetspreprocessed.txt.txt.包含了经过预处理的莎士比亚十四行诗。该文件每行包含一首十四行诗,单词之间用空格分隔。将文本从sonnetspreprocessed.txt.txt.,将文本以换行符分割为文档,然后标记文档。
sonnetspreprocessed.txt.txt.
文件名=“sonnetspreprocessed.txt”;str = extractFileText(文件名);textData =分裂(str,换行符);文件= tokenizedDocument (textData);
使用袋式模型使用bagOfWords.
bagOfWords
袋= bagOfWords(文档)
单词:[" fairrest " "creatures" "desire"…NumWords: 3092 NumDocuments: 154
适合一个具有20个组件的LSA模型。
NumComponents = 20;mdl = fitlsa(袋子,num components)
mdl = lsammodel with properties: NumComponents: 20 ComponentWeights: [2.7866e+03 515.5889 443.6428 316.4191…词汇:[" fairmost " "creatures" "desire"…] FeatureStrengthExponent: 2
使用LSA模型将新文档转换为低维空间。
newDocuments = tokenizedDocument ([“名字有什么关系呢?”玫瑰不管叫什么名字都一样芳香。”“如果音乐是爱的食物,就会扮演。”]);dscores = transform(mdl,newdocuments)
dscores =2×20.0.1338 0.1623 0.1680 -0.0541 -0.2464 -0.0134 -0.2604 -0.0205 0.1127 0.0627 0.3311 -0.2327 0.1689 -0.2695 0.0228 0.1241 0.1198 0.2535 -0.0607 0.0305 0.2547 0.5576 -0.0095 0.5660 -0.0643 -0.1236 0.0082 0.0522 -0.0690 -0.0330 0.0385 0.0803 - 0.0384 -0.0005 0.1943 0.0207 0.0278 0.0001 -0.0469
从一些文本数据创建一个单词包模型。
str = [“我早餐喜欢吃火腿、鸡蛋和熏肉。”“我有时不吃早餐。”“我晚饭吃鸡蛋和火腿。”];文件= tokenizedDocument (str);袋= bagOfWords(文件);
适合两个组件的LSA模型。将功能强度指数设置为0.5。
numComponents = 2;指数= 0.5;mdl = fitlsa(袋、numComponents、...“FeatureStrengthExponent”指数)
MDL = Lsamodel具有属性:NumComponents:2个组件重量:[16.2268 4.0000] DocumentCores:[3x2 Double] Wordcores:[14x2 Double]词汇:[“我”“享受”“Ham”“,”......] FeatureTrengeponent:0.5000
计算使用文件分数向量之间的余弦距离pdist.查看矩阵中的距离D使用方形.D(i,j)表示文档之间的距离我和j.
pdist
D
方形
D(i,j)
我
j
dscores = mdl.DocumentScores;距离= pdist (dscores,的余弦);d =方形格式(距离)
d =3×30 0.6244 0.1489 0.6244 0 1.1670 0.1489 1.1670 0
通过绘制指南针图中的文档分数向量来可视化文档之间的相似性。
图罗盘(DScores(1,1),DScores(1,2),“红色”) 抓住在指南针(dscores (2, 1), dscores (2, 2),'绿色')指南针(dscores (3,1), dscores (3, 2),'蓝色') 抓住离开标题(“文件分数”) 传奇([“文档1”“文档2”“文档3”],'地点',“bestoutside”)
bagOfWords|fitlsa|转变|ldaModel|lsamodel.
ldaModel
lsamodel.
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系您当地的办公室