task1机器学习数学基础
作业:
试编写程序完成下述工作:
1) 为不同的a,b取值,绘制该函数的3D表面。请问 a,b取值对该表面形状有大的影响吗?,所谓大影响就是形状不再相似。
2) 编写一个算法来找到它的全局最小值及相应的最小解,并在3D图中标出。分析一下你的算法时空效率、给出运行时间。
1)
a/b分别取值-2到2,图形如下:
a/b分别取值-1到1,图形如下:
形状分类:
b<0:
b>=0:
2)
用梯度下降法求解最小值
f(x) = (a - x1)2 + b(x2 - x12)2
对x1求导,
df1 = 2 * (a - x1) * (-1) + 2b * (x2 - x12)(-2 * x1)
= 2(x1-a) +4bx1*( x12 - x2)
对x2求导,
df2 = 2b*(x2 - x12)
最小解如下图所示:
time consuming: 6.623468637466431s