《从机器学习到深度学习》笔记(2)无监督学习

简介: 有监督学习用于解决分类问题的前提是必须有一个带标签数据的样本集,但获得数据标签的代价往往是非常昂贵的。同时,这些标签通常都是人工标注,标注错误的情况也时有发生。这样就促使了无监督学习策略的发展,简单的说它就是:对无标签数据进行推理的机器学习方法。

有监督学习用于解决分类问题的前提是必须有一个带标签数据的样本集,但获得数据标签的代价往往是非常昂贵的。同时,这些标签通常都是人工标注,标注错误的情况也时有发生。这样就促使了无监督学习策略的发展,简单的说它就是:
对无标签数据进行推理的机器学习方法。
1. 场景
由于无监督学习的前提是不需要前期的人类判断,所以它一般是作为某项学习任务的前置步骤,用于规约数据;在无监督学习之后,需要加入人类知识以使成果有实用价值。图1-10从人类知识加入的时间点比较了两种学习策略。
1_10

图1-10 有监督学习与无监督学习
一般来说人类理解由无监督学习规约后的数据比整理样本数据中的标签更容易些,所以总体上无监督学习需要更少的人工参与。
无监督学习的算法比较丰富,按整理数据的方式有两大分支:
 聚类(Clustering):是最主要的无监督学习方式,是指将已有的样本数据分成若干个子集。生成的模型也可用于为新样本划分类别。
 降维(Dimensionality Reduction):即以保持数据之间现有距离关系不变为目标,将高维数据转换为低维数据,。
此外还有一些小的算法族群比如协方差分析(Covariance Estimation)、边缘检测(Outlier Detection)等。
图1-11举例说明作为最重要无监督学习方式的聚类适用场景。它是一个银行客户的聚类示意图,其将已有的客户总体分成两个子集。在进行聚类训练后,新客户也可用已有的模型划分到相应子集。
1_11

图1-11 聚类场景举例
聚类只是提供子集划分方案,而划分的逻辑意义需要人类进行辨别。在图1-11中,从结果看算法将所有客户按存款额和贷款额的多少分为了两类。对于大多数银行来说,可能子集1对应的是普通用户,子集2对应的是重要客户。
2. 聚类算法
聚类算法仍然是当下一个不断发展领域,各种方法比较繁杂。本书主要学习目前比较成熟的几种聚类策略,它们是:
 距离切分方法(Partition Methods):是一种最基础的算法,根据特征之间的距离进行聚类划分。具体算法主要是指K-means和及其派生算法。
 密度方法(Density Methods):其通过定义每个子集的最小成员数量和成员之间距离实现划分。最典型的算法是DBSCAN,即Density-Based Spatial Clustering of Applications with Noise。
 模型方法(Model Methods):用概率模型(以高斯混合模型为典型,即Gaussian Mixture Model)和神经网络模型(SOM,Self Organizing Maps)为主要代表。其特点是不完全将样本认定为属于某子集,而是指出样本属于各子集的可能性的大小。
 层次方法(Hierarchical Methods):不像其他聚类将总体划分成彼此地位平等的多个子集,层次方法最终将数据集划分成有父子关系的树形结构。这样就可以在聚类的同时考察各子类之间的亲缘关系,比较典型的是birch模型。
3. 降维算法
如前所述,降维一般被用来压缩特征数量以便后续处理,其相对聚类来说略显抽象。本书介绍两类降维策略:
 线性降维:顾名思义用来处理线性问题。模型比较简单,包括常见的主成分分析(PCA,Principle Component Analysis)和线性判别分析(LDA,Linear Discriminant Analysis)
 流行学习(Manifold Learning):是近期学术界的热点,可以处理非线形降维。目前比较成熟的算法包括Isomap、局部线性嵌入(LLE,Locally Linear Embedding)等。
本书第4、5章分别详细讨论聚类和降维的主要算法原理与实践。

**从机器学习,到深度学习
从深度学习,到强化学习
从强化学习,到深度强化学习
从优化模型,到模型的迁移学习
一本书搞定!
**
d01b2e3c1893d577

相关文章
|
25天前
|
机器学习/深度学习 人工智能 安全
探索AI的未来:从机器学习到深度学习
【10月更文挑战第28天】本文将带你走进AI的世界,从机器学习的基本概念到深度学习的复杂应用,我们将一起探索AI的未来。你将了解到AI如何改变我们的生活,以及它在未来可能带来的影响。无论你是AI专家还是初学者,这篇文章都将为你提供新的视角和思考。让我们一起探索AI的奥秘,看看它将如何塑造我们的未来。
65 3
|
2月前
|
机器学习/深度学习 算法 测试技术
深度学习环境搭建笔记(二):mmdetection-CPU安装和训练
本文是关于如何搭建深度学习环境,特别是使用mmdetection进行CPU安装和训练的详细指南。包括安装Anaconda、创建虚拟环境、安装PyTorch、mmcv-full和mmdetection,以及测试环境和训练目标检测模型的步骤。还提供了数据集准备、检查和网络训练的详细说明。
107 5
深度学习环境搭建笔记(二):mmdetection-CPU安装和训练
|
2月前
|
机器学习/深度学习 数据可视化 计算机视觉
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
这篇文章详细介绍了如何通过可视化深度学习中每层特征层来理解网络的内部运作,并使用ResNet系列网络作为例子,展示了如何在训练过程中加入代码来绘制和保存特征图。
63 1
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
|
15天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
50 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
2月前
|
机器学习/深度学习
深度学习笔记(十二):普通卷积、深度可分离卷积、空间可分离卷积代码
本文探讨了深度可分离卷积和空间可分离卷积,通过代码示例展示了它们在降低计算复杂性和提高效率方面的优势。
69 2
深度学习笔记(十二):普通卷积、深度可分离卷积、空间可分离卷积代码
|
2月前
|
机器学习/深度学习 并行计算 PyTorch
深度学习环境搭建笔记(一):detectron2安装过程
这篇博客文章详细介绍了在Windows环境下,使用CUDA 10.2配置深度学习环境,并安装detectron2库的步骤,包括安装Python、pycocotools、Torch和Torchvision、fvcore,以及对Detectron2和PyTorch代码的修改。
170 1
深度学习环境搭建笔记(一):detectron2安装过程
|
2月前
|
机器学习/深度学习 算法 PyTorch
深度学习笔记(十三):IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU、WIOU损失函数分析及Pytorch实现
这篇文章详细介绍了多种用于目标检测任务中的边界框回归损失函数,包括IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU和WIOU,并提供了它们的Pytorch实现代码。
199 1
深度学习笔记(十三):IOU、GIOU、DIOU、CIOU、EIOU、Focal EIOU、alpha IOU、SIOU、WIOU损失函数分析及Pytorch实现
|
2月前
|
机器学习/深度学习 人工智能 算法
揭开深度学习与传统机器学习的神秘面纱:从理论差异到实战代码详解两者间的选择与应用策略全面解析
【10月更文挑战第10天】本文探讨了深度学习与传统机器学习的区别,通过图像识别和语音处理等领域的应用案例,展示了深度学习在自动特征学习和处理大规模数据方面的优势。文中还提供了一个Python代码示例,使用TensorFlow构建多层感知器(MLP)并与Scikit-learn中的逻辑回归模型进行对比,进一步说明了两者的不同特点。
73 2
|
2月前
|
机器学习/深度学习 人工智能 算法
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
玉米病害识别系统,本系统使用Python作为主要开发语言,通过收集了8种常见的玉米叶部病害图片数据集('矮花叶病', '健康', '灰斑病一般', '灰斑病严重', '锈病一般', '锈病严重', '叶斑病一般', '叶斑病严重'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。再使用Django搭建Web网页操作平台,实现用户上传一张玉米病害图片识别其名称。
63 0
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
|
2月前
|
机器学习/深度学习 计算机视觉 Python
模型预测笔记(三):通过交叉验证网格搜索机器学习的最优参数
本文介绍了网格搜索(Grid Search)在机器学习中用于优化模型超参数的方法,包括定义超参数范围、创建参数网格、选择评估指标、构建模型和交叉验证策略、执行网格搜索、选择最佳超参数组合,并使用这些参数重新训练模型。文中还讨论了GridSearchCV的参数和不同机器学习问题适用的评分指标。最后提供了使用决策树分类器进行网格搜索的Python代码示例。
80 1