计算机科学家长期以来一直受益于允许他们从各种文本文档中提取信息的方法。 他们的方法不仅可以统计文本中的术语和短语,还可以揭示结构并提供对文本内容的洞察力。 另一方面,大多数社会科学家—在调查、访谈记录等的评论字段中拥有大量文本数据的人——似乎并不依赖这些方法(那些学习语言或与计算机科学家合作的人是极少数例外)。
在这篇文章中,我鼓励社会科学家探索文本分析所能提供的可能性范围。 为此,我简要介绍了两种文本分析技术:潜在语义分析 (LSA) 和主题分析 (TA)。 很快就会很明显,具有多元统计背景的社会科学家将能够毫不费力地使用、应用和解释 LSA 和 TA(可能只需要这篇文章就可以让你开始运行!)我的解释依赖于两个统计社会科学中众所周知的技术:主成分分析(PCA)和因子分析(FA)。
主成分分析综述
PCA 是一种允许我们从数据中识别和提取最大变异性的不相关维度的方法。 这是通过数据相关矩阵的特征值分解完成的。 图 1 描述了特征值分解中涉及的步骤和随后的步骤,以帮助解释 PCA(注意该图被过度简化以方便本次审查)。
Figure 1. Depiction of steps involved in Principal Components Analysis.Figure 1. Depiction of steps involved in Principal Components Analysis.Figure 1. Depiction of steps involved in Principal Components Analysis.Figure 1. Depiction of steps involved in Principal Components Analysis.图1。 描述主成分分析中涉及的步骤。
相关矩阵表示多维空间中的“数据云”。 特征值分解有助于识别该云中相互垂直的主要维度,并产生两个关键信息:特征向量, 表示主要维度的方向,以及特征值,它标识每个维度的大小,并且是维度的方差。 如果只有几个维度捕获了数据中的大部分可变性(即前两个特征值相对于所有其他维度都很大),那么分析师可能会选择保留前两个特征向量和特征值以减少他们必须分析的变量数量分析。 所有特征向量都是单位长度的,但可以使用特征值提供的信息“调整大小”。 这些重新缩放的特征向量称为载荷。
加载向量的可变性等于其对应的特征值。 此外,加载系数是描述维度(主成分)与相应变量之间关联的相关系数。 因此,载荷对于理解主成分代表什么至关重要。 但是,加载矩阵可能具有难以辨别的模式,例如跨多个维度的中等大小的加载(参见图 1 中的加载矩阵)。 因此,分析人员可能会选择旋转加载矩阵,以努力改进对组件的解释。 大多数情况下,采用正交旋转(例如,Varimax),这往往会导致加载的简单模式(Thurstone 将其称为“简单结构”,1947 年)。 也就是说,给定组件的负载非常高,而所有其他组件的负载几乎为零。 旋转加载矩阵的简单结构(参见图 1)有助于清楚地识别每个主要组件代表什么。
主成分分析 == 潜在语义分析
现在您对 PCA 记忆犹新,好消息是潜在语义分析 (LSA) 只是在文本术语的相关矩阵上完成的 PCA(但不涉及任何旋转)。 换句话说,分析中的变量是指示术语在文本文档中出现的列。 这组变量称为文档术语矩阵(DTM;参见图 2),它的列数与文档中的术语数一样多,行数与文档数一样多。 如果我们想要二进制 DTM,每个单元格条目可以是 0 或 1,具体取决于给定术语是否在给定文档中。 频率 DTM 要求每个条目都是该术语在给定文档中出现的次数的计数。 还有其他构建 DTM 的方法;文献中的首选方法 (Ramos, 2003) 称为 TF-IDF(词频-逆文档频率),您可以在JMP点击一个按钮!
Figure 2. Sample Document Term Matrix (DTM) of three documents.Figure 2. Sample Document Term Matrix (DTM) of three documents.Figure 2. Sample Document Term Matrix (DTM) of three documents.Figure 2. Sample Document Term Matrix (DTM) of three documents.图 2。 三个文档的示例文档术语矩阵 (DTM)。
请注意图 2 中的第一个文档有“来自”一词,但该词并未出现在 DTM 中。 这是因为创建 DTM 有重要的预备步骤。 让我们看看接下来的那些!
设置用于分析的文本数据
文本分析从识别度量单位开始。 具体来说,您必须确定什么将构成“文档”。文档可以是句子、段落、文章或书籍,以及许多其他选择。 下一步涉及识别文档中的相关术语。 您可以通过过滤掉“停用词”(那些不太可能帮助揭示文本语料库中的结构的极其常见的词,例如“the”、“and”、“from”、“is”、“of”)来做到这一点,“ ETC。)。 此外,您可能会选择将相似的术语压缩为一个。 例如,图 2 中的“分析”和“分析”两列是多余的,可以合并为一列“分析”。这称为词干提取。 最后,并非文本中的所有单词都应该分开。 图 2 第一行中的“社会科学家”就是一个例子。 在创建 DTM 之前,您可以将这些词组合成一个术语(您可以对诸如“曾几何时”之类的短语执行相同的操作)。
上述所有步骤对于可靠分析都是至关重要的。 幸运的是,文本浏览器平台在 JMP 中,这些任务变得轻而易举! 在 Analyze > Text Explorer 菜单下,将包含文档的数据表中的列指定为文本列(参见图 3)。 您还可以在启动窗口中自定义词干提取选项。 启动 Text Explorer 后,您可以进一步选择要视为术语的短语。
Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).Figure 3. Text Explorer launch window (left) and initial report from launching Text Explorer (right).图 3。 文本资源管理器启动窗口(左)和启动文本资源管理器的初始报告(右)。
完成所有初步步骤后,您可以创建 DTM 并使用它执行 PCA。 但是,根据您的 DTM 有多大(而且它们往往非常大),如上所述的 PCA 可能需要很长时间才能运行并且需要大量内存。 幸运的是,JMP 使用奇异值分解代替特征值分解,使该分析非常高效! 在以后的帖子中,我将解释特征值分解和奇异值分解之间的等价性,但现在,您必须相信我,这两种方法都会产生相同的结果。
话题分析
另一种有价值的文本分析技术是主题分析 (TA)。 通过阐明 TA 只是具有加载矩阵的 Varimax 旋转的 PCA,这种技术也可以很容易地转化为社会科学家。 与LSA类似,TA是用奇异值分解代替特征值分解来进行的,以使其更有效。 由于载荷的旋转,TA 的结果可能比 LSA 的结果更容易解释。 主题将是文本数据可变性的主要维度。 负载允许您解释主题代表的内容。 此外,可以计算主题(或组件)分数并将其用于二次分析。
为了了解 TA 可以做什么,我对 231,657 个笑话* 的数据集进行了 TA。 为避免冒犯任何读者,我只展示了分析得出的三个主题的结果(图 4)。
Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.Figure 4. Select topics from Topic Analysis (TA) performed on a data table of 231,657 jokes.图 4。 从对包含 231,657 个笑话的数据表执行的主题分析 (TA) 中选择主题。
读者可能同意图 4 中每个主题所代表的笑话类型之间存在明显区别。 有关文本分析的更多引人注目的示例,请参阅这个帖子关于预测未来股票价格,或阅读最近使用社交媒体数据发表的文章(Kern 等人, 2016 年)。 或观看这个视频.
因子分析备注
在开头部分,我说过我会依赖社会科学家对 PCA 和 FA 的了解。 但到目前为止,我只讨论了 PCA。 如果您的培训与我的完全相似,您就会知道 PCA 和 FA 之间存在重要差异。 在以前的帖子,我描述了这些差异,但我也提到了一个关键的相似性:PCA 和 FA 的结果随着所考虑的数据矩阵大小的增加而变得越来越相似(如果你想复习 FA,我建议你阅读帖子). 事实上,在文本分析中,数据矩阵往往是非常大。 在里面示例文档术语矩阵上面,DTM 已经有 10 个变量! 这个笑话示例有一个包含 4,316 个变量的 DTM!)。 因此,LSA 和 TA 的主题或成分可以被认为是潜在变量的近似值,可以有效地用于解决无数的研究问题!
关闭…
很多时候,我们允许我们的统计工具包来确定我们研究的设计和分析(有时是无意的!)。 因此,我希望这篇文章为社会科学(和其他领域)中可以通过文本分析独特解决的新研究问题打开大门。
关键点
- 文本分析在社会科学中未得到充分利用,尽管它依赖于社会科学家众所周知的统计技术。
- 潜在语义分析等同于对文档术语矩阵进行的主成分分析。
- 文档术语矩阵的行数与文档数一样多,列数与文档中的术语数一样多。 单元格包含给定文档中术语的出现率。
- 主题分析等同于主成分分析,通过旋转成分载荷来帮助解释主题。 但请注意,某些聚类方法有时也被描述为主题分析。
- 由于文档术语矩阵往往非常大,社会科学家可以将主成分视为潜在变量或潜在主题的非常好的近似值。
关于文本分析还有很多话要说! 我建议从这个点播网络广播,它在描述更多细节方面做得很好。 你还可以看到我的帖子关于 JMP 中的 Text Explorer 平台,尤其是罗塞塔石碑部分,这阐明了 PCA 和 LSA/TA 之间的更多联系。
参考
- 克恩,毫升, 公园,G., 艾希施泰特,JC, 施瓦茨,哈, 树液,M., 史密斯,LK, & Ungar, LH (2016)。 从社交媒体语言中获得见解:方法论和挑战。 心理方法。 提前在线发布。 http://dx.doi.org/10.1037/met0000091
- Ramos, J.(2003 年 12 月)。 使用 tf-idf 确定文档查询中的单词相关性。 在第一届机器学习教学会议论文集(第 242 卷,第 133-142 页)。
- 瑟斯通,LL (1947 年)。 多因素分析. 芝加哥:芝加哥大学出版社,1947 年。
* 感谢 amoudgl 在此处免费提供此文件: https://github.com/amoudgl/short-jokes-dataset