当前位置: 首页 > news >正文

020网站建设和维护费用湖南企业seo优化首选

020网站建设和维护费用,湖南企业seo优化首选,小程序后端搭建,商城网站建设机构最小二乘法简介最小二乘法是一种在误差估计、不确定度、系统辨识及预测、预报等数据处理诸多学科领域得到广泛应用的数学工具。它通过最小化误差(真实目标对象与拟合目标对象的差)的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数…

最小二乘法

简介

最小二乘法是一种在误差估计、不确定度、系统辨识及预测、预报等数据处理诸多学科领域得到广泛应用的数学工具。

它通过最小化误差(真实目标对象与拟合目标对象的差)的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。

  • 最小二乘法还可用于曲线拟合。对于平面中的这n个点,可以使用无数条曲线来拟合。要求样本回归函数尽可能好地拟合这组值。综合起来看,这条直线处于样本数据的中心位置最合理。选择最佳拟合曲线的标准可以确定为:使总的拟合误差(即总残差)达到最小

  • 最小二乘法也是一种优化方法,求得目标函数的最优值。并且也可以用于曲线拟合,来解决回归问题。回归学习最常用的损失函数是平方损失函数,在此情况下,回归问题可以著名的最小二乘法来解决。

简而言之,最小二乘法同梯度下降类似,都是一种求解无约束最优化问题的常用方法,并且也可以用于曲线拟合,来解决回归问题。

图解

最小二乘求解,即给定一组x和y的样本数据,计算出一条斜线,距离每个样本的y的距离的平均值最小,如下图(这个以水平线为例):

公式

普通最小二乘法一般形式可以写成(字母盖小帽表示估计值,具体参考应用概率统计):

即:

代码


import java.util.HashMap;
import java.util.Map;/***  线性回归* @author tarzan*/
public class LineRegression {/** 直线斜率 */private static double k;/** 截距 */private static double b;/*** 最小二乘法* @param xs* @param ys* @return y = kx + b, r*/public Map<String, Double> leastSquareMethod(double[] xs, double[] ys) {if(0 == xs.length || 0 == ys.length || xs.length != ys.length) {throw new RuntimeException();}// x平方差和double Sx2 = varianceSum(xs);// y平方差和double Sy2 = varianceSum(ys);// xy协方差和double Sxy = covarianceSum(xs, ys);double xAvg = arraySum(xs) / xs.length;double yAvg = arraySum(ys) / ys.length;k = Sxy / Sx2;b = yAvg - k * xAvg;//拟合度double r = Sxy / Math.sqrt(Sx2 * Sy2);Map<String, Double> result = new HashMap<>(5);result.put("k", k);result.put("b", b);result.put("r", r);return result;}/*** 根据x值预测y值** @param x x值* @return y值*/public double getY(double x) {return k*x+b;}/*** 根据y值预测x值** @param y y值* @return x值*/public double getX(double y) {return (y-b)/k;}/*** 计算方差和* @param xs* @return*/private double varianceSum(double[] xs) {double xAvg = arraySum(xs) / xs.length;return arraySqSum(arrayMinus(xs, xAvg));}/*** 计算协方差和* @param xs* @param ys* @return*/private double covarianceSum(double[] xs, double[] ys) {double xAvg = arraySum(xs) / xs.length;double yAvg = arraySum(ys) / ys.length;return arrayMulSum(arrayMinus(xs, xAvg), arrayMinus(ys, yAvg));}/*** 数组减常数* @param xs* @param x* @return*/private double[] arrayMinus(double[] xs, double x) {int n = xs.length;double[] result = new double[n];for(int i = 0; i < n; i++) {result[i] = xs[i] - x;}return result;}/*** 数组求和* @param xs* @return*/private double arraySum(double[] xs) {double s = 0 ;for( double x : xs ) {s = s + x ;}return s ;}/*** 数组平方求和* @param xs* @return*/private double arraySqSum(double[] xs) {double s = 0 ;for( double x : xs ) {s = s + Math.pow(x, 2);}return s ;}/*** 数组对应元素相乘求和* @param xs* @return*/private double arrayMulSum(double[] xs, double[] ys) {double s = 0 ;for( int i = 0 ; i < xs.length ; i++ ){s = s + xs[i] * ys[i] ;}return s ;}public static void main(String[] args) {double[] xData = new double[]{1, 2, 3, 4,5,6,7,8,9,10,11,12};double[] yData = new double[]{4200,4300,4000,4400,5000,4700,5300,4900,5400,5700,6300,6000};LineRegression lineRegression= new LineRegression();System.out.println(lineRegression.leastSquareMethod(xData, yData)); //预测System.out.println(lineRegression.getY(10d));}
}

代码中的k为线性直线的斜率,b为截距,r代表计算结果的直线拟合度。

当r = 1时称为完美拟合,当r =0 时称为糟糕拟合,

  • 事实上,R2不因y 或x 的单位变化而变化。

  • 零条件均值,指给定解释变量的任何值,误差的期望值为零。换言之,即 E(u|x)=0。

测试

idea中运行上面代码的主方法,控制台输出为:

r的值接近于1,说明拟合度高。 测试x=10 时,输出结果5689.7与真实值误差约为11。

最小二乘法线性回测,常用股票、公司未来营收的预测。有着广泛的应用。

文章还有没讲清楚的地方,或为你有疑问的地方,欢迎评论区留言!!!

http://www.dt0577.cn/news/13139.html

相关文章:

  • 建简单网站网站需要怎么优化比较好
  • 平顶山建设街小学网站seo的搜索排名影响因素有
  • 清华紫光做网站广州优化seo
  • 怎么样自己开网站荨麻疹怎么治疗能除根
  • 福建建设工程交易网站灰色行业怎么推广引流
  • 建设银行广西分行招聘网站网站建设的流程是什么
  • 网络营销策划案框架长沙seo招聘
  • 邯郸网站建设生活中的网络营销有哪些
  • 滕州网站设计什么公司适合做seo优化
  • 好的网站设计培训机构推广策划方案模板
  • 网站后台打开慢鞍山seo优化
  • 免费网站建站排行榜安装百度到桌面
  • 王晴儿 网站建设seo推广知识
  • 厦门seo关键词优化代运营临沂做网络优化的公司
  • 兰州商城网站建设新手怎么做网络销售
  • 什么网站做的号精准客源app
  • 网站建设shwzzz新冠咳嗽一般要咳多少天
  • 广州站扩建北京网站建设公司
  • 建网站外包需要多少钱免费顶级域名申请网站
  • 个人网站备案要求怎样做百度推广网页
  • 2015年做啥网站能致富中国十大互联网公司
  • wordpress仿站cms电脑系统优化工具
  • 扬州网站建设制作怎么制作一个自己的网站
  • 几级英语可以做外贸网站seo女教师网课入侵录屏冫
  • 企业展馆策划公司sem和seo是什么意思
  • 设计师用什么做网站做seo必须有网站吗
  • html5手机 网站微信指数官网
  • 做门窗可以放什么网站百度推广后台登陆首页
  • java手机网站怎么做的windows优化大师是什么软件
  • 电商网站开发过程是什么2024年的新闻