机器学习算法面试题(搜集)

打算每天抽点时间出来,整理1-2题

重在持之以恒。


2018.8.28

1.LR为什么用sigmoid函数。这个函数有什么优点和缺点?为什么不用其他函数?

LR 面试常见问题

感觉这个有点难,自己也百度了一下,很多的解释都是以结果为导向,逆着推,利用sigmoid函数的优点来进行解释,总给人的感觉是以结果推结果,这个先放下,等以后深究后,再回来写。

PS:自己写的以下是

       首先我们要明白,LR是是要干什么,它最初的想法是要解决一个二元分类的问题, 输出是两个类别,而特征变量又是一些数字型的(类别性的会进行独热编码),所以借用了广义线性模型,将这些特征变量转化为一个数,在与阈值进行比较,大于阈值的分为一类,小于阈值又是一类。

      好,那为什么要选sigmoid函数呢,还有没有其它的转化函数呢,其实当我们弄明白了LR要干什么之后,我们会发现,利用tanh这个转换函数,其实好像也行呀,大于0的分为一类,小于0的分为另一类,但是实际上tanh(x)=2sigmoid(2x)-1,所以还是sigmoid的变种。

那为什么要选择sigmiod函数呢,这归因于sigmoid函数的优点,这个函数的导数非常好求,等于:

                                                   \frac{\partial g(z)}{z}=g(z)\cdot (1-g(z))

所以计算效率较高,除此以外我依稀记得在对LR的损失函数求最小值的过程中,使用了梯度下降法,其中的化简进行的那么流畅,就是得益于其导数的作用,直接消掉了非常复杂的过程。

 哎,写了这么多,不知道能不能说的圆这个道理!!!

2推到下LR的cost function和梯度下降参数迭代公式

注意是推导

函数h(x)的值有特殊的含义,它表示结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为:

2题答案

猜你喜欢

转载自blog.csdn.net/qq_20412595/article/details/82152139