hi
大家好
欢迎回来
我们这一节还是继续基于神经网络的人工智能系统
那么在这一节当中
我们来介绍监督学习和非监督学习这两种
机器学习的方法
那么首先我们在上周其实已经介绍过了一些
监督学习的一些人工智能的算法
那么什么是监督学习
所谓的监督就是一开始会有一批训练的数据
而这个训练的数据是由人工已经标定好这个标签
或者说标定好信息的
我说这样的一个数据符合什么样的一个特征
这是由人工是先给他标定好标做了这种标注的
数据样本
然后通过机器学习的方法来进行训练
得到训练之后
我们会得到一个模型
其实所谓的模型就是有一个类似于黑盒子一样的东西
我们有数据进去
然后分类出来的结果就能出来
如果我们训练好
通过标定的数据训练好一个模型之后
我们就可以用这个模型来预测新的样本
预测然后得到这个结果
那么所谓的预测就是我有新的数据进来的时候
通过这个模型
我就能够知道新的数据具有哪些特征
当然我们前面举的这个例子
用手写数字识别的例子
就是一个很典型的监督学习的这么一个样例
那么在监督学习当中应用主要会有两种
一种是称之为分类
分类就是通过标定的数据
一些标定的数据
然后我们把这个标定的数据进行划分
比如说在这个例子当中分成了两类
一个是圈
一个是叉
那么训练好了
完成了这个模型之后
我们有一个新的数据进来的时候
比如说五角星
这个五角星进来以后
因为五角星根据它的数据的值
他在这个坐标上
X1X2这个坐标上
他应该在这个地方
那么在这个地方
因为我们已经做了把数据进行了分类
所以我们就可以自动的预测五角星它所属的类型
它一定不是圈
而是叉
所以这是分类
那么分类的应用有很多
那么其中也有一种应用是用来自动的去识别
我们的遥感卫星遥感影像
它的土地利用的类型
那么左边是一个遥感影像
那么遥感影像你通过
如果你只是用计算机算法去处理的话
是很难知道哪个地块它是什么样的一个类别
那么首先我们在监督学习当中
就会有标定一批很典型的遥感影像
在遥感影像当中
把一些水体的部分
农田的部分建筑的部分做好标记
那么这样最终通过监督分类的方法
就可以得到其它的其他遥感影像的当中的水体
农田和建筑
这样就可以进行标注出来
就是一个分类的应用
这样通过标注少量的这种数据
那么将来大量的数据
未来的数据都可以得到自动的分类
这是一个监督学习的一个典型的应用
那么分类当中一些相关的方法
比如说第一有支持向量机
那么所谓的支持向量机
别看这个术语
听起来特别的陌生
实际上所谓的支持向量机就是希望能够找到
因为我们这有两个分类
比如说这个例子当中有两个分类
那么在这两个分类当中
我们希望类别之间他的差别比较显着
如果说我们通过标定
然后通过训练
然后发现这两类靠的比较近的时候
那么很多的新来的数据如果落在混淆的区间里头
那就很难去判断它到底是哪一类
所以我们需要把样本的间隔间隔
宽度的间隔最大化
那么当然我们通过旋转这个直线
通过旋转这个直线
然后就能够找到一个最宽的区间
如果用于支撑最宽的区间的样本的点
就称之为支持向量
那么支持向量机有发展了很多的算法来寻找最宽的区间
那么这样就能够使得分类更加的典型
那么新的数据到来的时候
它的类别的归属就不容易被混淆
第二个是分类是用一般的决策树的方式来进行分类
那么所谓的决策树也很简单
就是在每一个节点上都会有一个判断的一个规则
那么比如说我们在这就有一个很简单的一个
对于水果的一个分类树
那么第一个
首先比如说判断它的颜色
如果这是绿色红色和黄色
那么如果是红色
那么直接就判定为苹果
那么如果是绿色的话
那么再去判断它的尺寸
如果这个尺寸大
那就是青柠
如果尺寸小就是葡萄
那么如果颜色是黄色
我们去判断它的形状
如果形状是圆的
那么它就是柠檬
如果它的形状是细长的
就是香蕉
当然这是一个很简单的一个分类决策树的一个例子
那么在实际的应用当中
这些决策树他所形成的分类器会特别的复杂
会形成一个特别大的一个决策树
那么这是第二个分类决策树
第三种用于分类的方法
就是我们的神经网络的方法
那么这个在我们前面的手写数字识别的例子当中
我们已经看到了
通过多层的神经网络
那么由有标定的样本的数据进行作为输入
然后最终输出就是这个分类
就是能够把新的经过训练之后
我有新的一个图像
比如说我手写了一个数字
一个图像
然后进入这个模型之后
然后输出的就是被分成十类
其中它会被归到其中的一类
这就算是识别出这个数字出来了
这是分类的神经网络的方法
那么监督学习的第二种应用是用于回归所谓的
回归
其实就是有一大批的样本数据的时候
我拟合出一个曲线出来
当然最典型的是一条直线
那么再把这个直线的参数获得了之后
我们就认为我们的训练样本数据遵循直线的分布
那么一旦遵循直线的分布之后
这个模型就生成了
当然新来了一个数据
比如新来了一个750
那么我们直接就用直线方程把750所对应的
价格给它计算出来
那么这个就可以自动地预测出
当面积是750的时候
它的销售价格是多少
那么这种就叫做回归
让他遵从一个规律
然后当我新的数据来了以后
能够通过这个规律来计算出一个值来
这就是回归
那么回归的应用
其实很多一个很有趣的应用
就是所谓的颜值计算
那么颜值计算就是通过人脸的好看程度
先有一批的人脸
人的照片
让专家或者说感兴趣的人
或者说大众来投票
生成一个它的好看度的一个指标
比如说从0到100
那么标定好这些分数之后
然后经过的监督学习的训练
得到了一个颜值预测的一个模型
然后将来这有一个回归模型
将来你要想知道自己的颜值是多少
你们把自己的照片拍一张照片
输入到这个模型里面去
那么这个模型通过回归就能够弥合出得到你
自己这张新的照片
他的颜值是多少
这就是一个回归的一个很典型的应用
那么回归就是它的预测值是一个连续值
就是当我有新的数据进来的时候
它会计算出一个新的对应的属性出来
跟这个分类是不一样的
分类是新的数据进来
他会得出一个一系列分立的这种类别的
ID它是分是归属于这个类还是那个累
他是离散的
那么回归它是一个连续的是一个函数的计算方法
那么对于回归来说
它也有相关的一些方法
比如说线性回归
那么主要就是在平面上
如果有一系列的数据点的话
那么我们去拟合出一个这个线性的函数就是一条直线
我们会计算出一个直线方程出来
那么这个直线当然它要符合我们每个数据点到
直线的距离
他的总和是最小的
那么这就算是拟合出来
将来有新的数据点来的时候
我们自动就通过直线的方程计算出它所对应的
这个值
这是线性回归
当然了也有所谓的最邻近的方法
那么也就是我用新的数据进来以后
我用最相似的训练样本来预测新的样本值
我就看哪些样本离它最近离它最相似
然后再用样本所对应的数值
或者经过插值
或者是经过平均来预测新的样本值
这是所谓的最邻近方法
最邻近方法也有一定的道理
当然第三种也可以用神经网络的方法
那么神经网络的方法也可以好几层的这种网络
当我训练数据完成了之后
我新的数据输入到神经网络里
它输出就能够得到一个连续的一个值表征
你所对应的属性
那么这是监督学习
那么如果说有一个领域
我们所得到的数据特别的多
到人工也没有办法去标注
因为人去标注的话是挺辛苦的一件事情
效率也很低
你还要去遇到
要处理
比如说标注错误的情况
所以如果有一些情况
所有的数据我只有一些样本数据
但是它没有完全没有通过人去标定
这个怎么办
当然也不是没有办法
那么像这种就称之为非监督的学习
非监督学习
我们实际上虽然这个数据没有经过标注
没有经过标签
但是我们可以发现这个数据的一种分布的一种
结构
比如说最典型的结构就是它会一些数据会自动
的聚集在一起
那么这样其实所谓的它会在一个数据空间当中
这些数据会聚集在一起
其实说明它们本质上这些数据是比较类似的
所谓的
物以类聚
人以群分
所以像这样的数据的这种聚集
其实也说明了数据之间的一种典型的一种关系
所以我们把这些没有标签
没有标注过的数据分成一个一个的这种组合
这就称称作为聚类
那么非监督学习一般就用来处理聚类
我们叫发现一个类别
那么聚类的案例
比如说在google新闻当中
现在很多搜索引擎它都会推出一个新闻的一个
页面
当然这个新闻页面不是由不是像其他的专门的
新闻网站
或者说新闻客户端一样
它是由人工整理出来的
他有自己的新闻编辑
他每个编辑负责一个频道
这个人专门去搜寻这些新闻
然后把它贴到上去
搜索引擎里头所出的新闻的页面
那么都是由算法自动去搜索
然后自动的分成几十个不同的组
比如像商业组科技组体育组
然后把这些新闻都一一的列在这些组下面
那么这些新闻的页面
这种新闻的聚合
完全不需要人去干涉干预它
那么这就是非监督学习的一个典型的例子
那么当然也有我们另外一些我们可以通过游客
在景点进行微博签到的时候
微博签到的时候
大量的数据
我们把这些大量的数据进行一个聚类
我们实际上通过他的地点
通过他的空间位置
就能够自动的提取出不同景点它的位置分布
出来
我们比如说从这个图上我们可以看到这里有一
条街道
它是一个具体的景点
然后在这有用户的有很多游客的聚集在这也有
聚集
那么把这些聚集都进行进行聚类了之后
我们就会发现这里是景点
我们就可以得到一个景点的一个分布图
而这些所有的数据并不需要去人工去标标定
他比如说并不需要说有一个微博
你要去分析这个是某某景点
然后再把新的数据归到那一类去
这不需要
所以这也是一个非监督学习的一个典型的案例
当然非监督学习还会有更多我们意想不到的用
的这些典型的案例
比如说一个很典型的一个很难解决的问题
所谓的鸡尾酒会的问题
也就是说当你在满是人的房间里边
大家相互进行对话的时候
这个背景声就是特别的嘈杂
有很多人来说话
那么你就很难
传统的自然语言的分析
语音识别的程序就很难去识别出来
到底这个话是谁讲的
是讲的什么话
但是我们可以用非监督学习的聚类分析
我们把这个环境当中的所有的话全都录下来
之后
实际上可以用非监督学习的算法
就能够把某一个人的所说的话
进行一个聚类
然后从嘈杂的房间当中可以得到某一个人所说
的话
然后另外一个人所说的话
这样持续的一个流
那么这个也是非监督学习当中聚类的一个典型的案例