文章目录

  • 什么是人工智能
  • 什么是深度学习
    • 深度
    • 学习
  • 深度学习的入门方法
  • Tensorflow简述
  • 机器学习相关赛事
  • 国内的人工智能公司

什么是人工智能

  • 人脸识别/微软小冰 这是人工智能应用的两个例子,人工智能领域的研究包括:机器人、语言识别、图像识别、自然语言处理和专家系统等

  • 机器是如何实现人类智力的呢?
    机器主要是通过大量的训练数据进行训练,程序不断地进行自我学习和修正来训练处一个模型。模型的本质就是一堆参数,用上千万、上亿个参数来描述业务的特点

  • AlphaGo的原理
    20年前,IBM的“深蓝”计算机打败人类象棋高手的情景仿佛还历历在目。20年后,人工智能挑战最难
    的棋类——围棋棋局也成功了。那么AlphaGo是如何下棋的呢?我们知道,传统计算机的下棋方法,一般采取贪婪算法,用Alpha-Beta修剪法配合Min-Max算法。而AlphaGo采用了蒙特卡洛树搜索法(Monte Carlo tree search,MCTS)和深度卷积神经网络(deep convolutional neural network,DCNN)相结合。模型中涉及的主要网络及作用如下。

    • 估值网络(value network,也称盘面评估函数):计算出盘面的分数。
    • 策略网络(policy network):计算对于下每一个棋子的概率和胜率。它评估对手和自己可能下的位置,对可能的位置进行评估和搜寻。

    训练模型的主要过程分为以下4步。

    1. 采用分类的方法得到直接策略。
    2. 直接策略对历史棋局资料库进行神经网络学习,得到习得策略。
    3. 采用强化学习的方法进行自我对局来得到改良策略。
    4. 用回归的方法整体统计后得到估值网络。

    这里的神经网络部分都采用的是深度卷积神经网络,在自我对局的部分采用的是蒙特卡洛树状搜寻法(MCTS)。更详细的论文见谷歌公司发表在《自然》(Nature )上的论文《Mastering the game of Go with deep neuralnetworks and tree search》。

什么是深度学习

深度学习,顾名思义,要从深度学习两方面来谈

深度

深度学习的前身是人工神经网络(artificial neural network,ANN),其基本特点就是试图模仿人脑的神经元之间传递和处理信息的模式。神经网络这个词可以表示生物神经网络和人工神经网络。在机器学习中,神经网络一般特指人工神经网络。

上图是一个最基本的人工神经网络,主要有三种层组成:

  1. 输入层 input layer 输入训练数据
  2. 输出层 output layer 输出计算结果
  3. 隐藏层 hidden layer 使输入数据向前传播到输出层
  4. 深度一词没有具体的特指,一般就是要求隐藏层很多(5,10,几百甚至几千层)

人工神经网络的构想源自对人类大脑的理解——神经元的彼此联系。二者的不同之处在于:

  • 人类大脑的神经元是按照特定的物理距离连接的
  • 人工神经网络有独立的层和连接,还有数据传播方向

人工神经网络的每层由大量节点(神经元构成),层与层之间有大量连接,但是层内的神经元一半相互独立。要想使得深度学习得到的系统在遇见未知数据时也可以进行预测,需要神经元具备以下两个特性:

  1. 激活函数(activation function):一般是非线性函数,每个神经元通过这个函数将原有的来自其他神经元的输入做一个非线性变换,继续传递给下一层。激活函数实现的非线性能力是前向传播forward propagation很重要的一部分。
  2. 成本函数(cost function):用来定量评估在特定输入值下,计算出的输出结果和输入的真实值相差多远,然后不断调整每一层的权重参数,使得最后的损失值最小,这就是完成了一次反向传播backward propagation。损失值越小,结果就越可靠

神经网络算法的核心就是计算、连接、评估、纠错和训练,深度就在于不断增加隐藏层的层数和每层的神经元个数(深度),让网络变得又深又宽,使用大量数据去训练它。

学习

计算机的学习和人类的相似,平时大量做题(训练数据),不断经过阶段性考试(验证数据)的检验,用这些知识和解题方法(模型)最终走向考场(测试数据)。

  1. 分类问题(classification) 就是找出 输入数据的特征 feature输入的标记 label之间的映射关系mapping。通过标记不断纠正学习中的偏差,使得学习的预测率不断提升,这称之为有监督学习supervised learning
  2. 无监督学习unsupervised learning一般有两种思路:
    1. 训练时不为其指定明确的分类,但数据会呈现出聚群的结构,彼此相似的类型会聚集在一起。把这些没有标记的数据分成许多组合,就是聚类 (clustering);
    2. 在成功时采用某种形式的激励制度,即强化学习(reinforcement learning,RL)。对强化学习来说,它虽然没有标记,但有一个延迟奖赏与训练相关,通过学习过程中的激励函数获得某种从状态到行动的映射。一般用在游戏、下棋(如AlphaGo)等需要连续决策的领域
  3. 半监督学习 semi-supervised learning,其训练数据一部分有标记,另一部分没有标记,而没标记数据的数量常常极大于有标记数据的数量(这也符合现实,大部分数据没有标记,标记数据的成本很大)。基本规律是:数据的分布必然不是完全随机的,通过结合有标记数据的局部特征,以及大量没标记数据的整体分布,可以得到比较好的分类结果

深度学习的入门方法

深度学习入门过程图示:

  1. 数学知识
    计算机其实还是只能算,所以人工智能更多的来说还是数学问题。 训练过程其实就是在寻找合适的数学函数,定义的网络结构其实就是 一种线性/非线性函数,优化目标——损失函数loss function
  2. 经典机器学习的理论和算法
    李航老师《统计学习入门》
  3. 编程语言
    Python等
  4. 充电(外部知识获取)
    博客,笔记,微信公众号,微博新媒体资讯等,往往一些流行的新训练方法和模型会很快在这些媒体发酵,其训练神经网络采用的一些方法可能有很大的启发性。
  5. 动手
    选一个框架(Tensorflow或者Pytorch),选一个深度神经网络上手(目前的研究方向主要集中在视觉和语音两个领域。初学者最好从计算机视觉入手,因为它不像语音等领域需要那么多的领域知识,结果也比较直观。例如,用各种网络模型来训练手写数字(MNIST)及图像分类(CIFAR)的数据集。)
  6. 确定想要深入了解的领域
    可以深入某一个行业领域。例如,深入医学行业领域,做医学影像的识别;深入淘宝的
    穿衣领域,做衣服搭配或衣服款型的识别;深入保险业、通信业的客服领域,做对话机器人的
    智能问答系统;深入智能家居领域,做人机的自然语言交互;等等
  7. 遇到问题,重复前6步
    在训练中,准确率、坏案例(bad case)、识别速度等都是可能遇到的瓶颈。训练好的模型也不是一成不变的,需要不断优化,也需要结合具体行业领域和业务进行创新,这时候就要结合最新的科研成果,调整模型,更改模型参数,一步步更好地贴近业务需求。

Tensorflow简述

  • 机器学习之前,我们面对语音和图像任务大多使用基于规则的系统,依靠专家制定规则,需要许多专业领域知识;
  • 当以统计方法为核心的机器学习成为主流后,需要的领域知识就相对少了,重要的是特征工程(feature engineering),大多数工作集中在调参和根据领域经验来不断提取特征,特征的好坏直接决定了模型的性能。这种方式的缺点在于:对于文字等抽象领域,特征还相对容易提取,而对于语音这种一维时域信号和图像这种二维空域信号等领域,提取特征就相对困难。
  • 参考 The Unreasonable Effectiveness of Recurrent Neural Networks,一个有效的深度学习框架应该具有如下特性:
    • Tensor库是对CPU/GPU透明的,并且实现了很多操作(如切片、数组或矩阵操作等)。这里的透明是指,在不同设备上如何运行,都是框架帮用户去实现的,用户只需要指定在哪个设备上进行哪种运算即可。
    • 有一个完全独立的代码库,用脚本语言(最理想的是Python)来操作Tensors,并且实现所有深度学习的内容,包括前向传播/反向传播、图形计算等。
    • 可以轻松地共享预训练模型(如Caffe的模型及TensorFlow中的slim模块)
    • 没有编译过程。深度学习是朝着更大、更复杂的网络发展的,因此在复杂图算法中花费的时间会成倍增加。而且,进行编译的话会丢失可解释性和有效进行日志调试的能力。

机器学习相关赛事

  1. ILSVRC(ImageNet Large Scale Visual Recognition Challenge,大规模视觉识别挑战赛)
    ImageNet是目前世界上最大的图像识别数据库,拥有超过1500万张有标记的高分辨率图像的数据集,这些图像分属于大概22 000个类别。ILSVRC使用ImageNet的一个子集,分为1 000种类别,每种类别中都有大约1 000张图像。总之,大约有120万张训练图像,5万张验证图像和15万张测试图像。在ImageNet上,习惯性地报告两个错误率:Top-1和Top-5

    • Top-1错误率是指,预测输出的概率最高的类别,是否和人工标记的类别一致,如果不一致,此时的概率。
    • Top-5错误率是指,预测输出的概率最高的前5个类别当中,有没有和人工标记的类别一致,当5个都不一致时的概率。例如在图片分类任务下,对一张图片进行预测,输出这张图片分类概率最高的5个类别,只要有一个预测的类别和人工标注的类别标记一致,就是认为正确。当5个都不一致发生的概率就是Top-5错误率。
  2. Kaggle
    ILSVRC企业参加的居多,Kaggle这个平台则更多地面向个人开发者,成立于2010年,是一个进行数据发掘、数据分析和预测竞赛的在线平台。与Kaggle合作之后,一家公司可以提供一些数据,进而提出一个问题,Kaggle网站上的计算机科学家和数学家(也就是现在的数据科学家)将领取任务,提供潜在的解决方案。最终胜出的解决方案可以获得3万美元到25万美元的奖励。也就是说,Kaggle也是一个众包理念,利用全世界的人才来解决一个大问题。
  3. 天池大数据

国内的人工智能公司

虽然确实有泡沫,但是这个技术领域的井喷点确实来临了,剩下的就是加快科研成果向产品的转化速度。

第1章 人工智能概述相关推荐

  1. JavaSE_第1章 Java概述

    JavaSE_第1章 Java概述 学习目标 理解Java语言的跨平台实现原理 理解JDK/JRE/JVM的组成和作用 掌握配置环境变量 掌握HelloWorld程序编译并执行 1.1 JavaSE课 ...

  2. 算法设计与分析第1章 算法概述

    第1章 算法概述(穷举算法) 重要人物:Alan Turing(图灵机).Donald Knuth(TEX系统) 算法:解决问题的一种方法或一个过程 特性:有穷性(Finiteness).确定性(De ...

  3. (AI、Artificial Intelligence)人工智能概述及分类

    (AI.Artificial Intelligence)人工智能概述及分类 目录 (AI.Artificial Intelligence)人工智能概述及分类 概述: 分类 概述:

  4. 第一章 MongoDb概述

    版本修改历史 版本 修改内容 修改人 日期 1.0 创建文档 李乐 2010-6-30 第一章 MongoDb概述 集文档数据库,键值对存储和关系型数据库的优点于一身. MongoDB (名称来自&q ...

  5. 2020上半年收集到的优质AI文章 – 人工智能概述

    2020上半年收集到的优质AI文章 – 人工智能概述 图灵奖得主.AAAI候任主席展望"AI未来10年" 洞察|一图看懂AI新基建如何落地 AI产品经理入门手册(上) AI产品经理 ...

  6. 《VMware Virtual SAN权威指南》一第1章 VSAN概述

    第1章 VSAN概述 本章将把你带入软件定义的数据中心(SDDC)的世界,不过我们将主要关注存储方面.本章首先讨论软件定义的数据中心的基本前提,随后深入到软件定义的存储的概念及其相关的解决方案,例如服 ...

  7. IT项目管理总结:第一章 项目管理概述

    第一章 项目管理概述 使用项目管理的好处 –更好地控制财力.物力和人力资源 –改进客户关系 –缩短开发时间 –降低成本和提高生产率 –提高质量和可靠性 –更大的边际利润空间 –更好的内部协调 –积极影 ...

  8. 计算机网络(谢希仁第八版)第一章:概述

    1.计算机网络在信息时代的作用 三网:电信网络,有线电视网络,计算机网络. 三网融合:由于涉及多方面的利益和行政管辖权的问题,目前没有实现. Internet(译名:因特网,目前使用最广泛的译名为:互 ...

  9. 第1章 数据分析概述

    <Python数据分析基础教程>学习笔记. 第1章 数据分析概述 1.1 数据的性质 1.1.1 数据的概念 所谓数据就是描述事物的符号,是对客观事物的性质.状态和相互关系等进行记载的物理 ...

最新文章

  1. .Net运行时的相互关系
  2. android 6.0 logcat机制(三)logd处理请求log
  3. 多股回测(backtrader+quantstats+akshare)
  4. Spring Boot笔记-Hibernate中@ManyToOne及@OneToOne
  5. SYBASE中生成所有建表语句的过程
  6. 天正坐标标注显示不全_广联达导入CAD图纸不显示怎么办?
  7. vue大屏可视化布局
  8. Linux 挂载华为存储,linux扫描挂载存储
  9. access怎么做批注_添加、编辑和删除记录的方法
  10. redis 编译/调试
  11. 用手画了11张图终于搞明白了Git工作流,我怀疑你用的是假 Git
  12. [吐血推荐]超冷笑话集锦!
  13. MySQL 8.0完美卸载(windows)
  14. 金针探底技术分析(下)
  15. HTML设置水平居中的几种方式
  16. 什么是零代码开发平台,为什么企业IT应该重视?
  17. volatile关键字
  18. 【P48】锂电池充电和电源自动切换
  19. Xamarin.Android之绑定库教程
  20. HTML 常用特殊符号

热门文章

  1. css文字溢出隐藏为三个点
  2. 深入理解爬虫:网页分析||审查元素
  3. 【完美支持iOS5】iFile 1.6.1 含依赖包deb下载
  4. Netty学习之路一(大文件传输案例分析)
  5. 中国电商物流行业专项规划与发展机遇研究报告2022版
  6. 2019210025曾培圣
  7. 星载ADS-B的新进展
  8. 知乎 android studio配置svn
  9. c++二进制转十进制
  10. 本机mysql无法进行碎片整理有什么用_下列无法进行碎片整理的文件可以删除吗?...