【校招面经】统计与概率基础 part2

2024-09-06 04:08

本文主要是介绍【校招面经】统计与概率基础 part2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

十六、对偶问题

线性规划有一个有趣的特性,就是任何一个求极大的问题都有一个与其匹配的求极小的线性规划问题。

例;原问题为

MAX X=8*Z1+10*Z2+2*Z3

s.t. 2*Z1+1*Z2+3*Z3 〈=70

4*Z1+2*Z2+2*Z3 〈=80

3*Z1+ 1*Z3 〈=15

2*Z1+2*Z2 〈=50

Z1,Z2,Z3 〉=0

Z则其对偶问题为

MIN =70*Y1+80*Y2+15*Y3+50*Y4

s.t 2*y1+4*y2+3*y3+2*y4>=8

1*y1+1*y2+ 1*y4>=10

3*y1+2*y2+1*y3 >=2

y1,y2,y3,y3>=0

可以看出:1、若一个模型为目标求 极大 约束为 小于等于的不等式,则它的对偶模型为目标求极小 约束为极大的不等式

即 “MAX,〈=” “与MIN,〉=”相对应

2、从约束条件系数矩阵来看,一个模型中为A 另一个为A的转质,一个模型是 m个约束n个变量 则他的对偶模型为n个约束 m个变量

3、从数据b c 的位置看 两个规划模型中b和 c的位置对换

即8、10、2 与 70、80、15、50 对换

4、两个规划模型中变量非负。

 

十七、参数估计方法

from:https://blog.csdn.net/liuyuemaicha/article/details/52497512

参数估计 

参数估计:是根据从总体中抽取的样本估计总体分布中包含的未知参数的方法。它是统计推断的一种基本形式,是数理统计学的一个重要分支,分为点估计和区间估计两部分。 

这里写图片描述

 

点估计:依据样本估计总体分布中所含的未知参数或未知参数的函数。 

这里写图片描述

 

区间估计(置信区间的估计):依据抽取的样本,根据一定的正确度与精确度的要求,构造出适当的区间,作为总体分布的未知参数或参数的函数的真值所在范围的估计。例如人们常说的有百分之多少的把握保证某值在某个范围内,即是区间估计的最简单的应用。 

 

1. 矩估计

1)矩估计的指导思想就是假设样本情况等价于总体情况,就是假设尽可能大的局部情况等价于全局情况。有点像自然辩证法里提到的归纳主义,由大量单称陈述得出全称陈述。

2. 最大似然估计

1)最大似然估计的指导思想是发生概率大的事件更可能发生,这让我联想到《操作系统》中刚访问过得进程,在未来短时间内更可能发生。这也就是为什么求解过程中,需要似然函数最大。

2)而极大似然的核心是自恋,要相信自己是天选之子,自己看到的,就是冥冥之中最接近真相的

3. 最小二乘估计

1)到一个(组)估计值,使得实际值与估计值的距离最小。本来用两者差的绝对值汇总并使之最小是最理想的,但绝对值在数学上求最小值比较麻烦,因而替代做法是,找一个(组)估计值,使得实际值与估计值之差的平方加总之后的值最小,称为最小二乘。“二乘”的英文为least square,其实英文的字面意思是“平方最小”。这时,将这个差的平方的和式对参数求导数,并取一阶导数为零,就是OLSE。

2)最小二乘法的核心是权衡,因为你要在很多条线中间选择,选择出距离所有的点之和最短的

4. 贝叶斯估计

1)考虑了MAP(最大后验概率)算法的贝叶斯估计,其实是想让后验概率极大化

 

十八、单因素方差分析

试验中要考察的指标称为试验指标,影响试验指标的条件称为因素,因素所处的状态称为水平,若试验中只有一个因素改变则称为单因素试验,若有两个因素改变则称为双因素试验,若有多个因素改变则称为多因素试验。方差分析就是对试验数据进行分析,检验方差相等的多个正态总体均值是否相等,进而判断各因素对试验指标的影响是否显著,根据试验指标的个数可以区分为单因素方差分析、双因素方差分析和多因素方差分析

单因素方差分析基本思想:数据的误差即总误差平方和分为组间平方和组内平方和,组内误差只包含随机误差.组间误差包含随机误差和系统误差,系统误差即为因素不同水平造成的误差,如果因素的不同水平对数据没有影响,系统误差为0,组间误差与组内误差经过自由度平均后的数值相比接近于1,反之,如果因素的不同水平对数据有影响,这个比值就会大于1,当它大到某种程度时,就可以说不同水平之间存在着显著差异,也就是自变量对因变量有显著影响

 

十九、95%置信区间

 

二十、卡特兰数

1. 卡特兰数满足以下递推关系:

 令h(0)=1,h(1)=1,catalan数满足递推式。h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)h(0) (n>=2)。也就是说,如果能把公式化成上面这种形式的数,就是卡特兰数。

当然,上面这样的递推公式太繁琐了,于是数学家们又求出了可以快速计算的通项公式。h(n)=c(2n,n)-c(2n,n+1)(n=0,1,2,...)。这个公式还可以更简单得化为h(n)=C(2n,n)/(n+1)。后一个公式都可以通过前一个公式经过几步简单的演算得来,大家可以拿起笔试试,一两分钟就可以搞定。

 

2. 解决的问题:

1)n对括号 有多少种组合

2)n个元素入栈 有多少种出栈顺序

3)2n边 凸多边形 链接对角线 可以分出三角形的个数

4)n × n格点中不越过对角线的单调路径的个数

5)2n个高矮不同的人 站成两排 保证后排对应的人比前排高 每排从左到右越来越高 有多少种排列方式

6)找钱问题

 

二十一、卡方检验

from:https://blog.csdn.net/bitcarmanlee/article/details/52279907

1.卡方分布

卡方分布(chi-square distribution, χ2-distribution)是概率统计里常用的一种概率分布,也是统计推断里应用最广泛的概率分布之一,在假设检验与置信区间的计算中经常能见到卡方分布的身影。

我们先来看看卡方分布的定义: 

若k个独立的随机变量Z1,Z2,⋯,Zk,且符合标准正态分布N(0,1),则这k个随机变量的平方和 

X=∑i=1kZ2i

 

为服从自由度为k的卡方分布,记为: 

X∼χ2(k)

 

也可以记为: 

X∼χ2k

卡方分布的期望与方差分为为: 

E(χ2)=n,D(χ2)=2n,其中n为卡方分布的自由度。

2.卡方检验

χ2检验是以χ2分布为基础的一种假设检验方法,主要用于分类变量。其基本思想是根据样本数据推断总体的分布与期望分布是否有显著性差异,或者推断两个分类变量是否相关或者独立。 

一般可以设原假设为 H0:观察频数与期望频数没有差异,或者两个变量相互独立不相关。 

实际应用中,我们先假设H0成立,计算出χ2的值,χ2表示观察值与理论值之间的偏离程度。根据χ2分布,χ2统计量以及自由度,可以确定在H0成立的情况下获得当前统计量以及更极端情况的概率p。如果p很小,说明观察值与理论值的偏离程度大,应该拒绝原假设。否则不能拒绝原假设。

χ2的计算公式为: 

χ2=∑(A−T)2T

 

其中,A为实际值,T为理论值。

χ2用于衡量实际值与理论值的差异程度,这也是卡方检验的核心思想。χ2包含了以下两个信息: 

1.实际值与理论值偏差的绝对大小。 

2.差异程度与理论值的相对大小。

3.卡方检验做特征选择

卡方检验经常被用来做特征选择。举个网络上的例子,假设我们有一堆新闻标题,需要判断标题中包含某个词(比如吴亦凡)是否与该条新闻的类别归属(比如娱乐)是否有关,我们只需要简单统计就可以获得这样的一个四格表:

组别

属于娱乐

不属于娱乐

合计

 

不包含吴亦凡

19

24

43

 

包含吴亦凡

34

10

44

 

合计

53

34

87

 

通过这个四格表我们得到的第一个信息是:标题是否包含吴亦凡确实对新闻是否属于娱乐有统计上的差别,包含吴亦凡的新闻属于娱乐的比例更高,但我们还无法排除这个差别是否由于抽样误差导致。那么首先假设标题是否包含吴亦凡与新闻是否属于娱乐是独立无关的,随机抽取一条新闻标题,属于娱乐类别的概率是:(19 + 34) / (19 + 34 + 24 +10) = 60.9%

理论值的四格表为:

组别

属于娱乐

不属于娱乐

合计

不包含吴亦凡

43 * 0.609 = 26.2

43 * 0.391 = 16.8

43

包含吴亦凡

44 * 0.609 = 26.8

44 * 0.391 = 17.2

44

显然,如果两个变量是独立无关的,那么四格表中的理论值与实际值的差异会非常小。

则χ2值为: 

χ2=(19−26.2)226.2+(34−26.8)226.8+(24−16.8)216.8+(10−17.2)217.2=10.00

标准的四格表χ2值可以用以下方式进行计算: 

χ2=N∗(AD−BC)2(A+B)(C+D)(A+C)(B+D)

 

其中,N=A+B+C+D

得到χ2的值以后,怎样可以得知无关性假设是否可靠?接下来我们应该查询卡方分布的临界值表了。

首先我们明确自由度的概念:自由度v=(行数-1)*(列数-1)。 

然后看卡方分布的临界概率,表如下: 

这里写图片描述

一般我们取p=0.05,也就是说两者不相关的概率为0.05时,对应的卡方值为3.84。显然10.0>3.84,那就说明包含吴亦凡的新闻不属于娱乐的概率小于0.05。换句话说,包含吴亦凡的新闻与娱乐新闻相关的概率大于95%!

总结一下:我们可以通过卡方值来判断特征是否与类型有关。卡方值越大,说明关联越强,特征越需要保留。卡方值越小,说明越不相关,特征需要去除。

 

二十二、box-cox

from:https://blog.csdn.net/sinat_26917383/article/details/77864582

优势:

  • 线性回归模型满足线性性、独立性、方差齐性以及正态性的同时,又不丢失信息,此种变换称之为Box—Cox变换。
  • 误差与y相关,不服从正态分布,于是给线性回归的最小二乘估计系数的结果带来误差
  • 使用Box-Cox变换族一般都可以保证将数据进行成功的正态变换,但在二分变量或较少水平的等级变量的情况下,不能成功进行转换,此时,我们可以考虑使用广义线性模型,如LOGUSTICS模型、Johnson转换等。
  • Box-Cox变换后,残差可以更好的满足正态性、独立性等假设前提,降低了伪回归的概率

常规的经济学转换方式:

log,对数转换,是使用最多的(数据必须大于0) 

还有: 

平方根转换 

倒数转换 

平方根后取倒数 

平方根后再取反正弦 

幂转换 

这里写图片描述

Box-Cox变换的正态变换:

数据不比大于>0 

这里写图片描述

没有Box-Cox变换的回归:

这里写图片描述

Box-Cox变换之后的回归:

这里写图片描述

 

二十三、Jaccard系数

这个方法在信息检索或者搜索引擎中经常用到,用于衡量两个词库的交集。这里面的两个词库可能来源于文档或者请求的语句。虽然简单,但是很实用。

比如A和B是由文档(Document)或者请求语句(Query)得到的两个词库 (term sets)。

 

 

这篇关于【校招面经】统计与概率基础 part2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1140952

相关文章

hdu1496(用hash思想统计数目)

作为一个刚学hash的孩子,感觉这道题目很不错,灵活的运用的数组的下标。 解题步骤:如果用常规方法解,那么时间复杂度为O(n^4),肯定会超时,然后参考了网上的解题方法,将等式分成两个部分,a*x1^2+b*x2^2和c*x3^2+d*x4^2, 各自作为数组的下标,如果两部分相加为0,则满足等式; 代码如下: #include<iostream>#include<algorithm

hdu4865(概率DP)

题意:已知前一天和今天的天气概率,某天的天气概率和叶子的潮湿程度的概率,n天叶子的湿度,求n天最有可能的天气情况。 思路:概率DP,dp[i][j]表示第i天天气为j的概率,状态转移如下:dp[i][j] = max(dp[i][j, dp[i-1][k]*table2[k][j]*table1[j][col] )  代码如下: #include <stdio.h>#include

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close

flume系列之:查看flume系统日志、查看统计flume日志类型、查看flume日志

遍历指定目录下多个文件查找指定内容 服务器系统日志会记录flume相关日志 cat /var/log/messages |grep -i oom 查找系统日志中关于flume的指定日志 import osdef search_string_in_files(directory, search_string):count = 0

hdu4267区间统计

题意:给一些数,有两种操作,一种是在[a,b] 区间内,对(i - a)% k == 0 的加value,另一种操作是询问某个位置的值。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import

hdu4417区间统计

给你一个数列{An},然后有m次查询,每次查询一段区间 [l,r] <= h 的值的个数。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamRead

hdu3333区间统计

题目大意:求一个区间内不重复数字的和,例如1 1 1 3,区间[1,4]的和为4。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;

实例:如何统计当前主机的连接状态和连接数

统计当前主机的连接状态和连接数 在 Linux 中,可使用 ss 命令来查看主机的网络连接状态。以下是统计当前主机连接状态和连接主机数量的具体操作。 1. 统计当前主机的连接状态 使用 ss 命令结合 grep、cut、sort 和 uniq 命令来统计当前主机的 TCP 连接状态。 ss -nta | grep -v '^State' | cut -d " " -f 1 | sort |