机器学习部分题目

题目1:谈谈缺失值的处理:

答: 缺失值是指粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断。它指的是现有数据集中某个或某些属性的值是不完全的。缺失值的产生的原因多种多样,主要分为机械原因和人为原因。
下面简单讨论缺失值的一般处理方法:总体上来讲有删除法和插补法
一、删除法
(1)简单删除法:对有缺失值的条目直接删除;
优点:简单,对不完整的条目占样本总体较小时效果很好;
缺点:在不完整样本占样本总体比重较大时,丢失大量信息,影响后续处理
(2)权重法:
二、插补法
(1)特殊值填充:将缺失值用特殊值来填充,比如-1
有点:简单
缺点:可能导致严重数据偏离
(2)均值填充:如果是数值信息缺失,则用样本总体(或同标签样本)在该属性的均值来填充;如果是非数值信息缺失,则用频率最高的值来填充
优点:简单
缺点:不能反映缺失值的变异性;低估了资料变异
适用环境:低缺失率
(3)就近补齐(热卡填充):对于有缺陷的对象,在完整数据中找一个与它最相似的对象,难点在于定义相似的标准。
优点:简单
缺点:对于相似的标准有很大主观性
(4)聚类填充:最为典型的代表是K最近距离邻法(K-means clustering),先根据欧式距离或相关分析来确定距离具有缺失数据样本最近的K个样本,将这K个值加权平均来估计该样本的缺失数据。

(5)回归:基于完整的数据集,建立回归方程(模型)。对于包含空值的对象,将已知属性值代入方程来估计未知属性值,以此估计值来进行填充。
优点:方差估计较好
缺点:稳健性依赖于辅助变量;抽样误差不容易控制
适用环境:样本间相关性强

(6)极大似然估计:在缺失类型为随机缺失的条件下,假设模型对于完整的样本是正确的,那么通过观测数据的边际分布可以对未知参数进行极大似然估计(Little and Rubin)。
优点:样本信息利用充分,考虑了缺失值的不确定性
缺点:计算复杂
适用环境:高缺失率

(7)多重插补:多值插补的思想来源于贝叶斯估计,认为待插补的值是随机的,它的值来自于已观测到的值。具体实践上通常是估计出待插补的值,然后再加上不同的噪声,形成多组可选插补值。根据某种选择依据,选取最合适的插补值。
优点:样本信息利用充分,考虑了缺失值的不确定性
缺点:计算复杂
适用环境:高缺失率

题目二:决策树连续值的处理:
关键在于连续值区间划分,下面是两种常用方法
C4.5:Information Gain (Ratio) based Threshold
CART:遍历所有输入变量j 和切分点s,根据最小化平方误差准则选取;

题目三:关联分析算法介绍至少两种
1.apriori:数据挖掘中的用于挖掘频繁项集和关联规则的Apriori算法. 具体可参考博客https://www.cnblogs.com/llhthinker/p/6719779.html
2.fp-growth:常见的挖掘频繁项集算法有两类,一类是Apriori算法,另一类是FP-growth. 具体参考博客https://www.cnblogs.com/bigmonkey/p/7478698.html
3.cca(典型相关分析):我们知道,两个随机变量x、y之间的线性关系可以通过对这两个变量的N组样本对进行线性回归求得。但是,如果要求两组随机变量x、y之间的线性关系,则可以用典型关联分析(Canonical correlation analysis)来求解。
具体参考博客https://blog.csdn.net/u012990623/article/details/39274513

原文地址:https://www.cnblogs.com/LuffysMan/p/10045847.html

时间: 2024-11-14 13:08:40

机器学习部分题目的相关文章

机器学习基础题目

1. 在深度学习中,涉及到大量矩阵相乘,现在需要计算三个稠密矩阵A,B,C的乘积ABC,假设三个矩阵的尺寸分别为m*n,n*p,p*q,且m<n<p<q,以下计算顺序效率最高的是: (AB)C 解析:首先,根据简单的矩阵知识,因为 A*B , A 的列数必须和 B 的行数相等.因此,可以排除C 选项. m*n 的矩阵 A 和 n*p 的矩阵 B 的乘积,得到 m*p 的矩阵 A*B ,而 A*B 的每个元素需要 n 次乘法和 n-1 次加法,忽略加法,共需要 m*n*p 次乘法运算. 同

javascript实现朴素贝叶斯分类与决策树ID3分类

今年毕业时的毕设是有关大数据及机器学习的题目.因为那个时间已经步入前端的行业自然选择使用JavaScript来实现其中具体的算法.虽然JavaScript不是做大数据处理的最佳语言,相比还没有优势,但是这提升了自己对与js的理解以及弥补了一点点关于数据结构的弱点.对机器学习感兴趣的朋友还是去用 python,最终还是在学校的死板论文格式要求之外,记录一下实现的过程和我自己对于算法的理解.源码在github:https://github.com/abzerolee/ID3_Bayes_JS开始学习

文章集合--作者篇--中【转】

汪君: 机器学习预测乳腺肿瘤性质(1) 机器学习预测乳腺肿瘤性质(2) 机器学习预测乳腺肿瘤性质(3)——贝叶斯分类器 机器学习预测乳腺肿瘤性质(4)——神经网络 机器学习预测乳腺肿瘤性质(5) 机器学习预测乳腺肿瘤性质(6) 机器学习预测乳腺肿瘤性质(7) 订车宝: 七周:第一周数据分析师思维学习笔记 七周:第二周业务学习笔记(内附练习汽车经销店整车销售分析模型) 七周:第三周Excel学习 七周:第四周数据可视化学习笔记 七周:第五周MySQL学习笔记 七周:第六周统计学(基础)笔记 七周:

中国科学技术大学第五届信息安全大赛(hackergame2018自我总结)2

这一批题都是我不会的,只能把官方write-up放在这里了 1.FLXG 的秘密 ------------------------------------------------------------------------------------------------------------ 公元 0xFB2 年, FLXG 正当其道.没错, 在 CWK 的伟大倡导之下, 年份采用了更为先进的 16 进制表示. 中国滑稽大学也因为率先提出了 FLXG 的理论, 其世界超一流的院校的地位已经

百度 2015 校招 北京机器学习/数据挖掘工程师笔试题目(地点:天津大学)

注:凭记忆写的,可能不全,也不一定正确. 一. 简答题 1. new 和 malloc 的区别. 2. hash冲突是指什么?怎么解决?给两种方法,写出过程和优缺点. 3. 命中的概率是 0.25,若要至少命中一次的概率不小于 0.75,则至少需要几次? 二. 算法设计题 1. 用C/C++写一个归并排序. 数据结构为struct Node{int v; Node *next}; 接口为 Node * merge_sort(Node *); 2. 设计S型层次遍历树的算法,比如根节点是第一层,第

机器学习之路--常用面试题目

该内容大部分来自<<百面机器学习算法工程师>> 1.特征工程 1.1为什么需要对数值类型进行归一化? 使各个指标处于同一数值量级,消除数据之间的量纲影响. 比如分析一个人的身高和体重对健康的影响. 1.2补充知识点 结构化数据:关系数据库的一张表,每列都有清晰的定义,包含了数值型和类别型 非结构化数据:文本,图像,音频,无法使用简单的数值表示,也没有清晰的类别定义,并且每条数据的大小各不相同 1.3方法 线性归一化(Min-Max Scaling) 它对原始数据进行线性变换,使结果

机器学习题目

训练数据集中的每个样本用n维向量表示,第n维数据的值是0或者1,建立分类算法,对于新的给定样本,已知向量前n-1维数据,预测向量最后一维的值. 1) 数据中关系到选择或者建立分类算法的2个最重要的属性是什么?为什么? 2) 现在已知两个分类算法,第一个算法训练花费时间5h,预测每个样本时间为1.5ms, 正确率86%; 第二个算法,训练花费时间30min,预测每个样本时间为2.5ms, 正确率95%, 应该选择哪个,为什么? 1.两个最重要的属性我认为是目标变量的离散还是连续以及前n-1维变量中

《机器学习实战》学习笔记:利用Adaboost元算法提高分类性能

一. 关于boosting算法的起源 boost 算法系列的起源来自于PAC Learnability(直译过来称为:PAC 可学习性).这套理论主要研究的是什么时候一个问题是可被学习的. 我们知道,可计算性在计算理论中已经有定义,而可学习性正是PAC Learnability理论所要定义的内容.另外,在计算理论中还有很大一部分精力花在研究问题是可计算的时候,其复杂度又是什么样的.因此,在计算学习理论中,也有研究可学习的问题的复杂度的内容,主要是样本复杂度 (Sample Complexity)

NTU-Coursera机器学习:HomeWork 1 Q15-20

Question15 训练数据格式如下: 输入有4个维度,输出为{-1,+1}.共有400条数据. 题目要求将权向量元素初始化为0,然后使用"Naive Cycle"遍历训练集,求停止迭代时共对权向量更新了几次. 所谓"Naive Cycle"指的是在某数据条目x(i)上发现错误并更新权向量后,下次从x(i+1)继续读数据,而不是回到第一条数据x(0)从头开始. #include <fstream> #include <iostream> #