当前位置: 首页 > 科技观察

详解文本挖掘:工具、任务、问题和解决方案

时间:2023-03-21 14:27:09 科技观察

【.com快译】今天,世界的每个角落都在无时无刻不在产生着海量的数据,而且其规模每年都在增长。这些丰富的数据为人们提供了企业竞争和管理资源的基础。我们通常需要通过各种自动化的选择和处理过程来实现对海量数据的挖掘和分类。文本挖掘的概念在业界经常被提及,其本质是:从给定文本中获取高质量信息的自动化过程。它与其他类型的数据分析的主要区别在于输入数据不以任何方式格式化。也就是说,我们不能简单地应用数学函数来描述数据。目前,文本分析、机器学习和大数据都在以各自的方式为不同的公司和企业带来业务增长点。在本文中,我们讨论了文本挖掘的挑战以及WaveAccess如何在其应用程序中使用该技术。1.基本文本挖掘工具通过以下步骤,文本挖掘系统将能够从文本语料库中提取关键知识,以确定给定文本是否与指定主题相关联,进而揭示其内容的细节。1.文档相关性(搜索与给定主题相关的文本)。其中,给定的topic可以是一些比较狭义的概念,例如:眼科手术的学术论文。2.命名实体。如果文档被认为是相关的,系统可能需要在其中找到一些特定的实体,例如学术名称或相关疾病的名称。3.文件类型。系统根据文档的内容标记文档。例如:对产品的评论可以分为正面评论或负面评论。4.实体链接。除了事实本身,系统能否准确找到文档中与事实相关的部分也很重要。例如:一种药物与其副作用之间的关系,或者一个人的名字与对其工作的负面评论之间的关系。2.典型的文本挖掘任务文本挖掘不仅帮助我们从大型非结构化数据管理项目中提取有用的知识,而且有助于提高相应的投资回报率。对于企业来说,这意味着他们可以通过自动剔除无关数据,从大数据中获得正确答案,而不是昂贵的人工处理。让我们探讨一些使用文本挖掘的示例。1.语义科学文献搜索在大量的科学出版物中,文本挖掘可以帮助我们找到相关的文章,从而节省时间和金钱。从法律上讲,如果发现产品有任何副作用,欧美制药公司有义务召回产品,并修改宣传单页和其他相关文件中的患者信息。那么,除了公司自己的研究方法外,寻找副作用的主要途径是阅读其他研究人员的科学文章。由于每年发表的文章数量庞大,他们几乎不可能手动处理所有文章。为了解决这个问题,科学出版商(或与出版商相关的数据分析公司)根据客户(制药公司)指定的算法和方法提供自动文章搜索服务。而在客户方面,在获得所需格式的相关文章时事通讯后,他们可以选择购买哪些特定文章。2.PricingPublications如下图所示,出版商对这些顶级科学文章和研究成果收费:起价为每篇25-30美元。于是,制药公司陷入了两难境地:一方面,他们在法律上有义务追踪其产品的所有副作用,以便修改产品规格或从市场上召回他们的产品。另一方面,购买所有可能提及某种药物的文章会很昂贵,更不用说处理所有这些文本所花费的时间了。在WavetAccess,我们为制药行业的客户开发了一个自动文章搜索解决方案:我们使用文本挖掘平台来搜索文章及其元数据,确保客户只为最有可能包含相关文本的文章付费。鉴于此类任务的复杂性,我们使用的文本挖掘技术包括:对于来自非标准化书目的数据,我们使用单独的搜索方法,有时甚至需要使用机器学习来解析元数据中包含的公司地址等信息.3、市场研究文本挖掘的相关应用,有助于定位目标公司所在的社交媒体空间,分析其在空间中的认知度。很多企业往往需要客观地评价自己的产品和竞品,以制定独特的发展战略。在这里,自动化文本处理系统更适合处理大量的信息源(包括:学术文章、杂志、新闻、产品评论网站等),以及各种产品使用评论。4.信息来源的可信度通过文本挖掘,我们需要进一步区分各种虚假评论和公平公正的评论。在制药领域,“产品评论”是那些发表在著名学术期刊上的药物测试结果。由于业界对学术论文的标准较高,因此很难出现“假评论”。但是,如果分析针对所有可公开访问的来源(包括互联网),那么我们必须对评论作者和来源的声誉进行排名,以识别虚假评论。在学术论文领域,这被称为引文索引(CI)。因此,在文章检索中,我们引入了这些参考因素,并将其包含在最终报告中,以便读者自行判断是否信任所提供的信息来源。另一个相关但不完全相同的参考资料称为情绪分析(也称为意见挖掘)。它的目标是评估作者对给定对象的情感态度。整理各种评论并找到对目标公司的负面意见也很有帮助。5.优化文书工作知识管理,帮助企业了解哪些数据和文件可用,并建立快速访问。许多企业在规模扩张的过程中积累了大量的知识资产。但这些资产往往存在结构不合理、不规范等问题。部门可能继续使用自己保存的内部文件,也可能根本没有任何保存意义。那么当不同的公司合并到一起的时候,问题就会作为一个整体爆发出来,他们几乎不可能找到自己需要的信息。因此,为了更好地利用以往积累的知识,是时候“叫出”文本挖掘系统了。它可以实现以下四个方面:自动收集和标准化来自不同来源的数据。添加元数据(例如文档来源、作者、创建日期等)。索引和分类文档。通过用户定义的参数提供文档搜索的接口。此外,此类文本挖掘系统还应根据相关安全标准设置用户角色和权限级别控制。6、客户服务部门的优化除了各种内部文档外,企业往往还需要从外部获取大量的文本数据,例如:导入从网站输入的表格、订单等。因此,文本挖掘系统可以对传入的请求进行排序并提供客户需要的详细信息。通过最大限度地减少订单处理时间,客户服务部门可以为更多客户提供服务,企业也可以获得更多利润。7.文本挖掘如何产生收入我们有一家提供工业级维护和维修的客户公司。他们每天收到多达4,000个维修请求。客服经理需要在CRM系统中创建报修项,在弹出的列表中选择报修类别和类型。然后他们根据请求的数量重新分配恢复团队的工作量。在引入文本挖掘之前,他们不得不花费大量时间手动填写所有字段,因为请求不是以特定格式提交的。WavetAccess开发了一个基于未知格式的文本系统,以帮助客户服务部门更好地排序请求。系统预制了一些最有可能的类别,帮助员工在CRM弹出列表中快速定位某些情况。同时,该系统还可以识别那些收费项目,为公司创造收入。8.垃圾邮件过滤垃圾邮件过滤的目标是对大量邮件流(包括电子邮件和短信)进行分类,以便将那些不需要的邮件分类。因此,对于这项工作,文本挖掘技术需要能够基于快速算法对大量数据进行判断和处理。通过以上应用案例我们可以看出,企业面对的文本数据往往是“非标准”的,其处理目标也是多种多样的。因此,我们不能仅仅使用单一的分析方法来提高文本挖掘和决策的效率。让我们深入了解文本挖掘过程中的不同发展阶段,以及项目优化的流行方法。三、实施中的信息搜索问题最常见的文本挖掘任务之一是搜索相关文档并从中提取信息。所以随着数据量的不断增加,这项工作的自动化程度就显得尤为重要。执行此类任务的典型系统通常由两部分组成:文档收集和标准化。文档分类和分析。让我们详细解释这两个部分。1.文档收集和标准化本阶段的目标是:持续收集和提取文本结构化数据。收集文档的元数据(包括创建日期、标题等)。标准化文档的文本和元数据。由于数据来源多样,采集方式灵活多样,有时我们需要使用格式转换器对目标文档的格式进行处理后再上传。以下是一些具体的数据采集和准备工作:通过扫描源文档采集数据在这种情况下,系统使用光学字符识别引擎(例如Tesseract等OCR工具)将文本分成多个部分和段落。然而,光学识别的一个普遍问题是,它经常会遇到格式比较复杂的文本(例如各种列或表格),这些元素会影响系统最终的转换和有意义文档的合并。此外,有时为了同时扫描多份文件,系统需要用特定的属性来标记给定文件的开始和结束。通过PDF或DJVU文档收集数据。虽然这些文档的格式更适合查看那些格式化的文档,但不适合存储结构化数据的应用程序。尽管PDF和DJVU文件可以存储符号和单词位置以便于显示和用户阅读,但这些文件没有任何句界标记。因此,与上述文档扫描方式类似,PDF、DJVU等格式、表格、图像复杂的文件,也会给文本挖掘带来不同程度的挑战。从Web源收集数据并非所有包含数据源的网站或系统都有方便的API,有时它们可??能只是一个方便的用户界面来操作。在这种情况下,系统需要使用网络爬虫,即通过分析网站来收集数据。因此,除了通常的HTML代码分析,系统可能还需要使用计算机视觉来解决此类特殊问题。用户手动上传数据有时,用户已经具备在本地自动处理一定数量文档的能力。那么,为了让系统能够支持用户上传大量格式丰富的文档,就必须在上传的文档中添加一些元数据。出版日期、作者、来源和文档类型等元数据将有助于以后的文本挖掘操作,包括:查找特定作者关于特定主题的作品。因此,鉴于可用数据量巨大,我们可能只需要其中的一小部分。例如:我们可能只对药品数据库中某个特定公司的药品感兴趣。然后,我们应该通过访问关键字列表和使用全文索引来快速检索所需的文档;而不是使用精确但耗费资源的算法来处理所有文档。如果我们的目标是从多个来源收集数据,那么应该使用特定的标准化接口来快速高效地获取文档。这里可以参考开源的全文检索平台Solr工具。2.文档分类分析在对各种文档进行收集入库(可能是筛选操作)后,系统会调用各种文本挖掘算法,检查目标文档是否与主题相关,并分析文档中包含的信息。例如:通过判断一个产品在文档中是否被提及来判断其上下文是“正面”还是“负面”。此后,系统将生成文档报告以供进一步手动或自动处理。一般来说,文本挖掘的方法和算法分为以下几类:文本规范化和预处理。使用一组规则来搜索实体及其关系。使用各种统计方法和机器学习。以上方法通常放在一些复杂的系统中一起使用。文本规范化和预处理该阶段先于其他阶段,包括以下部分:将句子分解为单词。去除停用词(停用词,如介词、感叹词等)。规范化剩余的单词(将“people”变成“person”,将“realized”变成“realized”)并识别它们在句子中的成分。显然,这些步骤高度依赖于文本的语言,但并不总是必要的。例如:一些文本挖掘算法也可以从停顿词中收集各种信息。规则集这种方法基于特定领域专家制定的一组规则。以下是此类规则的示例:在带有公司名称的三个句子中,选择所有提及的产品名称。选择与模式“provides”相匹配的服务。删除提及公司产品名称次数少于3次的文件。语言规范这些规则侧重于按语言分析词序。例如:在英语句子中,词与词之间的关系是通过语法和功能词(介词等)传达的,而核心词一般保持不变。而在合成语言(如德语、希腊语、拉丁语、俄语)中,词与词之间的关系是通过词的形式来表达的,词序并不重要。所以在分析英语时,那些不是核心词的“服务”词(介词等)负责传达形式和时态。比如经典的Word句子:“Thebrownfoxquicklyjumpedoverthelazydog”。与合成语言相比,英语中的这句话没有假设brownfox是男是女,lazydog的性别也不明显。其中,“狐”、“狗”为明确不变的核心词。规则的优点和缺点优点不需要训练数据或标记它。系统做出的判断是明确的,并且易于向人类用户解释。缺点开发一套能够提供足够精确度的规则需要付出一些努力。现有规则无法处理新案例中的相关数据,即使模式只是略有不同。5.统计方法与机器学习文本数据的复杂性及其结构归一化的难度使其在机器学习的应用中尤为复杂。我们需要测试多种方法或算法以找到给定上下文的可接受输出。下面是一些常用算法的例子:文本预处理算法除了单词归一化和停用词去除之外,一些算法还需要将文本转换为数字形式,如向量或向量序列。最常用的文本预处理算法有:1.One-hotencoding,这是最简单的算法。它将文本中的词转换为第i个位置非零值的N长向量。其中N是语言词典的长度,i是单词在词典中的位置。2.word2vec也是一套词向量化的算法。与One-hot编码相比,它生成的向量要短得多,并且包含各种实数(不是整数)。word2vec能够将相似的向量分配给具有相似含义的单词。3.Bagofwords是一种基于词频(即:一个词在一篇文档中出现的次数)的算法。虽然它能够通过向量来描述一般的文本,但它几乎完全忽略了文本的结构。4.TF-IDF是一种能够为每个文本形成一个tf-idf值向量的算法。这里的tf-idf值是给定文本中的词频除以该词在整个语料库中的反频。可以通过不同的方法计算反向频率。所以基本思想是:如果一个词在语言中被频繁使用,那么就给它分配一个较低价值的分类(例如:许多介词包括“go”、“work”、“have”、“need”等都属于这一类),其反向频率相对较低。相反,那些稀有词肯定有更高的反向频率,它们的分类价值就更高。命名实体识别与关系抽取算法这个工作是找到特定的术语(如:公司、产品、服务名称等),通过标记对它们进行分类,然后找出这些实体之间的关系。因此,可能涉及以下算法:1.隐马尔可夫模型(HMM),将统计模型表示为有向图。2.ConditionalRandomField(CRF)也是一种统计模型,但它没有使用有向图。3.神经网络,其中LSTM可以表示上下文,因为它可以通过处理顺序(不重复)存储上下文数据。CNN根据它发现的潜在特征模式提取数据。4.通用机器学习方法。如果系统使用“滑动窗口”技术,传统的机器学习方法包括:逻辑回归、支持向量机、朴素贝叶斯分类器、决策树和其他需要具有固定特征列表的输入。当然,这样的方法并没有考虑到窗口外的上下文。因此,如果相关词距离窗口长度较远,或者整个文本块存在一些其他类型的评论(例如,对产品描述的负面评论),这些信息将被忽略,这可能会产生不准确的结果。分类和主题建模算法任务是生成已处理文档的简单描述,包括文档类型或主题。因此,可能涉及以下算法:1.LatentDirichletAllocation(LDA)是一种基于狄利克雷分布的统计模型。它可以将文本视为不同主题的组合。2.潜在语义分析(LSA)是一种将语料库表示为术语文档矩阵并将其分解以定义不同文档主题的方法。3.AdditiveRegularizationofTopicModels(ARTM)是将现有的统计模型与正则化相结合,以更好地分析文本结构。4.将bagofwords、tf-idf等算法的结果作为通用机器学习方法的输入。当然,各种算法的性能也会因作业而异。例如:某些算法可能特别适用于不同的文本主题或命名实体。因此,我们在构建文本挖掘系统时,可以尝试不同的方法来寻找最佳的输出结果;或者结合不同技术的结果来达到文本挖掘的目的。统计方法和机器学习优势的优缺点能够自动搜索文本特征和期望结果之间的关系。能考虑到文中的复杂关系。概括能力(对不在训练集中的案例采取正确的方法)。缺点根据算法的不同,需要训练集并且可能非常大。该系统做出的决定并不总是正确和可解释的。一旦系统给出错误的结果,以后就很难检测和修复问题。原标题:TextMining101:WhatitIsandHowitWorks,作者:IlyaFeigin