用Python从头开始实现一个神经网络

发布时间: 2019-10-31 15:53:51 来源: 埃尔法哥哥 栏目: 科技新闻 点击: 496

在这篇文章中,我们将从头开始实现一个简单的三层神经网络,要实现这个三层神经网络,所要求的数学知识也许你不是都会,但我会试

在这篇文章中,我们将从头开始实现一个简单的三层神经网络,要实现这个三层神经网络,所要求的数学知识也许你不是都会,但我会试着直观地解释我们正在做的事情。我也会为你提供一些资源,帮助你深入理解细节。

在这里我假设你熟悉基础微积分和机器学习的一些概念,并且你知道什么是分类和正则化。最好你还稍微知道优化算法(比如梯度下降法)的工作原理。不过,即使你对上面的任何一条都不熟悉,这篇文章对你来说仍然会很有趣。;)

PS:如果你觉得这篇文章看起来稍微会有些吃力,没关系,这里有一个我朋友的人工智能教程。零基础!通俗易懂!风趣幽默!大家可以看看是否对自己有帮助,点击这里查看教程。接下来进入正文。

为什么要从头开始实现神经网络呢?即使你打算以后使用PyBrain这样的神经网络库,至少一次从头开始实现一个神经网络也是一个极具价值的练习,这会帮助你理解神经网络是怎么工作的,并且如果你想要设计出高效的神经网络模型,做一个这样的练习也是很有必要的。

需要注意的一件事情是,本篇文章的示例代码效率并不高,它的目的是易于被人理解。在下一篇文章中我将带你们探索怎样用Theano写出高效的神经网络

# 生成数据集并绘制出来

np.random.seed(0)

X, y = sklearn.datasets.make_moons(200, noise=0.20)

plt.scatter(X[:,0], X[:,1], s=40, c=y, cmap=plt.cm.Spectral)

我们生成的数据集中有两种类型的数据,分别用红点和蓝点标识了出来。你可以将蓝点视为男性患者,将红点视为女性患者,并且将x轴和y轴视为医疗方式。

事实上,这就是神经网络主要的优点之一,你不必担心特征工程,神经网络的隐藏层将会为你学习特征。

用Python从头开始实现一个神经网络
本文标题: 用Python从头开始实现一个神经网络
本文地址: http://www.chemcalstar.com/keji/2826991.html

如果认为本文对您有所帮助请赞助本站

支付宝扫一扫赞助微信扫一扫赞助

  • 支付宝扫一扫赞助
  • 微信扫一扫赞助
  • 支付宝先领红包再赞助
    声明:凡注明"本站原创"的所有文字图片等资料,版权均属车美资讯网所有,欢迎转载,但务请注明出处。
    Java程序员职业发展规划和方向以5G引领大屏AIoT时代 TCL携手中国移动共建“5G联合创新实验室”
    Top