简单了解什么是神经网络


Posted in Python onDecember 23, 2017

深度学习这个词指的是训练神经网络。深代表着非常大的神经网络。那么神经网络到底是什么呢?看了这篇文章后你就会有很直观的认识了。

简单了解什么是神经网络

我们从一个房价预测的例子开始吧。因为现在房价太他妈贵了,早8年前我父母说帮我在北京买个房,我觉得不能靠家里人,所以拒绝了,现在想想,我就是个傻逼,那时候买了,我现在就不用写博客了~~

简单了解什么是神经网络

据说房价都是国人自己炒的,但除了炒作,还是有些真实因素影响着房价的,通过对这些因素进行分析,我们就可以预测房价。假设你有一个数据集(六个房屋的面积和价格)。你想要找到一个方法(即构建一个函数)来通过面积预测出价格。如果你熟悉线性回归(不熟悉也没关系,你就把它看作是一个数学理论),那么可以根据这个理论在实际数据附近画出一条直线,如上图中红色的线,它附近的蓝色的小圆圈代表着六个房子的面积与房价对应的点,即根据这条线(这个函数)来找某一个面积对应的房价,那么除了些误差外,基本上是准的。另外我们知道价格永远不会是负的,除非你是黑社会,占了别人的房子还要让别人给你钱。所以,当面积为零,价格也为零,所以上面的直线要拐个弯。你可以把上面这个根据面积来预测价格的函数看作一个非常简单的神经元网络(这几乎是最简单的神经元网络)。如右边的图,黄色的圈为一个神经元,房子的大小为x,它作为输入进入这个神经元,然后神经元输出房价y。

在神经网络相关文献中,你会经常看到这个函数(上面红色的线)。这个函数在一定时间内为0,然后突然起飞飙升。它被称为线性单元函数(ReLU ,全称为rectified linear unit)。现在不懂没有关系,后面慢慢就懂了!

简单了解什么是神经网络

上面用面积预测房价的例子是一个单神经元的小得不能再小的神经网络,通过将多个这样的神经元堆叠在一起就可以形成更大的神经网络。你可以认为一个神经元就像一个积木块,你可以通过将许多这样的积木块堆叠在一起来获得一个更大的神经网络。就房价的例子来说,如上图,影响房价的因素不仅仅只有面积,还有例如卧室的数量。除了面积,卧室的数量也决定了房屋是否适合你的家庭,例如家里有3个人或5个人。另一个因素是邮政编码。邮政编码在这里代表了地理位置,地理位置繁华,那么生活会方便一些。然后还有一个因素是学校质量等级,在中国素有学区房一说。这些因素,我们也称之为特征。根据面积以及卧室的数量,可以推算是否满足家庭大小。根据邮政编码,可以估算生活便利性,包括去学校的便利性。最后学校等级可以评估教育质量。人们在买房时会考虑这四个因素,即它们决定了房价,还有他妈的炒作,这里我们暂时忽略炒作这个因素吧。所以在这个例子中,x是代表了这4个输入,y是要预测的价格。上面左图是我们人为分析的过程,我们分析出哪些输入会影响家庭大小的匹配度、生活便利性、教育质量,进而得出心中的价格。神经网络之所以神奇的一点是,我们只需要提供输入x(面积,卧室数量…)以及想要得到的结果y(房价),以及用于训练的真实数据(上面六个房子的面积,卧室数量…以及价格),那么中间部分的家庭大小匹配度、生活便利性、教育质量都会由神经网络自己根据实际数据训练而得出,如右图。当你再次输入第7个房子的特征(面积,邮编…)后,这个神经网络会根据之前训练好的中间部分给出你最终的房价。即神经网络的内部过程取代了人类的分析过程。再举一个例子,例如当我们教小孩子认识猫时,我们拿来一些白猫,告诉他这是猫,再拿来一些黑猫,告诉他这也是猫,然后拿来一些狗,告诉他这不是猫,最后拿来一些花猫,问他,他会告诉你这是猫,但是他是怎么知道的?这个中间的判断过程是怎么样的?我们不知道。这就是为什么说神经网络很恐怖的原因——它的工作原理太像人类了——我们都不知道它内部具体是如何运作的,即我们不知道它是怎么想的,就像我们不知道小孩具体是如何分辨猫和狗的。马斯克说人工智能很危险,可能会毁灭人类也不无道理。

简单了解什么是神经网络

上面所说的中间部分的神经元称为隐藏神经元。可能你注意到了,右图的神经网络中,每一个隐藏神经元都获取了所有特征输入。左图中,是我们人的分析过程,我们分析出面积和卧室数这两个特征与家庭大小有关,而在右图中,我们把所有特征都提供给每个隐藏神经元,让神经网络自己来分析哪些特征会从哪些方面影响房价。说不定神经网络的分析比人类更高效更全面,之前看到过一个新闻,Facebook的神经网络自己发明了一种沟通方式,因为它觉得用人类的语言沟通起来效率太低~~

看完这篇文章后,你应该还是对神经网络比较朦胧…… 这就对了,如果就凭一篇文章就让你懂了神经网络,那你是天才。

以上就是本文关于简单了解什么是神经网络的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python中绑定与未绑定的类方法用法分析
Apr 29 Python
python常用函数详解
Sep 13 Python
Python三级目录展示的实现方法
Sep 28 Python
Pyspider中给爬虫伪造随机请求头的实例
May 07 Python
查看TensorFlow checkpoint文件中的变量名和对应值方法
Jun 14 Python
python样条插值的实现代码
Dec 17 Python
Python替换月份为英文缩写的实现方法
Jul 15 Python
Python3 使用pillow库生成随机验证码
Aug 26 Python
python模块如何查看
Jun 16 Python
Pytorch损失函数nn.NLLLoss2d()用法说明
Jul 07 Python
Python爬虫之App爬虫视频下载的实现
Dec 08 Python
pycharm 多行批量缩进和反向缩进快捷键介绍
Jan 15 Python
python用户管理系统的实例讲解
Dec 23 #Python
python队列通信:rabbitMQ的使用(实例讲解)
Dec 22 #Python
python3写爬取B站视频弹幕功能
Dec 22 #Python
机器学习经典算法-logistic回归代码详解
Dec 22 #Python
利用python将xml文件解析成html文件的实现方法
Dec 22 #Python
python实现数据预处理之填充缺失值的示例
Dec 22 #Python
NetworkX之Prim算法(实例讲解)
Dec 22 #Python
You might like
php短网址和数字之间相互转换的方法
2015/03/13 PHP
php自定义urlencode,urldecode函数实例
2015/03/24 PHP
关于php中的json_encode()和json_decode()函数的一些说明
2016/11/20 PHP
php插入含有特殊符号数据的处理方法
2016/11/24 PHP
JavaScript可否多线程? 深入理解JavaScript定时机制
2012/05/23 Javascript
jQuery UI 实现email输入提示实例
2013/08/15 Javascript
jquery动态添加删除(tr/td)
2015/02/09 Javascript
深入分析JSON编码格式提交表单数据
2015/06/25 Javascript
Markdown+Bootstrap图片自适应属性详解
2016/05/21 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
js实现百度搜索提示框
2017/02/05 Javascript
JS实现给json数组动态赋值的方法示例
2020/03/19 Javascript
JavaScript判断浏览器和hack滚动条的写法
2017/07/23 Javascript
js传递数组参数到后台controller的方法
2018/03/29 Javascript
Vue el-autocomplete远程搜索下拉框并实现自动填充功能(推荐)
2019/10/25 Javascript
javascript设计模式 ? 原型模式原理与应用实例分析
2020/04/10 Javascript
在Python中使用poplib模块收取邮件的教程
2015/04/29 Python
Python单例模式的两种实现方法
2017/08/14 Python
python随机在一张图像上截取任意大小图片的方法
2019/01/24 Python
Python实现京东秒杀功能代码
2019/05/16 Python
下载官网python并安装的步骤详解
2019/10/12 Python
Django 实现图片上传和下载功能
2020/12/31 Python
CSS3条纹背景制作的实战攻略
2016/05/31 HTML / CSS
澳大利亚UGG工厂直销:Australian Ugg Boots
2017/10/14 全球购物
Ever New美国:澳大利亚领先的女装时尚品牌
2019/11/28 全球购物
为什么要做架构设计
2015/07/08 面试题
商务英语专业应届毕业生求职信
2013/10/28 职场文书
工作交流会欢迎词
2014/01/12 职场文书
海飞丝广告词
2014/03/20 职场文书
客户经理竞聘演讲稿
2014/05/15 职场文书
应急管理工作总结2015
2015/05/04 职场文书
2015团员个人年度总结
2015/11/24 职场文书
五年级数学教学反思
2016/02/16 职场文书
《有余数的除法》教学反思
2016/02/22 职场文书
golang 实现Location跳转方式
2021/05/02 Golang
Vue自定义铃声提示音组件的实现
2022/01/22 Vue.js