二分类
逻辑回归是一个用于二分类(binary classification)的算法。
接下来我们说明一些在余下课程中,需要用到的一些符号。


我们会定义一个矩阵用大写𝑋的表示,它由输 入向量𝑥 (1) 、𝑥 (2) 等组成,如下图放在矩阵的列中,所以现在我们把𝑥 (1) 作为第一列放在矩阵 中,𝑥 (2)作为第二列,𝑥 (𝑚)放到第𝑚列,然后我们就得到了训练集矩阵𝑋
——》
——》
𝑋是一个规模为n𝑥乘以𝑚的矩阵,𝑦^表示预测值接近真实值的概率,输出𝑦^是给定训练样本 𝑥 条件下 𝑦 等于 1 的概率。
逻辑回归
我们用𝑤来表示逻辑回归的参数,这也是一个n𝑥维向量(因为𝑤实际上是特征权重,维度与特征向量相同),参数里面还有𝑏,这是一个实数(表示偏差)。所以给出输入𝑥以及参数𝑤和𝑏之后,我们怎样产生输出预测值𝑦^,一件你可以尝试却不可行的事是让𝑦^=𝑤 𝑥+𝑏。𝑦^应该在0-1之间,否则𝑦^可能为很大的证书,或是负数,所以通过添加sigmoid 函数来解决该问题,公式也由线性转变为非线性函数。
Sigmoid函数由下列公式定义:
其对x的导数可以用自身表示:
Sigmoid函数的图形如S曲线
由于这个函数的特性,可以使得这个函数很好的完成 这项工作,就是让机器学习参数𝑤以及𝑏这样才使得𝑦^成为对𝑦 = 1这一情况的概率的一个很好的估计。
Q:sigmoid 优点
import numpy as npimport matplotlib.pyplot as pltdef sigmoid(x):return 1.0/(1+np.exp(-x))sigmoid_inputs = np.arange(-10,10,0.1)sigmoid_outputs = sigmoid(sigmoid_inputs)print("Sigmoid Function Input :: {}".format(sigmoid_inputs))print("Sigmoid Function Output :: {}".format(sigmoid_outputs))plt.plot(sigmoid_inputs,sigmoid_outputs)plt.xlabel("Sigmoid Inputs")plt.ylabel("Sigmoid Outputs")plt.show()
