| Yang |


  • Home

  • Tags

  • Archives

《假设检验中用到的基础知识与变量》

Posted on 2022-08-21

实验组 $X{1}$ ,样本数 $n{1}$ ,样本均值 $\overline x{1}$ ,总体均值 $u{1}$ ,总体方差 $\sigma^{2}{1}$ ,同理对于对照组 $X{0}$ 也有此变量。
实验中我们假设 $X,Y$ 是满足独立同分布(iid)的,样本量也基本远远大于 30 ,所以根据中心极限定理可得:

中心极限定理,变量 $X$ 独立同分布且有公共的期望和方差,则 :

其中 $\Phi(x)$ 为标准正态分布,则可以反推出

又因为

所以由(2)(3)(4) 可得(1)
同时也有通俗理解,即对于整体做足够多次数的抽样,其均值的分布服从以总体均值和方差为参数的正态分布
零假设:

$\delta$ 可以理解为业务上想要的相对提升,称之为业务敏感度,不过这里为什么零假设会是小于等于 $\delta$ 呢?
因为零假设一般是我们希望证明其为错误的假设(即业务上这个变动没有用),通过严格控制显著性水平(一般 0.05 ),我们就可以通过拒绝零假设进而选择我们的备择假设 (变动有用)
显著检验
当 $\delta = 0 $ 的时候,为显著检验,零假设则为 $H{0}: \mu{1}-\mu{0}=0$ ,备择假设为 $H{1}: \mu{1}-\mu{0} \neq 0$ ,可得:

因为我们的 $\bar{x}{1},\bar{x}{0} $ 均为正态分布,从数学上可以证明两个或者多个独立的正态分布相加或者相减,其分布依旧为正态分布,由此得到我们的统计检验量:

则可以得到:

从图片来理解:
pass
所以此时我们只需要计算出统计检验量的样本观察值即可判断是否拒绝零假设。当然这里是双侧置信区间,也还有单侧置信区间,这里不表。
P值
P值:由检验统计量的样本观察值得出的原假设可被拒绝的最小显著性水平。或者也可以理解为:

p= \begin{cases}\left(1-\Phi\left(\frac{\bar{x}{1}-\bar{x}{0}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}\right)\right) \times 2 & , t \geq 0 \ \Phi\left(\frac{\overline{x{1}-\bar{x}{0}}}{\sqrt{\frac{\sigma{0}^{2}}{\overline{n{0}}}+\frac{\sigma{1}^{2}}{n{1}}}}\right) \times 2 & , t<0\end{cases}

\begin{aligned}
\operatorname{power}\left(h{1}\right) &=P\left(t>Z{1-\frac{\alpha}{2}} \mid H{1}\right)+P\left(tZ{1-\frac{\alpha}{2}} \mid H{1}\right)+P\left(\frac{\bar{x}{1}-\bar{x}{0}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}Z{1-\frac{g}{2}} \mid H{1}}\right)+P\left(\frac{\bar{x}{1}-\bar{x}{0}-h{1}+h{1}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}Z{1-\frac{\alpha}{2}}-\frac{h{1}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}} \mid H{1}\right)+P\left(\frac{\bar{x}{1}-\bar{x}{0}-h{1}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}<Z{\frac{\alpha}{2}}-\frac{h{1}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}} \mid H{1}\right) \
&=1-\Phi\left(Z{1-\frac{\alpha}{2}}-\frac{h{1}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}\right)+\Phi\left(Z{\frac{\alpha}{2}}-\frac{h{1}}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}\right) \approx 1-\Phi\left(Z{1-\frac{\alpha}{2}}-\frac{\left|h{1}\right|}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}\right)
\end{aligned}

\begin{aligned}
&1-\beta \approx 1-\Phi\left(Z{1-\frac{\alpha}{2}}-\frac{\Delta}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}\right) \
&\beta=\Phi\left(Z
{1-\frac{\alpha}{2}}-\frac{\Delta}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}}\right) \
&Z{\beta}=Z{1-\frac{\alpha}{2}}-\frac{\Delta}{\sqrt{\frac{\sigma{0}^{2}}{n{0}}+\frac{\sigma{1}^{2}}{n{1}}}} \
&n=2 \times\left(\frac{\sigma \cdot\left(Z{1-\alpha / 2}-Z{\beta}\right)}{\Delta}\right)^{2}
\end{aligned}

$$
这里的公式 2 到公式 3 是从概率值到 $Z$ 分布值等价映射,因为 $\phi(x)$ 本身就表示了标准正态分布。
单侧检验推导过程同理。

《MMD》

Posted on 2022-08-21

在论文 A kernel two-sample test 中 MMD 被首次提出,用于衡量两个样本是否来自于同一个分布,换而言之,分布 p 和分布 q 是否是同分布的。

基本思想

在日常的统计分析中,我们通过分布的概率密度函数 f(x) 去描述概率的分布,一些比较常见的分布如正态分布等,我们可以通过均值和方差就完成描述,但是更加复杂的分布则不行。

此时我们通过分布的中心矩来描述,比如一阶中心矩就是均值,二阶中心矩就是方差,三阶则是偏度,四阶则是峰度,还可以有更高的矩。此时,如果两个分布的矩很相似或者相同的话,我们就可以认为两个分布是一致的,就像我们判断两个人是不是亲兄弟,我们可以看长相身高,还可以去看瞳孔,甚至可以去比较 DNA 等等操作。

所以我们可以理解 MMD 的基本思想为:如果两个分布的任意阶都是相同的,那么这两个分布是一致的。而如果这两个分布不相同的话,那么我们就让使两个分布距离最大的那个矩用来作为度量两个分布的标准。

MMD 计算

MMD 的基本定义如下:

其中 F 就是我们的函数集,Sup 则是求上界的意思,经验估计结果如下:

其实光看上面的表述,我们还是一头雾水,我们来尝试理解一下;

现在我们要在函数集 F 中(相当于去遍历分布的高阶矩),找到让两个分布差异最大(距离最大)的 f ,计算出 MMD 值,根据这个值去评价两个分布的差异。
所以这里有两个要点需要我们注意

  • F 要足够多,这样才能寻找足够的高阶矩
  • 分布的距离是可以度量的

此时,我们的 RKHS (再生核希尔伯特空间)闪亮登场,论文中证明了如果 F 是 universal RKHS 的 unit ball ,则可以比较好的满足以上两个性质。

核函数

提到 RKHS,其实这就和核函数有关了,因为我们可以简单理解为:我们使用核函数把数据映射到一个高维空间,这个空间就是再生核希尔伯特空间。

这里我们简单理解下核函数:
核函数释义

简而言之:通过核函数,我们分布的相似程度可以通过距离来度量。

MMD 的计算

论文中也给出了我们如何进行化简计算:
.
..

这里的 k(x,x’) 即是我们的核函数。

常见核函数

主要有以下几种:

  • 线性核,就是没有映射

  • 高斯核函数,使用最为广泛,可以把原始特征映射到无穷维

  • 多项式核函数

具体实现

通过 np.random.normal( ) 函数生成正态分布的数据

data

测试结果:

res

《PSM》

Posted on 2022-08-21

PSM 的背景

在我们去做 AB 实验的过程中,分组时一般将用户按照一定哈希算法进行随机分桶,此时我们可以认为不同桶之间的用户是同质的,或者可以说成是用户的特征分布是相似的,但是也会面临一些问题:

  • 实验无法进行随机分组,此时用户分布是不同质的,可能面临辛普森悖论等问题
  • 随机分组算法有概率生成的结果是不均匀的

此时为了让用户同质,我们则应该回归匹配的方法,具体地有三种:

  1. 精确匹配
    对于我们实验组的每一个样本,从对照组中都去找一个一模一样的样本。这个方法在医学或者某些社会学研究中是可行的,但是对于互联网场景下,我们的维度会很多 or 我们的变量是连续变量,这么做就基本不可行了
  2. 分层匹配
    用户可能是在某些维度上的分布是不均匀的,此时我们可以将用户比较精细地划分为多层,保证每一层内的用户分布是同质的,此时我们去计算其 ATE,然后再将 ATE 进行加权平均,就可以得到总体的 ATE,比如用户在男女上分布是不均匀的,我们就可以在组内分开男女两层进行计算。
    但是当我们的层数过多之后,整个用户的分布就会变得稀疏,方差变大,此时结论可信度就会降低..
  3. PSM 匹配
    继而,大佬提出了更加普适性的方法 PSM,全称“Propensity Score Matching”,即倾向性得分匹配。我们根据分层法的思路来看,如果我们可以按照得分 p 来进行分层,和按照方法 2 来进行分层,可以得到类似的效果,则可以极大减少我们的分层数量,得到更准确的结果,当然,这一点大佬肯定已经证明是可行的~

PSM 的定义

PSM得分,即 e(x) 表示的是一个用户属于实验组的倾向性:
e(x) =Pr[T=1|X=x]
其中:
e(x):表示一个用户属于实验组的得分。注意,这不是用户是否转化的概率!
X:用户的特征向量
T:用户是否被干预
Y:用户的行为结果

这里的 e(x) 有两个性质,对于倾向性得分相同的用户,其 T 与 X,T 与 Y 都是独立的。所以此时我们可以不用去关心用户 X 的分布了,只需要去匹配用户的 e(x) ,就可以得到同质的实验组和对照组,继而去进行因果效应的评估。

  • T 与 X 是独立的比较好理解,即我们的选择的实验组不应该与 X 有相关关系,比如一个实验:
    • T-是否给孩子吃“长高糖丸”
    • Y-实验组长高 5 cm ,对照组长高 3 cm
      • 此时 T 的选择就与 X (孩子家里的经济条件、父母重视程度)有关
  • T 与 潜在结果也是独立的,即 Treatment 不影响我们的潜在结果的分布,只会影响我们的观察结果

PSM 的计算

这一步比较简单,我们可以使用常见机器学习算法,比如 LR 等对(X,T)进行建模,此时使用的是所有的数据,不区分实验组和对照组(因为我们整体来看,实验组的选取是随机的),输入是用户的特征 X ,训练的 label 则是用户是否被 treatment,然后可以利用训练好的模型对所有用户进行打分。

个人理解这个打分模型不需要花过多的参数去调整,基于以下几点认知

  • 常见模型的结果:相同特征的样本得分一致,相似样本的样本得分差异较小
  • 我们的实验组选取本身就是随机的,所以模型性能注定不会特别好

利用 PSM 进行匹配

主要有以下几步:

  1. 倾向性得分估算:计算每个用户的 PSM 得分
  2. 倾向性得分匹配:根据我们计算得到的 e(x) 分数,寻求相等或者相近的用户进行匹配
    a. 对于极端得分的用户,我们可以排除掉,比如选择[0.05,0.95]的分位区间,或者是取原本实验组和对照组的交集
    b. 得分差异上限(caliper):匹配的时候可以要求每一对的用户差异不可以高于 caliper,否则干掉
    c. 匹配方法:有很多…本质都是寻求相近分数的用户
  3. 平衡性检查:我们进行 PSM 匹配的目标就是为了让用户同质,所以我们有必要检查匹配玩之后的效果
    a. 用户是否同质,主要表现在特征分布上的不同,所以我们可以观察特征匹配前后的分布图,比如说 QQ-plot
    b. 量化指标观察,比如SMD = ( 实验组均值 - 对照组均值 ) / 实验组标准差,一般 SMD <= 0.1,则可以认为是配平了的。(标准正态分布计算)
  4. 因果效应推断
    a. 计算 ATE ,这个不必多说
    b. 拟合线性模型 f(y) = ax + bt ,此时 t 的系数 b 就是我们的因果效应
  5. 敏感性判断:主要为了判断我们的特征是否真的与 T 与 Y 都是独立的,这里 pass

PSM 实践

因具体数据涉及到业务,此处 pass

读《我的精神家园》

Posted on 2022-08-11

写在最前

在键盘下敲下标题的时候,已经快有两年没有写过读书笔记了,是真的懒。虽然可以给自己找出各种各样的原因,但是也觉得没有必要了,希望这次能坚持久一些,多写一些。

我的几点想法

书中最吸引我的是王小波在一篇篇文章中,嬉笑怒骂地写出了自己的态度:自由、有趣、思辨、幽默、真实,以及他是真的在行动。

关于自由

自由是一个永恒的话题,不知多少作品都在讨论枷锁与自由,无论是物理意义上的,还是精神意义上的。

书中体现自由的不是对自由这个话题的讨论,而是作者可以自由地思考,自由地行动,自由地说出他想说的话,而不必去“媚俗”,即在意大众的看法,这一点可太珍贵了。如穆勒在《论自由》中表达的一个观点:如果一个人所做之事,只关乎于他自己,那么他就享有对此事的全部自由。

在实际生活中,我个人认为是很难获得物理意义上的自由的,不论是上班赚钱还是处在社会关系的网络中。前者是出卖自己的劳动力获取金钱,那必然要落在设定的条条框框之中,后者则是剪不断理还乱的关系,以及要面对带来的种种矛盾,其中小部分是结构性的,是不可调和的。而我们则像一艘长江上的小船,时而顺流而下,时而逆流而上。但是没办法呀,只能争渡。

精神上的自由,则对所有人都是平等且可追寻的。现代社会至少绝大多数人都是吃饱穿暖的,不像某些时期吃都吃不饱,那还谈个屁的精神自由。好像关于精神自由的论述特别多,我也不知道该说些什么,下次想说再写吧。

关于有趣

生活中好多人都是聪明、上进、爱玩的,但是我发现有趣、可爱、靠谱的人真的好少。我想如果一个同学被评价后面这几个词,那估计是真的不错。

有趣,我想应该是一种生活态度,即在普通的生活中也能过得不一样。比如不断地去开拓边界,体验各种各样的运动、娱乐作品、吃喝玩乐等,也可以是在每天的日常琐事中找到别致的趣味儿。

这很难得!

关于思辨

目前我做得不好,告诫自己:要多想。

多读书多体验,有更多的知识和经验是思辨的基本,然后才是多角度地思考问题。

关于真实

这应当是我个人生活中的准则,不管是好的坏的,但它应该是真实的。

个人以为,大多数的明星都是在屏幕上的种种行为都是为了加深自己的人设,而人设是不真实的,所以我不喜欢。就算他们确实很好看或者很帅,但就是不真实的。而近几年人设崩塌的明星也渐渐印证了我的想法。

人际交往中也是,如果一群人为了某个目的假惺惺地坐在一起装得很熟,我也觉得不真实,为此我宁愿不打交道。当初高考报通信专业,就有这个想法的影响。

关于行动

这是上面一切讨论的最终承载。

空谈误国,实干兴邦!

《乌库楚攀登记录》

Posted on 2021-12-05

乌库楚简介

乌库楚坐落在贡嘎之南,隶属于大雪山山脉南延段,海拔5526米位于甘孜州康定市贡嘎山乡,上城子村,乌库沟内,拥有发育完整的冰川,是一座 5000 米级的技术型雪山。

2021 年 1 月由成都逍遥客团队首登,是一座即将热门起来的山峰。

乌库楚全貌

时间与地点

2021.09.19 - 2021.09.25

暂定 18 号晚上成都天府机场集合,第二天一早出发川西。

装备清单

鞋子很重要、背包很重要、遵照洋葱式穿衣法保暖也很重要!

  • 露营:帐篷、风绳、地钉、睡袋、防潮垫、炉头、气罐、营地灯
  • 个人:速干衣裤、冲锋衣、羽绒服、登山裤、登山鞋、防水手套、魔术头巾、帽子、防晒霜、唇膏、厚袜子、墨镜、雪套
  • 登山:登山包、登山杖、冲顶包、头灯、干电池
  • 其他:食物、水、保温杯、户外保险等
  • 技术装备:建议直接跟户外公司租赁

花费清单

  • 登山注册费+往返包车车费+七日两名向导费+技术装备租赁费+保险+两晚住宿,人均 3600 元。

  • 往返大交通 1500 左右搞定

  • 吃饭住宿,都很便宜,七天加起来感觉人均 1000 不到

  • 户外装备:看自己的装备积累情况了

向导

朋友推荐了成都踏寻户外,小五哥安排很到位。

三哥经验丰富,人风趣又负责任,路上如老大哥般照顾我们,峰哥也很好玩,攀爬技术 max ,下一次去川西爬雪山我依然会联系他们。

攀登日记

day0 - 2021.09.18

今日行程:各地 -> 成都

出发当天已经没有心思工作了,中午和组里同事吃完午饭心里就在想什么时候开溜。下午四点多和野合碰头,收拾好行李准备撤退,五点半和同事一起我们三人打车前往机场,结果遇到了中秋节假日的史诗级堵车,望京一段 200 米的路开了一个多小时,自然而然地我们七点半的飞机是凉了,赶紧改签九点的飞机,幸好赶上。

十一点多落地之后和杭州赶来的裤衩、上车碰头,又等了一阵上海赶过来的头秃。至此,乌库楚五人小队集结完毕,分别是:裤衩、滑坡、野合、上车、头秃

0918天府机场集合

出了天府机场,打车又是一阵折磨,还好我们 lucky ,没让司机师傅进停车场,直接出机场直奔酒店。路上我们打赌酒店旁边还有没有夜烧烤,结果还真没让我们失望,吃了一顿味道还不错的烧烤,之后就骑小电车去了新的酒店。

成都夜行

骑车背影

让江西同学觉得好吃的夜烧烤

无名烧烤

以及路上我们喜闻乐见地立 flag 环节,惊喜多多~

day1 - 2021.09.19

今日行程:成都->石棉->草科->田海子山->康定->新都桥->沙德->上城子村

凌晨吃完烧烤回酒店躺床上,已经是接近四点了,睡了一个多小时,六点准备出发川西,人是懵的。

路上遇见四姑娘山的日出,吃了草科无敌好吃的农家饭,路过海拔 6070 米的田海子,在沙德完成了最后的物资补充,13 个小时之后终于到达上城子村,此时已经有同学开始高反了hhhh,我就不点名了

一路十三个小时奔波,车上的大家

车上合影

路上风景非常到位

路上风景

当晚豪华晚餐,这应该是后面几天吃得最好的一顿了

豪华晚餐

day2 - 2021.09.20

今日行程:上城子村-> BC 大本营

今天也是比较休闲的一天,坐车两个小时从上城子村到 BC 大本营,一路颠簸但风光值得~

路过一大片放牛地,小队合照

小队合照

我与车

滑坡与车

峰哥、三哥与山

向导与山

大本营浙江三人组

image-20211205172445558

再也不吃山之厨了 by 野合

再也不吃山之厨

还有很多小插曲,比如去捉鱼,裤衩和头秃去探路结果被溪水阻隔,大家也有不同程度的高反,其中腿哥最为严重。

day3 - 2021.09.21

今日行程:BC 大本营 -> C1 营地

早上睡到自然醒,然后出来晒太阳,因为昨夜霜大,帐篷睡袋都湿漉漉的。收拾完毕之后就准备徒步到 C1 营地,正式开始被虐…

早上的霜与技术装备

霜与技术装备

装备分装完毕,重得一批,尤其是绳子!

全员准备出发,三哥给我们戴上了哈达,寓意一切顺利。

小队全体

我们先穿过了一片平滩河谷,风景优美,这一段走得十分轻松,一路有说有笑,大家速度都还挺快的,大约一个小时之后开始爬升。

上坡主要由冰川融化留下的碎石坡为主,十分难走,此时上坡、碎石路、高海拔、大负重,一套组合拳打得人自闭,下面视频为证

一路走走停停,怀疑人生。不过也正是如此,才比较容易进入简单的状态,拷问自己的内心,重新审视自己的生活,思考未来的追求与理想。

下为路上吐槽-..-:

走到后面,队伍已经分开,一时兴起,自拍一张

我的自拍

历经七个小时爬升,从 4300 到 4900 ,到达大本营,此时三哥和峰哥已经在 C1 扎好帐篷烧热水,我只想赶紧过去躺着,啥也不干。

C1 营地

扎好帐篷后我们吃了晚饭,然后向导大哥教我们使用技术装备使用技巧。此处不得不提,奶粉或者麦片等在高海拔真的有用,带来的山之厨我们已经吃不下了,这时候只想吃点高热量的流质食物,可以救命的那种。

技术装备的学习非常重要,腿哥就没学好,结果第二天爬升的时候不会上,害我在山脊上至少多吹了二十分钟的风,人 tm 直接吹傻了!

技术装备学习

当晚还是中秋,天上的月亮顶天的亮!

但愿人长久,千里共婵娟~

day4 - 2021.09.22

今日行程:C1 -> 顶峰 -> C1 -> BC 大本营 -> 沙德镇

今天是冲顶日,懒觉是不可能有的。昨天睡前定好一点半起来,事实证明这个是正确的,因为大家收拾 + 吃饭就要好久…

约摸是两点半左右,我们正式出发。不出几步路,我们走到雪线下面,换上冰爪,再几步之后开始结组行走,这一点非常重要,在后面可谓是救了腿哥一命。

结组行走

中途我们遇到体力跟不上的问题,开始了走 50 步休息 10s 的节奏,我觉得这个是非常有效的一个方法,可以控制体力与行进的节奏,此时也遇到了裤衩保暖措施不足的问题,赶紧吃点东西喝点热水,动起来,此时我们非常期待太阳出来…

走到大雪坡下面,这时需要峰哥先锋攀,架设路绳。

等待架设路绳

峰哥是真强啊,40 ~ 70 度的坡,刷刷刷就上去了,等待 40 min 左右后,架设完毕。一共有两个绳距,计 100 米左右,是最难的一段。

爬升

登上山脊之后,我们又爬升了一段冰岩混合路段,个人认为这段的难度也比较大,主要是担心滑坠,所以这里我们也是结组行走的。

此时太阳已经出来,阳光照在身上暖洋洋的, 不过好景不长,一会儿大雾就弥漫山腰,我们又被寒冷包裹了…

山脊行走

又是埋头走了很久,保持节奏 20 步歇 10s ,我感觉体力只要恢复一点儿,马上又使出去了…中间有个插曲,腿哥躺着差点滑坠,下面就是垂直 90 度的百米雪坡,还好裤衩和三哥及时反应给拉住了,真是应了录音中的 flag !!!

快到峰顶

Finally,2021.09.22 08:50 左右,全员登顶!

心中万千想法涌动,终是汇成一口气,长舒而出,可能人生确如登山。步履不停。

登顶

登顶之后,没有多久的休息时间,补充完热量之后继续采用结组行走的方式下撤。一想到这两天我一步一步爬上来的路,我要很快地走下去,心里面竟然觉得有点亏?

这里我还有 cue 下腿哥,至于什么原因我就不说了吧~..~

冰川下降

一点半到达 C1,收拾完帐篷 + 垃圾,两点四十继续下撤,七点左右到达 BC 大本营,讨论决定不在大本营休息了,继续下撤到可以洗澡的地方… 十点左右到达沙德镇。至此,基本完成乌库楚攀登。

day5 - 2021.09.23

今日行程:沙得镇 -> 成都

今天不多说,坐了一天车到成都,直接上火锅。我们惊喜地发现,爬山很猛的峰哥,喝酒竟然不行hhhh

火锅

day6 - 2021.09.24

今日行程:成都

吃肥肠攀岩吃川菜

肥肠

day7 - 2021.09.25

今日行程:成都 -> 各地

和野合去吃了绵阳米线,也得知了可以拿 n+1 的消息,没想到这次回北京竟然是去告别的…

绵阳米线

《2020年终总结》

Posted on 2020-12-31

理性地思考,感性地生活。

写在最前

还是那句老话,生活不会因为 2021 的到来而变好或者变坏,但是活着还是需要一些仪式感的,所以在这一年结尾之际,写下自己的感受与总结。

关于生活

新冠肺炎是今年如何都躲不过去的一个关键词,大到国家,小到个人,都深受其影响。比如说我此时此刻不出去浪而在家写年终总结,就是因为公司办公楼有人确诊,所以居家隔离了…

今年健身 Flag 倒得彻彻底底,虽然体重没变,但是感觉体质下降了不少…前段时间去检查了肠胃,发现已经不能再让我随便折腾了,幽门杆菌 + 消化不良。要好好养胃,毕竟还有很多好吃的还没吃过呢。

今年预定了一只阿柴,应该还有十几天就要到我身边,这波可以不用云吸狗了,也希望泡泡可以敦促我早起,吃饭(喂狗)+ 运动(遛狗)[手动狗头]

今年是有点浪的,数一数机票大概有二十张,虽然有小一半都是往返深圳的,不过也去了西藏、福建这些地方,也在长沙生活了两周,感觉还是很满意的。今年没有出去一趟专门的户外,算是一大遗憾。

钱这方面,依旧是大钱没有,小钱管够。开始尝试去了解基金,股市相关的知识,以后应该会慢慢尝试吧。暂定一个总体积蓄的 10% 去学习与了解,权当学习。

今年资助了两个贫困地区学生的生活费,曾经金勇和我讲西方人在收入这块的认识:”十去其一,取之于社会,用之于社会”。目前我还在被社会暴打的阶段,暂定一个“百去其一“吧,也希望自己能坚持下去。

生活无非就是:衣食住行,吃喝玩乐,这一块完全没有亏待自己hhhh

关于爱情

阿昆今年四月底去深圳工作,我们也正是开始了异地恋。不过感情并没有因此而褪色,依旧稳中带甜,可能跟我俩都是比较独立的人有关。

关于学习

工作方面,技术上面的提升不多,主要是沟通与协调能力的锻炼;其他方面主要依靠阅读来学习,大大小小今年也读了四十本书左右,这里列一下 Top 5:

  • 《平凡的世界》
  • 《刀锋》
  • 《社会心理学》
  • 《论自由》
  • 《禅与摩托车维修艺术》

都是一些偏内心感受的书,怎么说呢…..希望自己经历过这么多事之后,做人做事能有稳健的心态、独立的思考与判断、果断的执行力。从而达到人格与经济的独立,看淡外部评价,进而自由。

关于工作

整体十分顺利,领导器重,业务信任,同事和睦,公司依旧高速发展。不过我也渐渐步入自己的舒适区了,新的一年依旧不能对自己放松要求。

小眺 2021

又到了喜闻乐见的立 Flag 环节:

  • 爬一座雪山 或者 走一条长线
  • 累计跑步 300 公里
  • 读 50 本书,技术书不少于 12 本
  • 理财整体收益 20%
  • 带爸妈出去旅行一趟

ch6-逻辑回归与最大熵

Posted on 2020-12-06

逻辑回归

在前文有推导过具体的公式,这里就不写了。

不过记住这一点:输出 $Y=1$ 的对数几率是由输入 $x$ 的线性函数表示的模型,即是逻辑回归模型。

最大熵

最大熵原理:学习概率模型是,在所有可能的概率模型中,熵最大的模型是最好的模型。我们可以理解为在没有更多信息的情况下,那些不确定的部分是等可能的。

ch5-决策树

Posted on 2020-12-06

决策树

决策树是一种对实例进行分类的树形结构,由

  • 结点
    • 内结点:分类的特征
    • 叶子结点:具体的类别
  • 有向边

决策树是互斥且完备的:可以理解为一个实例只会被一条路径覆盖。

给定数据集:

其中 $x=(x^{1},x^{2} \cdots x^{n})^{T}$ 是特征向量,$n$ 为特征个数。

决策树的学习函数通常是正则化的极大似然函数,其学习策略是以损失函数为目标函数最小化。通常做法是递归地选择最优特征,划分数据集。

特征选择

主要讨论怎么去判定哪个特征能最好地划分数据集。

信息增益

我们一般用熵来衡量一个随机变量的不确定性:熵越大,不确定性越大

条件熵则是已知随机变量 $X$ 的情况下,随机变量 $Y$ 的不确定性:

信息增益就可以理解为我们分类之后对训练集不确定性的降低:

那么我们就可以知道,对于不同地特征分类效果也是不同地,我们自然是想要最优地特征,即信息增益最大的特征。

可以用极大似然估计地方式去算,具体推导pass,这里比较简单,只需要算出相应地概率即可。

决策树的生成

ID3 算法

$ID3$ 算法的核心是在决策树各个节点上使用信息增益去选择特征,递归地构建决策树。

算法流程:

输入:训练集 $D$ ,特征集 $A$ ,阈值 $\delta$

输出:

  1. 若集合中全部实例属于同一类$C{k}$ ,则 $T$ 为单结点树,类标记是 $C{k}$;
  2. 若 $A$ 是空集,则将集合中实例数最多的类 $C_{k}$ 作为该结点的类标记
  3. 否则,按照信息增益法则去计算 $A$ 中各特征对集合 $D$ 的信息增益,选择信息增益最大的特征 $A_{i}$
  4. 如果 $A{i}$ 的信息增益小于阈值 $\delta$ ,则将集合中实例数最多的类 $C{k}$ 作为该结点的类标记
  5. 否则,对于 $A{i}$ 的每一个值 $a{i}$ ,划分数据集 $D$ 为若干非空子集 $D{i}$ ,将 $D{i}$ 中实例数最多的类作为该子集的标记,构建子结点
  6. 对于第 $i$ 个结点,使用 $A-A{i}$ 为特征集,对训练集 $D{i}$ 递归地调用前五步。

$ID3$ 算法只是生成了树,达到了局部最优,但是缺少了剪枝的过程,容易过拟合,泛化能力可能不高。

C4.5 生成算法

$C4.5$ 算法针对 $ID3$ 算法做出了改进,使用信息增益比来选择特征。

信息增益比

定义:信息增益 $g(D,A)$ 与训练集 $D$ 关于特征 $A$ 的值得熵 $H_{A}(D)$ 之比

具体训练过程基本同 $ID3$ 算法。

决策树的剪枝

上述算法生成的决策时在训练集上表现可能极为优秀,但是在其他数据集上就可以分类很不准确,此为过拟合现象。因为此决策树可能过于复杂,我们解决问题的方法是简化决策树,称之为剪枝。

书上说的一个比较简单的算法:

设树的叶子结点个数为 $|T|$ , $t$ 是树 $T$ 的叶结点,该结点有 $N{t}$ 个样本点,其中 $k$ 类的样本点有 $N{tk}$ 个,$H_{t}(T)$ 定义为叶子结点上的经验熵,$\alpha >= 0$ 是参数,则其损失函数为:

其中经验熵则是:

我们把 $ C(T) = \sum{t=1}^{|T|} { N{t}H_{t}(T) } $ 称之为预测误差,$|T|$ 表示模型复杂度,我们使用参数 $\alpha$ 来控制两者之间的影响:

  • 若 $alpha$ 较小,则模型相对复杂
  • 若 $alpha$ 较大,则模型相对简单

然后我们只需要计算每个结点的经验熵,并且递归地网上回缩:若损失函数值更小,则进行剪枝,直到不能继续为止。

$CART$ 算法

在给定随机变量 $X$ 的情况下输出随机变量 $Y$ 的条件概率分布的学习方法。

算法生成

决策树的生成是递归地构建二叉决策树的过程。对回归树用平方误差最小化准则,对分类树用基尼指数最小化准则。

回归树

pass

分类树

基尼系数:假设有 $K$ 个类,样本点属于第 $k$ 类的概率是 $p_{k}$ ,则概率分布的基尼系数定义为

对于二分类问题而言,样本点属于第一个分类的概率为 $p$ ,则

那么对于给定的样本集合 $D$ ,则有:

我们知道根据特征 $A$ 的值可以把 $D$ 分成两个子集,那么在特征 $A$ 的条件下,集合 $D$ 的基尼系数为:

这一点的理解和熵十分类似。

具体过程:

  1. 给定训练集 $D$ , 对每一个特征 $A{i}$ 的每一个取值 $a{i}$ 计算基尼系数
  2. 选择最小的基尼系数对应的特征及取值,从而生成两个子结点,分配训练集的数据
  3. 重复前两步,直到满足停止条件

算法的停止条件是自定义的,可以样本个数小于阈值,也可以是基尼系数小于阈值(表示基本是同一类的)…

算法剪枝

因为此决策树是完全生长的,所以需要剪去一些子树。

还是使用损失函数:

定义同上文基本一致,不过不确定性的度量函数换了。

我们可以知道,对于固定的 $\alpha$ ,肯定存在是 $C{\alpha}(T)$ 最小的子树,将其表示为 $T{\alpha}$。

pass

课后习题

待完成。

ch4-朴素贝叶斯

Posted on 2020-12-06

基本方法

朴素贝叶斯的两个基础:

  • 贝叶斯定理
  • 假设特征条件独立

给定数据集 $T$ :

由 $P(X,Y)$ 独立同分布生成。

那么条件概率分布是:

因为我们假设特征条件是独立的,那么可以得到:

基础有了,现在对于我们一个给定的 $x$ ,我们可以通过贝叶斯定理去计算其后验概率分布,将后验分布最大值对应的类作为 $x$ 的类输出:

相应地,公式带入一下,同时我们可以知道 $P(X=x)$ 是一个定值,其不会影响最后的结果,那么:

相应地,分类结果为:

朴素贝叶斯法的参数估计

可以使用极大似然估计,具体地:

其中 $X{j}$ 是 $x$ 的第 $j$ 个特征, $a{jl}$ 是 $x_{j}$ 第 $l$ 个可能取得的值。

贝叶斯估计

作用:解决极大似然估计可能出现的概率为 0 的情况。

公式如下:

其中 $\lambda >= 0$ ,等价于在随机变量的各个取值的频数上加一个正数,其中 $S_{j}$ 是该特征变量的可能取值数。读起来有点 $Beta$ 分布的感觉。

同理:

其中 $K$ 为 $Y$ 可能的取值数。

总结

朴素贝叶斯法最应理解的还是条件独立性 这一点,让计算方便了许多。

ch3-KNN

Posted on 2020-12-06

K 近邻算法

直接解释:

给定一个训练集 $T$ ,对于新输入的实例 $x{i}$,选取 $T$ 中与该实例最解决的 $K$ 的实例中占多数的那个类别,作为 $x{i}$ 的类别

K 近邻算法没有显式的学习过程。

三大要素

三大要素确定后,模型即可确定。

距离度量

特征空间中两个点的距离是两个点相似程度的反应。在一般的 $n$ 维空间中我们可以使用 欧式距离,还有 $L_{p}$,他们之间是有关系的。

其中 $x{i} = { x{i}^{1}, x{i}^{2},… x{i}^{l} }$ 。

当 $p = 1$,则是曼哈顿距离;

当 $p=2$,则是欧式距离

K 值的选择

K 值的选择会对结果产生重大影响:

  • 过小:敏感,受近的数据点支配,容易过拟合
  • 过大:不敏感,近似误差大

解决方法:选择一个较小的 K 值,然后交叉验证

决策规则

一般是多数表决。

KNN 的多数表决是让误分类的概率最小,是满足经验风险最小化的要求的。

计算优化

这一块的知识还得再了解。

资料:kd 树

12…12
zhangyang

zhangyang

120 posts
39 tags
© 2022 zhangyang
Powered by Hexo
|
Theme — NexT.Mist v5.1.4