1、方差:方差是各个数据与平均数之差的平方的平均数。

2、标准差:

标准差(Standard Deviation)

各数据偏离平均数的距离(离均差)的平均数,它是离差平方和平均后的方根。用σ表示。因此,标准差也是一种平均数

标准差是方差的算术平方根。

标准差能反映一个数据集的离散程度。平均数相同的,标准差未必相同。

3、参考代码:

package sk.ann;import java.text.DecimalFormat;
import java.util.Random;public class VarianceAndStandardDiviation {private final static double dmax=999;//Double.MAX_VALUE;//Double类型的最大值,太大的double值,相乘会达到无穷大private final static double dmin=Double.MIN_VALUE;//Double类型的最小值private final static int n=100;//假设求取100个doubl数的方差和标准差public static void main(String[] args){Random random = new Random();   double[] x=new double[n];for(int i=0;i<n;i++){//随机生成n个double数x[i]=Double.valueOf(Math.floor(random.nextDouble()*(dmax-dmin)));System.out.println(x[i]);}//设置doubl字符串输出格式,不以科学计数法输出   DecimalFormat df=new DecimalFormat("#,##0.00");//格式化设置//计算方差double dV=Variance(x);System.out.println("方差="+df.format(dV));//计算标准差double dS=StandardDiviation(x);System.out.println("标准差="+df.format(dS));}//方差s^2=[(x1-x)^2 +...(xn-x)^2]/npublic static double Variance(double[] x) { int m=x.length;double sum=0;for(int i=0;i<m;i++){//求和sum+=x[i];}double dAve=sum/m;//求平均值double dVar=0;for(int i=0;i<m;i++){//求方差dVar+=(x[i]-dAve)*(x[i]-dAve);}return dVar/m;}//标准差σ=sqrt(s^2)public static double StandardDiviation(double[] x) { int m=x.length;double sum=0;for(int i=0;i<m;i++){//求和sum+=x[i];}double dAve=sum/m;//求平均值double dVar=0;for(int i=0;i<m;i++){//求方差dVar+=(x[i]-dAve)*(x[i]-dAve);}return Math.sqrt(dVar/m);  }
}

随机执行的结果:

方差=80,345.83
标准差=283.45

机器学习知识点(三)方差和标准差Java实现相关推荐

  1. 机器学习知识点(三十三)机器学习入门的数学基础

    三类:1)多元微积分:2)线性袋鼠,主要是关于矩阵方面的:3)概率论和统计学:4)几何学: 下面的题要能解出,才能更好理解机器学习中的内容. 涉及的相关数学知识点,在机器学习知识点系列上都有介绍,不过 ...

  2. 机器学习知识点(三十)LDA话题模型Java实现

    1.LDA数学定义 1)话题模型:传统的文本分类器,比如贝叶斯.kNN和SVM,只能将其分到一个确定的类别中.假设我给出3个分类"算法""分词""文学 ...

  3. 机器学习知识点(三十七)特征选择方法总结

    在模型训练中,特征选择是非常重要.样本有限的情况,特征过多计算开销过大:通过特征选择去掉冗余和不相关特征,可提高模型性能降低计算开销.两个字:降维.当然降维后,模型性能应该是提升的.特征选择的最终目的 ...

  4. 机器学习知识点(七)决策树学习算法Java实现

    为理解机器学习第四章节决策树学习算法,通过网上找到的一份现成代码,主要实现了最优划分属性选择和决策树构造,其中最优划分属性选择采用信息增益准则.决策树构造采用递归实现,代码如下: package sk ...

  5. 机器学习知识点(三十六)分类器性能度量指标f1-score

    在用python机器学习库scikit-learn训练模型时,常用f1-score来度量模型性能,下面回顾和学习下这个指标. 内容概要¶ 模型评估的目的及一般评估流程 分类准确率的用处及其限制 混淆矩 ...

  6. 机器学习知识点(三十二)微积分基础

    网址:http://www.cnblogs.com/dudi00/p/4056451.html 包含: 1.极限: 2.常数e:关于常数e网络流传的介绍:http://www.guokr.com/ar ...

  7. 机器学习知识点(三十一)LDA数学八卦

    文本建模中LDA模型是很出名,当然涉及太多的数学知识点,不从头掌握,就很难深入应用.好在有高手总结了理解LDA所必备的基础数学知识. 下载后上传到CSDN资源学习,地址: http://downloa ...

  8. 机器学习知识点(二)各类型平均数Java实现

    代码如下: package sk.ann;import java.text.DecimalFormat; import java.util.Random;/** 功能:计算并比较各类型平均数,调和&l ...

  9. 机器学习知识点(一)文本字符信息熵Java实现

    用熵来评价整个随机变量平均的信息量,而平均最好的量度就是随机变量的期望 ,即熵的定义如下: 计算字符的信息熵,参考代码如下: package sk.ann;import java.util.Scann ...

最新文章

  1. 前端解决跨域问题的8种方案(最新最全)
  2. [LeetCode] 5. Longest Palindromic Substring
  3. 【Android 安全】DEX 加密 ( Application 替换 | 分析 BroadcastReceiver 组件中调用 getApplication() 获取的 Application )
  4. rmi远程代码执行漏洞_微软 Windows DNS Server 远程代码执行漏洞
  5. Android Gradle配置构建
  6. mysql TIMESTAMP 报错
  7. DEDE中如何过滤掉Html标签,并且截取字符串长度
  8. 利用.bat批处理命令进行文件复制粘贴备份
  9. STC-ISP下载失败的原因小结
  10. .如何彻底删除oracle,如何做到Oracle完全卸载
  11. java解析json对象_JAVA解析JSON数据
  12. 用arduinoUNO做温度计
  13. Spring事务(Transaction)
  14. c语言abcd=(ab cd),汇编语言编程求具有abcd=(ab+cd)^2 性质的4 位数并输出。例如3025=(30+25)2。(不是C语言)...
  15. estimating the Flood kirs——曼哈顿距离
  16. 最强大脑世界记忆大师运用的记忆方法
  17. js 绘画js 绘画路径_绘画是一种技能,而不是才能
  18. android hdmi解码器,如何使用HDMI高清编码器进行直播
  19. 什么是虚拟主机?虚拟主机的作用有哪些?
  20. NTU-RGBD-120数据集

热门文章

  1. Zookeeper分布式一致性原理(一):分布式架构
  2. Linux查看ice版本,Linux下ICE的安装
  3. 用泰勒公式算sin cos用c语言,用泰勒公式求sin(x)的近似值
  4. python鱼眼图像识别_一种融合鱼眼图像与深度图像的动态环境视觉里程计方法与流程...
  5. java httpinvoker漏洞_Java反序列化漏洞学习
  6. python怎么显示分数_python分数怎么表示什么
  7. 138 条 Vim 命令、操作、快捷键全集
  8. Java基础——异常处理
  9. daily scrum 12.9
  10. Struts2的OGNL