机器学习
可以把分类问题当做回归问题来解吗?
以binary classification为例,我们在Training时让输入为class 1的输出为1,输入为class 2的输出为-1;那么在testing的时候,regression的output是一个数值,它接近1则说明它是class 1,它接近-1则说明它是class 2
有两个class,蓝色的是class 1,红色的是class 2,如果用Regression的做法,那么就希望蓝色的这些属于class 1的宝可梦,input到Regression的model,output越接近1越好;红色的属于class 2的宝可梦,input到Regression的model,output越接近-1越好
假设我们真的找到了这个function,就像下图左边所示,绿色的线表示
,也就是class 1和class 2的分界线,这种情况下,值接近-1的宝可梦都集中在绿线的左上方,值接近1的宝可梦都集中在绿线的右下方,这样的表现是好的。
理想的方法是这样的:
Function(Model)
我们要找的function f(x)里面会有另外一个function g(x),当我们的input x输入后,如果g(x)>0,那f(x)的输出就是class 1,如果g(x)<0,那f(x)的输出就是class 2,这个方法保证了function的output都是离散的表示class的数值
Loss function
我们可以把loss function定义成
即这个model在所有的training data上predict预测错误的次数,也就是说分类错误的次数越少,这个function表现得就越好
但是这个loss function没有办法微分,是无法用gradient descent的方法去解的,当然有Perceptron、SVM这些方法可以用,但这里先用另外一个solution来解决这个问题。
概率理论解释
假设我们考虑一个二元分类的问题,我们拿到一个input x,想要知道这个x属于class 1或class 2的概率
实际上就是一个贝叶斯公式,x属于class 1的概率就等于class 1自身发生的概率乘上在class 1里取出x这种颜色的球的概率除以在class 1和 class 2里取出x这种颜色的球的概率(后者是全概率公式)
因此我们想要知道x属于class 1或是class 2的概率,只需要知道4个值:P ( C 1 ) , P ( x ∣ C 1 ) , P ( C 2 ) , P ( x ∣ C 2 ) ,我们希望从Training data中估测出这四个值。
Prior
P ( C 1 ) 和P ( C 2 ) 这两个概率,被称为Prior,计算这两个值还是比较简单的
假设我们还是考虑二元分类问题,编号小于400的data用来Training,编号大于400的data用来testing,如果想要严谨一点,可以在Training data里面分一部分validation出来模拟testing的情况
在Training data里面,有79只水系宝可梦,61只一般系宝可梦,那么P ( C 1 ) = 79 / ( 79 + 61 ) = 0.56 ,P ( C 2 ) = 61 / ( 79 + 61 ) = 0.44 现在的问题是,怎么得到P ( x ∣ C 1 )和P ( x ∣ C 2 ) 的值。
Probability from Class
怎么得到P ( x ∣ C 1 ) 和P ( x ∣ C 2 ) 的值呢?假设我们的x是一只新来的海龟,它显然是水系的,但是在我们79只水系的宝可梦training data里面根本就没有海龟,所以挑一只海龟出来的可能性根本就是0啊!所以该怎么办呢?
你可以想象说这已有的79只水系宝可梦的data其实只是冰山一角,假定水系神奇宝贝的Defense和SP Defense是从一个Gaussian的distribution里面sample出来的,下图只是采样了79个点之后得到的分布,但是从高斯分布里采样出海龟这个点的几率并不是0,那从这79个已有的点,怎么找到那个Gaussian distribution函数呢?
Gaussian Distribution
先介绍一下高斯函数,这里u uu表示均值,Σ \SigmaΣ表示方差,两者都是矩阵matrix,那高斯函数的概率密度函数则是:
从下图中可以看出,同样的Σ,不同的u,概率分布最高点的地方是不一样的
同理,如果是同样的u,不同的Σ,概率分布最高点的地方是一样的,但是分布的密集程度是不一样的
那接下来的问题就是怎么去找出这个Gaussian,只需要去估测出这个Gaussian的均值u和协方差Σ 即可
估测u和Σ的方法就是极大似然估计法(Maximum Likelihood),极大似然估计的思想是,找出最特殊的那对u和Σ,从它们共同决定的高斯函数中再次采样出79个点,使”得到的分布情况与当前已知79点的分布情况相同“这件事情发生的可能性最大