主要内容

转变

将文档转换为低维空间

描述

实例

数据核=变换(Lsamdl.,文件)将文档转换为潜在语义分析(LSA)模型的语义空间Lsamdl..

数据核=变换(Lsamdl.,纸袋)转换由单词袋或n-grams袋模型表示的文档纸袋进入LSA模型的语义空间Lsamdl..

数据核=变换(Lsamdl.,计数)将单词矩阵表示的文档转换为LSA模型的语义空间Lsamdl..

实例

数据核=变换(ldamdl,文件)将文档转换为LDA模型的潜在Dirichlet分配(LDA)主题概率空间ldamdl.行的行数据核是文档的主题混合表示。

数据核=变换(ldamdl,纸袋)转换由单词袋或n-grams袋模型表示的文档纸袋进入LDA模型的LDA主题概率空间ldamdl.

实例

数据核=变换(ldamdl,计数)将单词矩阵表示的文档转换为LDA模型的LDA主题概率空间ldamdl.

数据核=变换(___,名称,价值)使用一个或多个名称值对参数指定其他选项。如果输入模型是一个,则这些名称值对仅适用阿尔达莫代尔目的。

例子

全部收缩

加载示例数据。档案sonnetspreprocessed.txt.txt.包含莎士比亚十四行诗的预处理版本。该文件每行包含一首十四行诗,单词之间用空格分隔。从中提取文本sonnetspreprocessed.txt.txt.,以换行符将文本拆分为文档,然后标记文档。

文件名=“sonnetspreprocessed.txt”; str=提取文件文本(文件名);textData=split(str,换行符);文档=标记化文档(textData);

使用袋式模型使用巴格沃兹.

袋= bagofwords(文件)
BAG =具有属性的Bagofwords:Counts:[154x3092双]词汇:[“最公平”“生物”“欲望”......] Numwords:3092 NumFocuments:154

安装包含20个组件的LSA模型。

numcompnents = 20;mdl = fitlsa(袋子,numcompnents)
MDL = Lsamodel具有属性:NumComponents:20个组件重量:[2.7866E + 03 515.5889 443.6428 316.4191 ......] DocumentCores:[154x20 Double] Wordcores:[3092x20双]词汇:[“公平”“生物”“欲望”......] FeatureTrentryEngeNent:2

转变将前10个文档转换为LSA模型的语义空间。

dscores =变换(MDL,文档(1:10))
dscores =10×205.6059 -1.8559 0.9286 -0.7086 -0.4652 -0.8340 0.6751 0.0611 0.2268 1.9320 -0.7289 -1.0864 0.7131 -0.0571 -0.3401 0.0940 -0.4406 1.7507 -1.1534 0.1785 7.3069 -2.3578 1.8359 -2.3442 -1.5776 -2.0310 0.7948 1.3411 -1.1700 1.8839 0.0883 0.4734 -1.1244 0.67951.3585 -0.0247 0.3627 -0.5414 -0.0272 -0.0114 7.1056 -2.3508 -2.8837 -1.0688 -0.3462 -0.6962 0.0334 -0.0472 0.4916 0.6496 -1.1959 -1.0171 -0.4020 1.2953 -0.4583 0.5984 -0.3890 1.1780 0.6413 0.6575 8.6292 -3.0471 -0.8512 -0.4356 -0.30550.4671 -1.4219 -0.8454 -0.8270 0.4122 2.2082 -1.1770 1.7775 -2.2344 -2.7813 1.4979 0.7486 -2.0593 0.6376 1.0721 1.0434 1.7490 0.8703 -2.2315 -1.1221 0.2848 -2.0522 -0.6975 1.7191 -0.2852 0.8879 0.9950 -0.5555 0.8842 -0.0360 1.0050 0.4158 0.5061 0.9602 0.4672 6.8358-2.0806 -3.3798 -1.0452 -0.2075 2.0970 -0.4477 0.2080 0.9532 1.6203 0.6653 0.0036 1.0825 0.6396 -0.2154 -0.0794 0.7108 1.8007 -4.0326 -0.3872 2.3847 0.3923 -0.4323 -1.53​​40 0.4023 -1.0396 -1.0326 0.3776 0.2101 -1.0944 -0.7513 -0.2894 0.4303 0.1864 0.4922 0.4844 0.5191 -0.2378 0.9528 0.4817 3.7925 -0.3941 -4.4610 -0.4930 0.4651 0.3404 -0.5493 0.1470 0.5065 0.2566 0.3394 -1.1529 -0.0391 -0.8800 -0.4712 0.9672 0.5457 -0.3639 -0.3085 0.5637 4.6522 0.7188 -1.1787 -0.8996 0.3360 0.4531 -0.1935 0.3328  -0.8640 -1.6679 -0.8056 -2.1993 0.1808 0.0163 -0.9520 -0.8982 0.6603 3.6451 1.2412 1.9621 8.8218 -0.8168 -2.5101 1.1197 -0.8673 -1.2336 0.0768 0.1943 -0.7629 -0.1222 0.3786 1.1611 0.2326 0.3415 -0.3327 -0.3792 1.7554 0.2526 -2.1574 -0.0193

要重现本例中的结果,请设置rng.'默认'.

RNG('默认')

加载示例数据。档案sonnetspreprocessed.txt.txt.包含莎士比亚十四行诗的预处理版本。该文件每行包含一首十四行诗,单词之间用空格分隔。从中提取文本sonnetspreprocessed.txt.txt.,以换行符将文本拆分为文档,然后标记文档。

文件名=“sonnetspreprocessed.txt”; str=提取文件文本(文件名);textData=split(str,换行符);文档=标记化文档(textData);

使用袋式模型使用巴格沃兹.

袋= bagofwords(文件)
BAG =具有属性的Bagofwords:Counts:[154x3092双]词汇:[“最公平”“生物”“欲望”......] Numwords:3092 NumFocuments:154

适合具有五个主题的LDA模型。

numtopics = 5;mdl = fitlda(袋子,numtopics)
初始主题分配在0.102958秒内采样。=================================================================================================================================================================================================================================================================================================================================================================================================================================迭代|每次时间|相对|训练|主题|主题| | |迭代|变化|困惑|集中|集中| | | | | | | | | | | | | | |第1244周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周周;2 | 0.02 | 1.3254e-03 | 1.102e+03 | 1.250 | 0 | 3 | 0.01 | 2.9402e-05 | 1.102e+03 | 1.250 | 0 |=====================================================================================
mdl = ldamodel具有属性:numtopics:5个字复制:1个题复制:1.2500 CorpustopicProbability:[0.2000 0.2000 0.2000 0.2000 0.2000 0.2000 0.2000 0.2000] DocumentTopicProbability:[154x5双]主题页:[3092x5双]词汇:[“公平”“生物”主题订单:'初始合适概率'fitinfo:[1x1 struct]

转变将文档转换为主题概率的向量。您可以使用堆叠的条形图可视化这些混合物。查看前10个文件的主题混音。

主题模糊=变换(MDL,文档(1:10));图Barh(主题模拟,'堆积')XLIM([0 1])标题(“主题混音”)Xlabel(“话题概率”)ylabel(“文档”) 传奇(“话题 ”+字符串(1:numtopics),'地点','东北斗')

图中包含一个轴对象。标题为“混合”的轴对象包含5个bar类型的对象。这些对象表示主题1、主题2、主题3、主题4和主题5。

加载示例数据。sonnetscounts.mat包含一个字数的矩阵和莎士比亚Sonnet的预处理版的相应词汇表。

加载sonnetscounts.mat大小(计数)
ANS =.1×2154 3092

适合20个主题的LDA模型。要重现本例中的结果,请设置rng.'默认'.

RNG('默认')numTopics=20;mdl=fitlda(计数,numTopics)
初始主题作业在0.13535秒内采样。=================================================================================================================================================================================================================================================================================================================================================================================================================================迭代|每次时间|相对|训练|主题|主题| | |迭代|变化|困惑|集中|集中| | | | | | | | | | | | | | |第1244周周周よ124???124??124???124???124??124??124??124??124??124???124???124?124?124?124?1244周周周周第第四周周周第四周周第第四周周周第第四周周第第第四周周第第四周周第四周周第第四周周第四周第第四周周第第第第四周周第第第第第四周周第第第四周周第第第第第第二次次次第二周第四周周第四周周第四周第四周第四周第四周第四周第四周第四周第第四周第四周第四周第四周第四周第第四周第四周第四周第第四周第四周第四周第第第四周第第四周第第第第;2 | 0.04 | 4.7400e-03 | 7.778e+02 | 5.000 | 0.03 | 3.4597e-03 | 7.602e+02 | 5.000 | 4 | 0.03 | 3.4662e-03 | 7.430e+02 | 5 ||0.03 | 2.9259e-03 | 7.288e+02 | 5.000 | 0 | 6 | 0.03 | 6.4180e-05 | 7.291e+02 | 5.000 |=====================================================================================
MDL = Ldamodel具有属性:NumTopics:20个单词姓氏:1个主题兴奋:5次核心繁殖:5 CorpustopicProbability:[0.0500 0.0500 0.0500 0.0500 0.0500 0.0500 0.0500 ...] DocumentTopicProbability:[154x20双]主题​​点:[3092x20双]词汇:[“1”2“”3“”4“”5“......]主题订单:'初始合适概率'fitinfo:[1x1 struct]

转变将文档转换为主题概率的向量。

主题模糊=转换(MDL,Counts(1:10,:))
主题模糊=10×200.0167 0.0035 0.1645 0.0977 0.0433 0.0833 0.0987 0.0033 0.0299 0.0234 0.0033 0.0345 0.0235 0.0958 0.0667 0.0167 0.0300 0.0519 0.0833 0.0300 0.0711 0.0544 0.0116 0.0044 0.0033 0.0033 0.0431 0.0053 0.0145 0.0421 0.0971 0.0033 0.0040 0.1632 0.1784 0.0937 0.0683 0.0398 0.0954 0.0037 0.0293 0.0482 0.1078 0.0322 0.0036 0.0036 0.0464 0.0036 0.0064 0.06120.0036 0.0176 0.0036 0.0464 0.0906 0.1169 0.0888 0.1115 0.1180 0.0607 0.0055 0.0962 0.2403 0.0033 0.0296 0.1613 0.0164 0.0955 0.0163 0.0045 0.0172 0.0033 0.0415 0.0404 0.0342 0.0176 0.0417 0.0642 0.0033 0.0676 0.0341 0.0224 0.0341 0.0645 0.0948 0.0038 0.0189 0.1099 0.0187 0.0560 0.1045 0.0356 0.0668 0.1196 0.0038 0.0931 0.0493 0.0038 0.0038 0.06260.0445 0.0035 0.1167 0.0034 0.0446 0.0583 0.1268 0.0169 0.0034 0.1135 0.0903034 0.0047 0.0308 0.0900 0.0850 0.0308 0.0856 0.0308 0.0180 0.032 0.1213 0.0472 0.0348 0.0122 0.0041 0.0038 0.1605 0.0048 0.0465 0.0043 0.0465 0.0043 0.0465 0.0043 0.0465 0.0043 0.0465 0.0043 0.0465 0.0043 0.0465 0.0043 0.04650.0033 0.0299 0.0033 0.0690 0.1699 0.0695 0.0982 0.0033 0.0039 0.0620 0.0833 0.0040 0.0700 0.0033 0.1479 0.0033 0.0433 0.0412 0.0387 0.0555 0.0165 0.0166 0.0433 0.0033 0.0038 0.0048 0.0033 0.0473 0.0474 0.1290 0.1107 0.0089 0.0112 0.0167 0.1555 0.2423 0.0040 0.0362 0.0035 0.1117 0.0304 0.0034 0.1248 0.0439 0.0340 0.0168 0.0714 0.0034 0.0214 0.00560.0449 0.0438 0.0036 0.0290 0.1437 0.0980 0.0304

输入参数

全部收缩

输入LSA模型,指定为一个lsamodel.目的。

输入LDA模型,指定为阿尔达莫代尔目的。

输入文档,指定为令人生畏的鳕文数组,字符串数组或字符向量的单元格数组。如果文件是A.令人生畏的鳕文,然后它必须是列向量。如果文件是字符串数组或字符向量的单元格数组,那么它必须是单个文档的一行。

提示

为了确保函数不会丢弃有用的信息,必须首先使用用于预处理用于训练模型的文档的相同步骤预处理输入文档。

输入袋式或n-grams模型,指定为a巴格沃兹对象或A.巴戈夫克目的。如果纸袋是A.巴戈夫克对象,则该函数将每个n-gram视为一个单词。

字的频率计数,指定为非负整数矩阵。如果您指定“文件罪”成为“行”,然后是值计数(i,j)对应于J词汇的单词出现在第16号文件。否则,值计数(i,j)对应于词汇的单词出现在J文件。

名称值参数

指定可选的逗号分离对名称,价值论点。名称是参数名称和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen.

例子:'iterationlimit',200将迭代限制设置为200。

笔记

如果输入模型是一个,则这些名称值对仅适用阿尔达莫代尔目的。

单词计数矩阵中的文档方向指定为逗号分隔对“文件罪”以及下列其中一项:

  • “行”–输入是一个字数矩阵,其行对应于文档。

  • “专栏”- 输入是具有对应于文档的列的单词计数的转换矩阵。

如果将输入文档指定为单词计数矩阵,则此选项仅适用。

笔记

如果您定位了单词计数矩阵,以便文档对应列并指定“DocumentsIn”,“columns”,则您可能会体验到优化执行时间的显著减少。

最大迭代次数,指定为逗号分隔对,由'iterationlimit'和一个正整数。

例子:'iterationlimit',200

对日志似然相对容忍,指定为包括的逗号分隔对“对数可能性容差”和一个正标量。当达到这种公差时,优化终止。

例子:'loglikelihoodtolerance',0.001

输出参数

全部收缩

输出文档分数,作为分数向量的矩阵返回。

在R2017b中引入