Python编程实现的简单神经网络算法示例


Posted in Python onJanuary 26, 2018

本文实例讲述了Python编程实现的简单神经网络算法。分享给大家供大家参考,具体如下:

python实现二层神经网络

包括输入层和输出层

# -*- coding:utf-8 -*-
#! python2
import numpy as np
#sigmoid function
def nonlin(x, deriv = False):
 if(deriv == True):
  return x*(1-x)
 return 1/(1+np.exp(-x))
#input dataset
x = np.array([[0,0,1],
    [0,1,1],
    [1,0,1],
    [1,1,1]])
#output dataset
y = np.array([[0,0,1,1]]).T
np.random.seed(1)
#init weight value
syn0 = 2*np.random.random((3,1))-1
print "三水点靠木测试结果:"
for iter in xrange(100000):
 l0 = x       #the first layer,and the input layer
 l1 = nonlin(np.dot(l0,syn0)) #the second layer,and the output layer
 l1_error = y-l1
 l1_delta = l1_error*nonlin(l1,True)
 syn0 += np.dot(l0.T, l1_delta)
print "outout after Training:"
print l1

这里,

l0:输入层
l1:输出层
syn0:初始权值
l1_error:误差
l1_delta:误差校正系数
func nonlin:sigmoid函数

这里迭代次数为100时,预测结果为

Python编程实现的简单神经网络算法示例

迭代次数为1000时,预测结果为:

Python编程实现的简单神经网络算法示例

迭代次数为10000,预测结果为:

Python编程实现的简单神经网络算法示例

迭代次数为100000,预测结果为:

Python编程实现的简单神经网络算法示例

可见迭代次数越多,预测结果越接近理想值,当时耗时也越长。

python实现三层神经网络

包括输入层、隐含层和输出层

# -*- coding:utf-8 -*-
#! python2
import numpy as np
def nonlin(x, deriv = False):
 if(deriv == True):
  return x*(1-x)
 else:
  return 1/(1+np.exp(-x))
#input dataset
X = np.array([[0,0,1],
    [0,1,1],
    [1,0,1],
    [1,1,1]])
#output dataset
y = np.array([[0,1,1,0]]).T
syn0 = 2*np.random.random((3,4)) - 1 #the first-hidden layer weight value
syn1 = 2*np.random.random((4,1)) - 1 #the hidden-output layer weight value
print "三水点靠木测试结果:"
for j in range(60000):
 l0 = X      #the first layer,and the input layer
 l1 = nonlin(np.dot(l0,syn0)) #the second layer,and the hidden layer
 l2 = nonlin(np.dot(l1,syn1)) #the third layer,and the output layer
 l2_error = y-l2  #the hidden-output layer error
 if(j%10000) == 0:
  print "Error:"+str(np.mean(l2_error))
 l2_delta = l2_error*nonlin(l2,deriv = True)
 l1_error = l2_delta.dot(syn1.T)  #the first-hidden layer error
 l1_delta = l1_error*nonlin(l1,deriv = True)
 syn1 += l1.T.dot(l2_delta)
 syn0 += l0.T.dot(l1_delta)
print "outout after Training:"
print l2

运行结果:

Python编程实现的简单神经网络算法示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python中关于日期时间处理的问答集锦
Mar 08 Python
举例详解Python中循环语句的嵌套使用
May 14 Python
Fiddler如何抓取手机APP数据包
Jan 22 Python
python模拟Django框架实例
May 17 Python
python3爬取各类天气信息
Feb 24 Python
pandas 使用apply同时处理两列数据的方法
Apr 20 Python
详解python爬虫系列之初识爬虫
Apr 06 Python
windows下python虚拟环境virtualenv安装和使用详解
Jul 16 Python
django 中QuerySet特性功能详解
Jul 25 Python
pycharm工具连接mysql数据库失败问题
Apr 01 Python
python实现图像外边界跟踪操作
Jul 13 Python
pytorch 6 batch_train 批训练操作
May 28 Python
Django使用httpresponse返回用户头像实例代码
Jan 26 #Python
Django rest framework基本介绍与代码示例
Jan 26 #Python
Python实现PS图像调整之对比度调整功能示例
Jan 26 #Python
Python实现PS滤镜特效之扇形变换效果示例
Jan 26 #Python
修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法
Jan 26 #Python
Python实现PS滤镜功能之波浪特效示例
Jan 26 #Python
Python使用pickle模块存储数据报错解决示例代码
Jan 26 #Python
You might like
一个目录遍历函数
2006/10/09 PHP
php 将字符串按大写字母分隔成字符串数组
2010/04/30 PHP
PHP获取MAC地址的函数代码
2011/09/11 PHP
PHP数学运算与数据处理实例分析
2016/04/01 PHP
WordPress JQuery处理沙发头像
2009/06/22 Javascript
Prototype Class对象学习
2009/07/19 Javascript
基于jquery的$.ajax async使用
2011/10/19 Javascript
防止文件缓存的js代码
2013/01/10 Javascript
jQuery简单实现隐藏以及显示特效
2015/02/26 Javascript
jQuery实现自动调整字体大小的方法
2015/06/15 Javascript
javascript实现3D切换焦点图
2015/10/16 Javascript
基于JavaScript实现移动端TAB触屏切换效果
2015/10/20 Javascript
js 动态给元素添加、移除事件的实现方法
2016/07/19 Javascript
jquery 删除节点 添加节点 找兄弟节点的简单实现
2016/12/07 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
EasyUI Datebox 日期验证之开始日期小于结束时间
2017/05/19 Javascript
jquery实现放大镜简洁代码(推荐)
2017/06/08 jQuery
67 个节约开发时间的前端开发者的工具、库和资源
2017/09/12 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
[02:40]2018年度DOTA2最佳新人-完美盛典
2018/12/16 DOTA
Python实现抓取城市的PM2.5浓度和排名
2015/03/19 Python
启动Atom并运行python文件的步骤
2018/11/09 Python
python basemap 画出经纬度并标定的实例
2019/07/09 Python
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
Java提供了哪些企业应用编程接口
2015/02/13 面试题
建筑施工实习自我鉴定
2013/09/19 职场文书
市场营销毕业生自荐信
2013/11/23 职场文书
计算机通信工程专业毕业生推荐信
2013/12/24 职场文书
细节决定成败演讲稿
2014/05/12 职场文书
财会专业毕业生自荐信
2014/07/09 职场文书
大学生国庆节65周年演讲稿范文
2014/09/25 职场文书
升学宴答谢词
2015/01/05 职场文书
三年级上册科学教学计划
2015/01/21 职场文书
煤矿安全生产管理协议书
2016/03/22 职场文书
班干部竞选演讲稿(精选5篇)
2019/09/24 职场文书
MySQL 发生同步延迟时Seconds_Behind_Master还为0的原因
2021/06/21 MySQL