写点什么

深度学习的数学(一):神经网络和深度学习

  • 2020-04-01
  • 本文字数:1535 字

    阅读完需:约 5 分钟

深度学习的数学(一):神经网络和深度学习

编者按:本文节选自图灵程序设计丛书 《深度学习的数学》一书中的部分章节。


深度学习 是人工智能的一种具有代表性的实现方法,下面就让我们来考察一下它究竟是什么样的技术。

备受瞩目的深度学习

在有关深度学习的热门话题中,有几个被媒体大肆报道的事件,如下表所示。


年份事件
2012 年在世界性的图像识别大赛ILSVRC中,使用深度学习技术的Supervision方法取得了完胜
2012 年利用谷歌公司开发的深度学习技术,人工智能从 YouTube 的视频中识别出了猫
2014 年苹果公司将Siri 的语音识别系统变更为使用深度学习技术的系统
2016 年利用谷歌公司开发的深度学习技术,AlphaGo 与世界顶级棋手对决,取得了胜利
2016 年奥迪、宝马等公司将深度学习技术运用到汽车的自动驾驶中


如上表所示,深度学习在人工智能领域取得了很大的成功。那么,深度学习究竟是什么技术呢?深度学习里的“深度”是什么意思呢?为了解答这个疑问,首先我们来考察一下神经网络,这是因为深度学习是以神经网络为出发点的。

神经网络

谈到神经网络的想法,需要从生物学上的 神经元( neuron) 开始说起。


从生物学的扎实的研究成果中,我们可以得到以下关于构成大脑的神经元的知识(1 - 2 节)。


(i) 神经元形成网络。


(ii) 对于从其他多个神经元传递过来的信号,如果它们的和不超过某个固定大小的值(阈值),则神经元不做出任何反应。


(iii) 对于从其他多个神经元传递过来的信号,如果它们的和超过某个固定大小的值(阈值),则神经元做出反应(称为点火),向另外的神经元传递固定强度的信号。


(iv) 在 (ii) 和 (iii) 中,从多个神经元传递过来的信号之和中,每个信号对应的权重不一样。



将神经元的工作在数学上抽象化,并以其为单位人工地形成网络,这样的人工网络就是神经网络。将构成大脑的神经元的集合体抽象为数学模型,这就是神经网络的出发点。

用神经网络实现的人工智能

看过以往的科幻电影、动画片就知道,人工智能是人们很早就有的想法。那么,早期研究的人工智能和用神经网络实现的人工智能有哪些不同呢?答案就是用神经网络实现的人工智能能够自己学习过去的数据。


以往的人工智能需要人们事先将各种各样的知识教给机器,这在工业机器人等方面取得了很大成功。



而对于用神经网络实现的人工智能,人们只需要简单地提供数据即可。神经网络接收数据后,会从网络的关系中自己学习并理解。

“人教导机器”类型的人工智能的问题

20 世纪的“人教导机器”类型的人工智能,现在仍然活跃在各种领域,然而也有一些领域是它不能胜任的,其中之一就是模式识别。让我们来看一个简单的例子。


例题 有一个用 8×8 像素读取的手写数字的图像,考虑如何让计算机判断图像中的数字是否为 0。


读取的手写数字的图像如下图所示。



这些图像虽然大小和形状各异,但都可以认为正解是数字 0。可是,如何将这些图像中的数字是 0 这个事实教给计算机呢?


要用计算机进行处理,就需要用数学式来表示。然而,像 例题 这样的情况,如果使用 20 世纪的常规手段,将“0 具有这样的形状”教给计算机,处理起来会十分困难。况且,如下所示,对于写得很难看的字、读取时受到噪声影响的字,虽然人能够设法辨认出来是 0,但要将这种辨认的条件用数学式表达,并教给计算机,应该是无法做到的。



从这个简单的 例题 中可以看出,“人教导机器”类型的人工智能无法胜任图像、语音的模式识别,因为要把所有东西都教给计算机是不现实的。


不过,在 20 世纪后期,对于这样的问题,人们找到了简单的解决方法,那就是神经网络以及由其发展而来的深度学习。如前所述,具体来说就是由人提供数据,然后由神经网络自己进行学习。


如此看来,神经网络似乎有一些不可思议的逻辑。然而,从数学上来说,其原理十分容易。本书的目的就是阐明它的原理。


图书简介http://www.ituring.com.cn/book/2593



2020-04-01 10:002324

评论

发布
暂无评论
发现更多内容

list的使用方式

小肉球

qt 7月月更

激情的开头,大意的结局,Python反爬加更,好友求助米哈游的API,给他安排上

梦想橡皮擦

Python 爬虫 7月月更

java零基础入门-综合案例(File类+递归)

喵手

7月月更

服务网格中 sidecar 流量治理与多协议嗅探

博文视点Broadview

微信内H5页面唤起小程序&App

南城FE

前端 微信开发 7月月更

【Debug】VS EXE运行“应用程序无法正常启动(0xc000007b)”

柒号华仔

debug 7月月更

查找——二叉排序树(一)

乔乔

7月月更

MFC|自绘CStatic刷新不及时问题

中国好公民st

c++ 7月月更

mysql进阶(三)游标简易知识点汇总

No Silver Bullet

MySQL 数据库 游标 7月月更

Room:又要写业务代码了?看看我吧,给你飞一般的感觉!

编程的平行世界

数据库 Android; android jetpack

镍氢电池的特性和使用方法(FDK镍氢电池充电机制)

不脱发的程序猿

嵌入式 汽车电子 镍氢电池 镍氢电池充电逻辑 FDK镍氢电池

如何控制css鼠标样式以及扩大鼠标点击区域

南极一块修炼千年的大冰块

7月月更

有证书有目录!|海泰密码服务平台

电子信息发烧客

python 中Mixin混入类的用法

杨彦星

Python

ArkUI常见问题汇总【系列3】

坚果

HarmonyOS Open Harmony 7月月更

【古月21讲】ROS入门系列(2)——发布者Publisher、订阅者Subscriber的编程实现+自定义话题消息编程实现

秃头小苏

ROS 7月月更

从0开始的 TypeScriptの十四:内置工具类型

空城机

typescript 7月月更

spark调优(六):大家好才是真的好——广播变量

怀瑾握瑜的嘉与嘉

spark 7月月更

浅谈 Slack Channel 支持的一些提高工作效率的特性

汪子熙

远程办公 即时通讯 SAP Slack 7月月更

深入Ceph原理包含核心算法Crush说明和通信机制原理(五)

Lansonli

云原生 Ceph 7月月更

对接企业微信,客户关系管理也可以很简单!

CRMEB

Android/Unity大乱斗-完整双方集成交互指南

芝麻粒儿

android Unity 7月月更

语音聊天源码——语音聊天源码开发设计搭建

开源直播系统源码

软件开发 直播系统源码 开源源码 语音聊天源码 语音社交软件

LeetCode-111. 二叉树的最小深度(java)

bug菌

Leet Code 7月月更

【C语言】进阶指针night

謓泽

7月月更

【LeetCode】最长的斐波那契子序列的长度Java题解

Albert

LeetCode 7月月更

QT | VS2017 + Qt5.14.2环境搭建

YOLO.

环境搭建 vs Qt Creator 7月月更

iOS中的Block(初步认识)

NewBoy

ios 前端 移动端 iOS 知识体系 7月月更

谈谈JavaScript的作用域及作用域链

南极一块修炼千年的大冰块

7月月更

Linux下QT配合OpenCV完成图像处理(实现基本的人脸检测)

DS小龙哥

7月月更

【答疑解惑】 裁员浪潮中,N+1 到底指什么?

面试官问

互联网裁员 N+1

深度学习的数学(一):神经网络和深度学习_AI&大模型_涌井良幸,涌井贞美_InfoQ精选文章