python实现梯度下降法
2024-10-21 07:29:40
# coding:utf-8
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(-5/2,5/2,0.01)
y = -x**3+x**2+np.e+x**4 dy = lambda x:-3*x**2+2*x+4*x**3
dyy = lambda x:-6*x+2+12*x**2 a = 0.001
def sgd_func(n):
x0=-10
ady = []
for i in range(n):
# x0 = x0 -a*dy(x0)
x0 = x0 - dy(x0)/dyy(x0)
ady.append(x0)
return x0,ady x0,ady = sgd_func(10) y0 = x0**2+x0+np.e
plt.subplot(1,2,1)
plt.plot(ady)
plt.subplot(1,2,2)
plt.plot(x,y)
plt.text(x0,y0,'* min_value')
plt.show()
最新文章
- 实时数据显示--SignalR实例演示
- 自动适应iframe右边的高度
- 闲扯淡json格式与对象
- UVALive 4287 Proving Equivalences(缩点)
- 第一章 搭建Qt开发环境
- mvc存储Cookie和读取Cookie方法
- Node.js中的exports与module.exports的区分
- 【问题备注】VS2012不能输入代码,文字…
- 深入理解 Javascript 面向对象编程(转)
- 接口自动化测试:参数化封装(excel文件读取)
- Ajax实现xml文件数据插入数据库(一)--- 构建解析xml文件的js库
- jstring, String, char* 变换函数
- Vue(小案例_vue+axios仿手机app)_购物车(计算商品总金额)
- JVM中的方法分派
- ios和android 浏览器适配问题总结
- keras用vgg16做图像分类
- java对PDF文档的各种操作
- JavaScript 错误处理, Throw、Try 和 Catch入门
- OAF日志使用总结
- 渐变(Gradients)