机器学习

无监督学习算法有哪些?

机器学习


机器学习算法本身可以分为四类,监督学习,无监督学习,半监督学习与强化学习 。我在研究生期间,研究的是粒子群算法与学习自动机,其中后者就属于没那么出名的强化学习算法类 。当然,因为研究方向属于机器学习,因此对其他算法也有一点了解,在此给大家简单介绍几个无监督学习算法 。K-means算法k-means算法应该是最出名的无监督学习算法,中文译名聚类算法 。
算法流程是首先随机生成几个点叫做聚类中心,然后通过不断迭代来更新聚类中心位置以及围绕聚类中心的点(数据) 。在不断的迭代过程中,有些聚类中心会由于失去其拥护者(围绕其的数据)而被抛弃 。在初始化的时候,通常会选择k个聚类中心,不断迭代,直到达到优化目标结束 。这个优化目标通常叫失真代价函数或者畸变函数,当函数达到最优解(相对最优,在这类连续空间中,是不可能找到绝对的全局最优解的)或迭代资源用尽,就算达到目标 。
高斯混合模型高斯混合模型主要的特点在于可以对无标签的数据进行分组,然后再进行数据的聚类分析 。ISOmap算法这个算法属于流行学习算法中的一种 。流型学习算法对存在非线性关系的数据集的处理效果非常好,要比多元回归分析更加节约研究人员的人力 。它通过将一个低维度流型嵌入到一个高维度空间来描述数据集,是一种无监督的评估器 。
【机器学习】伪代码如下:from sklearn.datasets import load_digitsfrom sklearn.manifold import Isomapdigits = load_digits()digits.images.shape# 可视化数据集fig, axes = plt.subplots(10, 10, figsize=(8,8),subplot_kw={"xticks": [], "yticks": []},gridspec_kw=dict(hspace=0.1, wspace=0.1))for i, ax in enumerate(axes.flat):ax.imshow(digits.images[i], cmap="binary 。
什么是深度学习的监督学习?
机器学习


深度学习中的监督学习就是,给定一组训练数据,让网络学习如何把输入和输出对应上,或者说找到输入 x 所对应的输出 y 。给定的训练数据通常都是由我们人为给它加上标签的,这就是「监督」的体现 。也就是说,当网络一开始预测出来的结果与我们给定的标签不同,就会根据特定的算法来修改网络的参数,使预测结果逐渐接近我们给的标签 。
算法就像一种惩罚机制一样,它可以把网络中的一些权重往可以让预测更加正确的方向去改变 。所以简单地说,监督学习就是有人为给定某种反馈的学习方法,让网络可以自己学习出拟合我们给定的已标注数据的一个映射 。无监督学习,通俗地说,其大多数尝试是指从不需要人为注释的样本分布总提取信息,就像一个聚类一样 。无监督学习是找到数据的最佳表示,而监督学习是找到数据的最佳拟合 。
无监督学习都有哪些主要算法,各自的优缺点是什么?
机器学习


谢邀 。内容比较多,我的回答篇幅会较长些,我尽量浓缩每个知识点,把经常用的聚类算法给解释清楚,欢迎各位讨论指点 。基于划分聚类算法(partition clustering)K-means:是一种典型的划分聚类算法,它用一个聚类的中心来代表一个簇,即在迭代过程中选择的聚点不一定是聚类中的一个点,该算法只能处理数值型数据 。
优点:计算时间短,速度快 。结果容易解释,一般聚类效果还算不错;缺点:对异常值非常敏感,需要提前确定好k值其他划分聚类算法如下:基于层次聚类算法CURE:采用抽样技术先对数据集D随机抽取样本,再采用分区技术对样本进行分区,然后对每个分区局部聚类,最后对局部聚类进行全局聚类 。优点:采用随机抽样与分割相结合的办法来提高算法的空间和时间效率,并且在算法中用了堆和K-d树结构来提高了算法效率,使其可以高效的处理大量数据 。

推荐阅读