无监督学习(Unsupervised Learning)
无监督学习(Unsupervised Learning)
聚类无监督学习
特点
- 只给出了样本, 但是没有提供标签
- 通过无监督学习算法给出的样本分成几个族(cluster), 分出来的类别不是我们自己规定的, 而是无监督学习算法自己计算出来的
K-means 聚类算法
规定
- \(c^{(i)}\): 表示\(x^{(i)}\)属于哪个cluster, 如\(x^{(1)}\)属于\(c^{(1)}\)簇, 如果\(c^{(1)}=1\), 则\(x^{(1)}\)划分在第1个类别
- \(\mu_k\): 表示第k簇的聚类中心样本点
- \(\mu_{c^{(i)}}\): 表示样本\(x^{(i)}\)所在的聚类\(c^{(i)}\)的聚类中心
- \(m\): 样本的数量
- \(n\): 特征的数量
步骤
- 从现有的样本中调出K个样本作为聚类中心(采用随机初始化的方式选择样本)
- 计算其余样本分别到这K个样本的欧拉距离
- 某个样本距离这K个聚类中心的哪个最近, 就把这个样本归为那个类别, 以此类推, 将所有的样本进行归类
- 在已经分好类的基础上, 计算出每一个类别的均值(中心), 再重复2和3步骤, 知道损失函数达到最优点(可能仅仅是达到了局部最优点(local optima), K-means算法最终聚类的结果与第1步中K的随机初始化的值后很大的关系, 因为在结束了K-means算法之后我们应该重复1-4步多次, 得到损失函数最小), 结束K-means算法
- 注意: K值的选择需要人工调整
理性的认识
- 在K-means中主要就是要\(min_{c^{(i)},\mu^{(j)}}J(c^{(1)},c^{(2)},...,c^{(m)},\mu^{(1)},\mu^{(2)},...,\mu^{(k)})\)
- 随机初始化K, K要小于m
- 在for循环中一个一个的取出样本计算出所有样本到最近的中心的距离, 保证J最小
- 在另外一个for循环中取出中心点, 移动中心点
- 重复1-3步骤
如何选择K的值
- elbow method: 画出K与J的图像, 找出凸出点, 那个就是期望的K值
- 根据实际需求划分
无监督学习(Unsupervised Learning)的更多相关文章
- 如何区分监督学习(supervised learning)和非监督学习(unsupervised learning)
监督学习:简单来说就是给定一定的训练样本(这里一定要注意,样本是既有数据,也有数据对应的结果),利用这个样本进行训练得到一个模型(可以说是一个函数),然后利用这个模型,将所有的输入映射为相应的输出,之 ...
- Machine Learning Algorithms Study Notes(4)—无监督学习(unsupervised learning)
1 Unsupervised Learning 1.1 k-means clustering algorithm 1.1.1 算法思想 1.1.2 k-means的不足之处 1 ...
- 【ML入门系列】(三)监督学习和无监督学习
概述 在机器学习领域,主要有三类不同的学习方法: 监督学习(Supervised learning) 非监督学习(Unsupervised learning) 半监督学习(Semi-supervise ...
- Unsupervised learning无监督学习
Unsupervised learning allows us to approach problems with little or no idea what our results should ...
- 1-4 无监督学习(Unsupervised Learning)
无监督学习定义: [无监督学习]中没有任何的标签或者是有相同的标签或者就是没标签.所以我们已知数据集,却不知如何处理,也未告知每个数据点是什么.别的都不知道,就是一个数据集.你能从数据中找到某种结构吗 ...
- 131.005 Unsupervised Learning - Cluster | 非监督学习 - 聚类
@(131 - Machine Learning | 机器学习) 零. Goal How Unsupervised Learning fills in that model gap from the ...
- Machine Learning分类:监督/无监督学习
从宏观方面,机器学习可以从不同角度来分类 是否在人类的干预/监督下训练.(supervised,unsupervised,semisupervised 以及 Reinforcement Learnin ...
- Machine Learning——Unsupervised Learning(机器学习之非监督学习)
前面,我们提到了监督学习,在机器学习中,与之对应的是非监督学习.无监督学习的问题是,在未加标签的数据中,试图找到隐藏的结构.因为提供给学习者的实例是未标记的,因此没有错误或报酬信号来评估潜在的解决方案 ...
- machine learning----->有监督学习和无监督学习的区别
1.有监督学习和无监督学习的区别: 1.1概述: 有监督学习是知道变量值(数据集)和结果(已知结果/函数值),但是不知道函数样式(函数表达式)的情况下通过machine learning(ML)获得正 ...
随机推荐
- sqlServer2008技术内幕笔记总结(实用的sql方法总结)
over函数的使用: 1.可以实现基于什么求和,省去group by: select xingming,xingbie,COUNT(*) over() as '总人数' from jbxx_xuesh ...
- Topshelf + Quartz2.5 创建基于windows服务
1.创建一个定时调度Quartz类 using Quartz; using Quartz.Impl; using System; using System.Collections.Generic; u ...
- 浅谈 kubernetes service 那些事(上篇)
一.问题 首先,我们思考这样一个问题: 访问k8s集群中的pod, 客户端需要知道pod地址,需要感知pod的状态.那如何获取各个pod的地址?若某一node上的pod故障,客户端如何感知? 二.k8 ...
- 最小生成树(kruscal算法)
其实kruscal算法很简单,把边从小到大排一遍,如果加入此边形成环,就不加,知道这棵树有n-1条边. 代码如下(一定要理解): #include<iostream> #include&l ...
- 在Linux环境下的卸载Oracle11G操作
1.使用SQL*PLUS停止数据库[oracle@OracleTest oracle]$ sqlplus /nolog SQL> connect / as sysdba SQL> shut ...
- Xcode9新功能
1.折叠代码 局部折叠(折叠一个函数):Command+Option+Left/Right 全局折叠(折叠当前文件下的全部函数): Shift+Command+Option+Left/Right 折叠 ...
- python merge、concat合并数据集
数据规整化:合并.清理.过滤 pandas和python标准库提供了一整套高级.灵活的.高效的核心函数和算法将数据规整化为你想要的形式! 本篇博客主要介绍: 合并数据集:.merge()..conca ...
- [SinGuLaRiTy] 高级搜索算法
[SinGuLaRiTy-1039] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 迭代加深搜索(ID) 迭代加深搜索,实质上就是限定下界的 ...
- javascript中构造器(函数)的__proto__与prototype初探
背景:最近没什么需求,快要闲出屁了,所以重温了一下js的原型,结果大有收获,且偶然看到Snandy大神的<JavaScript中__proto__与prototype的关系> 这篇文章,感 ...
- SpringMVC配置文件dispatcherServlet-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...