来自《老饼讲解神经网络》:www.bbbdata.com
神经网络在各个领域都有应用,主要看使用者如何发挥,从什么角度去发挥。这里是一个例子,有助于大家了解神经网络的基本应用。
一. 问 题:
已知系统A有一个输出y,它受输入x1和x2的影响。当知道x1和x2的值时,求y的值。
二. 难 点:
由于不知道系统的内部构造关系,因此不能用基于机理分析的方法获得 y 与 x1, x2之间的数学表达式。
三. 神经网络解决方法:
(1) 获取历史数据
虽然无法构造符合机理的模型,但我们仍然可以通过反复在系统输入 x1,x2,获得一系列x1,x2与y的对应值。例如如下:
输入系统的数据:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
x1 | -3 | -2.7 | -2.4 | -2.1 | -1.8 | -1.5 | -1.2 | -0.9 | -0.6 |
x2 | -2 | -1.8 | -1.6 | -1.4 | -1.2 | -1 | -0.8 | -0.6 | -0.4 |
10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | |
x1 | -0.3 | 0 | 0.3 | 0.6 | 0.9 | 1.2 | 1.5 | 1.8 | |
x2 | -0.2 | -2.22 | 0.2 | 0.4 | 0.6 | 0.8 | 1 | 1.2 |
对应输出的数据:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | |
y | 0.6589 | 0.2206 | -0.1635 | -0.4712 | -0.6858 | -0.7975 | -0.8040 | -0.7113 | -0.5326 |
10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | |
y | -0.2875 | 0.0000 | 0.3035 | 0.5966 | 0.8553 | 1.0600 | 1.1975 | 1.2618 |
(2) 训练一个神经网络模型使它符合历史数据的输入输出关系。
设计一个神经网络模型,用这些数据反复去训练神经网络(就像反复教小孩子读书一样),使神经网络在输入x1,x2时,能尽量准确的输出y。
如 x1=0.3, x2=0.2时,y的值是0.3035.
在训练好的网络中,预测到的值为0.3097.
这样,即使我们没有符合机理的数学模型,但我们仍然可以得到这样一个依据历史数据训练出来的模型,使它符合历史数据的预测。
(3) 模型使用
对于新的数据,我们就可以用该模型去预测了(对新数据准不准是我们另外要讨论的话题)
四.详细过程
详细过程见: 《 一个简单的BP神经网络例子》
相关文章