【机器学习】重新认识支持向量机(SVM)
注:对于一位刚刚站在科学研究大门口的博士一年级学生,思考科研的方法以及科研与其它工作之间的异同由来已久。科研的道路上充满了不确定性,从大方向到每一步的细节都需要探索。如果我们放任这种不确定性不予理睬,那么我们做科研的道路将充满荆棘(少数情况下可能会有惊喜),这里的约束条件之一是:面对科学中无尽的前沿,我们的精力和能力是有限的。自大学时代就开始思考“博”与“专”的问题,一方面自己的兴趣广泛,有时候还会为自己学习新东西的高效而沾沾自喜;另一方面又常常感觉到自己的专业知识不够系统、欠缺深度。我也在不同的场合,跟不同的老师、长辈和朋友聊起过这个问题。有人认为博和专应该齐头并进,两者能够相互促进;有人认为应该专注于一个特定领域,这将是我们安身立命之根本。这样的争论一直存在,直到在微博上看到朱光潜先生在其《谈读书》中的一句话:“不能通就不能专,不能博就不能约。先博学而后守约,这是治任何学问所必守的程序。”对于这句话,我深感认同。
做研究不等同于学习。在学习的过程中,大多数时候我们是在吸纳已有的成体系的知识(博学);但是做研究其实是在一个相对较小的领域创造和生产新的知识(守约)。学习是打基础;做研究是在运用知识,开拓知识的边界。人类几千年的文明进程,给我们留下了丰富的精神财富,我们穷其一生,也只可能了解其中的很小一部分。因此,当我们从事研究工作时,需要找到“学习”与“研究”之间的平衡点。
在科研过程中, 往往是先有问题,而后才有研究。只有在提出一个问题的时候,一项研究工作才真正开始。我们可以进一步分析问题、规范问题的形式,讨论在现有知识体系下,解决该问题的可能性。“问题”的质量在很大程度上决定了研究过程和结果的质量。有时候提出一个好问题比解决一个难题更有价值。“发问”也可以算是一种主动学习的过程,但是与广泛的学习相比,此时更加专注、问题导向、有比较明确的目的。围绕一个“明确定义的问题”来展开研究,相当于添加了一个非常强的约束条件,这在很大程度上帮助我们降低了过程和结果的不确定性(基于我们对问题的理解,可以形成某种程度的预期)。此时,我们所要做的就是找到一条通往该问题的路,一开始披荆斩棘开辟一条羊肠小道,随后再不断扩宽。
回到SVM,之所以“重新认识”,是因为之前写过一篇与SVM相关的文章:从SVM到SVR,但是自己之前还是没理解清楚。假如现在我们以问题出发来重新认识SVM,可以提出哪些问题?
1. 在两组样本线性可分的情况下,如何使分隔边界最大化,从而使两组样本尽可能的分开?
2. 如何处理两组样本线性不可分的情况?
3. 如何将以上问题转化为一个带约束的优化问题(约束条件是什么,如何求解,最终的解应该如何解释)?
4. Kernel function:什么是Kernel function,为什么要引入Kernel function,常见的Kernel function有哪些?
(未完待续。。。)