文本数据挖掘

合集下载

文本数据挖掘一般过程

文本数据挖掘一般过程

文本数据挖掘一般过程一、引言随着信息时代的到来,海量的文本数据成为了我们生活中不可或缺的一部分。

然而,如何从这些海量的文本数据中获取有价值的信息成为了一个挑战。

在这个背景下,文本数据挖掘应运而生。

本文将介绍文本数据挖掘的一般过程,以帮助读者更好地理解和应用这一技术。

二、数据收集文本数据挖掘的第一步是收集数据。

数据可以来自各种渠道,如互联网、社交媒体、新闻报道等。

在收集数据时,需要注意保护个人隐私和版权等法律问题。

三、数据预处理在进行文本数据挖掘之前,需要对数据进行预处理。

预处理包括以下几个步骤:1. 去除噪声:文本数据中常常包含一些无关紧要的信息,如标点符号、特殊字符等。

可以使用正则表达式等方法去除这些噪声。

2. 分词:将文本数据按照一定的规则进行分词,将句子分解为单词或短语。

分词是文本数据挖掘的基础,可以使用现有的分词工具或自行开发分词算法。

3. 去除停用词:停用词是指在文本中频繁出现但没有实际意义的词,如“的”、“是”等。

需要将这些停用词从文本中去除,以减小数据的维度。

4. 词干提取:将单词转化为其原始形式,如将“running”转化为“run”。

词干提取可以减少数据的维度,提高后续处理的效果。

四、特征提取特征提取是文本数据挖掘的关键步骤之一。

通过将文本数据转化为数值特征,可以方便地应用机器学习算法进行模型训练和预测。

常用的特征提取方法有:1. 词袋模型:将文本数据表示为一个词汇表和一个词频矩阵。

词袋模型忽略了词序和上下文信息,只关注词的出现频率。

2. TF-IDF:TF-IDF是一种用于评估词在文本中重要程度的方法,它考虑了词语在文本中的频率和在整个语料库中的频率。

3. Word2Vec:Word2Vec是一种将单词映射到低维向量空间的方法,它可以保留词语之间的语义关系。

五、模型训练与评估在特征提取之后,可以使用机器学习算法进行模型训练和预测。

常用的机器学习算法包括朴素贝叶斯、支持向量机、决策树等。

大规模文本数据挖掘的方法与工具选择指南

大规模文本数据挖掘的方法与工具选择指南

大规模文本数据挖掘的方法与工具选择指南随着信息时代的到来,大规模文本数据的产生和积累已成为了一种普遍现象。

这些数据蕴藏着许多有价值的信息,但如何挖掘并利用这些海量文本数据成为了一个新的挑战。

本文将为您介绍大规模文本数据挖掘的方法与工具选择指南,帮助您在处理和分析大规模文本数据时做出明智的决策。

一、文本数据挖掘方法1. 文本分类文本分类是文本数据挖掘的基本任务之一。

其目标是将文本划分为不同的类别或标签。

常用的文本分类方法包括朴素贝叶斯、支持向量机、决策树等。

这些算法可以根据文本的关键词、统计特征、上下文信息等进行分类预测。

在选择文本分类方法时,要考虑模型的准确性、效率和可扩展性。

2. 文本聚类文本聚类是将相似的文本分组的任务,其目标是发现文本数据中的群组结构。

常用的文本聚类方法包括基于k-均值聚类、层次聚类、密度聚类等。

这些方法根据文本的相似性度量进行聚类,可以帮助我们发现文本数据中的潜在主题和模式。

在选择文本聚类方法时,要考虑聚类的准确性、稳定性和可解释性。

3. 文本情感分析文本情感分析是对文本情感或观点进行分类和分析的任务。

它可以帮助我们了解用户对产品、服务或事件的情感倾向。

常用的文本情感分析方法包括基于情感词典、机器学习和深度学习等。

这些方法可以将文本分为正面、负面或中性情感,并提供情感极性得分。

在选择文本情感分析方法时,要考虑情感分类的准确性、多样性和泛化能力。

二、文本数据挖掘工具选择指南1. OpenNLPOpenNLP是一个开源的自然语言处理工具包,提供了各种文本数据挖掘方法的实现。

它包含了词性标注、命名实体识别、文本分类等功能,并提供了易于使用的API接口。

OpenNLP具有较高的准确性和效率,适用于处理大规模文本数据。

2. NLTKNLTK(Natural Language Toolkit)是Python中常用的自然语言处理工具包。

它提供了丰富的文本数据挖掘方法和算法,包括文本预处理、文本分类、情感分析等。

文本数据挖掘技术综述

文本数据挖掘技术综述

文本数据挖掘技术综述随着互联网的发展,文本数据呈指数级别地增长。

如何从海量的文本数据中获取有价值的信息,是文本数据挖掘的核心问题。

本文概述了文本数据挖掘的相关理论、方法和应用。

一、文本数据挖掘的相关理论1. 信息检索信息检索是文本数据挖掘的前提,其目的是通过关键词检索,从大量的文本库中找到相关文献。

与传统的数据库查询不同,信息检索需要对文本进行语义分析,并根据相关性对结果进行排名。

2. 自然语言处理自然语言处理是对人类语言进行计算机处理的领域,其目的在于识别和理解自然语言的含义。

自然语言处理为文本数据挖掘提供了丰富的语义分析工具。

二、文本数据挖掘的相关方法1. 文本分类文本分类是对大量文本进行分类的过程,其目的是为文本自动打标签,并可以将文本按照主题、情感或其他属性进行分类。

文本分类的应用包括新闻分类、情感分析等。

2. 文本聚类文本聚类是将相似的文本聚集在一起形成簇的过程,并将不相似的文本分到不同的簇中。

文本聚类的应用包括搜索引擎结果聚类、信息推荐等。

三、文本数据挖掘的相关应用1. 新闻分类新闻分类将本文按照新闻的主题分类,并自动推荐给用户相应领域的新闻内容。

文本分类技术已被应用于现有的新闻app中。

2. 情感分析情感分析是通过对文本中情感词汇和情感语境的分析,确定文本的情感倾向。

情感分析技术已被应用于舆情监测、社交媒体分析等领域。

四、结论文本数据挖掘技术在信息检索、自然语言处理、文本分类、文本聚类、情感分析等方面都有广泛的应用。

文本数据挖掘技术的发展将进一步推动文本数据的挖掘和应用,以满足人们日益增长的信息需求。

数据挖掘技术在文本挖掘中的使用教程

数据挖掘技术在文本挖掘中的使用教程

数据挖掘技术在文本挖掘中的使用教程随着互联网的迅猛发展,大量的文本数据涌现在各个领域。

如何从这些海量的文本数据中提取有用的信息,成为了一项具有挑战性的任务。

为解决这个问题,数据挖掘技术在文本挖掘中逐渐得到了广泛应用。

本文将介绍数据挖掘技术在文本挖掘中的基本概念和常用方法,帮助读者了解如何利用数据挖掘技术进行文本挖掘。

一、文本挖掘概述文本挖掘是指从大量的文本数据中自动地提取出有用的知识和信息。

它结合了信息检索、自然语言处理和数据挖掘等多个技术领域。

对于文本挖掘任务,常见的包括文本分类、文本聚类、情感分析等。

二、数据预处理在进行文本挖掘之前,需要对文本数据进行预处理。

主要包括以下几个步骤。

1. 文本清洗:去除文本中的HTML标签、特殊符号、停用词等,只保留有意义的内容。

2. 分词:将文本切分成一个个独立的词语,便于后续处理。

3. 去除低频词:去除在整个文本数据中出现频率较低的词语,可以减少噪音带来的影响。

4. 词性标注:为每个词语标注词性,可以方便后续的特征提取和分析。

三、特征提取对于文本数据,需要将其转化为机器学习算法能够处理的特征向量。

常见的特征提取方法有以下几种。

1. 词袋模型:将文本表示为一个词语的集合,忽略了词语的顺序和语法,只关注词语的出现与否。

2. TF-IDF:考虑了词语的出现频率和在整个文本数据中的重要程度,能够更好地表示词语的信息。

3. Word2Vec:利用神经网络方法将词语映射到一个连续的向量空间中,能够更好地表示词语的语义信息。

4. 主题模型:通过对文本进行聚类分析,将文本数据归纳为若干个主题,可以更好地求解文本分类和聚类问题。

四、文本分类文本分类是将文本归类到不同的类别中的过程。

常见的文本分类算法有以下几种。

1. 朴素贝叶斯:基于贝叶斯定理和特征条件独立假设,能够快速进行文本分类,但对特征之间的关联性要求较低。

2. 支持向量机:通过在特征空间中找到一个超平面,将不同的类别分开,能够处理高维空间的文本分类问题。

文本数据挖掘与情感分析

文本数据挖掘与情感分析

文本数据挖掘与情感分析随着信息时代的到来,大数据成为了当今社会的热门话题。

在庞大的数据海洋中,文本数据占据了重要的一部分。

文本数据挖掘作为一种技术手段,被广泛应用于舆情分析、情感分析、市场研究等领域。

本文将重点探讨文本数据挖掘与情感分析的相关内容。

一、文本数据挖掘的定义与方法文本数据挖掘(Text Data Mining,TDM)是一种通过利用自然语言处理、计算机语言学等技术,从大规模文本数据中提取出有价值的信息和知识的过程。

文本数据挖掘的方法包括词频统计、关键词提取、文本分类、主题模型等。

词频统计是最基本的文本数据挖掘方法,通过统计不同词语在文本中出现的频率来了解文本的特点。

关键词提取则是通过算法提取文本中具有重要意义的词语。

文本分类是将文本数据按照一定的类别进行划分,以便进行进一步的分析与应用。

主题模型则是通过对文本的内容进行建模,挖掘文本的隐含主题和关联关系。

二、情感分析的背景与意义情感分析(Sentiment Analysis),也被称为意见挖掘(Opinion Mining),是文本数据挖掘的一个重要应用领域。

随着社交媒体的普及和用户评论的大量产生,人们需要挖掘其中的用户情感倾向,以了解公众对特定话题或产品的态度和意见。

情感分析的研究不仅有助于企业了解市场需求,还可以作为政府决策的参考依据,以及新闻媒体的舆情分析。

三、情感分析的方法与挑战情感分析的方法主要分为基于词典的方法、机器学习方法和深度学习方法。

基于词典的方法是最早被使用的情感分析方法。

该方法通过构建情感词典,将文本中的词语与情感进行匹配,进而判断文本的情感极性。

然而,这种方法的准确性受到情感词典的质量和覆盖率的限制。

机器学习方法则需要先进行特征提取,将文本数据转化为能够被机器学习算法处理的数值型特征。

常用的特征提取方法有词袋模型、tf-idf模型等。

通过训练和调优分类器,可以将文本进行情感分类。

深度学习方法是近年来兴起的方法。

文本数据挖掘技术研究

文本数据挖掘技术研究

文本数据挖掘技术研究一、绪论文本数据挖掘技术是数据挖掘领域的一个分支,其主要目标是从文本数据中挖掘有用的信息和知识。

文本是人类信息交流的一种主要形式,随着互联网的发展,大量的文本数据产生并存储在各种数据源中,这些文本数据包含了大量的信息和知识,但是由于文本数据的复杂性和海量性质,人们难以快速地获取和利用这些信息和知识。

因此,文本数据挖掘技术的研究和应用具有重要的意义。

二、文本数据挖掘技术的分类文本数据挖掘技术可以分为三大类:文本预处理技术、特征提取和选择技术和模型构建和评估技术。

1. 文本预处理技术文本预处理技术是文本数据挖掘技术中最基础和最重要的一个环节,文本的质量和处理方法直接决定了后续挖掘过程的效果和精度。

文本预处理的主要任务包括文本清洗、分词、去除停用词、词干提取、词向量化等。

其中,文本清洗的目的是去除无效信息和噪声,提高文本质量;分词是将文本分解为独立的词语,为后续处理提供基础;去除停用词是去除与文本主题无关的词语,减小文本规模和提高处理效率;词干提取是将词语还原为词干,减少语义冗余;词向量化是将词语转换为向量表示,便于后续的特征提取和选择。

2. 特征提取和选择技术特征提取和选择技术是文本数据挖掘技术中的核心环节,特征提取是将文本转化为数值特征向量表示,每个特征表示一个文本中的某种特定的语言、语法、语义或主题属性;而特征选择是从原始的文本特征中选择出与目标任务相关的、具有区分性的特征。

特征提取和选择的目的是降低复杂性,提高处理效率和准确率,同时保持一定的语言、语义、主题信息。

3. 模型构建和评估技术模型构建和评估技术是文本数据挖掘技术中的最核心、最重要的一环,其目的是从文本中挖掘出潜在的规律、知识和信息。

模型构建包括分类、聚类和关联规则挖掘等。

文本分类是基于文本中的特征和类别标注信息来构建分类模型,将未知文本归类为已知类别;文本聚类是将文本数据进行分组、归类的过程,具有自动化的特点;关联规则挖掘是发现排列在一起频繁出现的项集,也称为频繁项集挖掘。

文本挖掘的方法与应用技巧研究

文本挖掘的方法与应用技巧研究

文本挖掘的方法与应用技巧研究文本挖掘是一种从大规模的文本数据中获取有用信息的技术,通过用计算机自动化方式对文本数据进行处理和分析,可以帮助人们发现隐藏在海量文本中的规律、模式和关联。

随着互联网的快速发展和信息爆炸的到来,文本挖掘的重要性和应用价值也日益凸显。

一、文本挖掘的方法1. 数据清洗:文本挖掘的第一步是对原始的文本数据进行清洗和预处理。

包括去除噪声数据、标记化、分词、过滤停用词和词干提取等。

清洗后的数据能够更好地应用于后续的文本挖掘任务。

2. 文本分类:文本分类是文本挖掘中最常见和基础的任务之一。

它利用机器学习和自然语言处理技术,将文本数据划分到预先定义的类别中。

常用的分类算法包括朴素贝叶斯、支持向量机和深度学习等。

3. 文本聚类:与文本分类相似,文本聚类是将文本数据划分为不同的组别。

不同之处在于,文本聚类是通过计算文本数据之间的相似度来实现的,不需要预定义的类别。

常用的聚类算法包括K-means、层次聚类和谱聚类等。

4. 情感分析:情感分析是一种对文本中所表达的情感倾向进行评估和分析的技术。

它可以帮助企业了解用户的情感需求和情绪变化,用于产品改进、舆情监测等应用场景。

情感分析常用的方法包括基于规则的方法、基于机器学习的方法和基于深度学习的方法等。

5. 关键词抽取:关键词抽取是从文本中自动识别和提取出能够表达该文本主题的关键词的过程。

常用的关键词抽取算法包括TF-IDF、TextRank 和基于深度学习的方法等。

二、文本挖掘的应用技巧1. 建立领域词表:在文本挖掘的过程中,建立一个专业领域的词表对于提高挖掘效果非常重要。

通过收集相关领域的专业术语和关键词,并根据其在文本中的频率和重要性进行权重计算,可以建立一个较为完整和准确的领域词表。

2. 特征选择:为了提高文本挖掘的准确性和效率,选择合适的特征是非常重要的。

可以通过使用统计学方法,如卡方检验和互信息等,来选择与目标挖掘任务相关的特征。

3. 多模态数据挖掘:在文本挖掘中,除了利用文本数据,还可以结合其他多模态的数据进行分析和挖掘,如图像、音频、视频等。

数据分析中的文本挖掘方法

数据分析中的文本挖掘方法

数据分析中的文本挖掘方法在当今数字化时代,海量的文本数据不断涌现,这给企业决策、市场研究、舆情分析等领域提供了宝贵的信息资源。

然而,面对如此庞大的数据量,如何从中快速准确地提取有价值的信息成为了一项具有挑战性的任务。

这就需要借助文本挖掘技术,利用计算机科学、机器学习和自然语言处理等方法来从文本数据中自动抽取、识别和理解有用的信息。

文本挖掘,又称为文本数据挖掘或知识发现于文本,指的是从无结构文本中提取出结构化的、可用于进一步分析的信息。

它包括了一系列的技术和算法,能够自动地从文本中抽取关键词、实体名称、情感倾向、主题分类等信息。

下面将介绍几种常用的文本挖掘方法及其应用领域。

1. 分词与词频统计分词是将连续的文本切分成一个个有意义的词语单元的过程。

通过分词,可以将长长的文本序列转化为一系列离散的词语,方便后续的统计和分析。

分词方法有很多种,常见的有基于规则的方法、基于统计的方法和基于机器学习的方法。

在分词之后,可以通过词频统计的方法获得每个词语在文本中出现的频率,从而发现文本中的热门关键词。

分词与词频统计常被应用于搜索引擎的关键词提取、舆情分析中的关键词识别等任务。

2. 文本分类与朴素贝叶斯算法文本分类是将文本分成若干个预定义的类别的过程,常用于垃圾邮件过滤、情感分析、主题分类等应用场景。

而朴素贝叶斯算法是一种常用的文本分类算法。

该算法基于贝叶斯定理和特征条件独立假设,能够通过统计分析训练数据集中的特征和类别之间的关系,从而进行分类。

朴素贝叶斯算法在新闻分类、情感分析等领域都有广泛的应用,可以帮助企业快速准确地判断用户对某一产品或事件的态度。

3. 实体识别与命名实体识别算法实体识别是从文本中自动识别出具有特定意义的词语,例如人名、地名、机构名等。

命名实体识别算法是一种常见的实体识别方法,它通过构建规则和模型,识别出文本中的命名实体,并进行分类,如人名、地名、组织名等。

实体识别和命名实体识别广泛应用于信息抽取、搜索引擎、智能问答系统等领域。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
当然,作为一个无知识库的抽词程序,我们并不知道“电影院”是“电影”加“院”得来的,也并不 知道“的电影”是“的”加上“电影”得来的。错误的切分方法会过高地估计该片段的凝合程度。如果 我们把“电影院”看作是“电”加“影院”所得,由此得到的凝合程度会更高一些。因此,为了算出一 个文本片段的凝合程度,我们需要枚举它的凝合方式——这个文本片段是由哪两部分组合而来 的。令 p(x) 为文本片段 x 在整个语料中出现的概率,那么我们定义“电影院”的凝合程度就是 p(电影院) 与 p(电) · p(影院) 比值和 p(电影院) 与 p(电影) · p(院) 的比值中的较小值,“的电影” 的凝合程度则是 p(的电影) 分别除以 p(的) · p(电影) 和 p(的电) · p(影) 所得的商的较小值。
互联网时代的社会语言学:基于SNS的文本数据挖掘 | Matrix67...
/blog/archives/5044
Matrix67: The Aha Moments
这是一篇旧文,点击此处以旧主题模式浏览。
互联网时代的社会语言学:基于SNS的文本数据挖掘
今年上半年,我在人人网实习了一段时间,期间得到了很多宝贵的数据,并做了一些还算有 意义的事情,在这里和大家一块儿分享。感谢人人网提供的数据与工作环境,感谢赵继承博 士、詹卫东老师的支持和建议。在这项工作中,我得到了很多与众人交流的机会,特别感谢 OpenParty 、 TEDxBeijing 提供的平台。本文已发表在了《程序员》杂志,分上下两部分刊于 2012 年 7 月刊和 8 月刊,在此感谢卢鸫翔编辑的辛勤工作。由于众所周知的原因,《程序 员》刊出的文章被和谐过(看到后面大家就自动地知道被和谐的内容是什么了),因而我决定 把完整版发在 Blog 上,同时与更多的人一同分享。对此感兴趣的朋友可以给我发邮件继续交 流。好了,开始说正文吧。
作为中文系应用语言学专业的学生以及一名数学 Geek ,我非常热衷于用计算的方法去分析 汉语资料。汉语是一种独特而神奇的语言。对汉语资料进行自然语言处理时,我们会遇到很多 其他语言不会有的困难,比如分词——汉语的词与词之间没有空格,那计算机怎么才知道, “已结婚的和尚未结婚的青年都要实行计划生育”究竟说的是“已/结婚/的/和/尚未/结婚/ 的/青年”,还是“已/结婚/的/和尚/未/结婚/的/青年”呢?这就是所谓的分词歧义难 题。不过,现在很多语言模型已经能比较漂亮地解决这一问题了。但在中文分词领域里,还有 一个比分词歧义更令人头疼的东西——未登录词。中文没有首字母大写,专名号也被取消了, 这叫计算机如何辨认人名地名之类的东西?更惨的则是机构名、品牌名、专业名词、缩略语、 网络新词等等,它们的产生机制似乎完全无规律可寻。最近十年来,中文分词领域都在集中攻 克这一难关。自动发现新词成为了关键的环节。
我们把文本中出现过的所有长度不超过 d 的子串都当作潜在的词(即候选词,其中 d 为自 己设定的候选词长度上限,我设定的值为 5 ),再为出现频数、凝固程度和自由程度各设定一 个阈值,然后只需要提取出所有满足阈值要求的候选词即可。为了提高效率,我们可以把语料 全文视作一整个字符串,并对该字符串的所有后缀按字典序排序。下表就是对“四是四十是十 十四是十四四十是四十”的所有后缀进行排序后的结果。实际上我们只需要在内存中存储这些 后缀的前 d + 1 个字,或者更好地,只储存它们在语料中的起始位置。
挖掘新词的传统方法是,先对文本进行分词,然后猜测未能成功匹配的剩余片段就是新词。 这似乎陷入了一个怪圈:分词的准确性本身就依赖于词库的完整性,如果词库中根本没有新 词,我们又怎么能信任分词结果呢?此时,一种大胆的想法是,首先不依赖于任何已有的词 库,仅仅根据词的共同特征,将一段大规模语料中可能成词的文本片段全部提取出来,不管它 是新词还是旧词。然后,再把所有抽出来的词和已有词库进行比较,不就能找出新词了吗?有 了抽词算法后,我们还能以词为单位做更多有趣的数据挖掘工作。这里,我所选用的语料是人 人网 2011 年 12 月前半个月部分用户的状态。非常感谢人人网提供这份极具价值的网络语 料。
第2页 共50页
2015/10/27 21:59
互联网时代的社会语言学:基于SNS的文本数据挖掘 | Matrix67...
/blog/archives/5044
“信息熵”是一个非常神奇的概念,它能够反映知道一个事件的结果后平均会给你带来多大的 信息量。如果某个结果的发生概率为 p ,当你知道它确实发生了,你得到的信息量就被定义为 – log(p) 。 p 越小,你得到的信息量就越大。如果一颗骰子的六个面分别是 1 、 1 、 1 、 2 、 2 、 3 ,那么你知道了投掷的结果是 1 时可能并不会那么吃惊,它给你带来的信息量是 – log(1/2) ,约为 0.693 。知道投掷结果是 2 ,给你带来的信息量则是 – log(1/3) ≈ 1.0986 。知 道投掷结果是 3 ,给你带来的信息量则有 – log(1/6) ≈ 1.79 。但是,你只有 1/2 的机会得到 0.693 的信息量,只有 1/3 的机会得到 1.0986 的信息量,只有 1/6 的机会得到 1.79 的信息 量,因而平均情况下你会得到 0.693/2 + 1.0986/3 + 1.79/6 ≈ 1.0114 的信息量。这个 1.0114 就是那颗骰子的信息熵。现在,假如某颗骰子有 100 个面,其中 99 个面都是 1 ,只有一个面 上写的 2 。知道骰子的抛掷结果是 2 会给你带来一个巨大无比的信息量,它等于 – log(1/100) ,约为 4.605 ;但你只有百分之一的概率获取到这么大的信息量,其他情况下你只能得到 – log(99/100) ≈ 0.01005 的信息量。平均情况下,你只能获得 0.056 的信息量,这就是这颗骰子 的信息熵。再考虑一个最极端的情况:如果一颗骰子的六个面都是 1 ,投掷它不会给你带来任 何信息,它的信息熵为 – log(1) = 0 。什么时候信息熵会更大呢?换句话说,发生了怎样的事 件之后,你最想问一下它的结果如何?直觉上看,当然就是那些结果最不确定的事件。没错, 信息熵直观地反映了一个事件的结果有多么的随机。
第1页 共50页
2015/10/27 21:59
互联网时代的社会语言学:基于SNS的文本数据挖掘 | Matrix67...
/blog/archives/5044
要想从一段文本中抽出词来,我们的第一个问题就是,怎样的文本片段才算一个词?大家想 到的第一个标准或许是,看这个文本片段出现的次数是否足够多。我们可以把所有出现频数超 过某个阈值的片段提取出来,作为该语料中的词汇输出。不过,光是出现频数高还不够,一个 经常出现的文本片段有可能不是一个词,而是多个词构成的词组。在人人网用户状态中,“的 电影”出现了 389 次,“电影院”只出现了 175 次,然而我们却更倾向于把“电影院”当作一个词, 因为直觉上看,“电影”和“院”凝固得更紧一些。
第3页 共50页
2015/10/27 21:59
互联网时代的社会语言学:基于SNS的文本数据挖掘 | Matrix67...
/blog/archives/5044
在实际运用中你会发现,文本片段的凝固程度和自由程度,两种判断标准缺一不可。只看凝
固程度的话,程序会找出“巧克”、“俄罗”、“颜六色”、“柴可夫”等实际上是“半个词”的片段;只 看自由程度的话,程序则会把“吃了一顿”、“看了一遍”、“睡了一晚”、“去了一趟”中的“了一”提 取出来,因为它的左右邻字都太丰富了。
可以想到,凝合程度最高的文本片段就是诸如“蝙蝠”、“蜘蛛”、“彷徨”、“忐忑”、“玫瑰”之类 的词了,这些词里的每一个字几乎总是会和另一个字同时出现,从不在其他场合中使用。
光看文本片段内部的凝合程度还不够,我们还需要从整体可以说“买被子”、“盖被子”、“进被子”、“好被子”、“这被子”等等,在 “被子”前面加各种字;但“辈子”的用法却非常固定,除了“一辈子”、“这辈子”、“上辈子”、“下辈 子”,基本上“辈子”前面不能加别的字了。“辈子”这个文本片段左边可以出现的字太有限,以至 于直觉上我们可能会认为,“辈子”并不单独成词,真正成词的其实是“一辈子”、“这辈子”之类的 整体。可见,文本片段的自由运用程度也是判断它是否成词的重要标准。如果一个文本片段能 够算作一个词的话,它应该能够灵活地出现在各种不同的环境中,具有非常丰富的左邻字集合 和右邻字集合。
我们用信息熵来衡量一个文本片段的左邻字集合和右邻字集合有多随机。考虑这么一句话 “吃葡萄不吐葡萄皮不吃葡萄倒吐葡萄皮”,“葡萄”一词出现了四次,其中左邻字分别为 {吃, 吐, 吃, 吐} ,右邻字分别为 {不, 皮, 倒, 皮} 。根据公式,“葡萄”一词的左邻字的信息熵为 – (1/2) · log(1/2) – (1/2) · log(1/2) ≈ 0.693 ,它的右邻字的信息熵则为 – (1/2) · log(1/2) – (1/4) · log(1/4) – (1/4) · log(1/4) ≈ 1.04 。可见,在这个句子中,“葡萄”一词的右邻字更加丰富一些。
在人人网用户状态中,“被子”一词一共出现了 956 次,“辈子”一词一共出现了 2330 次,两 者的右邻字集合的信息熵分别为 3.87404 和 4.11644 ,数值上非常接近。但“被子”的左邻字用 例非常丰富:用得最多的是“晒被子”,它一共出现了 162 次;其次是“的被子”,出现了 85 次; 接下来分别是“条被子”、“在被子”、“床被子”,分别出现了 69 次、 64 次和 52 次;当然,还有 “叠被子”、“盖被子”、“加被子”、“新被子”、“掀被子”、“收被子”、“薄被子”、“踢被子”、“抢被子” 等 100 多种不同的用法构成的长尾⋯⋯所有左邻字的信息熵为 3.67453 。但“辈子”的左邻字就 很可怜了, 2330 个“辈子”中有 1276 个是“一辈子”,有 596 个“这辈子”,有 235 个“下辈子”, 有 149 个“上辈子”,有 32 个“半辈子”,有 10 个“八辈子”,有 7 个“几辈子”,有 6 个“哪辈子”, 以及“n 辈子”、“两辈子”等 13 种更罕见的用法。所有左邻字的信息熵仅为 1.25963 。因而, “辈子”能否成词,明显就有争议了。“下子”则是更典型的例子, 310 个“下子”的用例中有 294 个出自“一下子”, 5 个出自“两下子”, 5 个出自“这下子”,其余的都是只出现过一次的罕见用 法。事实上,“下子”的左邻字信息熵仅为 0.294421 ,我们不应该把它看作一个能灵活运用的 词。当然,一些文本片段的左邻字没啥问题,右邻字用例却非常贫乏,例如“交响”、“后遗”、 “鹅卵”等,把它们看作单独的词似乎也不太合适。我们不妨就把一个文本片段的自由运用程度 定义为它的左邻字信息熵和右邻字信息熵中的较小值。
相关文档
最新文档