zoukankan      html  css  js  c++  java
  • 机器学习面笔试-特征提取篇

    1. 为什么要做特征选择?

    特征选择主要有两个功能:
    (1)减少特征数量、降维,使模型泛化能力更强,减少过拟合
    (2)增强对特征和特征值之间的理解

    2. 常用的特征选择方法[这里]

    (1)去掉取值变化小的特征
    针对特征值都是离散型变量;
    (2)单变量特征选择
    单变量特征选择能够对每一个特征进行测试,衡量该特征和响应变量之间的关系,根据得分扔掉不好的特征。对于回归和分类问题可以采用卡方检验等方式对特征进行测试。
    a.Pearson相关系数
    b.互信息和最大信息系数
    c.距离相关系数
    d.基于学习模型的特征排序
    (3)线性模型
    基于机器学习模型的方法。有些机器学习方法本身就具有对特征进行打分的机制,或者很容易将其运用到特征选择任务中,例如回归模型,SVM,决策树,随机森林等等。
    具体的例子参考上面的参考。

    3.SVD和PCA

    PCA的理念是使得数据投影后的方差最大,找到这样一个投影向量,满足方差最大的条件即可。而经过了去除均值的操作之后,就可以用SVD分解来求解这样一个投影向量,选择特征值最大的方向。

    4.何为共线性, 跟过拟合有什么关联?

    共线性:多变量线性回归中,变量之间由于存在高度相关关系而使回归估计不准确。
    共线性会造成冗余,导致过拟合。
    解决方法:排除变量的相关性/加入权重正则。

    5.多重共线性

    多重共线性是指当两个特征的相关性很大的时候,会对参数模型造成非常大的影响。可以用相关分析判断多重共线性的存在性。

    6.PCA的计算过程

    (1)去除均值
    (2)计算协方差矩阵
    (3)计算特征值和特征向量
    (4)特征值从大到小排序
    (5)保留前N个特征向量
    (6)投影重构(记得吧去除的均值还回去)
    或者
    (1)去均值
    (2)SVD计算

  • 相关阅读:
    c# Task多线程并行任务中等待所有线程都执行完成
    C#多线程之所有线程执行完成后
    正则表达式
    js 实时监听input中值变化
    js中prop和attr区别
    获取自定义属性
    checkBox
    js中判断数组中是否包含某元素的方法
    leetcode — path-sum-ii
    leetcode — path-sum
  • 原文地址:https://www.cnblogs.com/siucaan/p/9623120.html
Copyright © 2011-2022 走看看