最近在学习机器学习的课程——Stanford coursera Andrew Ng 机器学习,由于自己以后方向的需要,编程语言为python,所以在对视频中例子代码中所包含的函数需要进行了解。
(1)函数optimset()
官方函数解释网址:https://octave.sourceforge.io/octave/function/optimset.html
options = optimset (par, val, ...) # 返回options,其中包含使用一个或多个名称-值对组参数设置的指定参数。
例子中 options = optimset ('GradObj', 'on', 'MaxIter', '100');
其中,‘GradObj’是视频中用户自己定义的梯度函数;‘on’是把这个梯度函数提供给上述的算法;‘MaxIter’表示最大的迭代次数;‘100’是上述视频中设置最大的迭代次数为100。
(2)函数fminunc()
官方函数解释网址:https://octave.sourceforge.io/octave/function/fminunc.html
[x, fval, info, output, grad, hess] = fminunc (fcn, …) # 该函数是对指定的目标函数进行优化,使其达到最小化
例子中 [optTheta, functionVal, exitFlag] = fminunc (@costFunction, initialTheta, options);
其中,@costFunction是视频中用户自定义函数;initialTheta是用户自定义函数中输入参数theta,由于需要赋值给自定义函数所以需要初始化;options是(1)中返回的值。将值带入后输出optTheta为optimal value of theta,即最佳的θ值;functionVal为当θ取最佳值时,J(θ)的值;exitFlag表示J(θ)函数的收敛状态,1为收敛,0为未收敛。
为了记录自己的学习进度同时也加深自己对知识的认知,刚刚开始写博客,如有错误或者不妥之处,请大家给予指正。
斯坦福大学ML课程链接:https://www.coursera.org/learn/machine-learning