2018-05-06

## 第三周 Logistic Regression逻辑回归

### 1 Classification and Representation

#### 1.1 分类Classification

要尝试分类,一种方法是使用线性回归,并将所有大于0.5的预测值映射为1,将小于0.5的所有预测值映射为0.但是,此方法不适用,因为分类实际上不是线性函数。

**二元分类问题(binary classification problem)**

    y只有两个值,0或1;

例如:我们为电子邮件系统构建垃圾分类器,然后$x^{(i)}$可能是某件邮件的某些功能,如果它是一封垃圾邮件,则y是1;否则为0;因此 $y \in [0,1]$. 0也被称为负类,1为正类;有时用符号'-'和'+'表示。

#### 1.2 Hypothesis Representation 假设函数的表现形式

逻辑回归模型 $h_\theta(x) = g(\theta^Tx)$

希望 $0 \leq h_\theta(x) \leq 1$

$z = \theta^Tx$

$g(z) = \frac{1}{1+e^{-z}}$ 

**g(z)是逻辑函数(logistic function) 或者S型函数(sigmoid function)**

以上两个函数合并,得到$h_\theta(x) = \frac{1}{1+e^{-\theta^Tx}}$

![逻辑函数图](picture/third_week/logistic_function_1.png)

图中显示函数g(z)将任何实数映射到(0,1)之间

$h_\theta(x) = P(y=1|x;\theta)=1-P(y=0|x;\theta)$

$P(y=1|x;\theta)+P(y=0|x;\theta)=1$

其中P表示概率probability,是输出y=1的概率

例如:  $h_\theta(x) = 0.7$

对于一个特征为x的患者,y=1的概率是0.7,肿瘤是恶性的概率是70%

#### 1.3 Decision Boundary决策边界

$h_\theta(x) = g(\theta^Tx)$

$z = \theta^Tx$

假设预测结果 'y =1' if $h_\theta(x) \geq 0.5$

    那么$g(z) \geq 0.5$

    如图:当x轴代表的z值大于0时,g(z)大于0.5;所以$z \geq 0$; 又$z = \theta^Tx$

> 记住(数学运算,目前不太理解)

$z=0, e^0 = 1 => g(z)=\frac{1}{2}$

$z \to\infty, e^{\infty}\to0 => g(z)=1$

$z \to-\infty, e^\infty \rightarrow \infty => g(z)=0$


结论 $\theta^Tx \geq 0$

同样,预测  'y=0' if $h_\theta(x) < 0.5 $

    $\theta^Tx < 0$

***决策边界是假设函数的一个属性***,不是数据集的属性

![](picture/third_week/decision_boundary_1.png)

> 不是用训练集来定义决策边界,而是用训练集来拟合参数θ,***给定了参数向量θ,决策边界就确定了***

> 决策边界是分隔y = 0和y = 1的区域的线。它由我们的假设函数创建。

非线性决策边界

![](picture/third_week/decision_boundary_2.png)

高阶多项式特征变量,可以得到非常复杂的决策边界

***

### 2 Logistic Regression Model

#### 2.1 Cost Function 代价函数拟合参数

Linear regression :$J(\theta)=\frac{1}{m}\sum_{i=1}^{m}\frac{1}{2}(h_\theta(x^{(i)}-y^{(i)})^2$

$Cost(h_\theta(x^{(i)}, y^{(i)})=\frac{1}{2}(h_\theta(x^{(i)}-y^{(i)})^2$

$$J(\theta)=\frac{1}{m}\sum_{i=1}^{m}Cost(h_\theta(x^{(i)}, y^{(i)})$$

去掉上标i,得到

$Cost(h_\theta(x), y)=\frac{1}{2}(h_\theta(x)-y)^2$

得到关于$h_\theta(x)$和y的公式,平方误差的1/2;预测值是$h_\theta(x)$,实际结果是y;

![](picture/third_week/cost_function_1.png)

逻辑回归的代价函数

![](picture/third_week/cost_function_2.png)

Cost =0 if y=1, $h_\theta(x)=1$

如果 $h_\theta(x) \to 0  => Cost \to \infty$

![](picture/third_week/cost_function_3.png)

> $Cost(h_\theta(x),y) =0\quad if\quad h_\theta(x)=y$

$Cost(h_\theta(x),y) \to \infty \quad if\ y =0\ and\quad h_\theta(x) \to 1$

$Cost(h_\theta(x),y) \to \infty \quad if\ y=1\ and \quad h_\theta(x) \to 0$

![](picture/third_week/cost_function_4.png)

#### 2.2 Simplified Cost Function and Gradient Descent

$Cost(h_\theta(x), y)=\begin{cases}

-log(h_\theta(x)) & if\ y = 1 \\

-log(1-h_\theta(x)) & if\ y = 0 \\

\end{cases}$

> 注意:y=0 or 1

整合一个公式:

$Cost(h_\theta(x),y)=-y \cdot log(h_\theta(x))-(1-y)log(1-h_\theta(x))$

if y=1, 代入公式,得到

$Cost(h_\theta(x), y)=-log(h_\theta(x))$

if y=0,代入公式,得到

$Cost(h_\theta(x), y)=-log(1-h_\theta(x))$

逻辑回归的代价函数:

$$\begin{align}

J(\theta) &=\frac{1}{m}\sum_{i=1}^{m}Cost(h_\theta(x^{(i)}), y^{(i)}) \\

&=-\frac{1}{m}[\sum_{i=1}^{m}y^{(i)}logh_\theta(x^{(i)}+(1-y^{(i)})log(1-h_\theta(x^{(i)}))]

\end{align}$$

矢量化实现:

$h= g(X\theta)$

$J(\theta)=\frac{1}{m} \cdot(-y^Tlog(h)-(1-y)^Tlog(1-h))$

**梯度下降:**

期望得到 $min_\theta J(\theta):$

Repeat {

    $\theta_j := \theta_j - \alpha\frac{\delta}{\delta\theta_j}J(\theta)$

}

> 注意: simultaneously update all同时更新所有的$\theta_j$

其中,$\frac{\delta}{\delta\theta_j}J(\theta)=\frac{1}{m}\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)}$

Repeat {

    $$\theta_j := \theta_j - \frac{\alpha}{m}\sum_{i=1}^{m}(h_\theta(x^{(i)})-y^{(i)})x^{(i)}_j$$

}

> 注意:这里的$h_\theta(x)=\frac{1}{1+e^{-\theta^Tx}}$

***梯度下降的矢量化实现:***

$\theta := \theta - \frac{\alpha}{m}X^T(g(X\theta)-y)$

![](picture/third_week/cost_function_5.png)

#### 2.3 Advanced Optimization 高级优化算法/概念

代价函数J(θ),希望得到最小的minJ(θ),通过梯度下降算法算出J(θ)及偏导数项

梯度下降算法不是我们可以使用的唯一算法,还有更高级,更复杂的算法计算这两项,这些算法就是为我们优化代价函数的不同方法

优化算法:

- Gradient Descent

- Conjugate gradient

- BFGS (共轭梯度/变尺度法)

- L-BFGS (限制变尺度法)

以上算法的优缺点:

通常不需要手动选择学习率α(这些算法的思路:给出计算导数项和代价函数的方法,可以认为算法有一个智能的内部循环,称为线性搜素linear search算法,它可以尝试不同的学习率α并自动选择一个好的学习速率α,甚至可以为每次迭代选择不同的学习速率)

收敛快于梯度下降

缺点:比梯度下降复杂

建议:不要自己编写这些更复杂的算法(除非您是数值计算方面的专家),而是使用这些库,因为它们已经过测试和高度优化

首先,提供一个函数,来评估给定输入值θ的以下两个函数:J(θ),$\frac{\delta}{\delta\theta_j}J(\theta)$

![](picture/third_week/advanced_optimization_1.png)

上图中返回的第一个参数是代价函数J值,第二个参数是梯度值;

![](picture/third_week/advanced_optimization_3.png)

高级优化函数fminunc():表示Octave里无约束最小化函数;调用方式如下:

options变量:存储配置;**'GradObj','on'**:设置梯度目标参数为打开(on)

**'MaxIter','100':**迭代次数,100次;

initialTheta: 给出θ的猜测初始值,向量必须是d维的,$d \geq 2$

@:函数指针

例题:

![](picture/third_week/advanced_optimization_2.png)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 227,488评论 6 531
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 98,034评论 3 414
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 175,327评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,554评论 1 307
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,337评论 6 404
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 54,883评论 1 321
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,975评论 3 439
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 42,114评论 0 286
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,625评论 1 332
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,555评论 3 354
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,737评论 1 369
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,244评论 5 355
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,973评论 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,362评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,615评论 1 280
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,343评论 3 390
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,699评论 2 370

推荐阅读更多精彩内容