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

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

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

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

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

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

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

机器学习直接来源于早期的人工智能领域,传统的算法包括决策树、聚类、贝叶斯分类、支持向量机、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)

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

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏顶级程序员

【推荐】一文了解强化学习

摘要 转自:极客头条 强化学习非常重要,原因不只在于它可以用来玩游戏,更在于其在制造业、库存、电商、广告、推荐、金融、医疗等与我们生活息息相关的领域也有很好的...

36190
来自专栏SIGAI学习与实践平台

【揭秘】我几乎面了所有知名公司的算法岗位

到了6月的时候,找了本科的数学教材开始微积分,线性代数和概率论的复习。主要挑选一些算法学习中常用的知识点进行回顾,如:偏微分、泰勒展开、拉格朗日函数、傅里叶变换...

16420
来自专栏IT技术精选文摘

机器学习简介

在直接进入机器学习的范围之前,让我们从单词的含义开始。这可能看起来很明显,但最好一开始就从其含义入手。 机器是包含一个或多个能够转换能量的零件的工具。机器通常采...

18470
来自专栏大数据文摘

我从吴恩达深度学习课程中学到的21个心得:加拿大银行首席分析师“学霸“笔记分享

17530
来自专栏机器之心

使用认知心理学解释深度神经网络:DeepMind新研究破解AI黑箱问题

选自DeepMind 机器之心编译 近日,DeepMind在其官方博客上发表了一篇题为《Interpreting Deep Neural Networks us...

33870
来自专栏ATYUN订阅号

OpenAI:通过无监督学习提高语言理解能力

研究者通过一个可扩展的,与任务无关的系统获得了一系列不同语言任务的最新成果,这一系统也即将发布。此方法结合了两种现有的想法:Transformer和无监督的预训...

13340
来自专栏机器之心

演讲 | 技术讲解概率机器学习——深度学习革命之后AI道路

Zoubin Ghahramani 是英国皇家学会会士,剑桥大学信息工程系教授,Uber 首席科学家,英国国家数据科学研究所图灵研究所剑桥主任。Zoubin G...

13940
来自专栏PPV课数据科学社区

机器学习和统计模型的差异

在各种各样的数据科学论坛上这样一个问题经常被问到——机器学习和统计模型的差别是什么? 这确实是一个难以回答的问题。考虑到机器学习和统计模型解决问题的相似性,两者...

33360
来自专栏机器之心

DeepMind推出深度学习与强化学习进阶课程(附视频)

课程地址:https://www.youtube.com/playlist?list=PLqYmG7hTraZDNJre23vqCGIVpfZ_K2RZs

9610
来自专栏机器之心

学界 | 为数据集自动生成神经网络:普林斯顿大学提出NeST

33550

扫码关注云+社区

领取腾讯云代金券