【JAVA】批量梯度下降
来源:互联网 发布:金山数据恢复大师vip 编辑:程序博客网 时间:2024/05/17 23:17
/** * 批量梯度下降 */public class BatchGradient {public void batchGradientDescent() {double inputDataMatrix[][] = { { 1, 4 }, { 2, 5 }, { 5, 1 }, { 4, 2 } }; // X输入double expectResult[] = { 19, 26, 19, 20 }; // 期望输出值double w[] = { 2, 6 }; // 权重参数 因为这里只涉及到两个变量 ,即X为两列输入double learningRate = 0.01;double loss = 100; // 损失值for (int i = 0; i < 100 && loss > 0.0001; i++) {double err_sum = 0;for (int j = 0; j < 4; j++) {double h = 0;for (int k = 0; k < 2; k++) {h = h + inputDataMatrix[j][k] * w[k];}err_sum = expectResult[j] - h;for (int k = 0; k < 2; k++) {w[k] = w[k] + learningRate * err_sum* inputDataMatrix[j][k]; // 权值每次改变的幅度,这个公式是通过梯度下降得到的}}System.out.println("此时的w权值为:" + "w0:" + w[0] + "---" + "w1:" + w[1]);double loss_sum = 0;for (int j = 0; j < 4; j++) {double sum = 0;for (int k = 0; k < 2; k++) {sum = sum + inputDataMatrix[j][k] * w[k];}loss_sum += (expectResult[j] - sum) * (expectResult[j] - sum);}System.out.println("loss:" + loss_sum);}}public static void main(String[] args) {BatchGradient bg = new BatchGradient();bg.batchGradientDescent();}}
refer to:http://blog.csdn.net/abcjennifer/article/details/7716281
http://www.xatarena.cn/javajswz/20130402/1313.html
0 0
- 【JAVA】批量梯度下降
- 随机梯度下降与批量梯度下降
- 随机梯度下降和批量梯度下降
- 批量梯度下降与随机梯度下降
- 随机梯度下降和批量梯度下降
- 批量梯度下降与随机梯度下降
- 随机梯度下降与批量梯度下降
- 批量梯度下降和随机梯度下降
- 随机梯度下降与批量梯度下降
- 梯度下降 随机梯度下降 批量梯度下降
- 梯度下降、随机梯度下降和批量梯度下降
- 三种梯度下降的方式:批量梯度下降、小批量梯度下降、随机梯度下降
- 梯度下降,随机梯度下降,批量梯度下降,mini-batch 梯度下降
- 梯度算法之批量梯度下降,随机梯度下降和小批量梯度下降
- 批量梯度下降BGD、随机梯度下降SGD、小批量随机梯度下降MSGD
- 批量梯度下降和随机梯度下降matlab 实现
- 神经网络的训练--批量梯度下降 VS. 随机梯度下降
- 随机梯度下降法和批量梯度下降法
- 用来开发IOS应用的Java工具包
- JDK详解
- 重载运算符的使用~~~
- 做实验编辑文本用到的几个正则表达式
- 炒冷饭系列:设计模式 原型模式
- 【JAVA】批量梯度下降
- linux下crontab定时任务不能执行
- leetcode 刷题之路 23 Combination Sum
- solr学习笔记-linux下配置solr
- poj 1032 Parliament(正整数拆分不同数使乘积最大)
- 地图中的图块编号 与 精灵坐标的计算
- 有关Lucene的问题(4):影响Lucene对文档打分的四种方式
- hdu2032 杨辉三角
- NS2 Notebook:Display RTS/CTS Pkt Type in NS2 Trace File