在进行文本挖掘时,面对的是未结构化的数据。这类数据没有明确的观察和变量(行和列),因此在进行任何分析之前,需要将这些数据转换为结构化数据集,然后才能应用常规的建模框架。将非结构化数据转换为结构化格式的额外步骤,可以通过词汇字典来实现。进行信息提取时,需要一个字典。对于情感分析,可以在网上轻松找到相应的字典,但对于一些特定的分析,需要创建自己的字典。
本系列文章旨在从基础水平出发,帮助那些可能从未接触过文本挖掘的人也能够进行文本挖掘。将通过一个商业案例来解释这个框架及其实际应用。本文将从整体上介绍进行非结构化文本挖掘所需的步骤,在后续文章中,将深入探讨构建字典和对整个文本进行评分等具体步骤。
假设是Metrro现金和携带店的所有者。Metrro与巴克莱银行合作推出了联名卡,并最近达成了共享交易数据的协议。巴克莱将共享所有在其信用卡上进行的零售商店交易数据,而Metrro将共享所有在其商店使用任何信用卡进行的交易。希望利用这些数据来追踪高价值客户除了在Metrro购物外,还在哪些地方购物。
为此,需要从巴克莱交易数据中的自由文本中提取信息。例如,一个带有自由文本“向Messy支付”的交易应该被标记为在零售商店“Messy”进行的交易。一旦有了零售商店的标签和Metrro高价值客户在这些商店的交易频率,就可以通过比较Metrro和其他零售商店的服务来分析客户流失的原因。
在这个问题中,需要的字典看起来是一个非常专业的字典。需要从交易自由文本中识别出所有的零售商店名称。这样的字典可用且可靠的概率非常低。因此,需要创建这样的字典,然后对整个数据集进行评分。
以下是可以遵循的框架来创建这个字典:
由于手动分析整个文本是不可能的任务,采取随机/分层抽样来构建字典。
需要清洗数据,以确保捕捉到文本的真实本质。例如,Maccy's、maccy和Maccy应该被视为一个词。同时,还需要移除英语字典中的停用词。
一旦有了干净的文本,提取最常出现的词汇。想象一下,如果没有进行清洗,会得到多么不完整的结果。手动识别频繁出现的词汇作为标识符。这将形成字典。
一旦有了最终的字典,现在是时候对整个数据集进行评分了。以下是可以遵循的框架来评分数据集:
这是为了确保在步骤3中创建的字典可以在整个数据集上工作。
使用字典,可以对每笔交易声明进行分类。