当前位置: 首页 > news >正文

建设京东商城网站射洪网站建设工作室

建设京东商城网站,射洪网站建设工作室,怎么接游戏推广的业务,58同城网站建设案例梯度检测没有实现。有借鉴网上的部分 导入相关库#xff0c;读取数据 因为这次的数据是mat文件#xff0c;需要使用scipy库中的loadmat进行读取数据。 通过对数据类型的分析#xff0c;发现是字典类型#xff0c;查看该字典的键#xff0c;可以发现又X#xff0c;y等关…梯度检测没有实现。有借鉴网上的部分 导入相关库读取数据 因为这次的数据是mat文件需要使用scipy库中的loadmat进行读取数据。 通过对数据类型的分析发现是字典类型查看该字典的键可以发现又Xy等关键字。 import numpy as np import scipy.io as sio from scipy.optimize import minimize from sklearn.preprocessing import OneHotEncoder#读取数据 path ./ex4data1.mat data sio.loadmat(path) # print(type(data)) # print(data.keys()) X data.get(X) Y data.get(y).flatten() # X np.insert(X,0,values1,axis1) # print(Y.shape) # print(Y) one-hot编码 在之前没有涉及神经网络的方向传播等时可以直接将Y降维。 而在神经网络中需要对Y进行编码使每一个y值都是一个10维的向量 #one-hot编码 encoder OneHotEncoder(sparseFalse) Y_onehot encoder.fit_transform(Y.reshape(-1,1)) 随机初始化 当使用高级优化算法或者梯度下降算法时需要对向量进行赋值。 第一种想法是全部设为0在逻辑回归中是完全被允许的但在训练神经网络时这种初始值起不到任何作用。因为这会导致第二层激活项的值完全相同因为前一层的权重相同这个问题称为对称权重问题。 为了解决这个问题我们采用随机初始化的方法也就是将每一个都初始化为一个范围在中的一个随机数。 #初始化参数 input_size 400 hidden_size 25 num_labels 10 lamda 1size (input_size1)*hidden_size(hidden_size1)*num_labels params np.random.uniform(-1.2,1.2,size)序列化 因为到后面优化的时候fun和jac参数要求代价函数和梯度的第一个参数必须为一维向量所以这里需要序列化。 #序列化 def serialize(theta1,theta2):return np.r_[theta1.flatten(),theta2.flatten()] def deserialize(params):return params[:(input_size1)*hidden_size].reshape(hidden_size,input_size1),params[(input_size1)*hidden_size:].reshape(num_labels,hidden_size1)theta1,theta2 deserialize(params) 前向传播 同上一题一致的前向传播 #前向传播 def feed_forward(params,X):theta1, theta2 deserialize(params)a1 np.insert(X, 0, valuesnp.ones(X.shape[0]), axis1)z2 a1 theta1.Ta2 1/(1np.exp(-z2))a2 np.insert(a2,0,values1,axis1)z3 a2 theta2.Th 1/(1np.exp(-z3))return a1,z2,a2,z3,h 代价函数 不需要正则化 公式如下 #代价函数 def cost_func(params,X,Y,lamda):theta1, theta2 deserialize(params)a1,z2, a2, z3, h feed_forward(params,X)m len(X)cost -np.sum(Y * np.log(h) (1-Y) * np.log(1-h))/mreg (np.sum(np.power(theta1[:,1:],2)) np.sum(np.power(theta2[:,1:],2)))* lamda/(2*m)return regcost 反向传播 相关公式如下 #反向传播 def sigmoid_gradient(z):return 1/(1np.exp(-z))*(1-1/(1np.exp(-z)))def gradientReg(params,X,Y,lamda1):theta1, theta2 deserialize(params)m len(X)a1, z2, a2, z3, h feed_forward(params,X)delta3 h - Ydelta2 delta3 theta2[:,1:] * sigmoid_gradient(z2)Delta2 delta3.T a2 / mDelta1 delta2.T a1 / mtheta1[:, 0] 0theta2[:, 0] 0regDelta1 Delta1 (lamda / m) * theta1regDelta2 Delta2 (lamda / m) * theta2return serialize(regDelta1,regDelta2) 优化 fmin minimize(funcost_func,x0params,args(X,Y_onehot,lamda),methodTNC,jacgradientReg,options{maxiter: 400}) 预测 a1,z2,a2,z3,h feed_forward(fmin.x,X) y_pred np.argmax(h,axis1) y_pred y_pred 1 acc np.mean(y_predY) print(acc)准确率达到了98.64% --------------------------------------------------------------------------------------------------------------------------------- 可以先将数据可视化展示手写数字。 def one_image(X):pick_one np.random.randint(5000)image X[pick_one,:]fig,ax plt.subplots()ax.imshow(image.reshape(20,20).T,cmapgray_r)plt.xticks([])plt.yticks([])plt.show()one_image(X) def more_image(X):pick_more np.random.choice(len(X),100)images X[pick_more,:]fig,ax plt.subplots(nrows10,ncols10, figsize(8, 8), sharexTrue, shareyTrue)for i in range(10):for j in range(10):ax[i,j].imshow(images[10*ij].reshape(20,20).T,cmapgray_r)plt.xticks([])plt.yticks([])plt.show() more_image(X) 最后可以使用上面写出的函数将隐藏层可视化。 thetafinal1, thetafinal2 deserialize(fmin.x) hidden_layer thetafinal1[:, 1:] more_image(hidden_layer)
http://www.dnsts.com.cn/news/59723.html

相关文章:

  • 工程信息网站有哪些广州住房与建设网站
  • 免费推广网站工具建网站有报价单吗
  • 有哪些网站可以免费推广松江品划网络做网站
  • 佛山新网站建设价格一般设计网站页面用什么软件
  • 中小型网站建设代理商西宁做网站最好的公司哪家好
  • 网站建设竞标书wordpress 锚点应用
  • 合肥专业网站优化韩国优秀网站设计
  • 江宁城乡建设局网站推荐电子商务网站建设
  • 广州哪里可以做网站wordpress 切换域名
  • 三站合一网站营销淘宝网做宝贝详情用哪个网站
  • 如何熟悉网站项目的逻辑长沙免费建站网络营销
  • 文章网站建设免费seo在线优化
  • 公司换网站换域名 备案移动优化课主讲:夫唯老师
  • 做体育的网站许昌网页制作
  • 东莞网站建设qq群免费黄页营销网站
  • 自动化的网站建设知名品牌vi设计案例
  • 网页制作教程pdf北京seo公司有哪些
  • 语音网站怎么做国家网站建设的相关规定
  • 公司没注册可以做网站吗3g门户网站
  • 南宁网站建设gxskm网站首页title
  • php做p2p网站源码用什么网站开发
  • 黄冈个人网站建设平台福州做网站哪家好
  • 重庆网站建设合肥公司wordpress 评论者邮箱
  • 鞋网站建设方案软件工程考研难度大吗
  • 蓝色大气网站欣赏推广方案格式模板范文
  • wordpress两个站点文章同步枣阳网站定制
  • 金华网站建设公司网站和公众号的区别是什么意思
  • 济南免费网站建站模板佛山行业网站设计
  • 搜索网站程序网站技术开发
  • 郑州企业建站策划不用域名也可以做网站