标签:f1 机器 梯度 list 学习 step grad 最优化 best
一、学习资料
北京博雅数据酷客平台大讲堂:http://cookdata.cn/auditorium/course_room/10018/
案例分析:http://cookdata.cn/note/view_static_note/24b53e7838cde188f1dfa6b62824edbb/
二、学习内容
1、机器学习模型的优化目标
2、随机梯度下降(SGD)
3、动量法(momentum)
4、二阶方法
5、实现梯度下降
简单优化函数:借助Python的匿名函数定义目标函数
f1 = lambda x1,x2 : x1**2 + 0.5*x2**2 #函数定义 f1_grad = value_and_grad(lambda args : f1(*args)) #函数梯度
梯度下降法使用迭代公式进行参数更新
def gradient_descent(func, func_grad, x0, learning_rate=0.1, max_iteration=20): path_list = [x0] best_x = x0 step = 0 while step < max_iteration: update = -learning_rate * np.array(func_grad(best_x)[1]) if(np.linalg.norm(update) < 1e-4): break best_x = best_x + update path_list.append(best_x) step = step + 1 return best_x, np.array(path_list)
标签:f1,机器,梯度,list,学习,step,grad,最优化,best 来源: https://www.cnblogs.com/hhjing/p/14379900.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。