回归Regression
什么是regression
存在一个函数function,当我们输入一个特征值时,输出一个预测的结果。
举几个简单的例子:
- 房价预测:输入房子的大小,我们可以得到它的房价预测值。
- 无人驾驶:输入此时的道路情况,车辆可以实时调整方向盘与油门达到平稳行驶。
当然买房买车离身为学生的我们或许还很远,但如果是游戏,每个人都或多或少接触过。在一些游戏中,我们常常会遇见千变万化的一些武器、宠物之类的,如果能提前知道它的潜力值,就能更好的避免一些资源的浪费。
提出需求
在任天堂的宝可梦中,我们希望预测宝可梦进化后的CP值来筛选优先培养的宝可梦。
解决方案
-
先设定一些参数:设宝可梦的种类为xs、CP值为xcp、HP值为xhp、重量为xw、高度为xh。
定义一个简单的mdoel:
使用线性模型,且此时仅考虑宝可梦进化前的CP值,有:
y = b + ∑ wi * xi
wi:权重weight,b:偏差bias
收集宝可梦数据对model进行训练
当我们收集足够多的数据对model进行训练时,还需要定义一个 Loss function(损失函数),通过求进化后的真实值
和进化后的预测值
之间的差,我们可以评判model的好坏:
L(ƒ) = L(w, b)
10
= ∑ ( yn - ( b + w * xcpn))2
n=1
L(ƒ)越大,表明model越不好,反