机器学习-概率生成模型
理论基础
概率生成模型,是概率统计和机器学习中的一类重要模型,指一系列用于随机生成可观测数据的模型。假设有两类数据,每一类都有若干个样本;概率生成模型认为每一类数据都服从某一种分布,如高斯分布;从两类训练数据中得到两个高斯分布的密度函数,具体的是获得均值和方差两个参数;测试样本输入到其中一个高斯分布函数,得到的概率值若大于0.5,则说明该样本属于该类,否则属于另一类。
生成模型可以和贝叶斯概率公式进行结合,用于分类问题。原始贝叶斯概率公式为:
\[
P(A|B)=\frac{P(B|A)P(A)}{P(B)} \tag{1}
\]
对于一个\(2\times2\)的分类则有下图所述的贝叶斯分类
在上图中,训练数据中有两个类别;每个类别下有5个样本,我们想要知道新的测试样本\(x\)属于\(C1\)的可能性。根据贝叶斯概率公式可以得到上图片所示的概率公式。其中,\(P(C1)\)和\(P(C2)\)表示在训练数据中,随机采样得到\(C1\)或者C2的概率,即两个类别在训练数据中所占的比重。分母项\(P(x)\)表示生成数据x的概率,此处可以由生成模型计算得到;
\[
...
机器学习-梯度下降的优化
在回归中,我们需要解决下面的优化问题,即使得Loss函数尽可能的小 \[
\theta^*=arg\min L(\theta),L:loss function,\theta:parameters
\] 假设一共有两个参数\(\theta_1,\theta_2\),使得\(\theta^0=
\begin{bmatrix}\theta^0\\\theta^1\end{bmatrix}\),便有梯度如下
\[\nabla L(\theta)=\begin{bmatrix} \partial
L(\theta_1)/ \partial \theta_1\\\ \partial L(\theta_2)/ \partial
\theta_2\end{bmatrix}\] 那么参数的更新便可通过向量的形式进行
\[
\begin{bmatrix}\theta^1_1\\\theta^1_2\end{bmatrix}=\begin{bmatrix}\theta^0_1\\\theta^0_2\end{bmatrix}-\eta\begin{bmatrix}
\partial L(\ ...
机器学习-回归
前言
此次学习的课程为李宏毅机器学习,之前学过一遍吴恩达的课程,只可惜当时没记笔记,且近些时候没有写代码,逐渐疏忽了,故选择李宏毅再进行新一遍的学习,所谓温故而知新。
回归是我们通常会使用的机器学习中的一类,比如日常中的我们的身高预测,股票预测等等,这些都可以看作为粗略的回归。
举一个例子
小时候我们会玩一个叫赛尔号的游戏,游戏里有各种各样的精力,就好比我们捕捉到了一只雷伊,然后我们可以向雷伊投经验值,让他升级,这只雷伊会有一个攻击力,我们想要预测雷伊的各种各样的属性与其攻击力之间的关系。
于是我们设其血量为\(X_{hp}\),其体重为\(x_{w}\),其身高为\(x_{h}\),其物种为\(x_s\),其战斗力为\(x_{cp}\),然后预测他进化之后的战斗力值。那么便有\(y=b+\sum w_ix_i\),其中\(w_i:weight,b:bias\)。如果单一个\(x_{cp}\)作预测的话便是\(y=b+w\cdot x_{cp}\)。
收集到了数据之后,便是可以进行预测,在此我们使用一个名为Loss函数进行Loss计算
\[
L(f) = \sum^ ...
身体是革命的本钱
最开始感到身体不适的时候,大概是在六月初,那时候觉得右下腹隐隐不适,但是并不疼痛,我一直以为是肝脏出了问题,随机买了护肝片,然后减少了熬夜。起初还是有一些效果,不适程度减少了很多,但是不到一周的时间又开始了,那是我正在做俯卧撑的时候,毕业的那段时间是每天一百个俯卧撑,那天俯卧撑的时候,突然觉得右胸猛的一痛,就像是要被撕裂了一般,随机停止了,然后上床休息。这便是已经六月中了。
之后便是毕业典礼之类类的事情,这时候大概一直右胸下部都有一种异物感,还是觉得是肝脏的问题,于是去校医院做了肝胆检查,检查结果表示一切正常,所以觉得,是不是健身练的太多了,导致肌肉拉伸了?虽然那个部位肌肉确实没有怎么练到,但是确实就没有继续往下面检查。
时间到了28号,毕业前往深圳,去华大实习,师兄给安排了食宿,然后自己去办理入职,入职需要入职体检,随机去了医院进行体检,血常规没有什么问题,检查心率的时候当时心率达到了116,医生说让做个心电图,这是上午的时候。下午体检结果出来,医生说我X光有问题,肺部有密集的阴影,需要做个CT进行深度检查,然后赶忙去做了CT,然后又去做了心电图,心电图倒是一切正常,还是往常的窦 ...
再见小破电
感谢成电,我爱成电,这是我四年本科生涯的经历所能给予成电的评价。
我本身并不是很想分主题写,但是又害怕自己错过一些部分,为了让自己逻辑更为通顺,我将从下面这些方面叙说我的四年。
我自己
首先介绍一下我自己,楼主是来自河南十八线小县城的学生,生命科学与技术学院2018级生物信息复合培养。在2020年国家全面脱贫之前,按照国家的定义是国家级贫困县的贫困家庭的贫困学生,纯纯的小镇做题家。上大学之前甚至都没有出过我们那个屁大点地方的小县城,没有特长,没有兴趣爱好,当然家庭也不支持;身体也不好,小时候家里没钱吃肉,甚至给我搞出了佝偻病,也遗传了父亲母亲的一些其他的奇奇怪怪无关紧要但是会在体检报告单上体现出来的病。我的母亲一直是处于无业状态,在家照顾我以及我的弟弟;我的父亲原先是位农民,后来地被收了,就南下打工,成为了一名农民工。总体来说,属于是纯纯的衰仔一条了,衰的程度甩了路明非十八条街。但是个人有点可能比较适应这个时代的一些优点吧,我的心态比较好,也有可能是已经见惯了太多不好的事情已经麻木了。大概就是我总体的一个介绍了。
学业
二十一世纪是生物的世纪,大概就是大家经常听到的一句话 ...
讲讲各个编程语言的特点
目前呢,市面上主流的编程语言有
PHP、Java、Python、C、C++、JavaScript等,这些语言呢也是各有千秋,今天呢,就用简短的话语细数一下他们的特点。
PHP:没有优点
Java:库多,库多,库多
Python:语法清楚,语法清楚,语法清楚
C:能操纵底层,能细粒度优化性能
C++:啥都有,啥都有,啥都有
汇编:
C语言:
Java:
C#:
PHP:
Python:
Go:
Haskell:
Lisp:
最后是 C++:
关于 pandoc exited with code null 的解决方案
今天在写博客的时候,渲染的时候发生了一些问题,主要报错如下
[ERROR][hexo-renderer-pandoc] pandoc exited with code null.
看了一些博主的方案,也进行了尝试,但是结果并不是很好,但是自己经过摸索还是解决了,便是来写一下相关的解决方案。
第一种是将 hexo-renderer-pandoc 卸载
npm remove --save hexo-renderer-pandoc
但是呢,卸载之后,hexo 的渲染器就需要重新装配,不符合我的需求。
第二种则是在 Linux 之下的的一个官方的解决方法:
name: Simple Usage
on: push
jobs:
convert_via_pandoc:
runs-on: ubuntu-18.04
steps:
- uses: docker://pandoc/core:2.9
with:
args: "--help" # gets appended ...
tensorflow入门
首先是 tensorflow 及其相关包的安装,作者本人使用的是
miniconda,安装命令如下
conda create -n 'tensorflow'
activate tensorflow
conda install -c conda-forge tensorflow
conda install scikit-learn
conda install -c conda-forge pandas
conda install -c conda-forge matplotlib
conda install -c conda-forge seaborn
代码仓库为 deeplearning-ai 的
git clone https://github.com/https-deeplearning-ai/tensorflow-1-public
首先要讲一下机器学习和传统编程的区别,传统编程在于通过输入规则和数据,得到结果;机器学习则是通过输入结果和数据,得到规则,即如下图所示
首先可以做一个例子 x = -1, 0, 1, 2, 3, 4 y = -3, -1, 1, 3 ...
关于 torch.nn.CrossEntropyLoss 的计算
torch中计算损失函数时,会使用到名为 CrossEntropyLoss
的交叉熵损失函数,这个函数的公式为: \[
\begin{aligned}
loss(x,class)&=−log\frac{∑_jexp(x[j])}{exp(x[class])}\\
&= −x[class] + log(∑_jexp(x[j]))
\end{aligned}
\]
class 表示该样本的分类,x[j] 表示预测函数的第 j
个输出,关于此公式的解释如下:
假设我们的预测函数的输出如下 \[
[[0.0541, 0.1762, 0.9489 ], [−0.0288, −0.8072, 0.4909]]
\] 假设我们的应该的分类如下 \[
[0,2]
\] 即第一个样本为类别class=0,第二个样本为类别class=2
那么 loss 函数则为: \[
\begin{aligned}
\frac{e^{0.0541}}{e^{0.0541}+e^{0.1762}+e^{0.9489}}&=0.2185\\
\frac{e^{0 ...
关于 Couesrea 奖学金的申请
Coursera是免费大型公开在线课程项目,由美国斯坦福大学两名计算机科学教授创办。旨在同世界顶尖大学合作,在线提供免费的网络公开课程。Coursera的首批合作院校包括斯坦福大学、密歇根大学、普林斯顿大学、宾夕法尼亚大学等美国名校。
Coursera与另外1达成合作协议。其课程报名学生突破了150万,来自全球190多个国家和地区,而网站注册学生为68万。注册124门课程。目前新增的大学包括了佐治亚理工学院、杜克大学、华盛顿大学、加州理工学院、莱斯大学、爱丁堡大学、多伦多大学、洛桑联邦理工学院
-
洛桑(瑞士)、约翰·霍普金斯大学公共卫生学院、加州大学旧金山分校、伊利诺伊大学厄巴纳
- 香槟分校以及弗吉尼亚大学。
除了免费课程之外还有一些付费性质的课程,但是也会有相应的课程福利,比如提供运算的服务器之类的。但是费用可能较为高。毕竟是学生嘛,Coursera也是提供了一套完整的助学金申请方案,可以用于助学金申请。
于是乎,就做了一个助学金申请模版
I am very interested in this course. I believe that this ...