从零开始学人工智能(2)--Python · 神经网络(一)· 层

浏览: 1603

作者:射命丸咲    Python 与 机器学习 爱好者

知乎专栏:https://zhuanlan.zhihu.com/carefree0910-pyml 

最终成品的 GitHub 地址:

https://github.com/carefree0910/MachineLearning/tree/master/NN

这一章主要打算直观地说一下神经网络是什么,然后简单地介绍一个算法中的核心结构——层(Layer)。虽然扯上一些生物科学神经科学什么的可能会高大上一点,不过想了想还是算了……咳。

那么说到神经网络想到的是什么?大概是神经元和连接神经元的那些东西

但是在我们要实现的神经网络中,结构是相当不自由的。需要注意的是:

  • 神经网络是由层状结构堆叠而成的!!!

所谓的层状结构,就是一层东西(废话)。它会把上一层东西的输出当成输入,经过一番内部处理后,把输出传给下一层。我来画图说明一下:

咳。师从灵魂门,不服不打。打不过。

然后当我们实现好了这个层之后,就需要一个框架把这些层给“包装”起来。最终的目的是:

  1. 让这些层只关心输入和输出

  2. 让框架把剩下的事情都处理好

这样的话可扩展性就会比较强。我来大概画一下整个框架是怎么工作的:

嘛。

讲到这里,相信细心的观众老爷们也发现了:每一层似乎除了上图红字 Duang 的那一部分,其它部分都差不多的样子!

这里就可以运用面向对象的技巧了。具体的 Python 原理层面请参见 Python 系列的文章,这里大概说一说思路:

  1. 定义一个爸爸(……)。爸爸把层的所有东西都弄好,唯独留一个 Duang 的部分让他儿子(或女儿,以后统称孩儿 ( σ'ω')σ)自己 Duang 去

  2. 孩儿继承爸爸所有东西,同时自己弄一个 Duang 的方法

  3. 实际干活时,让爸爸专心生孩儿(……),让孩儿干活

差不多就这样 ( σ'ω')σ

当然这里面的细节相当、相当多,让我们从下一章开始慢慢讲吧!

希望观众老爷们能够喜欢~

公众号后台回复关键词学习

回复 人工智能          揭开人工智能的神秘面纱

回复 贝叶斯算法      贝叶斯算法与新闻分类

回复 机器学习          R&Python机器学习

回复 阿里数据          阿里数据系列课程

回复 Python             Python机器学习案例实战

回复 Spark               征服Spark第一季

回复 kaggle             机器学习kaggle案例

回复 大数据             大数据系列视频

回复 数据分析          数据分析人员的转型

回复 数据挖掘          数据挖掘与人工智能

回复 机器学习          R&Python机器学习

回复 阿里数据          阿里数据系列课程

回复 R                      R&Python机器学习入门

推荐 0
本文由 人工智能爱好者社区 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册