专栏首页PPV课数据科学社区学习攻略 | 机器学习和深度学习技能树、面试宝典

学习攻略 | 机器学习和深度学习技能树、面试宝典

人工智能的浪潮正在席卷全球,这些得益于数据量的上涨、运算力的提升和机器学习新算法(深度学习)的出现。机器学习是一种实现人工智能的方法,深度学习是一种实现机器学习的重要技术之一,甚至有人认为“深度学习最终可能会淘汰掉其他所有机器学习算法”。

为了帮助大家更好帮助大家学习这些新技术,小遍整理了相关的学习资料,希望这些资料对刚入门的同行有所帮助。

一、人工智能、机器学习和深度学习的区别?

机器学习:一种实现人工智能的方法

机器学习最基本的做法,是使用算法来解析数据、从中学习,然后对真实世界中的事件做出决策和预测。与传统的为解决特定任务、硬编码的软件程序不同,机器学习是用大量的数据来“训练”,通过各种算法从数据中学习如何完成任务。

举个简单的例子,当我们浏览网上商城时,经常会出现商品推荐的信息。这是商城根据你往期的购物记录和冗长的收藏清单,识别出这其中哪些是你真正感兴趣,并且愿意购买的产品。这样的决策模型,可以帮助商城为客户提供建议并鼓励产品消费。

机器学习直接来源于早期的人工智能领域,传统的算法包括决策树、聚类、贝叶斯分类、支持向量机、EM、Adaboost等等。从学习方法上来分,机器学习算法可以分为监督学习(如分类问题)、无监督学习(如聚类问题)、半监督学习、集成学习、深度学习和强化学习。

传统的机器学习算法在指纹识别、基于Haar的人脸检测、基于HoG特征的物体检测等领域的应用基本达到了商业化的要求或者特定场景的商业化水平,但每前进一步都异常艰难,直到深度学习算法的出现。

深度学习:一种实现机器学习的技术

深度学习本来并不是一种独立的学习方法,其本身也会用到有监督和无监督的学习方法来训练深度神经网络。但由于近几年该领域发展迅猛,一些特有的学习手段相继被提出(如残差网络),因此越来越多的人将其单独看作一种学习的方法。

最初的深度学习是利用深度神经网络来解决特征表达的一种学习过程。深度神经网络本身并不是一个全新的概念,可大致理解为包含多个隐含层的神经网络结构。为了提高深层神经网络的训练效果,人们对神经元的连接方法和激活函数等方面做出相应的调整。其实有不少想法早年间也曾有过,但由于当时训练数据量不足、计算能力落后,因此最终的效果不尽如人意。

深度学习摧枯拉朽般地实现了各种任务,使得似乎所有的机器辅助功能都变为可能。无人驾驶汽车,预防性医疗保健,甚至是更好的电影推荐,都近在眼前,或者即将实现。

三者的区别和联系

机器学习是一种实现人工智能的方法,深度学习是一种实现机器学习的技术。我们就用最简单的方法——同心圆,可视化地展现出它们三者的关系。

人工智能、机器学习、深度学习三者关系示意图

二、机器学习路线图

1)机器学习预备知识:

1.了解 Python Numpy 模块:Python Numpy Tutorial

2.学习相关数学基础知识:

  • 了解概率论里的条件概率和贝叶斯定理:贝叶斯推断及其互联网应用(一):定理简介 ;
  • 了解线性代数中向量、矩阵的基本运算;
  • 了解导数和偏导数运算:微积分求导数的链式法则。 (注:超链见原文连接)

2)机器学习算法工程师技能图

课程推荐:《数据挖掘算法

三、深度学习学习技能树

1、深度学习预备知识:

①. Deep Learning |Coursera 的 1-3 门课偏理论

②. 翻阅《机器学习》(周志华著)前 2 章,了解机器学习的基本概念;翻阅 《数学之美》 (吴军著) 第 2-5 章,了解自然语言处理的重要概念;

2、深度学习技能图

课程推荐:《机器学习与深度学习》

四、机器学习算法工程师面试问题

  1. 你在研究/项目/实习经历中主要用过哪些机器学习/数据挖掘的算法?
  2. 你熟悉的机器学习/数据挖掘算法主要有哪些?
  3. 你用过哪些机器学习/数据挖掘工具或框架?
  4. 基础知识
  • 无监督和有监督算法的区别?
  • SVM 的推导,特性?多分类怎么处理?
  • LR 的推导,特性?
  • 决策树的特性?
  • SVM、LR、决策树的对比?
  • GBDT 和 决策森林 的区别?
  • 如何判断函数凸或非凸?
  • 解释对偶的概念。
  • 如何进行特征选择?
  • 为什么会产生过拟合,有哪些方法可以预防或克服过拟合?
  • 介绍卷积神经网络,和 DBN 有什么区别?
  • 采用 EM 算法求解的模型有哪些,为什么不用牛顿法或梯度下降法?
  • 用 EM 算法推导解释Kmeans。
  • 用过哪些聚类算法,解释密度聚类算法。
  • 聚类算法中的距离度量有哪些?
  • 如何进行实体识别?
  • 解释贝叶斯公式和朴素贝叶斯分类。

5.开放问题

  • 给你公司内部群组的聊天记录,怎样区分出主管和员工?
  • 如何评估网站内容的真实性(针对代刷、作弊类)?
  • 深度学习在推荐系统上可能有怎样的发挥?
  • 路段平均车速反映了路况,在道路上布控采集车辆速度,如何对路况做出合理估计?采集数据中的异常值如何处理?
  • 如何根据语料计算两个词词义的相似度?
  • 在百度贴吧里发布 APP 广告,问推荐策略?
  • 如何判断自己实现的 LR、Kmeans 算法是否正确?

6 . 答题思路

6.1 用过什么算法?

  • 最好是在 项目/实习的大数据场景 里用过,比如推荐里用过 CF、LR,分类里用过 SVM、GBDT;
  • 一般用法是什么,是不是自己实现的,有什么比较知名的实现,使用过程中 踩过哪些坑 ;
  • 优缺点分析。

6.2 熟悉的算法有哪些?

  • 基础算法要多说,其它算法要挑熟悉程度高的说,不光列举算法,也适当说说应用场合;
  • 面试官和你的研究方向可能不匹配,不过在基础算法上你们还是有很多共同语言的,你说得太高大上可能效果并不好,一方面面试官还是要问基础的,另一方面一旦面试官突发奇想让你给他讲解高大上的内容,而你只是泛泛的了解,那就傻叉了。

6.3 用过哪些框架/算法包?

  • 主流的分布式框架如Hadoop,Spark,Graphlab,Parameter Server 等择一或多使用了解;
  • 通用算法包,如 mahout,scikit,weka 等;
  • 专用算法包,如 opencv,theano,torch7,ICTCLAS 等。

7. 基础知识

7.1个人感觉高频话题是 SVM、LR、决策树(决策森林)和聚类算法,要重点准备;

7.2算法要从以下几个方面来掌握

  • 产生背景,适用场合(数据规模,特征维度,是否有 Online 算法,离散/连续特征处理等角度);
  • 原理推导(最大间隔,软间隔,对偶);
  • 求解方法(随机梯度下降、拟牛顿法等优化算法);
  • 优缺点,相关改进;
  • 和其他基本方法的对比;

7.3不能停留在能看懂的程度,还要

  • 对知识进行结构化整理,比如撰写自己的 cheet sheet,我觉得 面试是在有限时间内向面试官输出自己知识的过程 ,如果仅仅是在面试现场才开始调动知识、组织表达,总还是不如系统的梳理准备;
  • 从面试官的角度多问自己一些问题,通过查找资料总结出全面的解答,比如如何预防或克服过拟合。

五.学习建议:

机器学习和深度学习有一定的学习难度,要想在竞争中脱颖而出,就必须做到

l 保持学习热情,关心热点;

l 深入学习,会用,也要理解;

l 在实战中历练总结;

l 积极参加学术界、业界的讲座分享,向牛人学习,与他人讨论。

编辑&整理:数据小咖 End

本文分享自微信公众号 - PPV课数据科学社区(ppvke123),作者:数据小咖

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-04-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 关于机器学习,你需要知道的三件事!

    关键词:MATLAB、机器学习、机器学习算法、 正文如下: 导读:MATLAB开发运营团队深度解析何为机器学习,什么时候使用机器学习,如何选择机器学习算法,MA...

    小莹莹
  • 学习攻略 | 机器学习 学习路线图

    1. 引言 也许你和这个叫『机器学习』的家伙一点也不熟,但是你举起iphone手机拍照的时候,早已习惯它帮你框出人脸;也自然而然点开今日头条推给你的新闻;也习惯...

    小莹莹
  • AI时代就业指南:数据挖掘工程师成长之路

    编者按:数联寻英发布的首份《大数据人才报告》显示,目前全国大数据人才只有46万,未来3到5年人才缺口达150万之多。 今年3月份时,谷歌开发的人工智能Alph...

    小莹莹
  • 算法channel 2017回顾

    1 算法channel 公众号才成立两个月,在这段日子,每天推送一篇算法,机器学习,深度学习相关的文章,包括: 算法的基本思想 算法的实例分析 有些算法的源代码...

    double
  • 机器学习 vs. 深度学习

    在这篇文章中,我们将研究深度学习和机器学习的对比。我们也将分别学习它们。我们还将讨论他们在不同问题上的分歧。在进行深度学习和机器学习比较的同时,我们也会研究它们...

    程序你好
  • 1.0初识机器学习

    玩蛇的胖纸
  • 如果我不擅长数学,如何开始学习机器学习

    在“理解数学”之前他们不能在所从事学科中取得卓越的成就,这就是他们认为数学家比他们聪明的地方。

    和风
  • 推荐 | 一文读懂深度学习与机器学习的差异

    关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第一 【Python】:排名第三 【算法】:排名第四 转自:小象 源 | dzone.co...

    昱良
  • 一篇文章解决机器学习,深度学习入门疑惑

    研究生有不少日子,和之前的几个学长以及几个学弟偶尔也聊聊天。大部分聊的话题无关乎这几年大火的机器学习深度学习神经网络,而这篇文章的目的,则是从学生的角度(不管是...

    OLDPAN
  • 2020还是AI最火?推荐几本深度学习的书籍帮你入门!

    最近公司里有一些关于算法方面的工作,想到能学点有趣的新技术,于是毫不犹豫地参加了学习,机器学习,深度学习,离我们Java工程师到底远不远,说近不近,说远也不远,...

    黄小斜

扫码关注云+社区

领取腾讯云代金券