博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
梯度下降算法Python简单试验
阅读量:5253 次
发布时间:2019-06-14

本文共 672 字,大约阅读时间需要 2 分钟。

使用随机梯度下降算法简单实现了求解函数f(x,y) = x^2 + y^2 最小值

 

1 from matplotlib import pyplot as plt 2 import numpy as np 3 from mpl_toolkits.mplot3d import Axes3D 4  5 fig = plt.figure() 6  7 def partialDerivative(xy): 8     return np.array([2*xy[0], 2*xy[1]]) 9 10 def f(xy):11     return xy[0] **2 + xy[1] **212 13 xy=np.array([100,200])14 z = f(xy)15 step=0.116 delta = 0.000117 i=018 while(i<1000):19     fxy = partialDerivative(xy)20     fxy = fxy * (-step)21 22     xy = xy + fxy23 24     zxy = f(xy)25     if zxy - z < delta and z - zxy < delta:26         break27 28     z = zxy29     print(i,fxy,xy,z)30     i+=131  32 print (xy,z)

 

转载于:https://www.cnblogs.com/zds-blog/p/8866182.html

你可能感兴趣的文章
请求转发和重定向的区别
查看>>
MeshLab中插件的添加过程
查看>>
关于跨域的实验
查看>>
导航,头部,CSS基础
查看>>
Requests方法 -- 重定向操作
查看>>
项目实施流程概述
查看>>
js 判断滚动条是不是在浏览器底部
查看>>
[Python]小甲鱼Python视频第046课(魔法方法:描述符(Property的原理) )课后题及参考解答...
查看>>
win7 安装JDK7和JDK8后,卸载JDK8后出错
查看>>
Python——os(二)文件对象
查看>>
Java11实战:模块化的 Netty RPC 服务项目
查看>>
java 语言规范 java language specifications
查看>>
MySQL问题排查工具介绍
查看>>
JavaScript中事件绑定的三种方式
查看>>
多厂商JRE环境下Java执行优先原则
查看>>
UI auto程序结构组织方式
查看>>
前端随笔
查看>>
Java并发编程:Callable、Future和FutureTask
查看>>
Linux 常用命令四 rmdir rm
查看>>
使用JCMD采集JFR
查看>>