机器学习常见问题

机器学习常见问题

一、线性回归的基本假设是什么?

使用线性回归模型的四个基本假设:
(1)自变量和因变量满足线性可加
a. 因变量的预测值和自变量满足直线方程,方程中,其余变量当作常量
b. 直线的斜率和其他变量无关
c. 不同因变量的值对于自变量的预测值是可加的

(2)误差是统计独立的

(3)对于任意自变量,误差的方差不变

(4)误差满足正态分布

 

二、什么是准确率、精确率、召回率

精确率是针对我们预测结果而言的,它表示的是预测为正的样本中有多少是真正的正样本。

召回率是针对我们原来的样本而言的,它表示的是样本中的正例有多少被预测正确了。

准确率(accuracy) = 预测对的/所有

 如果我们希望:被检索到的内容越多越好,这是追求“查全率”,即A/(A+C),越大越好。

如果我们希望:检索到的文档中,真正想要的、也就是相关的越多越好,不相关的越少越好,

这是追求“准确率”,即A/(A+B),越大越好。

 

三、决策树的损失函数以及剪枝系数

<span>机器学习常见问题</span>

H(t)表示第t个叶子节点的不确定度(信息增益、信息增益率、基尼系数等)

D(t)表示第t个叶子节点的样本数

D表示总共的样本数

 

通常,节点越多,决策树越复杂,损失也越大。可以对损失函数添加损失系数,修正后的损失函数为:

<span>机器学习常见问题</span>

对于根节点r的决策树和节点有R个的决策树,剪枝系数表示为:

<span>机器学习常见问题</span>

 

四、简述剪枝操作

前向剪枝:构建决策树的时候,提前停止。

后置剪枝:决策树构建好之后,再进行剪枝,(1)用单一叶子节点代替整个子树(2)将一颗子树完全替代另一颗

对于后置剪枝的过程为:

(1)计算所有内部非叶子节点的剪枝系数

(2)删除最小剪枝系数的节点,若存在多个最小剪枝系数节点,删除包含数据项最多的节点

(3)重复上述过程,直到产生的剪枝决策树只有一个节点

(4)每次删除节点得到决策树Ti

(5)使用验证样本集选择最优子树(即可以通过损失函数验证)

 五、决策树的停止条件

方式1:当每个子节点都只有一种类型时停止构建

方式2:节点中的记录数据小于某个阈值且迭代次数达到给定值

方式1容易过拟合、方式2常用

六、分类树和回归树的区别

分类树的叶子节点的预测值一般为概率最大的类别,回归树的叶子节点的预测值一般为所有值的均值,回归树采用均方差作为数的评价指标。

 

七、交叉熵

交叉熵可在神经网络(机器学习)中作为损失函数,p表示真实标记的分布,q则为训练后的模型的预测标记分布,交叉熵损失函数可以衡量p与q的相似性。交叉熵作为损失函数还有一个好处是使用sigmoid函数在梯度下降时能避免均方误差损失函数学习速率降低的问题,因为学习速率可以被输出的误差所控制。

八、线性回归和逻辑回归有什么区别联系

区别:
(1)需要优化的损失函数不同,线性回归的损失函数为平方和损失函数,逻辑回归的损失函数为似然函数的负数
(2)线性回归解决回归问题,逻辑回归解决分类问题
联系:
逻辑回归本质上是一个线性回归问题,除去sigmoid的一个01映射,其他过程都一样。譬如,假设一个人挣钱能力和年龄有关吧,从一岁的时候挣钱为-20,每年+1,21岁为0,22岁为1这个过程可以说是一个线性回归问题,可以预测他18岁时是挣钱还是不挣钱,但是如果加上一个非线性映射的话,就可以将问题简单化的划分为0:不挣钱,1:挣钱的问题。
 
 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/119468.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • android酒店点餐系统设计,基于安卓Android酒店点餐系统APP的设计与实现(MySQL)(含录像)…

    android酒店点餐系统设计,基于安卓Android酒店点餐系统APP的设计与实现(MySQL)(含录像)…基于安卓Android酒店点餐系统APP的设计与实现(MySQL)(含录像)(毕业论文9900字,程序代码,Android客户端和JAVA服务端,MySQL数据库)系统需求分析手机端:1.用户注册、登录、修改密码、修改个人信息2.查看菜单、加入菜单列表,选择日期,模拟在线支付或者餐后付款3.查看个人订单,用餐评论后台管理端:1.管理员登录、修改密码2.酒店菜…

  • python字典详解_python需要学哪些

    python字典详解_python需要学哪些字典字典的key和value一一对应的,字典是可变的,也是有序的(python3.6版本开始字典有序),可迭代的增加元素当key不存在时,直接赋值a={"status"

  • Java面试题大全带答案「建议收藏」

    Java面试题大全带答案「建议收藏」本人发现网上虽然有不少Java相关的面试题,但第一未必全,第二未必有答案,第三虽然有答案,但未必能在面试中说,所以在本文里,会不断收集各种面试题,并站在面试官的立场上,给出我自己的答案。第一部分、Java基础1.JDK和JRE有什么区别?JDK是java的开发工具包,有JDK8,9甚至到14的差别,安装以后,不仅包含了java的开发环境,比如java.exe,还包含了运行环境(jre)相关包。 JRE是java运行环境,一般装好JDK后,系统里会有对应的JRE环境。2..

  • UDP协议抓包分析

    UDP协议抓包分析一、什么是UDPUDP就是一种无连接的协议。该协议用来支撑那些需要在计算机之间传输数据的网络应用,包括网络视频会议系统在内的众多客户/服务器模式的应用。二、UDP协议的特点UDP使用底层的互联网协议来传送报文,同IP一样提供不可靠的无连接传输服务。他也不提供报文到达确认、排序及流量控制等功能。(1)UDP是一个无连接协议,也就是传输数据之前源端口和目标端口不能建立连接。当它想传输时,就简单…

  • 使用命令行编译、运行Java程序

    使用命令行编译、运行Java程序我们一般都是通过IDE(如Eclipse、IntellijIdea,MyEclipse、STS可以归到Eclipse里)来开发,调试java项目。在不借助IDE的情况下,如何编译、运行Java程序。使用javac命令,可以通过只敲击javac看到各种命令参数。必学参数-d-cp,这俩下面会讲到如果javac命令不能用,看一下环境变量是否没配对。我们从简单到复杂来看ja…

  • 新浪微博API错误代码说明对照表 http://open.weibo.com/wiki/Error_code

    新浪微博API错误代码说明对照表 http://open.weibo.com/wiki/Error_code

    2021年10月25日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号