机器学习入门大纲

本人不是计算机专业的,更不是机器学习领域的。由于暑研去的实验室刚好是弄 AI & Machine Learning 方向,本人在去之前恶补了很多机器学习和深度学习的东西,算是勉强入了门。基本上所有人入门机器学习都是从看吴恩达(Andrew Ng)在 Coursera 上的 Machine Learning 开始,在花了大概2周看完这个后,本人转向看视觉方向的东西,这领域的经典视频是 Stanford 老师李飞飞及其他人开的 CS231n  Convolutional Neural Networks for Visual Recognition, 这个也大概要看两周。

本文主要是想为所有初学者入门提供一份大纲,讲述语言为中文,但专业术语依旧用英文。在密集看如此大量的视频时,本人曾因机器学习的多种分类方式、多样却相似的公式、不同情况应用的算法头晕眼花,且视频里的讲述过程是循序渐进的,有些前面记了的笔记会被后面推翻,如之前有些大篇幅使用的算法或公式会在后面打碎重来;同时,有些前面只略讲的东西后面会大量补充相关知识。因此,为了使内容清晰,本人决定用一个个模块讲完重点内容再跳转到下一模块,并略过现在不常用的使用公式,而非像视频那样一开始先全部介绍一遍、再一个个打碎重组。

本文并非入门教程,略去了许多机器学习历史上的有趣公式,因此只应作看以上视频课程昏头转向时参考使用,莫想只看本文就直接入门!!!另外,本文只讲述理论和实践tips,正常情况下不会放代码。具体怎么写代码、配环境、练手材料以后考虑开新文写。

一、机器学习总览

1. 机器学习是什么?

"A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measure by P, improves with experience E."

翻译成中文即:一个计算机程序可以从经验E中学到如何处理任务T,并且处理结果的评分由P表示。另外,它对任务T的处理结果评分P会随着经验E的增加而变好。

再举例说明就是:你写了一个程序帮你协助邮箱整理,然后它检索邮件、看你有没有把邮件标为垃圾邮件,来逐渐学会分类。它看你处理的邮件数越多,它的过滤效果就越好。在这个例子里,经验E是它看你分类邮件,任务T是分类邮件,评分P是分类得准不准确。


2. 机器学习种类

机器学习主要有两个大类,监督学习(Supervised Learning)和无监督学习(Unsupervised Learning)。其中,比较常见得应该是监督学习,这里又分为两种:Classification 和 Regression。前者为分类问题,包括上面例子的邮件分类,还有很热门的图像识别也是这一类;后者为预测结果,比如卖房子应标价多少、下次考试可以拿多少分这种。

无监督学习只有一种,即把数据分组(group the data),和上面的分类学习不同的地方在于它只把应该在一组的数据圈在一起,但不用把这组数据贴个标签。比较常用于语音处理,比如分离音乐中的人声与伴奏、剥离噪音等。

除了这两大类,还有 Enforcement Learning(增强学习),Transfer Learning (迁移学习)等,属于进阶型,不在此入门篇多讲。

本人目前是往视觉方向学习,对 Classification 大概会熟悉一点,其他的以后解除了再详写。


3. 学习机器学习需要什么基础?

(1)一定的英语水平(至少也CET4以上吧,毕竟视频教程很多是国外大学录的)

(2)较强的数学基础。如果是理工科出身的,基本都学过微积分、线性代数,这些基本可以看入门视频不懵逼了。然后如果还会最优化、偏微分的话,就可以跟着视频推导了。当然,如果以后真的想走这条路,还要学不少的统计以及各种概率分布,比如最基础的正态分布、贝叶斯定理这种。

(3)一定的忍耐期及学习动力。


4. 本文大纲

大纲会在更新时变动。大概率不涉及无监督学习。

(1)由 Regression 引出机器学习的 Loss Function, Cost Function, Optimizer 等。

(2)Classification 讲解。

(3)Classification 与 神经网络(大概率不从历史出发讲,而是直接列知识点)。

(3)实践tips:训练集和测试集的选择,如何初始化,激活函数的选择等。


二、Regression

【下次更新写哈】

你可能感兴趣的:(机器学习入门大纲)