![cover](/upload/数据挖掘(机器学习).jpg)
数据挖掘:作业 06
数据挖掘:实验六 神经网络
代码地址:Github
实验目的和要求
通过在Python中的实例应用,分析神经网络的基本原理,加深神经网络前向反馈的理解,并掌握将算法应用于实际的方法、步骤。
实验内容和原理
- 在Python中完成神经网络的前向反馈的基本原理。
- 在Python中完成神经网络的后向传播的基本原理,完成参数学习。
操作方法和实验步骤
实现神经网络的前向反馈过程
请下载数据给定X_data,y_label,Theta1,Theta2,这是一个输入节点个数为400,隐藏层节点个数为25,输出节点个数为10的神经网络的数据,请利用给定的参数值Theta1,Theta2,计算该神经网络的预测值,并与给定的标签y_label值作比较,给出这组参数下神经网络的分类准确率。
实验结果和分析
def softmax(x):
m = np.max(x)
return np.exp(x - m) / np.sum(np.exp(x - m)) # 防止出现 overflow
def feedforward(weights, x):
return softmax(np.dot(np.concatenate((x, np.ones((x.shape[0], 1))), axis=1), weights.T))
def score(x, y, theta1, theta2):
x_hidden_data = feedforward(theta1, x)
pred = feedforward(theta2, x_hidden_data)
s = 0.0
for i in range(pred.shape[0]):
if y[i] == np.argmax(pred[i]) + 1:
s += 1
return s / pred.shape[0]
![image-20221102094620016](https://owen-resource.oss-cn-hangzhou.aliyuncs.com/images/image-20221102094620016.png)
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Owen
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果