而在这个笔记中,我想谈的是 Logistic Regression( 逻辑回归)。
假定我们有如下两个clusters的数据,一堆是红的那些点,一堆是绿色的那堆,它们拥有如下的分布:
我们规定,其中绿色的点代表了某种正逻辑,用“1” 表示;红色代表负逻辑,用“0"表示,称为数据的标定(label)。显而易见,这两个clusters在特征空间(feature space)上是线性可分的( 不可分的以后会提及)。意味着我们可以用类似如下的一条直线来分开两个clusters,这样再有一个新的未归类的点出现,我们可以根据它落在线的哪一边来给它着色,也就是分类。
既然是叫 Logistic Regression,那么肯定是要从这堆数据中想办法拟合出这条线最合理的位置和走向的,但具体怎么实现呢? 我们再接着看,假如我们沿着如图的垂线方向来看点的label值的分布。
理想情况下应该会是如下这样的一个阶越分布,即线的一边全是正样本,一边全是负样本,记住绿=1,红=0:
看上去很美好,但头疼的是这玩意在关键的分隔点上不可导,会给我们后面的工作带来一系列麻烦( 但实际上仍然有分类器利用了这种分布,叫 perceptron)。
于是我们祭出了一条祖传的无比优雅的近似曲线——Logistic function:
$$h(x)=\frac{1}{1+e^{-x}}$$
其导数形式如下,有兴趣者自行推导:
$$h'(x)=h(x)(1-h(x))$$
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |