简易神经网络代码测试
来源:互联网 发布:java打印功能 编辑:程序博客网 时间:2024/06/02 07:03
import numpy as np #非线性sigmoid 函数 def sigmoid(x): return 1.0/(1.0+np.exp(-x))#sigmoid 函数的导数def dsigmoid(y): return y * (1 - y) X = np.array([[1,1,0], [1,0,1], [0,1,0], [0,1,1]]) y = np.array([[0], [1], [0], [1]]) # 初始化权重值 np.random.seed(1) w0 = 2*np.random.random((3,4)) - 1 w1 = 2*np.random.random((4,1)) - 1print("x.shape=",X.shape) print("y.shape=",y.shape)print("w0.shape=",w0.shape)print("w1.shape=",w1.shape)print("++++++++++ start +++++++++++")for i in range(200): # 三层网络 L0 = X L1 = sigmoid(np.dot(L0,w0)) # 4行3列 * 3行4列 = 4行4列 L2 = sigmoid(np.dot(L1,w1)) # 4行4列 * 4行1列 = 4行1列 # 反向传播 L2_loss = y - L2 L2_delta = L2_loss * dsigmoid(L2) L1_loss = L2_delta.dot(w1.T) L1_delta = L1_loss * dsigmoid(L1) # 修改权重 w1 += L1.T.dot(L2_delta) w0 += L0.T.dot(L1_delta) if (i% 20) == 0: print('L2=\n',L2) print("loss:" + str(np.mean(np.abs(L2_loss))))
结果:
x.shape= (4, 3)y.shape= (4, 1)w0.shape= (3, 4)w1.shape= (4, 1)++++++++++ start +++++++++++L2= [[ 0.52285196] [ 0.54384086] [ 0.46307467] [ 0.48895696]]loss:0.488282204733L2= [[ 0.43087433] [ 0.7261144 ] [ 0.37317214] [ 0.5975844 ]]loss:0.370086916587L2= [[ 0.20177665] [ 0.87495685] [ 0.20840768] [ 0.75482148]]loss:0.195101498689L2= [[ 0.11297297] [ 0.92818356] [ 0.1413619 ] [ 0.84438893]]loss:0.120440593708L2= [[ 0.0787109 ] [ 0.94872581] [ 0.11005604] [ 0.88313687]]loss:0.089226065843L2= [[ 0.06128527] [ 0.95938241] [ 0.09196822] [ 0.9042201 ]]loss:0.0724127449157L2= [[ 0.05076403] [ 0.96593555] [ 0.080062 ] [ 0.91759667]]loss:0.0618234525323L2= [[ 0.04369948] [ 0.97040169] [ 0.07154877] [ 0.92693377]]loss:0.0544781972979L2= [[ 0.03860816] [ 0.97365931] [ 0.06510925] [ 0.9338786 ]]loss:0.0490448764646L2= [[ 0.03475039] [ 0.97615208] [ 0.06003704] [ 0.93928146]]loss:0.044838470162
阅读全文
0 0
- 简易神经网络代码测试
- 如何用9行Python代码编写一个简易神经网络
- cifar10神经网络训练测试及代码解析
- Tensorflow建立简易神经网络
- PHP "十二五" 简易 BLOG 代码- 未测试- 01
- PHP "十二五" 简易 BLOG 代码- 未测试- 02
- PHP "十二五" 简易 BLOG 代码- 未测试- 03
- PHP "十二五" 简易 BLOG 代码- 未测试- 04
- PHP "十二五" 简易 BLOG 代码- 未测试- 05
- PHP "十二五" 简易 BLOG 代码- 未测试- 06
- PHP "十二五" 简易 BLOG 代码- 未测试- 07
- PHP "十二五" 简易 BLOG 代码- 未测试- 08
- PHP "十二五" 简易 BLOG 代码- 未测试- 09
- PHP "十二五" 简易 BLOG 代码- 未测试- 10
- Java连接PostgreSQL数据库(安装环境 + 简易测试代码)
- 室内清扫机器人环境搭建与算法测试简易代码
- 卷积神经网络(CNN)简易教程
- caffe 11 win10 简易神经网络
- git之初始化仓库上传代码
- 为什么使用go语言,它的优势在哪?
- Scala操作符$
- Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)
- linux下用yum安装mysql,修改后报错2800解决办法
- 简易神经网络代码测试
- VS 2017 众多重构插件
- 【Python 学习笔记】各种生成器
- 系统服务控制
- 数组排序后剔除重复元素
- 【Java笔记】Java抽象类与继承的部分理解
- 笔试题 | 数据挖掘岗位 | 数据结构、数据处理
- Python2.7+pytesser简单验证码的识别
- 深入理解Java的接口和抽象类