diff --git a/image/20180111_000653.png b/image/20180111_000653.png new file mode 100644 index 0000000..eb568cf Binary files /dev/null and b/image/20180111_000653.png differ diff --git a/image/20180111_000814.png b/image/20180111_000814.png new file mode 100644 index 0000000..f235830 Binary files /dev/null and b/image/20180111_000814.png differ diff --git a/image/2413fbec8ff9fa1f19aaf78265b8a33b_Logistic_function.png b/image/2413fbec8ff9fa1f19aaf78265b8a33b_Logistic_function.png index 6d7a62c..e707bba 100644 Binary files a/image/2413fbec8ff9fa1f19aaf78265b8a33b_Logistic_function.png and b/image/2413fbec8ff9fa1f19aaf78265b8a33b_Logistic_function.png differ diff --git a/week3.html b/week3.html index a96d7b8..bb99415 100644 --- a/week3.html +++ b/week3.html @@ -220,6 +220,6 @@ header, .context-menu, .megamenu-content, footer { font-family: "Segoe UI", Aria -

6 逻辑回归(Logistic Regression)6.1 分类(Classification)6.2 假设函数表示(Hypothesis Representation)6.3 决策边界(Decision Boundary)6.4 Cost Function6.5 Simplified Cost Function and Gradient Descent6.6 Advanced Optimization6.7 Multiclass Classification_ One-vs-all7 Regularization7.1 The Problem of Overfitting7.2 Cost Function7.3 Regularized Linear Regression7.4 Regularized Logistic Regression

6 逻辑回归(Logistic Regression)

6.1 分类(Classification)

在分类问题中,预测的结果是离散值(结果是否属于某一类),逻辑回归算法(Logistic Regression)被用于解决这类分类问题。

肿瘤诊断问题:

肿瘤诊断问题是一个二元分类问题(binary class problems),则定义 ,其中 0 表示负向类(negative class),代表恶性肿瘤("-"),1 为正向类(positive class),代表良性肿瘤("+")。如图,定义最右边的样本为偏差项

在未加入偏差项时,线性回归算法给出了品红色的拟合直线,若规定

,预测为 ,即正向类;

,预测为 ,即负向类。

即以 0.5 为阈值(threshold),则我们就可以根据线性回归结果,得到相对正确的分类结果

 

接下来加入偏差项,线性回归算法给出了靛青色的拟合直线,如果阈值仍然为 0.5,可以看到算法在某些情况下会给出完全错误的结果。

不仅如此,线性回归算法的值域为 ,则当线性回归函数给出诸如 等很大/很小(负数)的数值时,结果 ,这显得非常怪异。

 

区别于线性回归算法,逻辑回归算法是一个分类算法,其输出值永远在 0 到 1 之间,即

6.2 假设函数表示(Hypothesis Representation)

为了使 ,引入逻辑回归模型,定义假设函数

对比线性回归函数 表示逻辑函数(logistic function),复合起来,则为线性回归函数。

一个常用的逻辑函数是 S 形函数,叫做 sigmoid 函数(如下图),其公式为

sigmoid function

应用 sigmoid 函数,则逻辑回归模型:

逻辑回归模型中, 的作用是,根据输入 以及参数 ,计算得出”输出 “的可能性(estimated probability),概率学中表示为:

 

以肿瘤诊断为例, 表示病人有 的概率得了恶性肿瘤。

6.3 决策边界(Decision Boundary)

 

6.4 Cost Function

6.5 Simplified Cost Function and Gradient Descent

6.6 Advanced Optimization

6.7 Multiclass Classification_ One-vs-all

7 Regularization

7.1 The Problem of Overfitting

7.2 Cost Function

7.3 Regularized Linear Regression

7.4 Regularized Logistic Regression

+

6 逻辑回归(Logistic Regression)6.1 分类(Classification)6.2 假设函数表示(Hypothesis Representation)6.3 决策边界(Decision Boundary)6.4 代价函数(Cost Function)6.5 Simplified Cost Function and Gradient Descent6.6 Advanced Optimization6.7 Multiclass Classification_ One-vs-all7 Regularization7.1 The Problem of Overfitting7.2 Cost Function7.3 Regularized Linear Regression7.4 Regularized Logistic Regression

6 逻辑回归(Logistic Regression)

6.1 分类(Classification)

在分类问题中,预测的结果是离散值(结果是否属于某一类),逻辑回归算法(Logistic Regression)被用于解决这类分类问题。

肿瘤诊断问题:

肿瘤诊断问题是一个二元分类问题(binary class problems),则定义 ,其中 0 表示负向类(negative class),代表恶性肿瘤("-"),1 为正向类(positive class),代表良性肿瘤("+")。如图,定义最右边的样本为偏差项

在未加入偏差项时,线性回归算法给出了品红色的拟合直线,若规定

,预测为 ,即正向类;

,预测为 ,即负向类。

即以 0.5 为阈值(threshold),则我们就可以根据线性回归结果,得到相对正确的分类结果

 

接下来加入偏差项,线性回归算法给出了靛青色的拟合直线,如果阈值仍然为 0.5,可以看到算法在某些情况下会给出完全错误的结果。

不仅如此,线性回归算法的值域为 ,则当线性回归函数给出诸如 等很大/很小(负数)的数值时,结果 ,这显得非常怪异。

 

区别于线性回归算法,逻辑回归算法是一个分类算法,其输出值永远在 0 到 1 之间,即

6.2 假设函数表示(Hypothesis Representation)

为了使 ,引入逻辑回归模型,定义假设函数

对比线性回归函数 表示逻辑函数(logistic function),复合起来,则称为逻辑回归函数。

逻辑函数是 S 形函数,会将所有实数映射到 范围。

sigmoid 函数(如下图)是逻辑函数的特殊情况,其公式为

sigmoid function

应用 sigmoid 函数,则逻辑回归模型:

逻辑回归模型中, 的作用是,根据输入 以及参数 ,计算得出”输出 “的可能性(estimated probability),概率学中表示为:

 

以肿瘤诊断为例, 表示病人有 的概率得了恶性肿瘤。

6.3 决策边界(Decision Boundary)

决策边界的概念可以帮助我们更好地理解逻辑回归模型。

在逻辑回归中,有假设函数

为了得出分类的结果,这里和前面一样,规定以 为阈值:

回忆一下逻辑函数的图像:

sigmoid function

观察可得当 时,有 ,即

同线性回归模型的不同点在于:

直观一点来个例子, 是下图模型的假设函数。

根据上面的讨论,要进行分类,那么只要 时,就预测 ,即预测为正向类。

如果取 ,则有 ,当 时,易绘制图中的品红色直线即决策边界,为正向类(以红叉标注的数据)给出 的分类预测结果。

 

上面讨论了逻辑回归模型中线性拟合的例子,下面则是一个多项式拟合的例子,和线性回归中讨论的其实没有多大区别。

为了拟合下图数据,建模多项式假设函数:

这里取 ,决策边界对应了一个在原点处的单位圆,如此便可给出分类结果了,如图中品红色曲线:

 

当然,通过一些更为复杂的多项式,还能拟合那些图像显得非常怪异的数据,使得决策边界像碗状、爱心状等等。

 

简单来说,决策边界就是分类的分界线,分类现在实际就由 (中的 )决定啦。

6.4 代价函数(Cost Function)

 

6.5 Simplified Cost Function and Gradient Descent

6.6 Advanced Optimization

6.7 Multiclass Classification_ One-vs-all

7 Regularization

7.1 The Problem of Overfitting

7.2 Cost Function

7.3 Regularized Linear Regression

7.4 Regularized Logistic Regression

\ No newline at end of file diff --git a/week3.md b/week3.md index 121b66b..15f59c5 100644 --- a/week3.md +++ b/week3.md @@ -38,11 +38,13 @@ $h_\theta(x) \lt 0.5$ ,预测为 $y = 0$,即负向类。 为了使 $h \in \left(0, 1\right)$,引入逻辑回归模型,定义假设函数 $$ -h_\theta \left( x \right)=g\left(\theta^{T}X \right) +h_\theta \left( x \right)=g(z)=g\left(\theta^{T}X \right) $$ -对比线性回归函数 $h_\theta \left( x \right)=\theta^{T}X$,$g$ 表示逻辑函数([logistic function][1]),复合起来,则为线性回归函数。 +对比线性回归函数 $h_\theta \left( x \right)=\theta^{T}X$,$g$ 表示逻辑函数([logistic function][1]),复合起来,则称为逻辑回归函数。 -一个常用的逻辑函数是 S 形函数,叫做 [sigmoid 函数][2](如下图),其公式为 $g\left( z \right)=\frac{1}{1+{{e}^{-z}}}$。 +逻辑函数是 S 形函数,会将所有实数映射到 $(0, 1)$ 范围。 + +[sigmoid 函数][2](如下图)是逻辑函数的特殊情况,其公式为 $g\left( z \right)=\frac{1}{1+{{e}^{-z}}}$。 ![sigmoid function](image/2413fbec8ff9fa1f19aaf78265b8a33b_Logistic_function.png) @@ -61,9 +63,54 @@ $\begin{align*}& h_\theta(x) = P(y=1 | x ; \theta) = 1 - P(y=0 | x ; \theta) \ne ## 6.3 决策边界(Decision Boundary) +决策边界的概念可以帮助我们更好地理解逻辑回归模型。 + +在逻辑回归中,有假设函数 $h_\theta \left( x \right)=g(z)=g\left(\theta^{T}X \right)$。 + +为了得出分类的结果,这里和前面一样,规定以 $0.5$ 为阈值: + + +$\begin{align*}& h_\theta(x) \geq 0.5 \rightarrow y = 1 \newline& h_\theta(x) < 0.5 \rightarrow y = 0 \newline\end{align*}$ + +回忆一下逻辑函数的图像: + +![sigmoid function](image/2413fbec8ff9fa1f19aaf78265b8a33b_Logistic_function.png) + +观察可得当 $g(z) \geq 0.5$ 时,有 $z \geq 0$,即 $\theta^TX \geq 0$。 + +同线性回归模型的不同点在于: $\begin{align*}z \to +\infty, e^{-\infty} \to 0 \Rightarrow g(z)=1 \newline z \to -\infty, e^{\infty}\to \infty \Rightarrow g(z)=0 \end{align*}$ + +直观一点来个例子,${h_\theta}\left( x \right)=g\left( {\theta_0}+{\theta_1}{x_1}+{\theta_{2}}{x_{2}}\right)$ 是下图模型的假设函数。 + +![](image/20180111_000814.png) + +根据上面的讨论,要进行分类,那么只要 $ {\theta_0}+{\theta_1}{x_1}+{\theta_{2}}{x_{2}}\geq0$ 时,就预测 $y = 1$,即预测为正向类。 + +如果取 $\theta = \begin{bmatrix} -3\\1\\1\end{bmatrix}$,则有 $z = -3+{x_1}+{x_2}$,当 $z \geq 0$ 即 ${x_1}+{x_2} \geq 3$ 时,易绘制图中的品红色直线即**决策边界**,为正向类(以红叉标注的数据)给出 $y=1$ 的分类预测结果。 + + + +上面讨论了逻辑回归模型中线性拟合的例子,下面则是一个多项式拟合的例子,和线性回归中讨论的其实没有多大区别。 + +为了拟合下图数据,建模多项式假设函数: + +${h_\theta}\left( x \right)=g\left( {\theta_0}+{\theta_1}{x_1}+{\theta_{2}}{x_{2}}+{\theta_{3}}x_{1}^{2}+{\theta_{4}}x_{2}^{2} \right)$ + +这里取 $\theta = \begin{bmatrix} -1\\0\\0\\1\\1\end{bmatrix}$,决策边界对应了一个在原点处的单位圆,如此便可给出分类结果了,如图中品红色曲线: + + + +![](image/20180111_000653.png) + +当然,通过一些更为复杂的多项式,还能拟合那些图像显得非常怪异的数据,使得决策边界像碗状、爱心状等等。 + + + +简单来说,决策边界就是**分类的分界线**,分类现在实际就由 $z$ (中的 $\theta$)决定啦。 + +## 6.4 代价函数(Cost Function) -## 6.4 Cost Function ## 6.5 Simplified Cost Function and Gradient Descent