![企业级AI技术内幕:深度学习框架开发+机器学习案例实战+Alluxio解密](https://wfqqreader-1252317822.image.myqcloud.com/cover/212/36862212/b_36862212.jpg)
7.1 盘古人工智能框架性能测试
本节展示在3个隐藏层、2个隐藏层及1个隐藏层的情况下,盘古人工智能框架的性能表现。
(1)3个隐藏层(Artificial_Intelligence_Framework_Main.py中,hidden_nodes=[8,4,2])时的运行结果,如图7-1所示。
![](https://epubservercos.yuewen.com/A2E645/19549640608913906/epubprivate/OEBPS/Images/Figure-P107_17363.jpg?sign=1739284328-XyOw5OFdwsLs2bOCIgCy6LB35zaSa9Ek-0-4561b255c0bdb875b6a09ab6a55c50ba)
图7-1 有3个隐藏层时的运行结果
(2)2个隐藏层(Artificial_Intelligence_Framework_Main.py中,hidden_nodes=[4,2])时的运行结果,如图7-2所示。
![](https://epubservercos.yuewen.com/A2E645/19549640608913906/epubprivate/OEBPS/Images/Figure-P107_17367.jpg?sign=1739284328-m951YfLmmdqc1cimuzdcIyQmIoUe3cp6-0-21306af0a3b9689d03728c3a6d219b5e)
图7-2 2个隐藏层时的运行结果
(3)1个隐藏层(Artificial_Intelligence_Framework_Main.py中,hidden_nodes=[3])时的运行结果,如图7-3所示。
![](https://epubservercos.yuewen.com/A2E645/19549640608913906/epubprivate/OEBPS/Images/Figure-P108_17377.jpg?sign=1739284328-tU5B11sLo0BpRWzvm0LNSwgh76vKwc7z-0-bf96420c0089c6d3559be8101203a230)
图7-3 1个隐藏层时的运行结果
从运行结果发现盘古人工智能框架的预测效果已经非常不错。
在Neuron_Network_Entry.py代码中,我们给神经元网络输入的数据是二维数组:
![](https://epubservercos.yuewen.com/A2E645/19549640608913906/epubprivate/OEBPS/Images/Figure-P108_130830.jpg?sign=1739284328-bVE2VL92fFq1EM1yG60lseJnASfz1pf2-0-54e35e04d51fc7ce81dfd67333bae24c)
二维数组有4行元素,每行元素有三列。第一列和第二列输入的是特征,第三列是实际值。在训练的时候,我们将第一列、第二列作为数据输入,然后让我们的深度学习框架预测第三列的结果。我们输入四行数据,每行数据包括两列特征,但并没有告诉系统第三列的值,而只是进行了前向传播的过程,将预测值与实际值进行对比之后计算误差,然后基于误差使用我们实现的算法不断进行调整,使误差越来越小,最后发现计算结果已经非常接近真实的结果。
如图7-3所示,在改进后的代码,只有1个隐藏层(Artificial_Intelligence_Framework_Main.py时,hidden_nodes=[3])的运行结果中,当Epoch=10 000即在第10 000次循环的时候,误差达到了0.000 695 671 109 492 165 7,预测结果还不错。