【人工智能】人工智能的历史发展与机器学习和神经网络

简介: 【人工智能】人工智能的历史发展与机器学习和神经网络

你应该看过《终结者》,《机械公敌》等电影吧,但你知道为什么机器能像人一样思考吗 ?

人工智能早已不是科学幻想,它们是一种已经应用到我们生活方方面面的技术,例如:许多公司的门禁采用了人脸识别系统;医院里要利用计算机快速诊断肺部 CT 影像;在路上开车违章,会被电子烟抓拍罚款…

这里的人脸识别、CT 影像识别、车牌识别通通用到了人工智能。除此之外,手机上的各种语音助手软件、智能音响、美颜软件、短视频平台的推荐机制、电子邮件的防垃圾邮件系统都是人工智能的应用。

在未来我们要实现的自动驾驶、智慧工业等领域,人工智能是不可或缺的。如果将人工智能从我们的生活中剥离,人类恐怕要退回到三十年以前

今天我们就来聊一聊人工智能的话题,希望能让大家了解人工智能和神经网络的基本工作原理

一、人工智能的发展史

人工智能并不是一个新生的科学概念。在上古时代,东西方文明都出现了人造人的神话,到了二十世纪 30-50 年代,由于神经生物学、计算机科学、数学等学科的发展,人工智能第一次进入了科学家的视野。

1950 年,英国计算机科学家图灵提出了一个问题——机器会思考吗?

图灵提出了一种测试机器智能的标准—— 图灵测试

一个人 C 通过文字等方式,与另外一个人 A 和一个计算机 B 进行交流,他能否通过一连串的问题区分 A 和 B 哪个是人,哪个是计算机呢?如果人类无法区分出 A 和 B,那么就称为计算机通过了图灵测试。

图灵预言,到 2000 年的时候,计算机在经过五分钟的提问之后,就会骗过 30%的人类,让人相信对方是真实地人类,而非计算机。

图灵测试每年都会举办,在 2014 年的时候,终于有一个人工智能软件,被 33%的人类认为是一个 13 岁的小男孩,通过了图灵测试,这个软件叫尤金·古斯特曼。

到了 1956 年,美国计算机科学家马文·明斯基、约翰·麦卡锡以及信息论的奠基者香农等人,召开了“达特茅斯会议“,在这次会议上,人们创造出了“人工智能”这个词。从这次会议开始,人工智能进入了人大发展时代

后来,明斯基和麦卡锡都因为在人工智能领域的贡献,获得了图灵奖,而香农已经不需要图灵奖了,他的名字被命名到通信理论方面的诺贝尔奖——“香农奖”上。

从此之后的几十年中,由于算法和算力的限制,人工智能几经起落,直到 1997 年,IBM 的人工智能程序“深蓝”,战胜了雄踞国际象棋霸主 12 年的卡斯帕罗夫,人工智能迎来了第三次大发展。从这之后的二十多年里,在人工智能算法方面,涌现出许多灵魂人物,例如被誉为"深度学习之父"的多伦多大学的计算机学家——杰弗里·辛顿,他将反向传播算法(BP)引入了人工智能领域;纽约大学计算机学家——杨立昆,他最著名的工夫作是卷积神经网络(CNN),他们俩连同加拿大蒙特利尔大学计算机学家——约书亚·本吉奥共同获得了 2018 年的图灵奖

经过众多科学家的努力,在特定的领域——例如图像识别,人工智能识别率已经超过了人类。在语音识别、智能翻译等领域,人工智能也有长足的应用。现在我们上网,遇到看不懂的外文,只需要按一下“翻译”按钮就能变成汉语了。去国外旅游,也可以双方用一个人工智能软件就能交流了。

二、机器学习

计算机到底是如何做到这一点的呢?说到底,这是一个数学问题,我们先来举一个例子,“如何预测房屋的成交价格?”

如何预测房屋价格

也许我们每个人都有一种简单判断,大城市比小城市的房子值钱,市区的房子比郊区的房子值钱,学区房比非学区房值钱… 那么,你能用数学关系把它表示出来吗?

比如,在最简单的模型下,我们考虑房屋价格与面积有关,我们有了一些房屋的面积以及它们的成交价格,把数据 ( x i , y i )) 画在一张图上。从图形上看,我们发现房价和面积接近于正相关,我们希望获得一个函数关系,使得它尽量准确的表示出房价  y 与面积 x 的关系。

最简单的关系就是直线 y=wx+b,其中 w 是直线的斜率, b 是直线的截距,参数  w b 的值不一样,这条直线就能在平面内改变位置。我们希望每一个数据点都能在直线上,但实际上,这往往是做不到的。通过函数关系预测的房价 yi 和实际房价 yi 之间总是有差别的,我们用损失函数来描述这个差别

损失函数

把每一个数据点真是的价格 y 与输出的价格 y 做差,再把这些差别做平方和,如果损失的函数特别小,就说明我们的函数最贴近实际的数据。

但是,房屋的价格并不只取决于面积,我们可能有很多的输入数据,比如说每个房子都有

  • 面积参数
  • 城市参数
  • 房屋年龄
  • 位置参数

这四个参数,这个时候,我们就要在一个五维空间中寻找损失函数的最小值。

输入数据、进行计算、调整参数,这个过程就称为“机器学习”或者“训练”,加入最后找到了或者逼近预测的最优解,训练就结束了;如果还没有找到。就需要调整参数和模型。

其实,这和人类的学习过程非常相似,老话说“吃一堑长一智”也是这个问题,只是现在,我们用数学的方法把它表现了出来

三、神经网络

单层神经网络

从本质上讲,人工智能问题就是通过这种一点点调整参数的方法,寻找一个损失函数,能够从输入的值尽量准确的获得输出值。实际的机器学习问题,要比刚才的例子复杂得多。在图像识别问题上,一幅图就有上百万个像素点,就是有上百万个输入参数,为了应对这些复发的问题,科学家设计了“神经网络算法“,你在网上搜索人“人工智能“、“机器学习”、“深度学习”等关键词的时候,很可能会看到下图:

上图是一张神经网络图,其中每一个圆圈叫做一个“神经元“,神经网络的开创来源于人类对生物大脑的认识,人脑中有数百亿个神经元细胞,每个神经元细胞前方有树突用来接收信号,当树突收到刺激时,神经元会判断这个刺激大小,如果刺激足够大,神经元就会决定通过神经递质或者电信号的方法,通过突触将信号传给下一级

1943 年,美国神经科学家沃尔特·皮茨,和沃伦·麦卡洛克分析了人类神经元的结构,他们提出:人脑的神经元是一个多输入,单输出系统,而且输出只有 0 和 1 两种。 如果输出是 0,就表示上一级神经元不向下一级传递信号,如果输出是 1,就表示上一级神经元向下一级传递信号。用计算机可以模拟人的大脑,这就是所谓的“人工神经网络

通过一些操作,我们可以将一堆输入数字变成 0 或者 1 输出,只要选择的参数合适,我们就能让计算机帮助我们做一些判断题。

比如,我们给计算机一幅图:

这是一个有 25 个像素组成的纯黑白图像,我们要让计算机判断这个图像代表的是不是字母 X。

这幅图的 25 个像素相当于有 25 个输入,每个输入端要么是 0,要么是 1,于是,这张图片对于计算机来讲,就是一个 5 ∗ 5 5*5 55 的数字矩阵

如果是彩色图,每个像素点需要用 RGB 三个颜色的饱和度来表示,数据量再扩大三倍。但无论如何,计算机看来,任何一张图片都只是一组数字,只是数字有多有少而已。

将图片代表的数字输入神经网络的输入层,数据依次流过隐层,传递到输出层,输出值只可能有两种可能:0 或者 1。输出 0 代表计算机认为它不是 X,输出 1 代表计算机认为它是 X,这就完成了机器的识别过程

在训练时,我们把许多幅图片输入系统,并且告诉计算机正确的结论,这样计算机就能求出误差函数,模型越接近实际,误差函数就越小,通过梯度下降算法,计算机一次一次的调整参数不断减小误差函数,获得一组最优解,这样训练就完成了。以后,你给我一副图片,我就能很快地判断出字母是不是 X 了

多层神经网络

如果只是判断一张图是不是 X,也许一层神经元就够了,然而,显示当中我们利用人工智能翻译文章,需要认识几千个文字或者单词,并且理解语法,判断含义,只有一层神经元,没法处理现实世界如此复杂的问题。

其实,人脑中的神经元有很多层,每一层神经元又有许多个神经细胞,于是,人工智能也模仿这个结构,做了多层(深度)神经网络。多层神经网络的隐层是多层神经元,每一层中又有许多个神经元,相邻两层间的神经元两两之间都有连接,所以这种神经网络也称为“全连接网络”,它能处理更加复杂的问题 .

于是,机器就能像人一样,可以思国、思家、思社稷,赏花、赏月、赏秋香了。

不过,全连接网络最大的问题是复杂度太高了。举例来讲,如果还是判断刚才的图像是不是 X,有 25 个输入参数,假设隐层有 3 层,每层 25 个神经元,这样就有大约 2000 个参数需要优化,大家注意,这还只是一个 25 个像素的简单黑白图片。实际上,每一幅图像的像素点成千上万,又有 RGB 三种颜色,在实际训练的时候又需要使用大量的图片进行训练,在以前的计算能力下,几乎是不可能完成的任务,这也是之前人工智能陷入低估的原因之一。

后来,辛顿引入了反向传播算法,这种算法的意思是,在优化时,无需对所有参数进行优化,只需要首先考虑最后一层的参数,优化过后再看前一层参数,如此反复进行训练即可。他的工作让人工智能进入了第三次热潮。

在历史上,发生过几次工业革命,每次工业革命,都是以科学的突破和根技术的发展为基础。现在世界正处在以无线互联网、人工智能、新材料、生物科技等为代表的第四次工业革命当中,在这一次,中国人没有缺席。


相关文章
|
22天前
|
机器学习/深度学习 人工智能 物联网
通义灵码在人工智能与机器学习领域的应用
通义灵码不仅在物联网领域表现出色,还在人工智能、机器学习、金融、医疗和教育等领域展现出广泛应用前景。本文探讨了其在这些领域的具体应用,如模型训练、风险评估、医疗影像诊断等,并总结了其提高开发效率、降低门槛、促进合作和推动创新的优势。
通义灵码在人工智能与机器学习领域的应用
|
25天前
|
机器学习/深度学习 人工智能 算法
人工智能与机器学习的融合之旅
【10月更文挑战第37天】本文将探讨AI和机器学习如何相互交织,共同推动技术发展的边界。我们将深入分析这两个概念,了解它们是如何互相影响,以及这种融合如何塑造我们的未来。文章不仅会揭示AI和机器学习之间的联系,还会通过实际案例展示它们如何协同工作,以解决现实世界的问题。
|
23天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
71 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
23天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
67 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
探索人工智能与机器学习的边界####
本文深入探讨了人工智能(AI)与机器学习(ML)领域的最新进展,重点分析了深度学习技术如何推动AI的边界不断扩展。通过具体案例研究,揭示了这些技术在图像识别、自然语言处理和自动驾驶等领域的应用现状及未来趋势。同时,文章还讨论了当前面临的挑战,如数据隐私、算法偏见和可解释性问题,并提出了相应的解决策略。 ####
|
28天前
|
机器学习/深度学习 人工智能 安全
人工智能与机器学习在网络安全中的应用
人工智能与机器学习在网络安全中的应用
56 0
|
6月前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】26.卷积神经网络之AlexNet模型介绍及其Pytorch实现【含完整代码】
【从零开始学习深度学习】26.卷积神经网络之AlexNet模型介绍及其Pytorch实现【含完整代码】
|
6月前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】28.卷积神经网络之NiN模型介绍及其Pytorch实现【含完整代码】
【从零开始学习深度学习】28.卷积神经网络之NiN模型介绍及其Pytorch实现【含完整代码】
|
4月前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch代码实现神经网络
这段代码示例展示了如何在PyTorch中构建一个基础的卷积神经网络(CNN)。该网络包括两个卷积层,分别用于提取图像特征,每个卷积层后跟一个池化层以降低空间维度;之后是三个全连接层,用于分类输出。此结构适用于图像识别任务,并可根据具体应用调整参数与层数。
|
4月前
|
机器学习/深度学习 数据可视化 Python
如何可视化神经网络的神经元节点之间的连接?附有Python预处理代码
该博客展示了如何通过Python预处理神经网络权重矩阵并将其导出为表格,然后使用Chiplot网站来可视化神经网络的神经元节点之间的连接。
59 0
如何可视化神经网络的神经元节点之间的连接?附有Python预处理代码