机器学习面试题,更有大厂内推机会

2018 年 4 月 10 日 七月在线实验室


本次题目来自《七月在线机器学习集训营 三期,第八周(深度学习)考试》,参考答案来自优秀学员shaoyang。集训营采用线上线下相结合的授课方式,BAT专家面对面、手把手教学方式;除了直播答疑、作业批改、在线考试之外,还有开课前的入学测评,基于每一个人的测评数据量身定制个性化的不同学习路线。此外会根据个人情况提供定制化的能力评估、就业指导以及包括BAT等一线互联网公司的工作机会推荐

四期集训营将于近日开课,北京、上海、深圳、广州、杭州、沈阳、济南、郑州和成都九城同步开营。详情见文末“阅读原文”,点击题目下方空白位置获取本题答案。

1.试写您对深度学习的理解,以及它与传统机器学习的关系,相同与不同之处。

对深度学习的理解,以及它与传统机器学习的关系

深度学习是机器学习的特定分支,它源于人工神经网络的研究,深度学习模型的典型例子是前馈深度网络和多层感知机,深度学习可以从原始数据中提取较高层次、较为抽象的特征,将原始数据表示为嵌套的层次概念体系,可以通过简单的概念构建复杂的概念。例如,计算机难以理解像素值集合的图像,将一组图像映射到对象标识的函数非常复杂,如果直接处理,学习和评估次映射似乎是不可能的,深度学习将所需的复杂映射分解为一系列嵌套的简单映射(每个由模型的不同层次描述)来解决这一难题。

深度学习vs机器学习

相同点:

  • 两者都属于人工智能范畴,且深度学习是机器学习的分支,两者都属于学习算法;

  • 两者都从经验中学习,从经验数据中提取特征;

  • 两者都包含有监督学习和无监督学习。

不同点:
  • 相对比机器学习,深度学习可以提取更高层次、更为抽象的特征,例如从图像中提取特征,且深度学习涉及的模型复杂度更高;

  • 深度学习解决了那些对机器学习来说不可能完成的任务,例如语音识别、人脸识别;

  • 机器学习有严格的数学、统计学等理论基础,而深度学习在这方面较为缺乏;

  • 两者解决问题的方式不同,深度学习根据层次化的概念体系来理解世界,而每个概念则通过与某些相对简单的概念之间的关系来来定义,层次化的概念可以让计算机构建较简单的概念来学习复杂概念。


2.简要介绍下您了解的keras框架? 以及进行一个任务的基本流程

keras简介

Keras一个深度学习框架,其后端可以用不同的深度学习框架支撑,比如theano、Tensorflow和微软的CNTK,keras最大的特点是为快速实验而生。Keras的核心数据结构是“模型”,模型是一种组织网络层的方式,keras包括两种模型,即序贯(Sequential)模型和函数式(Functional)模型,序贯模型是多个网络层的线性堆叠,也就是“一条路走到黑”,函数式模型接口是用户定义多输出模型、非循环有向模型或具有共享层的模型等复杂模型的途径。

基本流程

  • 1.引入库,初始化“模型架子”(Sequential模型或者Functional模型);

  • 2.利用序贯模型或函数式模型来构建深度学习网络,序贯模型通过add来添加层,指定输入数据的shape;

  • 3.通过compile来编译模型,指定优化器optimizer、损失函数loss和指标列表metrics;

  • 4.把数据灌进来训练(fit),可指定batch_size和epochs;

  • 5.在测试集上评估效果(evaluate)

  • 6.实际预测(predict)


3.工业界在训练深度学习模型时,采用训练方式多为SGD(mini-batch),请简述这种方式较其它方式的优点?

梯度下降算法是使用最为广泛的参数寻优方法,参数的更新有两种方式:

  • 批量梯度下降算法:遍历全部数据集算一次损失函数,然后算函数对各个参数的梯度,更新梯度。这种方法每更新一次参数都要把数据集里的所有样本都看一遍,计算量开销大,计算速度慢,不支持在线学习,这称为Batch gradient descent,批梯度下降。

  • 随机梯度下降算法:每拿到一个样本就算一下损失函数,然后求梯度更新参数,这个称为随机梯度下降,stochastic gradient descent。这个方法速度比较快,但是收敛性能不太好,可能在最优点附近晃来晃去,hit不到最优点。两次参数的更新也有可能互相抵消掉,造成目标函数震荡的比较剧烈。

小批的梯度下降(mini-batch gradient decent)是为了克服以上两种方法的缺点而采用的是一种折中手段,优点如下:

  • 这种方法把数据分为若干个批,按批来更新参数,这样,一个批中的一组数据共同决定了本次梯度的方向,下降起来就不容易跑偏,减少了随机性;

  • 因为批的样本数与整个数据集相比小了很多,减少了计算量。


4. 请简述神经风格中的BP模型的信号正向传播与误差反向传播的过程?

通常说“BP网络”时,一般是指用BP算法训练的多层前馈神经网络。多层前馈神经网络的每层神经元与下一层神经元全互连,神经元之间不存在同层链接,也不存在跨层链接,其中输入层神经元接收外界输入,隐藏层和输出层神经元对信号进行加工,最终结果由输出层神经元输出。

信号正向传播过程

  • 1.初始化网络权重和阈值,每个神经元的每个连接都有一个权重,且每个神经元都有一个相关联的偏倚(bias),偏倚充当阈值,用来改变神经元的活性;

  • 2.训练样本提供给网络的输入层,输入通过输入神经,不发生变化,即,对于输入层神经元来讲,输出值等于输入值;

  • 3.计算隐藏层或输出层的每个神经元的净输入。隐藏层或输出层的每个神经元的每个连接都有一个权重,对于计算隐藏层或输出层某神经元J,连接该神经元的每个输入(该输入来自于上一层的输出)都乘以其对应的权重,然后求和,即得到该神经元的净输入;

  • 4.计算隐藏层或输出层的每个神经元的输出。隐藏层或输出层的每个神经元取其净输入与偏倚的差,然后将激活函数作用于它,得到输出。

误差反向传播过程

BP算法基于梯度下降策略,以目标的负梯度方向对参数进行调整。

  • 1.计算输出层的神经元的误差(或称目标);

  • 2.计算隐藏层神经元的误差(或称目标);

  • 3.计算输出层神经元的梯度项,并更新权重和阈值。给定学习率,对于输出层某神经元,利用梯度下降算法,以目标的负梯度方向更新该神经元所连接的权重和关联的阈值;

  • 4.计算隐藏层神经元的梯度项,给定学习率,利用梯度下降算法该层神经元的权重和阈值;

  • 5.重复以上步骤直到达到停止条件。


5. 在什么情况下,会使用到早停法earyly stoping? 使用早停法可以防止什么情况发生?

由于神经网络有强大的表示功能,经常容易早于过拟合,当训练误差持续降低,但测试误差却上升的情况下,可使用早停法。使用早停法可以缓解神经网络的过拟合。

早停法(earyly stoping)将数据分成训练集和验证集,训练集用来计算梯度、更新权重和阈值,验证集用来估计误差,若训练集误差降低但验证集误差升高,则停止训练,同时返回具有最小验证集误差的连接权和阈值。

《机器学习集训营》课程安排

新增大量机器学习内容

第一阶段:零基础快速上手编程

在线直播:1-基本python类型、判断与循环流程等

在线实训:2-python基本练习题

在线直播:3-文件/数据读写、面向对象、第三方库等

在线实训:4-多种数据读写与面向对象练习

线下实战:5-python基本练习题 与 google python实战题


第二阶段:数据分析全攻略

在线直播:1-pandas花式数据统计与分析技能

在线实训:2-pandas综合练习

在线直播:3-用pandas完成机器学习数据预处理与特征工程

在线实训:4-pandas完成Kaggle机器学习预处理

线下实战:5-美国大选、共享单车数据分析


第三阶段:可视化提升数据逼格技能get

在线直播:1-好用的python可视化利器matplotlib

在线实训:2-matplotlib完成Titanic和自行车租赁数据可视化

在线直播:3-自带各种数据拟合分析的可视化利器seaborn

在线实训:4-seaborn完成Titanic和自行车租赁数据可视化

线下实战:5-美国大选、共享单车可视化技能巩固与实战


第四阶段:玩转大数据

在线直播:1-hadoop与map-reduce

在线实训:2-手写map-reduce完成词频统计,制作词云

在线直播:3-Spark与大数据处理

在线实训:4-Spark大数据日志分析

线下实战:5-大数据分析处理案例


第五阶段:机器学习原理

在线视频:1-线性回归、logistic回归、梯度下降

在线视频:2-决策树、随机森林、GBDT

在线视频:3-SVM与数据分类

在线视频:4-特征工程:数据清洗、异常点处理、特征抽取、选择与组合

在线视频:5-多算法组合与模型最优化

在线视频:6-用户画像与推荐系统

在线视频:7-聚类

在线视频:8-贝叶斯网络

在线直播:9-逻辑回归 Softmax SVM 与 朴素贝叶斯的精髓速讲

在线实训:10-算法核心要点巩固(上)

在线直播:11-决策树 随机森林 boosting 模型融合的精髓速讲

在线实训:12-算法核心要点巩固(下)

线下实战:13-机器学习算法面试要点大考察


第六阶段:机器学习实战

在线直播:1-机器学习流程、预处理、特征工程

在线实训:2-Kaggle机器学习比赛中的特征工程处理实战

在线直播:3-模型评判标准与部分机器学习有监督算法

在线实训:4-sklean接口熟悉与机器学习建模指导

线下实战:5-sklearn建模与使用

在线直播:6-机器学习有监督算法与无监督学习

在线实训:7-sklearn刷Kaggle比赛题

在线直播:8-机器学习集成算法与大杀器Xgboost/LightGBM

在线实训:9-Xgboost与LightGBM使用

在线直播:10-数据科学比赛精讲

在线实训:11-数据科学比赛练习赛

线下实战:12-集成算法与场景建模


第七阶段:深度学习原理到实战

在线直播:1-深度神经网络、google wide&&deep模型、腾讯通用CTR神经网络框架与实现

在线直播:2-卷积神经网络、caffe实战图像分类、Tensorflow实战图像风格变换实现

在线直播:3-循环神经网络、Tensorflow实战情感分析与文本生成实现

线下实战:4-Caffe&&Tensorflow实战


第八阶段:实际综合项目与就业指导

线下实战:1-自然语言处理项目

(文本数据抓取+spark/pandas数据分析+可视化+特征抽取+Sklearn/Spark机器学习建模+深度学习建模)

线下实战:2-分类与推荐系统实战

(音乐数据抓取+spark/pandas分析+可视化+协同过滤+隐语义模型+特征抽取分类建模)

线下实战:3-图像项目

(图像分类+图像检索)

线下实战:4-机器学习面试辅导

(面试注意点+常见面试考点精讲+简历指导+项目展示)

扫描下方二维码加入集训营

登录查看更多
4

相关内容

梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)。
【2020新书】从Excel中学习数据挖掘,223页pdf
专知会员服务
85+阅读 · 2020年6月28日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
255+阅读 · 2020年6月10日
打怪升级!2020机器学习工程师技术路线图
专知会员服务
96+阅读 · 2020年6月3日
【2020新书】数据科学:十大Python项目,247页pdf
专知会员服务
211+阅读 · 2020年2月21日
专知会员服务
112+阅读 · 2019年12月24日
【机器学习课程】Google机器学习速成课程
专知会员服务
161+阅读 · 2019年12月2日
面试题:文本摘要中的NLP技术
七月在线实验室
15+阅读 · 2019年5月13日
今日面试题分享:简单介绍下LR
七月在线实验室
7+阅读 · 2019年2月20日
BAT机器学习面试1000题(721~725题)
七月在线实验室
11+阅读 · 2018年12月18日
BAT机器学习面试1000题(716~720题)
七月在线实验室
19+阅读 · 2018年12月17日
BAT机器学习面试题1000题(376~380题)
七月在线实验室
9+阅读 · 2018年8月27日
深度学习面试100题(第81-85题)
七月在线实验室
16+阅读 · 2018年8月6日
深度学习面试100题(第76-80题)
七月在线实验室
6+阅读 · 2018年8月3日
AI笔试面试题库-Python题目解析1
七月在线实验室
5+阅读 · 2018年6月27日
难?不难?机器学习套路就这三个!
聊聊架构
3+阅读 · 2017年10月25日
Compositional Generalization in Image Captioning
Arxiv
3+阅读 · 2019年9月16日
Phase-aware Speech Enhancement with Deep Complex U-Net
Arxiv
12+阅读 · 2019年2月26日
Stock Chart Pattern recognition with Deep Learning
Arxiv
6+阅读 · 2018年8月1日
Arxiv
3+阅读 · 2018年5月20日
VIP会员
相关VIP内容
相关资讯
面试题:文本摘要中的NLP技术
七月在线实验室
15+阅读 · 2019年5月13日
今日面试题分享:简单介绍下LR
七月在线实验室
7+阅读 · 2019年2月20日
BAT机器学习面试1000题(721~725题)
七月在线实验室
11+阅读 · 2018年12月18日
BAT机器学习面试1000题(716~720题)
七月在线实验室
19+阅读 · 2018年12月17日
BAT机器学习面试题1000题(376~380题)
七月在线实验室
9+阅读 · 2018年8月27日
深度学习面试100题(第81-85题)
七月在线实验室
16+阅读 · 2018年8月6日
深度学习面试100题(第76-80题)
七月在线实验室
6+阅读 · 2018年8月3日
AI笔试面试题库-Python题目解析1
七月在线实验室
5+阅读 · 2018年6月27日
难?不难?机器学习套路就这三个!
聊聊架构
3+阅读 · 2017年10月25日
Top
微信扫码咨询专知VIP会员