无监督学习是机器学习的一个分支,用于处理未标记的数据。与监督学习(数据被标记为特定类别或结果)不同,无监督学习算法的任务是在不了解数据含义的情况下,从数据中发现模式和关系。无监督机器学习算法无需任何人工干预(即,我们不向模型提供输出)即可发现隐藏的模式和数据。训练模型仅输入参数值,并自行发现组或模式。
图像显示了一组动物:大象、骆驼和牛,代表无监督学习算法将处理的原始数据。
“解释”阶段意味着算法没有为数据预先定义标签或类别。它需要弄清楚如何根据固有模式对数据进行分组或组织。
算法代表无监督学习过程的核心,使用聚类、降维或异常检测等技术来识别数据中的模式和结构。
处理阶段显示算法对数据进行处理。
输出显示了无监督学习过程的结果。在本例中,算法可能根据动物的种类(大象、骆驼、牛)将其分组。
无监督学习如何工作?
无监督学习通过分析未标记数据来识别模式和关系。数据没有预先定义的类别或结果标签,因此算法必须自行发现这些模式和关系。这可能是一项具有挑战性的任务,但也可能非常有益,因为它可以揭示在标记数据集中难以发现的数据洞察。
图 A 中的数据集是购物中心的数据,其中包含订阅客户的信息。订阅后,客户将获得一张会员卡,购物中心将获得关于客户及其每次购买的完整信息。现在,利用这些数据和无监督学习技术,购物中心可以根据我们输入的参数轻松地对客户进行分组。
无监督学习模型的输入如下:
非结构化数据:可能包含噪声(无意义)数据、缺失值或未知数据
未标记数据:数据仅包含输入参数的值,没有目标值(输出)。与监督方法中的标记数据相比,此类数据更容易收集。
无监督学习算法
主要有 3 种类型的算法用于无监督数据集。
聚类
关联规则学习
降维
1.聚类算法
无监督机器学习中的聚类是根据相似性将未标记数据分组的过程。聚类的目标是在不事先了解数据含义的情况下识别数据中的模式和关系。
广义上,这项技术适用于根据我们的机器模型发现的不同模式(例如相似性或差异性)对数据进行分组。这些算法用于将原始的、未分类的数据对象处理成组。例如,在上图中,我们没有给出输出参数值,因此这项技术将根据数据提供的输入参数对客户进行分组。
一些常见的聚类算法:
K 均值聚类:根据点彼此之间的接近程度将数据分组成 K 个聚类。
层次聚类:通过逐步构建树(合并或拆分组)来创建聚类。
基于密度的聚类(DBSCAN):在密集区域中寻找聚类,并将分散点视为噪声。
均值漂移聚类:通过将点移向最拥挤的区域来发现聚类。
谱聚类:通过使用图表分析点之间的联系来对数据进行分组。
2.关联规则学习
关联规则学习,也称为关联规则挖掘,是无监督机器学习中用于发现关联的常用技术。该技术是一种基于规则的机器学习技术,可以发现大型数据集中参数之间一些非常有用的关系。该技术主要用于市场购物篮分析,有助于更好地理解不同产品之间的关系。
例如,商店使用基于此技术的算法,根据顾客行为找出一种商品的销量与另一种商品销量之间的关系。例如,如果顾客购买了牛奶,那么他可能还会购买面包、鸡蛋或黄油。经过良好的训练,这些模型可以通过规划不同的优惠活动来提高销售额。
一些常见的关联规则学习算法:
Apriori 算法: 通过逐步探索频繁项目组合来寻找模式。
FP-Growth 算法: Apriori 的有效替代方案。它可以快速识别频繁模式,而无需生成候选集。
Eclat 算法: 使用项目集的交集来有效地找到频繁模式。
高效的基于树的算法: 通过以树结构组织数据来扩展处理大型数据集。
3.降维
降维是减少数据集中特征数量,同时尽可能保留信息的过程。这项技术有助于提高机器学习算法的性能,并有助于数据可视化。
假设一个数据集包含 100 个学生特征(身高、体重、成绩等)。为了聚焦关键特征,你可以将其精简为 2 个特征:身高和成绩,以便更轻松地进行数据可视化或分析。
以下是一些流行的降维算法:
主成分分析(PCA): 通过将数据转换为不相关的主成分来降低维度。
线性判别分析(LDA): 在分类任务中,降低维度的同时,最大化类别可分性。
非负矩阵分解(NMF): 将数据分解为非负部分以简化表示。
局部线性嵌入(LLE): 减少维度,同时保留邻近点之间的关系。
Isomap: 通过保留流形上的距离来捕获全局数据结构。
无监督学习的挑战
以下是无监督学习面临的主要挑战:
噪声数据:异常值和噪声会扭曲模式并降低算法的有效性。
假设依赖:算法通常依赖于假设(例如,聚类形状),而这些假设可能与实际数据结构不匹配。
过度拟合风险:当模型捕获数据中的噪声而不是有意义的模式时,可能会发生过度拟合。
有限的指导:标签的缺失限制了引导算法实现特定结果的能力。
集群可解释性:结果(例如集群)可能缺乏明确的含义或与现实世界类别的一致性。
对参数的敏感性:许多算法需要仔细调整超参数,例如 k-means 中的聚类数量。
缺乏基本事实:无监督学习缺乏标记数据,因此难以评估结果的准确性。
无监督学习的应用
无监督学习在各个行业和领域有着广泛的应用。主要应用包括:
客户细分:算法根据购买行为或人口统计对客户进行聚类,从而实现有针对性的营销策略。
异常检测:识别数据中的异常模式,帮助检测欺诈、网络安全和预防设备故障。
推荐系统:通过分析用户行为和偏好来推荐产品、电影或音乐。
图像和文本聚类:将相似的图像或文档分组,以完成组织、分类或内容推荐等任务。
社交网络分析:检测社交媒体平台上用户互动的社区或趋势。
天文学和气候科学:对星系或天气模式进行分类,以支持科学研究。