支持向量机(Support Vector Machines)
这章的内容是SVM。它是一种监督式学习模型,既可以用于分类也可以用于回归。这里的视频内容只讲分类。
推荐系统 | NLP
week 4的内容中学习了神经网络,但仅仅是简单接触,这周进行更加深入地学习。在开始之前先提一下两个变量:
在神经网络中,我们用\(L\)表示网络中的总层数,用\(s_l\)表示第\(l\)层(从1开始)中神经元的数量(不包括偏执神经元)。
另外,在视频的课程中,只focus神经网络在分类问题上的应用。分类问题主要分为两种:
注意没有出现\(K = 2\),是因为当只有两个分类时,我们不再需要二维的标签,而只需要用实数即可,也就是\(K = 1\)对应的二元分类。
我们目前已经学了线性回归和逻辑回归,但它们都有一个缺点:当分布复杂时,特征会非常多,开销会很大。
比如下面这个例子:
在这个图中,如果使用线性的假设函数,则会有较多的、一连串的数据点被错误分类了。而如果我们使用\(x_1\)、\(x_2\)的多项式特征时,则能训练出更好的模型。但是,如果特征数非常大,那么开销也会非常大。比如有\(n=100\)个特征,那么即使我们只采用两两组合的方式(\(x_1^2, x_1x_2, x_1x_3, \dots, x_{100}^2\)),那么最终也会有5000多个组合特征,如果三个特征相组合则会更多。当遇到那么多特征时,先前学的模型不能有效地处理,这时候我们就需要神经网络
。
假设我们要解决一个分类问题,其中标签\(y\)取值为0或1.
如果我们用线性回归算法,那么函数\(h_\theta(x)\)的输出值可能远大于1,或远小于0. 因此,这里介绍一种新的算法:逻辑回归算法,它的性质是:它的输出值永远在0到1之间。注意,该算法虽然名字中包含“回归”两字,但是实际是一种分类算法。