无监督的机器学习算法
无监督的机器学习算法属于 ML 算法系列,它们尝试从数据的各种属性的特征中发现其中潜在的、隐藏的结构和模式。此外,一些无监督学习算法也用来减少特征空间,通常是将高纬度的特征空间转变为低纬度的特征空间。这些算法所运行的数据基本上是没有预先分类的为标记数据。应用这些算法的目的是寻找模式并识别特征,这有助于将各种数据点分成组或类。这些算法通常称为聚类算法。
聚类
信息检索
信息检索(Information Retrieval,IR)是根据某些需求从存储信息的语料库或实体中检索或获取相关信息源的过程。例如,它可以是用户在搜索引擎中驶入查询或搜索,然后获取与其查询相关的搜索项的过程。实际上,搜索引擎是 IR 最受欢迎的应用。
文档和信息与用户需求的相关性可以通过集中方式进行衡量。它包括从搜索文本中查找特定关键字,或使用一些相似度度量来查看文档与输入查询的相似度排名或得分。这与字符串匹配或正则表达式匹配完全不同,因为相对于文档(实体)集合中的字符串,搜索字符串中的单词常常具有不同的顺序、上下文和语义,而这些单词的含义基于同义词、反义词和否定修饰符可以有多重可能的结果。
文档
文档通常是一个包含完整文档数据的实体,包含可选的标题和其他元数据信息。语料库通常由一系列文档组成。这些文档可以是简单的句子或完整的文本信息段落。分词语料库指的是每个文档被分词化或分解成标识的语料库,其中标识通常是单词。
文本规范化
文本规范化是通过技术来清洗、规范化和标准化文本数据的过程,譬如删除特殊符号和字符、去除多余的 HTML 标签、移除停用词、拼写校正、词干提取和词形还原。
特征提取
特征提取是从原始文本数据汇总提取有意义的特征或属性,以将其提供给统计或机器学习算法的过程。这个过程也称为向量化(vectirization),因为该过程的转换结果通常是来自原始文本标识的数值向量。其原因是常规算法可以对数值向量奏效,并不能直接在原始文本数据上处理。有各种不同的特征提取方法,包括:基于词袋的二进制特征可以告诉我们文档中是否存在一个单词或一组单词,基于词袋的频率特征可以告诉我们文档中一个单词或者一组单词的出现频率,以及词频或逆文档频率或 TF-IDF 加权特征在计算每个词项权重时考虑了词频和逆文档频率。
特征矩阵
特征矩阵通常是指充文档集合到特征的映射,其中每行表示文本,每列表示具体特征,特征通常是一个单词或一组单词。将通过特征提取后的特征矩阵来表达文档或句子的集合。
特征工程
词袋、TF-IDF 和词向量模型等技术通常用于以数值向量的形式表示文档对文档建模,以便于更加方便的应用数学或机器学习技术。通过这些特征提取技术,可以得出各种文档的数字表示,甚至可以将每个字母或单词映射到与之相应的唯一数字标识符。
相似度测量
在文本相似度分析和聚类中经常使用相似度测量。相似度或距离测量值通常是用来衡量两个实体之间的接近程度的,其中实体可以是任何文本形式,例如文档、句子甚至是短语。这种相似度测量在识别类似实体并将不同实体加以区分时十分有用。相似度测量是十分有效的,有时选择正确的度量方式可能会对最终分析系统的性能产生很大的影响。基于距离测量,人们还发明了各种评分或排名算法。实体之间的相似度由两个主要因素决定:
- 实体的固有属性或特征。
- 测量公式及其特征。
请记住一个重要的知识点,那就是不是所有的距离测量值都是相似度的距离度量(distance metric)。A. Huang 在一篇优秀的论文 “Similarity Measures fox Text Document Clustering (文本文档聚类的相似度测量)” 中详细介绍了这一点。可以考虑距离测量值 d 和两个实体(如文档)x 和 y。x 和 y 之间的距离用于确定它们之间的相似度,可以表示为 d(x,y),当且仅当满足以下四个条件时,测量值 d 才可以称为一个相似度的距离度量:
- 任何两个实体之间的测量距离(如 x 和 y 的距离)必须始终为非负数,及d(x,y) >= 0。
- 当且仅当两个实体相同时,距离为零,即 d(x,y) = 0 iff x = y。
- 这个距离测量值应该是对称的,这意味着从 x 到 y 的距离总是和从 y 到 x 的距离相同,数学上表示为 d(x,y) = d(y,x)。
- 该距离测量值应该满足三角不等式特性,在数学上可以表示为 d(x,z) <= d(x,y) + d(y,z)。
以上条件是重要的衡量标准,也是一个良好的框架,可以用它来检查距离测量方法是否可以用作测量相似度的距离度量。
TF-IDF
TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜寻引擎应用,作为文件与用户查询之间相关程度的度量或评级。除了TF-IDF以外,因特网上的搜寻引擎还会使用基于连结分析的评级方法,以确定文件在搜寻结果中出现的顺序。
词频 (term frequency, TF) 指的是某一个给定的词语在该文件中出现的次数。这个数字通常会被归一化(分子一般小于分母 区别于IDF),以防止它偏向长的文件。(同一个词语在长文件里可能会比短文件有更高的词频,而不管该词语重要与否。)
逆向文件频率 (inverse document frequency, IDF) 是一个词语普遍重要性的度量。某一特定词语的IDF,可以由总文件数目除以包含该词语之文件的数目,再将得到的商取对数得到。
某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF-IDF。因此,TF-IDF倾向于过滤掉常见的词语,保留重要的词语。
TFIDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。TFIDF实际上是:TF * IDF,TF词频(Term Frequency),IDF反文档频率(Inverse Document Frequency)。TF表示词条在文档d中出现的频率。IDF的主要思想是:如果包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t具有很好的类别区分能力。如果某一类文档C中包含词条t的文档数为m,而其它类包含t的文档总数为k,显然所有包含t的文档数n=m+k,当m大的时候,n也大,按照IDF公式得到的IDF的值会小,就说明该词条t类别区分能力不强。但是实际上,如果一个词条在一个类的文档中频繁出现,则说明该词条能够很好代表这个类的文本的特征,这样的词条应该给它们赋予较高的权重,并选来作为该类文本的特征词以区别与其它类文档。这就是IDF的不足之处.
在一份给定的文件里,词频(term frequency,TF)指的是某一个给定的词语在该文件中出现的频率。这个数字是对词数(term count)的归一化,以防止它偏向长的文件。(同一个词语在长文件里可能会比短文件有更高的词数,而不管该词语重要与否。)对于在某一特定文件里的词语 来说,它的重要性可表示为:
以上式子中 是该词在文件
中的出现次数,而分母则是在文件
中所有字词的出现次数之和。
逆向文件频率(inverse document frequency,IDF)是一个词语普遍重要性的度量。某一特定词语的IDF,可以由总文件数目除以包含该词语之文件的数目,再将得到的商取对数得到:
其中
- |D|:语料库中的文件总数
:包含词语
的文件数目(即
的文件数目)如果该词语不在语料库中,就会导致被除数为零,因此一般情况下使用
然后
某一特定文件内的高词语频率,以及该词语在整个文件集合中的低文件频率,可以产生出高权重的TF-IDF。因此,TF-IDF倾向于过滤掉常见的词语,保留重要的词语。