当前课程知识点:新城市科学 > 6. 机器学习、人工智能与深度学习 > 6.2 机器学习 > 课程视频
然后机器学习
首先来说一下什么是机器学习
机器学习它其实是一个
相对比较纯粹的领域
它的领域是研究什么呢
机器学习研究的算法
是能够使用经验自动改进性能的
这样的一种算法
是为什么
这个定义是1997年的时候
提出来的这样一个定义
这个定义是什么样
就是如果你单独这么看的话
其实没有一个感觉的
但是在搞算法的人 搞计算机的人
仔细来想这个东西是很有讲究的
因为计算机的算法
对于一个算法定义的话
它要有确定输入
就必须有确定的输出
而且给定确定输入 确定输出之后
这个算法必须得能停机
它不是无限循环的
这是对算法的一个必然的要求
而机器学习这个算法
它就不太一样了
它是要使用经验而改进性能
也就说这个算法
我先写好了一个算法之后
然后它跑过
它运行一次之后会有一个性能
这个性能是A
但是我拿到一些历史的所谓经验
经验是什么呢
就是拿到一些历史数据
来对它进行运行之后
也就是所谓的训练过程之后
这个算法就又会发生相应的改变
然后我们再去跑一次的话
它的性能就是B
而B要比A的性能要好
其实就是这样一个过程
也就是说它要有一个性能的提升
通过经验性能提升
这个就是学习的一个过程
机器学习是用数据及以往的经验
以此优化计算机程序性能的标准
就是criterion
实际上是一种准则
要求性能的criterion
它翻译成标准了
就是它对性能的一种度量
就是这样一个概念
所以说机器学习的方法
通常都会有两步
第一步是学习 第二步是使用
机器学习的范畴
边界还是相对比较明确的
机器学习分成三种
第一种叫做有监督学习
有监督学习
它包括分类问题和回归问题
这个分类问题
就比方说我有一个数据集
这个数据集里面有X
每个数据有一个X和有一个Y
我要建模的是什么呢
是X和Y之间的一个关系
比方说Y=f(X)
或者是说给定X之后
Y属于某一类的概率P
这样两个东西
这个东西的话
实际上就是XY之间存在的
有一种关系
我在使用这个模型
训练这个模型的时候
是给出训练集的XY
然后获得一个Y等于f(X)
这样的一个关系的模型
然后在使用的时候的话
我就没有Y了
我给出X来预测Y
这就是有监督学习的过程
之所以叫有监督
是因为它在这里面
有一个训练的时候
它是有一个监督
就告诉它这个东西是什么
你是什么
比方说我们预测
拿到身高体重
然后去预测这个人是男的
还是女的
这是有
我拿到全班所有人的身高体重
然后又告诉这个人的男和女
然后来标签去预测
这个就是有监督学习的一个过程
对应于有监督学习的是什么呢
是无监督学习
无监督学习它是说我希望
它又称为聚类问题
其实是连续的 叫做降维问题
离散的无监督叫做聚类问题
是这样的
比方说它是这样
它输入的话就是一个X
然后要得到一个X
和它对应标签Y的一个函数
得到这样一个函数
然后输出一个Y
但是它并不知道Y是什么
是这样一个问题
它现在里面比方说
同样还是男女的一个问题
那么我这个模型可能要做的事情
就是给定一组人的身高 体重
我去把它聚类 聚成两类
第一类可能是个子高 然后体重大
第二类是个子低 体重小
那它背后对应的是什么呢
这个就很难解释
我们可能需要通过观察数据
给出一定的解释
可能个子高 体重大的是男的
然后个子低 体重小的 这是女的
这是有可能
当然也有可能是什么
个子大然后身体体重高是高中生
个子小 体重低的是初中生
这也有可能
这完全有可能的
这个事情实际上
现在来说
我们经常用的是有监督学习
就是学界很多工作
我们应用的时候
很多时候要用有监督学习
它的性能很好评价
但是真正在知识发现里面
无监督学习
其实有非常大的一个作用
所以现在的无监督学习
其实是一个前沿方向
还有一个现在特别火热的
一个是强化学习
Reinforcement Learning
强化学习我其实叫它
我理解强化学习
和有监督学习的区别
我一直知道
但是我深刻理解它的时候
还是经过了一些过程
我自己做研究的过程
我觉得它的一个特点是什么呢
有监督学习就是告诉它
你输入输出之后
它对应的标签是什么
无监督学习
是不告诉它标签对应什么
这个强化学习是什么
它告诉你这个标签好不好
就好像说大家做选择题
我ABCD选完了之后
有监督学习告诉你选了A
我告诉你错了 应该选B
这叫有监督学习
ABCD选完了
选完了交上去 啥也不知道了
那就是无监督学习
然后ABCD选完了
它告诉你 选完这道题错了
对的是什么
不知道 我不告诉你 不公布答案
这种其实就是强化学习
这个就是说这样
你看 它这里面其实
标准定义就是有一个Agent
它要观测一个环境
然后根据这个环境给它的状态
它给出一个action
这个action的话
看到action
环境给它一个reward
就是给它一个奖励
这个奖励就是高和低
比方打游戏之类的
这个点我稍微展开讲一讲
因为去年没有讲这个
今年我想叠加一点内容
比方说这有一个Agent
所谓Agent就是一个算法
就是一个模型
然后环境 得到一个环境
然后看到环境之后
它会有个观测给出
根据观测的话
这个观测又叫状态
根据观测给出一个行为
然后这个行为会改变环境
然后环境会给它一个奖励
比方说这个机器人看到一杯水
然后它给出一个行为
它一脚把这水踹翻了 打翻了
这就是它的一个行为
我们的环境会告诉它这样做不好
你不要这么做
然后这个时候它得到一个惩罚
接下来这个环境变了
它看到了一堆水
然后它把这水拖干净了
然后我们环境又给它说
你这样做非常好
然后它在这里面就会学会
没准学成一个家政机器人了
就是这样的一个过程
所以这里面其实它有两个特点
第一就是它得到的是状态
对它的一个分数 好还是不好
并不是说告诉你你要去拖地
不告诉它这个事情
就说你这样做不好
第二点就是说
你的行为可能会改变环境
有可能会改变环境
我的行为和环境之间
是一个交互性的行为
但第二点并不是必须的
有些时候的话只要有第一点
我们就可以用强化学习
比方说我们最常见的一个应用
我们知道的AlphaGo
就是强化学习的一个例子
它是怎么做的呢
它看见一个棋盘之后
然后它做一个行动 下一步棋
然后接着环境就给它一个
看到别人的环境
比方说李世石 看见他
又给他回着下了一步棋
然后下到这个
然后它看到之后的话
它又走了一步
它每步这么走
一直走走走 走到头之后的话
每走一步的时候
其实都没有到结局
大多数情况下奖励都是0的
直到最后
如果赢了奖励是1
失败奖励是负1
这就是一个下棋的过程
但是你可以想象一个问题
李世石训练这一盘下来的话
李世石已经累得够呛了
如果说这个训练的过程
他要下好几百万盘
要有个人陪他下死了
这人也受不了
所以他想了个办法怎么呢
一个是这样的话
另外这个环境是什么
环境是另外一个Agent
两个Agent互相下棋
这个Agent下完了之后
第一个Agent
是另外一个Agent的环境
另外一个Agent是它的环境
互相这样下
然后下的过程中逐步下出来的
当然它中间的过程中怎么去下
还有很多很多的技巧
但是它本质上就是自己互相下棋
到最后给它一个得分
尤其是AlphaGo Zero
它就是说不这么下
AlphaGo的时候的话
它前面还有一个
有监督学习的过程
就是它先跟着棋谱学
比方说它先看到当前的局面
然后棋谱跟它说你应该下5至5
然后下一步它就学了一个5至5
然后下一步它再看到一个局面
它说3至3
然后它就下一个3至3
你去反复地告诉它
看到某个局面下一步应该怎么走
先去学了一大溜
然后再让它自己下
这是AlphaGo
AlphaGo Zero就把这步抛弃掉了
AlphaGo还是先跟老师学
学完了之后然后再去下
然后AlphaGo Zero
就把这步抛弃掉了
就直接从零开始
就从傻蛋开始
从什么都不会开始下
然后从第一步互相走走走
一直到最后胜利
这样去下 互相下
最后发现
人千百年积累下来的棋谱
AlphaGo把机器人给带歪了
还没有
如果不去用人去做前面这个训练
性能会比以前更好
现在号称深度强化学习
就是David Silver他认为
深度学习的大牛
他就认为未来的人工智能
就等于强化学习加深度学习
这是强化学习的一个概念
我们最近也有个挺好玩的
强化学习工作
就是使用强化学习
然后去看看
到底在金融市场上
我们到底应该去买哪些
投资的标的物
然后每次投了
亏了就少买点 赚了就多买一点
就这样去迎合市场
好 刚才说完这个是机器学习了
机器学习就是三个概念
有监督 无监督和强化
当然现在又有弱监督学习
半监督学习
它也都是这样一个范围内的
然后下面说模式识别
模式识别是什么呢
模式识别它是通过计算机
用数学方法来研究模式
自动处理和判读
它其实是一个识别的过程
它希望
比方说
它关心的问题都是这样的
像计算机视觉在里面
人脸识别 文字识别
然后生物特征识别 文本分类
是这样的一些东西
它很侧重于这种识别
虽然模式识别有些人认为
机器学习的应用就叫模式识别
应用的机器学习叫模式识别
当然了
但是总体上来说模式识别的社群
就是学术界的Community
他都是在研究像人脸识别
然后手生物特征识别
就像人脸 虹膜 指纹
然后还有语音识别这些东西
都是研究这些内容
这里面的话
他们很长一段时间在做什么呢
这个工作是机器学习
他要做一个事情就是特征工程
他大量地从数据里面提特征
因为我们真正拿到的数据
是这样的
就比方说对于一个人来说的话
我们在互联网公司经常看到
你已经被
互联网公司比你还知道你
是什么样的
你已经变成了
当你一个
你看上去是一个ID
一个手机号 一个ID的时候
可能它已经知道是女性
然后几点起几点睡
然后喜欢瑜伽 有孩子
爱看电影 用什么化妆品
一系列东西
打了非常非常详细的标签
这些标签的话就是特征
有一个过去来说的话是
模式识别很长一段时间
就是认为选择非常好的特征
越好的特征
我后面接一个简单的
很简洁的机器学习分类器
我就能够得到很好的一个性能
这是模式识别常做的一件事情
而这个就是特征工程
真正我们希望要做的
其实这个就是说我们原始的数据
但原始数据肯定不是这样组织的
没有给你一个问卷调查
你上了百度它给你个问卷调查
你把这所有表填一遍 没干这事
你上去的话
就是你不小心
在那儿搜了几个东西
然后又用了几天他的APP
然后用了之后
然后他回去之后
给你总结成这个样子了
这个过程是个特征工程
但这种特征工程其实并不难
真正难的特征工程是什么呢
是图像
当你面对这个图像的时候
如果你把它所有的图像
一个像素一个像素
抻成一个非常非常长的向量
扔进去
效果会非常差
因为什么呢
这种图像数据最大的特点就是
若干个特征
就是若干个像素组合起来的时候
它形成了一个结构
这个结构里面
包含了非常丰富的信息
比方说这个人的脸 鼻子
你光看那一小块
你根本不知道是谁
你光看这眼睛你哪知道他是谁
但是你看脸上一小块就知道了
所以你怎么才能把这个特征
提出来
非常难
深度学习之前的话
这个性能通常都是
很大的一段时间
二分类的性能
都百分之六十几 七十几
也就非常差的性能
还有就是语音 声音
声音提取出来就是这么一堆信号
你怎么把它提取出来
这个里面其实是数据的一大类
这一类数据
都是非常适合深度学习
大家记得
不是所有的问题
都适合深度学习的
这种数据
用决策树或随机森林是最好的
随机森林性能一般是最好的
而这样的这种数据的话
都是深度学习一般会最好
这是一个普遍规律
这种数据的一个特点是什么呢
它每一条你看上去都有语义
比方她常去星巴克
你不需要其他的东西
你就知道她常去星巴克
这种数据我们其实是独立特征的
这种就是说什么呢
它这种叫序列数据
它的特征是蕴含在各个
一个一个数据之间的相互关系上
这种是非常难的一件事情
自从深度学习干出来了之后
那就不再搞前面这个
像特征提取 特征选择
先要提一大堆特征
提完特征还要选
有些特征好使 有些特征不好使
这事基本都不用干了
全部交给机器了
过去是很难的
机器学习的这块你什么水平高
模式识别什么样的水平什么样
我发现一个新特征
这个特征帮助我人脸识别
提升了一个百分点
这个就很厉害
但是现在
然后你去反复试不同的特征
这非常累
现在深度学习来了
你不用试特征了
直接把原始图片扔进去
我就给你提特征
但是过去设计特征的这些工作量
全部变成了
怎么去设计一个网络结构了
这些点上拼成一个向量
就是特征点
它首先要有标准脸
然后这标准脸之间一些特征点
然后把这个特征点
再做一系列东西
很麻烦
现在有了深度学习
不需要测这个东西
都不需要了
直接学习大规模的图片
对 然后下面就说一下
就是说我自己教的这门课
叫数据挖掘
数据挖掘这门课的话
跟前面这几位同仁比起来
我们就看上去非常伪科学
为什么
它的严谨表述是这样的
它的一个严谨表述
就显得很不严谨
当然这个是开个玩笑
我自己在这个方面要吃饭的
数据挖掘是从大量的 不完全的
有噪声的 模糊的 随机的
这灰的都是不好的词
实际应用数据中提取
隐含在其中的
人们事先不知道的
但又潜在有用的知识和信息
和知识的一个过程
就是这样一个定义
它并不像机器学习那样
定义得就很清楚
它是什么呢
我一般是这么理解的
就是说它面对的是这种实际问题
插班生应该读几年级
买哪只股票可能更挣钱
怎么才能把这化妆品
卖更多的化妆品
它其实是贯穿了从信号感知
到信号预处理 数据预处理
特征提取
一直到实际预测这样一个过程
当你看到一篇
机器学习文章的时候
通常很简单粗暴
就是说我设计了一个什么算法
某某算法非常重要
但是它有什么区别
我设计这个新算法
改进了它这个点
然后怎么怎么怎么样
然后加了几个正则项
加了什么东西
它的性能比以前好了
然后在五六个标准数据集上一测
性能提升 这就完事了
但是在数据挖掘的时候
通常会是什么样
他的文章就是说
某某某问题非常非常的重要
比方说我经常就看举这个例子
我们面对的是什么的话
得到的需求是打赢蓝天保卫战
这个事情我们接着要琢磨
接下来就说
怎么样打赢蓝天保卫战
首先气候环境非常恶化
有很多问题
在这里面的话
关于空气质量的预测
是非常重要的
在空气质量预测这个点上
它有哪些特点
这个问题的特点是说
它的数据来源
它受到因素影响很多
比方说有人类活动因素
天气因素 地理环境的因素
还有这种连接的因素
然后它存在的挑战是说
现在的这种样本标注点
都非常稀疏
我们想做更细粒度的
现在都是几平方公里
甚至几十平方公里一个监测站
我们想做500米乘500米
或者一平方公里这样的
一个精细化的PM2.5的预测
我们怎么去做
这是先把问题定义清楚了
定义好问题之后的话
根据这个问题我设计了一个模型
然后这个模型解决了一个问题
最后比起来
如果不用我这个模型
用其他模型来解决我这个问题
会怎么怎么样
所以说数据挖掘
就是这样一个过程
实际上数据挖掘和我们
真正搞数据挖掘的人才会和
像城市这样的 交通这些领域的人
做一些结合
是因为数据挖掘的核心
是做知识发现
我们这个领域最好的一个会
叫KDD
Knowledge Discovery
in Database
或者in Data
我们的期刊也是《TKDE》
Transactions on Knowledge
and Data Engineering
知识与数据工程
其实它的核心地方就是说
从原始的数据变成知识
这个知识其实就是它有预测性
或者有一定解释能力的一些东西
它要么能解释 要么能预测
就是这样从数据中获取知识
为决策应用提供支撑
数据挖掘的一个特点
数据挖掘其实是一个交叉科学的
一个领域的
它要有相关数据库技术 统计学
然后机器学习 人工智能
高性能计算等等
然后总体上来说
讲数据挖掘的这个
首先它会
还有一些就是
讲数据挖掘这门课的时候
它一般有三个方面的内容
第一个方面就是
要认识一下数据 数据长什么样子
然后我们怎么去把数据的特征
做一些特征工程
通常我们怎么做特征工程
是这样的一个事情
第二个东西的话就是会讲
由数据库引发出来的
这种关联规则挖掘
像这样一系列的
一系列传承就是
数据挖掘最早是从数据库技术
演化而来的
然后紧接着还就是讲机器学习
由于机器学习的一个入侵
使得机器学习
成为数据挖掘非常重要的一部分
所以我们会讲大量的
机器学习的模型
然后比方说
而且我们是讲分类预测之类
会讲分类
就是有监督讲一部分
无监督讲一部分
但我们通常不怎么讲强化学习
因为强化学习
其实强化学习
在本科的机器学习里面
讲得也不多
然后除此之外
我们还会讲一些特殊的问题
比方说我们会非常关注异常检测
异常检测的特点是什么呢
就是某一类数据量特别少
比方说我现在
当时就说拍片子
看识别这个片子里面
是不是肺部的片子里面
有没有肿瘤
这是一个问题
后来我们刚开始会以为
有肿瘤人很少
大多数人没肿瘤
这是我们知道
后来发现根本不是这样
是反过来的
因为我们去肿瘤医院拿的片子
就没有人说
今天我去肿瘤医院做了个体检
没有人干这个事的话
都是在别的医院发现有问题
才去肿瘤(医院)
所以90%的都是有问题
甚至99%有问题 1%没有问题
你怎么把它
完全非常不均衡的情况下
怎么去做这个问题
这是我们去
也是会关注的问题
还有一点就是说
通常做数据挖掘的人
会有一个领域方向
他会主攻某一个应用领域
他不光是说机器学习
或者说我们主攻某一种类型模型
但是我们会关注某个应用领域
像我本身就会关注城市
或者是时空数据分析
在这里面什么是人工智能
人工智能我的感觉是这样
人工智能可以认为
计算机出现之后
人们的一个宏伟的目标
我自己说搞生物学的人
他的终极目标是希望
能够创造一个生命
人来创造一个生命
就是说人去复制一个生命
但这件事情我们做不到
而搞计算机的人通常希望呢
说我们的一台机器
能不能像人一样有智能
跟我们一样对话
这实际上是我们的一个愿景
所以说它出现的时候是什么
人工智能是1940年出现的
这个时候计算机刚发明没几年
然后人们就开始想
是不是能做人工智能了
机器学习1946年出现
这都是非常早的
因为人工智能
他很快就觉得
要有机器学习的方法
当时说实话计算机的水平
都没有现在电子表强
但是当时人们就认为
是不是能去做人工智能
相信在未来可能有量子计算机
生物计算机等出现的时候
他们看今天
我们所谓的超级计算机的话
也觉得这个计算能力
简直不值得一提
但那个时候
今天他们看
我们也就希望来做人工智能
未来都会有这样
相对来说机器学习数据挖掘的话
就比较晚一些了
还很年轻的一个领域 是80后
为什么80后呢
是因为过去来说机器学习
虽然发展了很长时间
但是由于没有充足的数据
大家很多的关心的是算法
而当数据量
80年代以后
我们的数据量逐步增多了
我们越来越多的信息系统
把真实世界的数据收集来了之后
机器学习就从一个象牙塔里面
走到了我们寻常的生活当中
它来解决了很多
像商业上的一些问题
工业上的一些问题
然后所以说数据挖掘就开始兴起
人工智能是有三起三落了
这个三起三落
基本上都是和神经网络
联系起来的
就是今天深度学习
像第一次神经网络
当时有一个感知机模型
当然感知机模型性能非常的
当时号称是
反正当时说是非常好
后来发现有问题
当时以为说能把坦克
就是有没有车识别得非常好
甚至车躲在树丛后面
露一点小头
它都能发现
后来发现根本不是
是因为那个照片的话
有车的照片拍得比较灰
天都是阴的
没车照片天比较晴
发现这样一个东西
后来第二次深度学习的
这就导致了深度学习
而且当时说这个不能发
异或问题都求解不了
然后第二次的话
发明这种神经网络多层感知机
然后当时
但是后来这个性能
它的训练特别慢 特别难
然后这是后来第二次衰落
第二次衰落之后
现在就是第三次兴起
而我们第三次兴起
比起第二次兴起来说
所有的技术来说
所有的技术从理论上
在这一次都已经完全研究完了
这一波浪潮
几乎没有什么新的理论出现
当时认为新发现的一些新的技巧
预训练技巧
事后发现没有用
都是原来这样的一些内容驱动的
甚至我们现在搞
我自己搞深度学习
搞一点深度学习理论研究
我们的理论研究怎么搞
就是刨坟 就是看80年代的时候
当时他们写的一些文章
发现那时候只有一层
只在一层上做
我们看能不能把它扩展到多层
就是这样去做
但是为什么这个时候
深度学习衰落了
而这个又兴起呢
很大程度上
就是因为今天我们的数据够了
过去我们的数据
不够驱动这样的一个深度模型
第二 我们计算能力够了
由于数据和计算能力
使得上一波死掉的这个神经网络
有了新的一个兴起
-1.1 城市及城市科学的发展演变
--课程视频
-1.2 新城市科学的提出
--课程视频
-1.3 相关研究机构 、期刊和课程
--课程视频
-1.4 变化中的城市
--课程视频
-课程讲义
-课后讨论
-课后练习1
-2.1 城市概念的定义
--课程视频
-2.2 城市正在发生的变化:驱动力
--课程视频
-2.3 城市正在发生的变化:产品/服务
--课程视频
-2.4 城市正在发生的变化:城市空间
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习2
-3.1 为什么强调地理思维
--课程视频
-3.2 地理思维应用的基础
--课程视频
-3.3 如何应用地理思维
--课程视频
-3.4 课堂提问
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习3
-4.1 我所理解的新城市科学
--课程视频
-4.2 新城市科学的机遇
--课程视频
-4.3 新城市科学下的规划治理
--课程视频
-4.4 新城市科学下的社区实践
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习4
-5.1 从数字孪生到数字孪生城市
--课程视频
-5.2 数字孪生城市的系统认知
--课程视频
-5.3 数字孪生城市的实践突破
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习5
-6.1 前言
--课程视频
-6.2 机器学习
--课程视频
-6.3 深度学习
--课程视频
-6.4 城市科学当中的应用
--课程视频
-6.5 课堂提问
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习6
-7.1 前言
--课程视频
-7.2 物联网(1)
--课程视频
-7.3 物联网(2)
--课程视频
-7.4 基于物联网的相关案例
--课程视频
-7.5 基于穿戴式设备的相关案例
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习7
-8.1 前言
--课程视频
-8.2 智慧城市:ICT技术驱动的空间变革
--课程视频
-8.3 智慧城市:从大脑到神经系统的改造之路
--课程视频
-8.4 城市数据:从问题洞察到管理与运营工具
--课程视频
-8.5 课堂提问
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习8
-9.1 数据介绍
--课程视频
-9.2 商圈识别、分类与评价
--课程视频
-9.3 项目介绍与产品升级
--课程视频
-9.4 课堂提问
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习9
-10.1 人本尺度城市形态:定义
--课程视频
-10.2 人本尺度城市形态:理论
--课程视频
-10.3 人本尺度城市形态:方法
--课程视频
-课程讲义
-课外阅读
-课后讨论
-课后练习10
-11.1 大数据+城市科学
--课程视频
-11.2 计算社会科学:方法论
--课程视频
-11.3 计算社会科学:方法与议题
--课程视频
-11.4 计算社会科学:前沿应用
--课程视频
-课程讲义
-课后讨论
-课外阅读
-课后练习11
-12.1 未来城市:空间干预与数字创新
--课程视频
-12.2 未来城市:认识论和方法论
--课程视频
-12.3 案例分享
--课程视频
-课程讲义
-课后讨论
-课外阅读
-课后练习12
-课程视频
-课后讨论