logistic回归是一个学习算法,用在监督学习问题中,输出y标签是0或1时,这是一个二元分类问题。

已知输入的特征向量x可能是一张图,你希望能识别出这是不是猫图,你需要一个算法,可以给出一个预测值,我们说预测值二项logistic回归结果_监督学习,就是你对y的预测,更正式地说,你希望二项logistic回归结果_监督学习是一个概率,当输入特征x满足条件时,y就是1二项logistic回归结果_监督学习_03。所以换句话说,如果x是图片,正如上一节中看到的,你希望二项logistic回归结果_监督学习能告诉你这是一张猫图的概率。所以x,正如上一节中说过的,是一个二项logistic回归结果_logistic回归_05维向量。

已知logistic回归的参数是w,也是一个二项logistic回归结果_logistic回归_05维向量,而b就是一个实数,所以已知输入x和参数w和b,我们如何计算输出预测二项logistic回归结果_监督学习

其实可以这样算,但是不靠谱,就是二项logistic回归结果_特征向量_08,输入x的线性函数。事实上,如果你做线性回归,就是这么算的,,但这不是一个非常好的二元分类算法,因为你希望二项logistic回归结果_监督学习二项logistic回归结果_监督学习_10的概率,所以二项logistic回归结果_监督学习应该介于0和1之间。但实际上这很难实现,因为二项logistic回归结果_二项logistic回归结果_12可能比1大得多,或者甚至是负值,这样的概率是没意义的,你希望概率介于0和1之间。所以在Logistic回归中,我们的输出变成二项logistic回归结果_logistic回归_13,这就是sigmoid函数的图像。

二项logistic回归结果_二项logistic回归结果_14

横轴是z,那么sigmoid(z)就是这样的,从0到1的光滑函数,该函数与垂直轴相较于0.5处,这就是sigmoid(z)的图形,我们用z来表示二项logistic回归结果_二项logistic回归结果_12,这就是sigmoid函数的公式,二项logistic回归结果_logistic回归_16,其中z是实数,二项logistic回归结果_监督学习_17

要注意一些事情,如果z非常大,那么二项logistic回归结果_监督学习_18就很接近0,那么二项logistic回归结果_特征向量_19,所以这接近1,事实上,如果看sigmoid这个图,当z很大时,sigmoid(z)就很接近1。相反,如果z很小,或者是非常大的负数,那么二项logistic回归结果_监督学习_18就会变成很大的数字,所以sigmoid函数就会接近0。所以当你实现logistic函数时,你要做的是学习参数w和b。

在继续之前,我们再讲讲符号约定,,当我们对神经网络编程时,我们通常会把参数w和参数b分开,这里b对应一个拦截器,在其他一些课程中你们可能看过不同的表示。在一些符号约定中,你定义一个额外的特征向量,二项logistic回归结果_二项logistic回归结果_21,那么新的x向量就是一个二项logistic回归结果_二项logistic回归结果_22维向量,然后将二项logistic回归结果_监督学习_23。在这另一种符号约定中,你有一个向量参数二项logistic回归结果_logistic回归_24,其中二项logistic回归结果_二项logistic回归结果_25扮演的是b的角色,这是一个实数,而二项logistic回归结果_二项logistic回归结果_26二项logistic回归结果_特征向量_27的作用和w一样。

二项logistic回归结果_监督学习_28


事实上,当你实现你的神经网络时,将b和w看做独立的参数可能更好,所以在这门课中,我们不会用这种符号约定。