作者:胡联粤,Datawhale面经小组

Q1

⽼板给了你⼀个关于癌症检测的数据集,你构建了⼆分类器然后计算了准确率为 98%, 你是否对这个模型满意?为什么?如果还不算理想,接下来该怎么做?

首先模型主要是找出患有癌症的患者,模型关注的实际是坏样本。其次一般来说癌症的数据集中坏样本比较少,正负样本不平衡。

准确率指的是分类正确的样本占总样本个数的比率

其中为正确分类样本的个数,为总样本分类的个数。

当好样本(未患病)的样本数占99%时,模型把所有的样本全部预测为好样本也可以获得99%的准确率,所以当正负样本非常不平衡时,准确率往往会偏向占比大的类别,因此这个模型使用准确率作为模型的评估方式并不合适。

鉴于模型关注的实际是坏样本,建议使用召回率(Recall)作为模型的评估函数。

Recall 是分类器所预测正确的正样本占所有正样本的比例,取值范围为[0,1],取值越大,模型预测能力越好。

其次,使用类别不平衡的解决方案:

常见的处理数据不平衡的方法有:重采样、Tomek links、SMOTE、NearMiss等

除此之外:还可以使用模型处理:使用多种树模型算法,使用多种重采样的训练集,对少数样本预测错误增大惩罚,避免使用Accuracy,可以用confusion matrix,precision,recall,f1-score,AUC,ROC等指标。

Q2

怎么判断⼀个训练好的模型是否过拟合?如果判断成了过拟合,那通过什么办法 可以解决过拟合问题?

模型在验证集合上和训练集合上表现都很好,而在测试集合上变现很差。

解决过拟合的办法:

  • 特征降维

  • 添加正则化,降低模型的复杂度

  • Dropout

  • Early stopping

  • 交叉验证

  • 决策树剪枝

  • 选择合适的网络结构

Q3

对于线性回归,我们可以使⽤ Closed-Form Solution, 因为可以直接把导数设置 为 0,并求出参数。在这个 Closed-Form ⾥涉及到了求逆矩阵的过程,什么时候不能求出其逆矩阵?这时候如何处理?

什么是闭式解(Closed-Form Solution)?

解析解(Analytical solution) 就是根据严格的公式推导,给出任意的自变量就可以求出其因变量,也就是问题的解,然后可以利用这些公式计算相应的问题。所谓的解析解是一种包含分式、三角函数、指数、对数甚至无限级数等基本函数的解的形式。用来求得解析解的方法称为解析法(Analytical techniques),解析法即是常见的微积分技巧,例如分离变量法等。解析解是一个封闭形式(Closed-form) 的函数,因此对任一自变量,我们皆可将其带入解析函数求得正确的因变量。因此,解析解也被称为封闭解(Closed-form solution)。

数值解(Numerical solution) 是采用某种计算方法,如有限元法, 数值逼近法,插值法等得到的解。别人只能利用数值计算的结果,而不能随意给出自变量并求出计算值。当无法藉由微积分技巧求得解析解时,这时便只能利用数值分析的方式来求得其数值解了。在数值分析的过程中,首先会将原方程加以简化,以利于后来的数值分析。例如,会先将微分符号改为差分(微分的离散形式)符号等,然后再用传统的代数方法将原方程改写成另一种方便求解的形式。这时的求解步骤就是将一自变量带入,求得因变量的近似解,因此利用此方法所求得的因变量为一个个离散的数值,不像解析解为一连续的分布,而且因为经过上述简化的操作,其正确性也不如解析法可靠。

简而言之,解析解就是给出解的具体函数形式,从解的表达式中就可以算出任何对应值;数值解就是用数值方法求出近似解,给出一系列对应的自变量和解。

参考:https://blog.csdn.net/weicao1990/article/details/90742414

什么时候不能求出其逆矩阵?

满秩矩阵或者方阵才有逆矩阵,当一个矩阵不满秩,在对角线上存在为0的特征值,求逆的时候无法计算从而不可逆,那我们给它加上一个单位矩阵,这样它就不为0了,

求解的时候加上单位矩阵其实就是对线性回归引入正则化的过程

参考:https://zhuanlan.zhihu.com/p/44612139

Q4

关于正则,我们⼀般采⽤ L2 或者 L1, 这两个正则之间有什么区别?什么时候需要⽤ L2, 什么时候需要⽤ L1?

L1正则化(也叫Lasso回归)是在目标函数中加上与系数的绝对值相关的项,而L2正则化(也叫岭回归)则是在目标函数中加上与系数的平方相关的项。

Lasso 和岭回归系数估计是由椭圆和约束函数域的第一个交点给出的。因为岭回归的约束函数域没有尖角,所以这个交点一般不会产生在一个坐标轴上,也就是说岭回归的系数估计全都是非零的。然而,Lasso 约束函数域在每个轴上都有尖角,因此椭圆经常和约束函数域相交。发生这种情况时,其中一个系数就会等于 0。

L2正则化会使参数的绝对值变小,增强模型的稳定性(不会因为数据变化而产生很大的震荡);而L1正则化会使一些参数为零,可以实现特征稀疏, 增强模型解释性。

参考:https://blog.csdn.net/zouxy09/article/details/24971995/

Q5

正则项是否是凸函数?请给出证明过程。

相关概念:凸集,凸函数

因此证明正则项是否是凸函数,需要证明:

1.  在 上二阶连续可微

2.的Hessian(海塞)矩阵在 上是半正定

3.半正定矩阵的判定定理之一:若实对称矩阵的所有顺序主子式均为非负,则该矩阵为半 正定矩阵。

参考:https://www.bilibili.com/video/BV1Mh411e7VU?p=2

Q6

什么叫 ElasticNet? 它主要⽤来解决什么问题?具体如何去优化?

弹性回归是岭回归和lasso回归的混合技术,它同时使用 L2 和 L1 正则化。当有多个相关的特征时,弹性网络是有用的。lasso回归很可能随机选择其中一个,而弹性回归很可能都会选择。

  • 在高度相关变量的情况下,它支持群体效应。

  • 它对所选变量的数目没有限制

  • 它具有两个收缩因子 λ1 和 λ2。

参考:https://www.zhihu.com/search?type=content&q=ElasticNet

Q7

什么叫⽣成模型,什么叫判别模型?朴素⻉贝叶斯,逻辑回归,HMM,语⾔模型 中哪⼀个是⽣成模型,哪⼀个是判别模型?

生成模型(Generaive Model)一般以概率的方式描述了数据的产生方式,通过对模型采样就可以产生数据。

判别模型(Discriminative Model)对数据之间的映射关系建模,而不考虑数据本身是如何生成的。判别模型可以根据给定的数据x预测对应的y(回归),或根据不同的映射结果y来区分(discriminate)给定的数据x (分类)。但模型自身并不能产生数据x 。

生成模型对数据本身建模,更基础。判别模型只考虑输入和输出之间的关系,更直接地面向问题。如果希望用生成模型完成判定模型的任务,一般需要额外的步骤。

_

优点

缺点

代表算法

1.  由于统计了数据的分布情况,所以其实际带的信息要比判别模型丰富,对于研究单类问题来说也比判别模型灵活性强;
2. 模型可以通过增量学习得到(增量学习是指一个学习系统能不断地从新样本中学习新的知识,并能保存大部分以前已经学习到的知识。);
3. 收敛速度更快,当样本容量增加的时,生成模型可以更快的收敛于真实模型;
4. 隐变量存在时,也可以使用。

1. 学习和计算过程比较复杂,由于学习了更多的样本信息,所以计算量大,如果我们只是做分类,就浪费了这部分的计算量;
2. 准确率较差;
3. 往往需要对特征进行假设,比如朴素贝叶斯中需要假设特征间独立同分布,所以如果所选特征不满足这个条件,将极大影响生成式模型的性能。

朴素贝叶斯、贝叶斯网络、隐马尔可夫模型、隐马尔可夫模型

1. 由于关注的是数据的边界,所以能清晰的分辨出多类或某一类与其他类之间的差异,所以准确率相对较高;
2. 计算量较小,需要的样本数量也较小;

1. 不能反映训练数据本身的特性;
2. 收敛速度较慢

k 近邻法、决策树、逻辑斯谛回归模型、最大熵模型、支持向量机、条件随机场

参考:https://cloud.tencent.com/developer/article/1544597;https://www.zhihu.com/question/22374366/answer/155544744

本文来自Datawhale面经项目开源地址:

https://github.com/datawhalechina/Daily-interview

长按关注Datawhale,更多开源内容一起学习成长↓

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载黄海广老师《机器学习课程》视频课黄海广老师《机器学习课程》711页完整版课件

本站qq群851320808,加入微信群请扫码:

【机器学习】机器学习基础知识常见问题详解!相关推荐

  1. 自学计算机键盘基础知识,刘坚强办公学《新手学五笔打字》1-2 功能键区,电脑键盘功能基础知识按键详解...

    原标题:刘坚强办公学<新手学五笔打字>1-2 功能键区,电脑键盘功能基础知识按键详解 下面我们来详细认识电脑键盘的各个按键,先从最上面的功能键区开始,一共有16个键(如图1-2-1所示). ...

  2. mysql+连接每一行数据_MySQL_深入mysql基础知识的详解,1.每个客户端连接都会从服务 - phpStudy...

    深入mysql基础知识的详解 1.每个客户端连接都会从服务器进程中分到一个属于它的线程.而该连接的相应查询都都会通过该线程处理. 2.服务器会缓存线程.因此并不会为每个新连接创建或者销毁线程. 3.当 ...

  3. 基础知识redis详解--【Foam番茄】

    Redis 学习方式: 上手就用 基本的理论先学习,然后将知识融汇贯通 nosql讲解 为什么要用Nosql 现在都是大数据时代 大数据一般的数据库无法进行分析处理了 至少要会Springboot+S ...

  4. 计算机基础知识及其详解,计算机基础知识详解:计算机入门基础知识

    能力训练网权威发布计算机基础知识详解,更多计算机基础知识详解相关信息请访问少儿综合素质训练网. [导语]以下是大范文网整理的计算机基础知识详解,欢迎阅读! 1.第一台计算机-ENIAC 大家只要知道第 ...

  5. python基础知识~ 函数详解2

    python~函数详解2  1 生成器函数    定义 如果函数有yield这个关键字,就是生成器函数.生成器函数() 获取的是生成器,不执行函数   须知 yield和return一样,都可以返回数 ...

  6. spring的事务隔离_spring事务基础及常见问题详解

    一:基础知识介绍 1.1:事务四个特性:ACID 原子性(Atomicity):事务是一个原子操作,由一系列动作组成.事务的原子性确保动作要么全部完成,要么全部失败. 一致性(Consistency) ...

  7. 最全音视频基础知识学习详解(含多个干货链接)

    这里将了解到的和一些博客网站讲到的音视频基础相关的内容总结整理到了一起,方便系统的学习和回顾记录. 首先一个最简易的音视频图解,包括一下几个部分: 对于一个实时音视频应用共包括几个环节:采集.编码.前 ...

  8. Fragment的基础知识介绍详解必看

    一.Fragment的基础知识介绍 1.1概述 1.1.1 特性 Fragment是activity的界面中的一部分或一种行为.可以把多个Fragment组合到一个activity中来创建一个多界面 ...

  9. JSP基础知识学习详解!

    JSP基础知识学习 一.JSP是什么 JSP(全称JavaServer Pages)是由[Sun](https://baike.baidu.com/item/Sun Microsystems)公司主导 ...

最新文章

  1. 人工智能推理应用于场景的四大典型方式
  2. linux filesystem_Linux 查看磁盘占比?
  3. Mysql索引机制B+Tree
  4. python实例化次数怎么算_关于python多次实例化
  5. phpstrpos不存在_深入理解PHP之strpos
  6. xencenter服务器不显示,XenCenter 不能连接 XenServer 解决方法
  7. ACAD shx字体格式之BigFont
  8. 嵌入式知识图谱WiKi(嵌入式开发/研发入门教程和路线图)
  9. asp.net1053-酒店宾馆客房预订管理系统#毕业设计
  10. 【Windows Server 2019】DHCP服务器配置与管理——安装和配置DHCP服务 Ⅱ
  11. [Django ]Django 的数据库操作
  12. 小程序支持主体迁移了
  13. 飞利浦e570有JAVA吗_功能机怎么了?飞利浦E570的待机长达170天
  14. js 操作数组 push splice
  15. 基于Unity开发实现的坦克游戏设计
  16. Power BI Dax 之时间智能函数
  17. 创业管理实战2021年秋(考试答案)
  18. 多模态学习(一) 初识
  19. 在线html 生成链接,网址链接生成器
  20. 科大讯飞Windows麦克风监听语音唤醒+语音识别demo

热门文章

  1. JSON.stringify()方法
  2. 高并发服务端分布式系统设计概要(上)
  3. Promise的源码实现(完美符合Promise/A+规范)
  4. MySQL—增删改查,分组,连表,limit,union,alter,排序,去重
  5. 数组中子数组求最大和
  6. iOS---A valid provisioning profile for this executable was not found
  7. C#与C++的几个不同之处知识点
  8. GCD -- 倒计时
  9. INT(M)表示什么意思?
  10. 科研地图来了,看看你的研究领域在哪里!中国科学院科技战略咨询研究院发布《科学结构图谱2021》