持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第7天,点击查看活动详情
聚类
聚类指的是将给定对象的集合划分为不用子集的过程,目标是使每个子集内部的元素尽量相似,不同子集间的元素尽量不相似。这些子集又被称为簇,一般没有交集。
根据元素从属于集合的确定程度,聚类分为硬聚类和软聚类。
硬聚类:每个元素被确定地归入一个簇。
软聚类:每个元素与每个簇都存在一定的从属程度(隶属度),只不过该程度有大有小。
硬软聚类的区别类似规则与统计:硬聚类中从属关系离散,软聚类从属关系是连续值。在NLP中,硬聚类更加简洁,使用的更为频繁。
一般将聚类时簇的数量视作由使用者指定的超参数,虽然存在多种自动判断算法,但往往需要人工指定其他超参数,或者比较多份聚类结果。另外还可以通过层次聚类来得到树形结构的聚类,通过实际需要选取树的某一层作为聚类结果。
根据聚类结果的结构,聚类算法可以分为划分式和层次化两种。划分聚类的结果是一系列不相交的子集,而层次聚类的结果是一棵树,叶子节点是元素,父节点是簇。
聚类的应用
常用于数据的预处理或归档相似的数据。
文本聚类
文本聚类指对文档进行聚类,广泛用于文本归档、文本挖掘和信息检索领域。
文档的特征提取
词袋模型
词袋模型是信息检索与自然语言处理中最常用的文档表示模型,将文档想象为一个装有词语的袋子,通过袋子中每种词语的计数等统计量将文档表示为向量。
词袋中的统计指标
词袋模型的常见统计指标包含:词频、布尔词频、TF-IDF、词向量
一般而言,词频向量适合主题较多的数据集;布尔词频适合长度较短的数据集;TF-IDF适合主体较少的数据集;词向量适合处理OOV问题严重的数据集。
除了词袋模型以外,神经网络模型也能无监督地生成文档向量,比如自动编码器和受限玻尔兹曼机。通过神经网络得到的文档向量一般优于词袋向量,但计算开销大。
特征向量的描述
定义由n个文档组成的集合为S,定义其中第i个文档的特征向量为