1. 深度学习:
基于卷积神经网络的深度学习(包括CNN、RNN),主要解决的领域是 图像、文本、语音,问题聚焦在 分类、回归
也就是我们经典的各种神经网络算法。
图1:深度学习适用领域
图2:吴恩达预知的未来五年的主战场-迁移学习
深度学习的局限性:
1. 表达能力的限制。
因为一个模型毕竟是一种现实的反映,等于是现实的镜像,它能够描述现实的能力越强就越准确,而机器学习都是用变量来描述世界的,它的变量数是有限的,深度学习的深度也是有限的。另外它对数据的需求量随着模型的增大而增大,但现实中有那么多高质量数据的情况还不多。所以一方面是数据量,一方面是数据里面的变量、数据的复杂度,深度学习来描述数据的复杂度还不够复杂。
2. 缺乏反馈机制。
目前深度学习对图像识别、语音识别等问题来说是最好的,但是对其他的问题并不是最好的,特别是有延迟反馈的问题,例如机器人的行动,AlphaGo 下围棋也不是深度学习包打所有的,它还有强化学习的一部分,反馈是直到最后那一步才知道你的输赢。还有很多其他的学习任务都不一定是深度学习才能来完成的。
3. 模型复杂度高。
以下是一些当前比较流行的机器学习模型和其所需的数据量,可以看到随着模型复杂度的提高,其参数个数和所需的数据量也是惊人的。
1). 随着模型复杂度的提高,参数个数惊人。
2). 在新情况下模型泛化能力有待提高。
3). 训练模型的海量的标记费时且昂贵。
4). 表达能力有限且缺乏反馈机制
2. 强化学习:
强化学习,其所带来的推理能力是智能的一个关键特征衡量,真正的让机器有了自我学习、自我思考的能力。
主要应用
- 游戏 AI 领域( AlphaGo);
- 机器人领域;
图 4::David Silver 将强化学习理解为一种交叉学科
强化学习是主要包含四个元素:
对象(Agent): 也就是我们的智能主题,比如 AlphaGo。
环境(Environment): Agent 所处的场景-比如下围棋的棋盘,以及其所对应的状态(State)-比如当前所对应的棋局。 Agent 需要从 Environment 感知来获取反馈(当前局势对我是否更有利)。
动作 (Actions) : 在每个State下,可以采取什么行动,针对每一个 Action 分析其影响。
奖励 (Rewards) : 执行 Action 之后,得到的奖励或惩罚,Reward 是通过对 环境的观察得到。
输出:Next Action
3. 迁移学习:
可参考腾讯云的一篇博文:https://cloud.tencent.com/developer/article/1005176
迁移学习的来源是关注的场景缺少足够的数据来完成训练,在这种情况下你需要通过迁移学习来实现模型本身的泛化能力,也就是说当前场景数据集和label不多,但是相关的数据集多,同时也比较类似,所以可以用来掺和在一起增加数据集的量。
图3:迁移学习和传统机器学习
迁移学习的必要性和价值体现:
1. 复用现有知识域数据,已有的大量工作不至于完全丢弃;
2. 不需要再去花费巨大代价去重新采集和标定庞大的新数据集,也有可能数据根本无法获取;
3. 对于快速出现的新领域,能够快速迁移和应用,体现时效性优势;
迁移学习算法的思路:
1. 通过原有数据和少量新领域数据混淆训练;
2. 将原训练模型进行分割,保留基础模型(数据)部分作为新领域的迁移基础;
3. 通过三维仿真来得到新的场景图像(OpenAI的Universe平台借助赛车游戏来训练);
4. 借助对抗网络 GAN 进行迁移学习的方法;
图5:迁移学习的四种常见的解决方法
- 基于样本的迁移学习
- 基于特征的迁移学习
- 基于参数/特征的迁移学习
- 基于关系的迁移学习