心理学的危机
写得真是好 涨知识
- 已编辑
E(HH/HX) 的符号表述容易引起误解,因为在HX条件下HH的概率一般都写成 E(HH | HX),等于0.5。杨老师说的是:E((HH次数/HX次数) | XXX中至少出现一次HX) 。两种E(...)对HHX事件取的概率密度不同,前者Prob(HHX)=2*Prob(HTX),后者Prob(HHX)=Prob(HTX)。女生比例的问题链接结论是:有限人口无限时间后的预期=1/2;无限人口任意时间的预期=1/2。只有一户人按时间平均<1/2,其实是语文而非数学问题。HHX的例子对应的解读是:每户人家女孩比例按每户等权重平均,这本身是原题的语言误读。
概率密度上的错误和统计可重复性是两件应该切割开的事,合在一起叙述相得益彰,前者的精妙以气氛而非逻辑的方式提升了后者立论的说服力。吊诡的是,统计可重复性危机本质上正是说服气氛与逻辑的脱钩,p值自身的数学逻辑是自洽的
很涨知识,作者功夫很深,蟹蟹
非常感谢,长知识了
Google那道面试题答案并没有错吧。只是如果按GVT的方法,将每户分离出来统计每户生男孩的比率,在将这些频率平均,最后的结果不会是0.5.
硬币例子没太看明白,这个5/12是怎么搞出来的,什么是HH的预期概率,这种例子建议用频率更合理点,可能我的理解比较较真
真的很不错,最近刚学统计学相关知识,这个P值的解释真的太棒啦,美国政治学顶级学术期刊《政治分析》已经禁止使用P值了hhh。但是在统计过程中P值确实可以做为某种参考,不过为了解决P值的问题也有比如sequential hypothesis test这样的方法0w0。
关于手热现象这里有篇新论文:https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2984615
结论是不存在,不过作者用的方法是模拟,他们找一个人的记录例如010001000010001,然后对这组序列进行重排,统计重排后的分布作为基线,然后看这个人记录出现的概率。我的理解是他们这么做区别了手热现象与进球率,如果本身进球率高,那么出现手热的基线概率本身就高,如果高进球率时要出现手热记录应该十分夸张才行。
油管上有个介绍视频:https://www.youtube.com/watch?v=bPZFQ6i759g
其中也提到了本文中的论证,很有意思,说到底基线数据也就是假设检验的空假设是现象成立的关键,本文中的序列概率其实还是理论值,如果考虑实际基线结论就有可能反转。
yufree
我倒觉得就像这个文章说的,问题的关键其实是如何定义和统计描述“手热”,然后就是看这个统计量对假设进行推断的时候的效力。如果仅仅是扰动之后看记录的出现概率,那么肯定是定义了一个统计量,看这个统计量在虚无假设中的位置。这种就是所谓的 empirical analysis的老套路了,有没有说服力还是用来做推断的统计量到底是怎么定义的,能不能真的描述所谓的“手热”现象。但是感觉就如同这里说道的,这个问题本身的特性就是无法很可信的做出这种推断的吧。
William_Chen
我觉得作者大概并没有认真看10号参考文献,又或者看的太多记错了,但是10里确实没有提到性别分别这个问题。
另外我来回复完全就是因为我确实想不通为啥不是0.5。仅仅根据题目的假设和限制,我觉得得出0.5的结果是完全没有问题的。
- 已编辑
关于google试题,我想作者恐怕表达的是$E(X/Y)$和$E(X)/E(Y)$的区别,预期的男女比例之于预期男子数量与预期女子数量的比例。诚然,在生男生女比例各0.5时,后者是1了,若X/Y和Y间的关联不为0,前者是不等于后者的。
但考虑到问题的特殊性,最终男孩总数是常数,若X代表男孩数量,Y代表女孩数量,最终要考虑的是$cov(1/Y, Y)$,并不容易计算,先放置一下;不妨先反过来看,用Y表示男孩数量,X表示女孩数量,此时Y为常数,必然有$E(X/Y)=E(X)/E(Y)=1$。
回过头来看X=男孩数量,Y=女孩数量的情形。此时,$E(1/Y)$表示的是一个随机变量倒数的期望,无论是用调和平均值不等式,还是强行积分,不难发现,$E(1/Y) \neq 1/E(Y)$。这时我们可以下判断$E(X/Y) \neq E(X)/E(Y)=1$。
另附模拟代码:
n <- 10001
p <- .5
## #boys = n
## cal #girls, rbinom(1,1,.5) = 1 means having a baby girl
girl_fun <- function(num){
if(num == 0) return(NULL)
s1 <- sum(rbinom(num, 1, p))
s2 <- girl_fun(s1)
return(c(s1,s2))
}
m <- 1000
res0 <- sapply(1:m, function(x)sum(girl_fun(n)))
mean(res0/n)
#> [1] 1.000081
mean(n/res0)
#> [1] 1.000142