摘要: 如今网络上充斥着大量关于神经网络的消息,可是,什么是神经网络?其本质究竟是什么?用几分钟阅读完这篇文章,我不能保证你可以成为这个领域的专家,不过你已经入门了。
如今网络上充斥着大量关于神经网络的消息,可是,什么是神经网络?其本质究竟是什么?你是否是对这个熟悉又陌生的词感到困惑?git
用几分钟阅读完这篇文章,我不能保证你可以成为这个领域的专家,但能够保证的是,你已经入门了。github
想要透彻的了解神经网络,咱们首先要知道什么是机器学习。为了更好的理解机器学习,咱们首先谈谈人的学习,或者说什么是“经典程序设计”。网络
在经典的程序设计中,做为一名开发人员,我须要了解所要解决的问题的各个方面,以及我要以什么规则为基础。架构
举个例子来讲,假设我要设计一个可以区别正方形和圆形的程序。处理方法则是编写一个能够检测到角的程序,而后计算角的数量。若是程序能检测到4个角,那么图形为正方形;若是角的我的为0,则为圆形。机器学习
那么这个机器学习有何关系?通常来讲,机器学习=从示例中学习。函数
在机器学习中,该如何区别正方形和圆形呢?这时候,咱们就要设计一个学习系统,将许多形状及类别不一样的图形做为输入,而后咱们但愿机器可以本身学习形状及类别,而后识别出不一样图形的不一样特性。post
一旦机器学会了这些属性,咱们就能够输入一个新的图形(机器之前没见过的图形),而后机器对这些图形进行分类。学习
在神经网络中,神经元是一个很奇特的名字,比较相似于函数。在数学和计算机领域,函数能够接受某个输入,通过一系列的逻辑运算,输出结果。spa
更重要的是,咱们能够将神经元看作一个学习单元。设计
所以,咱们须要理解什么是学习单元,而后再了解神经网络的基本构建块,即神经元。
为了更好的理解,假设咱们试图理解博客文章中单词数量与人们实际从博客中读取单词数量之间的关系。请记住一点,在机器学习领域,咱们从示例中学习。
所以,咱们用x表示机器收集到文章的单词数量,用y表示人们实际读到的单词数,它们之间的关系用f表示。
而后,我只须要告诉机器(程序)我但愿看到的关系(好比直线关系),机器再将会理解它所须要绘制的线。
我在这里获得了什么?
下次我想写一篇包含x个单词的文章时,机器能够根据对应关系f找到人们真正能阅读到的单词数y。
那么,神经网络究竟是什么?若是一个神经元是一个函数,那么神经网络就是一个函数网络,也就是说,咱们有不少个这样的功能(好比学习单元),这些学习单元的输入和输出相互交织,相互之间也有反馈。
做为一名神经网络的设计人员,个人主要工做就是:
1.如何建模输入和输出?例如,若是输入是文本,我能够用什么建模?数字?仍是向量?
2.每一个神经元有哪些功能?(它们是线性?仍是指数?...)
3.神经网络的架构是什么?(即哪一个函数的输出是哪一个函数的输入?)
4.我能够用哪些通俗易懂的词来描述个人网络?
一旦我回答了以上这些问题,我就能够向网络“展现”大量具备正确输入和输出的例子,神经网络学习后,当我再次输入一个新的输入时,神经网路就会有个正确的输出。
神经网络的学习原理超出了本文索要描述的范围,想要了解更多内容,请点击这里。另外你能够去神经网络专题,来更透彻的了解神经网络。
神经网络的学习是件永无止境时,这个领域的知识呈爆炸性增加,每时每刻都会有新的知识和内容更新。
最后,我贴出来一些我的认为比较好的帖子供你学习:
1.Gal Yona ——我最喜欢的博主之一。她的文章涵盖了核心技术解释到半哲学评论。
2.Siraj Raval——拥有大量视频的YouTuber,从理论解释到动手实践教程,应有俱有!
3.Christopher Olah ——一位充满激情和洞察力的研究员,他的博客涵盖了神经网络的基础到深刻探索。
4.Towards Data Science 是神经网络领域中最大的Medium出版物,建议你天天抽出几分钟的时间来阅读,你会得到意想不到的收获。
本文为云栖社区原创内容,未经容许不得转载。