![企业级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=1739055872-N7wOiBD9Xkt5EK9Ohjb38fWHqxWoKhdJ-0-4a3a4915210090a94424ff4d39ed026a)
图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=1739055872-IhJEq4xJbnF0dKXiBLXuRyH7iv806Lz7-0-6b6c90d2308188071c61cfaa7ddcd13c)
图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=1739055872-BLGCMagGuBj297FUX9e70D1cTBfs0fUu-0-fa23e3839a84592dc540bb407c5813e2)
图7-3 1个隐藏层时的运行结果
从运行结果发现盘古人工智能框架的预测效果已经非常不错。
在Neuron_Network_Entry.py代码中,我们给神经元网络输入的数据是二维数组:
![](https://epubservercos.yuewen.com/A2E645/19549640608913906/epubprivate/OEBPS/Images/Figure-P108_130830.jpg?sign=1739055872-feoMFP5uBzSelG2Dsa9cpVLHiifmPq5k-0-cc9a20156aedcd138029795ea3060e0f)
二维数组有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,预测结果还不错。