找了好多资料,勉强搭建起自己的简易神经网络,后面估计是基于这个的优化。 这里相当于简化了没使用偏置 参考文章: https://blog.csdn.net/jining11/article/details/88678065?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169478897716800182747019%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=169478897716800182747019&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-1-88678065-null-null.142v94chatsearchT3_1&utm_term=%E7%94%A8numpy%E5%AE%9E%E7%8E%B0%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C&spm=1018.2226.3001.4187 https://www.cnblogs.com/jsfantasy/p/12177275.html
【python手写算法】numpy实现简易神经网络和反向传播算法【1】,天语s5t
0evadmin
编程语言
2
文件名:【python手写算法】numpy实现简易神经网络和反向传播算法【1】,天语s5t
【python手写算法】numpy实现简易神经网络和反向传播算法【1】
import numpy as npdef dense(A,W):Z=np.matmul(A,W)#矩阵乘法return 1/(1+np.exp(-Z))if __name__ == '__main__':leanring_rate=100A=np.array([[200.0,17.0]])# W=np.array([[1,-3,5],# [-2,4,-6]])# b=np.array([[-1,1,2]])W1 = np.array([[0., -10, 4],[-1,3,2]])W2=np.array([[1.0],[2],[3]])b1=np.array([[-1,0,2.0]])b2 = np.array([[1.0]])hid=dense(A,W1)o=dense(hid,W2)for i in range(200):# 计算梯度o_error=1-oo_delta=(1-o)*o*(1-o)hid_error=o_delta.dot(W2.T)#这里W2转置之后才能对应上hid_delta=hid_error*(1-hid)*hid # 注意区分*和dot,*是向量点乘,dot是矩阵乘法,得到一个1乘3的delta数组print(o_error)# 更新模型参数W1+=A.T.dot(hid_delta)*leanring_rateW2+=hid.T.dot(o_delta)*leanring_rate#前向传播hid = dense(A, W1)o = dense(hid, W2)print(W1,"\n")print(hid,W2,"\n")print(o)
同类推荐
-

【Python CheckiO 题解】I Love Python!,索爱r306
查看 -

【Python CheckiO 题解】Long Repeat,w760
查看 -

【Python CheckiO 题解】Sort Array by Element Frequency,赛扬d2.66
查看 -

【Python 千题 —— 基础篇】浮点数转为整数,中国大陆身份证生成器
查看 -

【Python 学习_第2周_程序代码】金角大王培训第二周练习_购物车代码,将写的代码和老师代码比较,记录下收获...,nerovision
查看 -

【Python 必会技巧】获取字典中(多个)最大值(value)的键(key),大中电器网上商城店
查看 -

【Python 自动化】自媒体剪辑第一版·思路简述与技术方案,smart cover
查看 -

【Python-第三方库-pywin32】随笔- Python通过`pywin32`获取窗口的属性,中国进入3g时代
查看 -

【Python】Conda的安装,s5830官方(python conda如何安装)
查看
控制面板
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接