231 SVM 模型中, 真正影响决策边界的是支持向量以下哪些算法, 可以用神经网络去构造:
1. KNN
2. 线性回归
3. 对数几率回归
A. 1 和 2
B. 2 和 3
C. 1, 2 和 3
D. 以上都不是
答案: B
在这里给大家推荐一个 python 系统学习 q 群: 250933691 有免费开发工具以及初学资料,(数据分析, 爬虫, AI, 机器学习, 神经网络)每天有老师给大家免费授课, 欢迎一起交流学习
1. KNN 算法不需要训练参数, 而所有神经网络都需要训练参数, 因此神经网络帮不上忙
2. 最简单的神经网络, 感知器, 其实就是线性回归的训练
3. 我们可以用一层的神经网络构造对数几率回归
232 请选择下面可以应用隐马尔科夫 (HMM) 模型的选项:
A. 基因序列数据集
B. 电影浏览数据集
C. 股票市场数据集
D. 所有以上
答案: D
只要是和时间序列问题有关的 , 都可以试试 HMM
233 我们建立一个 5000 个特征, 100 万数据的机器学习模型. 我们怎么有效地应对这样的大数据训练 :
A. 我们随机抽取一些样本, 在这些少量样本之上训练
B. 我们可以试用在线机器学习算法
C. 我们应用 PCA 算法降维, 减少特征数
D. B 和 C
E. A 和 B
F. 以上所有
答案: F
234 我们想要减少数据集中的特征数, 即降维. 选择以下适合的方案 :
1. 使用前向特征选择方法
2. 使用后向特征排除方法
3. 我们先把所有特征都使用, 去训练一个模型, 得到测试集上的表现. 然后我们去掉一个特征, 再去训练, 用交叉验证看看测试集上的表现. 如果表现比原来还要好, 我们可以去除这个特征.
4. 查看相关性表, 去除相关性最高的一些特征
A. 1 和 2
B. 2, 3 和 4
C. 1, 2 和 4
D. All
答案: D
1. 前向特征选择方法和后向特征排除方法是我们特征选择的常用方法
2. 如果前向特征选择方法和后向特征排除方法在大数据上不适用, 可以用这里第三种方法.
3. 用相关性的度量去删除多余特征, 也是一个好方法
所有 D 是正确的
235 对于随机森林和 GradientBoosting Trees, 下面说法正确的是:
1. 在随机森林的单个树中, 树和树之间是有依赖的, 而 GradientBoosting Trees 中的单个树之间是没有依赖的.
2. 这两个模型都使用随机特征子集, 来生成许多单个的树.
3. 我们可以并行地生成 GradientBoosting Trees 单个树, 因为它们之间是没有依赖的, GradientBoosting Trees 训练模型的表现总是比随机森林好
- A. 2
- B. 1 and 2
- C. 1, 3 and 4
- D. 2 and 4
答案: A
1. 随机森林是基于 bagging 的, 而 Gradient Boosting trees 是基于 boosting 的, 所有说反了, 在随机森林的单个树中, 树和树之间是没有依赖的, 而 GradientBoosting Trees 中的单个树之间是有依赖关系.
2. 这两个模型都使用随机特征子集, 来生成许多单个的树.
所有 A 是正确的
236 对于 PCA(主成分分析)转化过的特征 , 朴素贝叶斯的 "不依赖假设" 总是成立, 因为所有主要成分是正交的, 这个说法是 :
A. 正确的
B. 错误的
答案: B.
这个说法是错误的, 首先, "不依赖" 和 "不相关" 是两回事, 其次, 转化过的特征, 也可能是相关的
237 对于 PCA 说法正确的是 :
1. 我们必须在使用 PCA 前规范化数据
2. 我们应该选择使得模型有最大 variance 的主成分
3. 我们应该选择使得模型有最小 variance 的主成分
4. 我们可以使用 PCA 在低维度上做数据可视化
- A. 1, 2 and 4
- B. 2 and 4
- C. 3 and 4
- D. 1 and 3
- E. 1, 3 and 4
答案: A
1)PCA 对数据尺度很敏感, 打个比方, 如果单位是从 km 变为 cm, 这样的数据尺度对 PCA 最后的结果可能很有影响(从不怎么重要的成分变为很重要的成分).
2)我们总是应该选择使得模型有最大 variance 的主成分
3)有时在低维度上左图是需要 PCA 的降维帮助的
238 对于下图, 最好的主成分选择是多少 ? :
- A. 7
- B. 30
- C. 35
- D. Can't Say
答案: B
主成分选择使 variance 越大越好, 在这个前提下, 主成分越少越好.
239 数据科学家可能会同时使用多个算法 (模型) 进行预测, 并且最后把这些算法的结果集成起来进行最后的预测(集成学习), 以下对集成学习说法正确的是 :
A. 单个模型之间有高相关性
B. 单个模型之间有低相关性
C. 在集成学习中使用 "平均权重" 而不是 "投票" 会比较好
D. 单个模型都是用的一个算法
答案: B
详细请参考下面文章:
●Basics of Ensemble Learning Explained in Simple English
●Kaggle Ensemble Guide
●5 Easy questions on Ensemble Modeling everyone should know
- Basics of Ensemble Learning Explained in Simple English
- Kaggle Ensemble Guide
- 5 Easy questions on Ensemble Modeling everyone should know
240 在有监督学习中, 我们如何使用聚类方法? :
A. 我们可以先创建聚类类别, 然后在每个类别上用监督学习分别进行学习
B. 我们可以使用聚类 "类别 id" 作为一个新的特征项, 然后再用监督学习分别进行学习
C. 在进行监督学习之前, 我们不能新建聚类类别
D. 我们不可以使用聚类 "类别 id" 作为一个新的特征项, 然后再用监督学习分别进行学习
A. 2 和
B. 1 和 2
C. 3 和 4
D. 1 和 3
答案: B
我们可以为每个聚类构建不同的模型, 提高预测准确率.
"类别 id" 作为一个特征项去训练, 可以有效地总结了数据特征.
所以 B 是正确的
241 以下说法正确的是 :
A. 一个机器学习模型, 如果有较高准确率, 总是说明这个分类器是好的
B. 如果增加模型复杂度, 那么模型的测试错误率总是会降低
C. 如果增加模型复杂度, 那么模型的训练错误率总是会降低
D. 我们不可以使用聚类 "类别 id" 作为一个新的特征项, 然后再用监督学习分别进行学习
- A. 1
- B. 2
- C. 3
- D. 1 and 3
答案: C
考的是过拟合和欠拟合的问题.
242 对应 GradientBoosting tree 算法, 以下说法正确的是 :
A. 当增加最小样本分裂个数, 我们可以抵制过拟合
B. 当增加最小样本分裂个数, 会导致过拟合
C. 当我们减少训练单个学习器的样本个数, 我们可以降低 variance
D. 当我们减少训练单个学习器的样本个数, 我们可以降低 bias
A. 2 和 4
B. 2 和 3
C. 1 和 3
D. 1 和 4
答案: C
最小样本分裂个数是用来控制 "过拟合" 参数. 太高的值会导致 "欠拟合", 这个参数应该用交叉验证来调节.
第二点是靠 bias 和 variance 概念的.
243 以下哪个图是 KNN 算法的训练边界 :
- A) B
- B) A
- C) D
- D) C
E) 都不是
答案: B
KNN 算法肯定不是线性的边界, 所以直的边界就不用考虑了. 另外这个算法是看周围最近的 k 个样本的分类用以确定分类, 所以边界一定是坑坑洼洼的.
244 如果一个训练好的模型在测试集上有 100% 的准确率, 这是不是意味着在一个新的数据集上, 也会有同样好的表现? :
A. 是的, 这说明这个模型的范化能力已经足以支持新的数据集合了
B. 不对, 依然后其他因素模型没有考虑到, 比如噪音数据
答案: B
没有一个模型是可以总是适应新数据的. 我们不可能可到 100% 准确率.
245 下面的交叉验证方法 :
i. 有放回的 Bootstrap 方法
ii. 留一个测试样本的交叉验证
iii. 5 折交叉验证
iv. 重复两次的 5 折教程验证
当样本是 1000 时, 下面执行时间的顺序, 正确的是:
- A. i> ii> iii> iv
- B. ii> iv> iii> i
- C. iv> i> ii> iii
- D. ii> iii> iv> i
答案: B
Boostrap 方法是传统地随机抽样, 验证一次的验证方法, 只需要训练 1 次模型, 所以时间最少.
留一个测试样本的交叉验证, 需要 n 次训练过程(n 是样本个数), 这里, 要训练 1000 个模型.
5 折交叉验证需要训练 5 个模型.
重复 2 次的 5 折交叉验证, 需要训练 10 个模型.
所有 B 是正确的
246 变量选择是用来选择最好的判别器子集, 如果要考虑模型效率, 我们应该做哪些变量选择的考虑? :
1. 多个变量其实有相同的用处
2. 变量对于模型的解释有多大作用
3. 特征携带的信息
4. 交叉验证
A. 1 和 4
B. 1, 2 和 3
C. 1,3 和 4
D. 以上所有
答案: C
注意, 这题的题眼是考虑模型效率, 所以不要考虑选项 2.
247 对于线性回归模型, 包括附加变量在内, 以下的可能正确的是 :
1. R-Squared 和 Adjusted R-squared 都是递增的
2. R-Squared 是常量的, Adjusted R-squared 是递增的
3. R-Squared 是递减的, Adjusted R-squared 也是递减的
4. R-Squared 是递减的, Adjusted R-squared 是递增的
A. 1 和 2
B. 1 和 3
C. 2 和 4
D. 以上都不是
答案: D
R-squared 不能决定系数估计和预测偏差, 这就是为什么我们要估计残差图. 但是, R-squared 有 R-squared 和 predicted R-squared 所没有的问题.
每次你为模型加入预测器, R-squared 递增或不变.
详细请看这个链接: discussion.
248 对于下面三个模型的训练情况, 下面说法正确的是 :
1. 第一张图的训练错误与其余两张图相比, 是最大的
2. 最后一张图的训练效果最好, 因为训练错误最小
3. 第二张图比第一和第三张图鲁棒性更强, 是三个里面表现最好的模型
4. 第三张图相对前两张图过拟合了
5. 三个图表现一样, 因为我们还没有测试数据集
A. 1 和 3
B. 1 和 3
C. 1, 3 和 4
D. 5
答案: C
249 对于线性回归, 我们应该有以下哪些假设? :
1. 找到利群点很重要, 因为线性回归对利群点很敏感
2. 线性回归要求所有变量必须符合正态分布
3. 线性回归假设数据没有多重线性相关性
A. 1 和 2
B. 2 和 3
C. 1,2 和 3
D. 以上都不是
答案: D
利群点要着重考虑, 第一点是对的
不是必须的, 当然, 如果是正态分布, 训练效果会更好
有少量的多重线性相关性是可以的, 但是我们要尽量避免
250 当我们构造线性模型时, 我们注意变量间的相关性. 在相关矩阵中搜索相关系数时, 如果我们发现 3 对变量的相关系数是 (Var1 和 Var2, Var2 和 Var3, Var3 和 Var1) 是 - 0.98, 0.45, 1.23 . 我们可以得出什么结论:
1. Var1 和 Var2 是非常相关的
2. 因为 Var 和 Var2 是非常相关的, 我们可以去除其中一个
3. Var3 和 Var1 的 1.23 相关系数是不可能的
- A. 1 and 3
- B. 1 and 2
- C. 1,2 and 3
- D. 1
答案: C
Var1 和 Var2 相关系数是负的, 所以这是多重线性相关, 我们可以考虑去除其中一个.
一般地, 如果相关系数大于 0.7 或者小于 - 0.7, 是高相关的
相关性系数范围应该是 [-1,1]
251 如果在一个高度非线性并且复杂的一些变量中, 一个树模型可能比一般的回归模型效果更好. 只是:
A. 对的
B. 错的
答案: A
252 对于维度极低的特征, 选择线性还是非线性分类器?
非线性分类器, 低维空间可能很多特征都跑到一起了, 导致线性不可分.
1. 如果 Feature 的数量很大, 跟样本数量差不多, 这时候选用 LR 或者是 Linear Kernel 的 SVM
2. 如果 Feature 的数量比较小, 样本数量一般, 不算大也不算小, 选用 SVM+Gaussian Kernel
3. 如果 Feature 的数量比较小, 而样本数量很多, 需要手工添加一些 feature 变成第一种情况.
253 特征向量的缺失值处理
1. 缺失值较多. 直接将该特征舍弃掉, 否则可能反倒会带入较大的 noise, 对结果造成不良影响.
2. 缺失值较少, 其余的特征缺失值都在 10% 以内, 我们可以采取很多的方式来处理:
1) 把 NaN 直接作为一个特征, 假设用 0 表示;
2) 用均值填充;
3) 用随机森林等算法预测填充
254 SVM,LR, 决策树的对比.
模型复杂度: SVM 支持核函数, 可处理线性非线性问题; LR 模型简单, 训练速度快, 适合处理线性问题; 决策树容易过拟合, 需要进行剪枝
损失函数: SVM hinge loss; LR L2 正则化; adaboost 指数损失
数据敏感度: SVM 添加容忍度对 outlier 不敏感, 只关心支持向量, 且需要先做归一化; LR 对远点敏感
数据量: 数据量大就用 LR, 数据量小且特征少就用 SVM 非线性核
255 什么是 ill-condition 病态问题?
训练完的模型, 测试样本稍作修改就会得到差别很大的结果, 就是病态问题, 模型对未知数据的预测能力很差, 即泛化误差大.
256 简述 KNN 最近邻分类算法的过程?
1. 计算训练样本和测试样本中每个样本点的距离(常见的距离度量有欧式距离, 马氏距离等);
2. 对上面所有的距离值进行排序;
3. 选前 k 个最小距离的样本;
4. 根据这 k 个样本的标签进行投票, 得到最后的分类类别;
257 常用的聚类划分方式有哪些? 列举代表算法.
1. 基于划分的聚类: K-means,k-medoids,CLARANS.
2. 基于层次的聚类: AGNES(自底向上),DIANA(自上向下).
3. 基于密度的聚类: DBSACN,OPTICS,BIRCH(CF-Tree),CURE.
4. 基于网格的方法: STING,WaveCluster.
5. 基于模型的聚类: EM,SOM,COBweb.
258 下面对集成学习模型中的弱学习者描述错误的是?
A. 他们经常不会过拟合
B. 他们通常带有高偏差, 所以其并不能解决复杂学习问题
C. 他们通常会过拟合
答案: C, 弱学习者是问题的特定部分. 所以他们通常不会过拟合, 这也就意味着弱学习者通常拥有低方差和高偏差.
259 下面哪个 / 些选项对 K 折交叉验证的描述是正确的?
1. 增大 K 将导致交叉验证结果时需要更多的时间
2. 更大的 K 值相比于小 K 值将对交叉验证结构有更高的信心
3. 如果 K=N, 那么其称为留一交叉验证, 其中 N 为验证集中的样本数量
A. 1 和 2
B. 2 和 3
C. 1 和 3
D. 1,2 和 3
答案 (D): 大 K 值意味着对过高估计真实预期误差(训练的折数将更接近于整个验证集样本数) 拥有更小的偏差和更多的运行时间(并随着越来越接近极限情况: 留一交叉验证). 我们同样在选择 K 值时需要考虑 K 折准确度和方差间的均衡.
260 最出名的降维算法是 PAC 和 t-SNE. 将这两个算法分别应用到数据「X」上, 并得到数据集「X_projected_PCA」,「X_projected_tSNE」. 下面哪一项对「X_projected_PCA」和「X_projected_tSNE」的描述是正确的?
A. X_projected_PCA 在最近邻空间能得到解释
B. X_projected_tSNE 在最近邻空间能得到解释
C. 两个都在最近邻空间能得到解释
D. 两个都不能在最近邻空间得到解释
答案(B):t-SNE 算法考虑最近邻点而减少数据维度. 所以在使用 t-SNE 之后, 所降的维可以在最近邻空间得到解释. 但 PCA 不能.
在这里给大家推荐一个 python 系统学习 q 群: 250933691 有免费开发工具以及初学资料,(数据分析, 爬虫, AI, 机器学习, 神经网络)每天有老师给大家免费授课, 欢迎一起交流学习
来源: http://www.jianshu.com/p/e7dae261e465