[面试笔记] 面试知识点准备-机器学习基础

来源:互联网 发布:软件图标修改 编辑:程序博客网 时间:2024/05/20 08:22

摘要

要找工作啦,心累,持续更新中。。。

以下内容大部分来自李航老师的《统计学习方法》,以及各大博主文章

面经

  1. http://www.svgrimconsulting.com/nd.jsp?id=65

基础知识点

《轻松看懂机器学习十大常用算法》: http://blog.jobbole.com/108395/

  • 生成模型和判别模型
    这里写图片描述

  • 二分类中的准确率与召回率
    这里写图片描述

  • 正则化项

    参考文章(这里面关于L1L2的求导部分讲的不错,也包含了其他的正则化方法):
    http://blog.csdn.net/u012162613/article/details/44261657

    经验风险最小化是没有加正则化的损失函数最小优化,
    结构风险最小化就是加了正则项的损失函数最小优化
    这里写图片描述

    • L1范数对参数权值进行直接惩罚,所以会有部分参数趋向于0
    • L2范数对参数平方值进行惩罚,所以全体参数会整体趋向于0
  • 朴素贝叶斯(NB分类器)

    • 我们的目标是给定X(i)来计算以下条件概率:
      这里写图片描述
    • 根据贝叶斯定理,可变换为如下形式:
      这里写图片描述
    • 但是,条件概率分布P(X = x | Y = ck)有指数级数量的参数:
      这里写图片描述
    • 因此,NB做了一个合理的假设,即条件独立性假设(假设事件之间发生的关联性为0,事件之间互相独立):
      这里写图片描述
    • 因此,第二步的公式可以表示为:
      这里写图片描述
    • 最后,得到NB分类器的公式:
      这里写图片描述
    • 极大似然估计(假设先验分布概率就是期望的分布概率)
    • 贝叶斯估计(用于解决概率值为0时,乘积为0的问题):
      这里写图片描述
      当Lambda为1时,即为拉普拉斯平滑
      注意:添加Lambda后,需要保证概率之和为1
    • 拉普拉斯平滑的作用:
      问: 有两只球队A和B,在过去的7场比赛中A获胜7次,B获胜0次,那么下一次比赛A和B获胜的概率各是多少?
      答:根据先验概率,A获胜的概率是7/7,B获胜的概率为0/7,显然这是不合理的,虽然B真的菜,但是下一场没准真的能获胜,因此,使用拉普拉斯平滑进行调整,得到A获胜的概率为7/8,B获胜的概率为1/8。不仅保留了概率上的特征,同时保证了合理性。
  • 二项逻辑斯蒂回归模型

    • 概率分布:
      这里写图片描述
    • LR将线性函数值转化为了事件发生的概率
      这里写图片描述
    • 得到LR的损失函数为:
      这里写图片描述
    • 将LR用于多分类:
      这里写图片描述
    • 最大似然估计:MLE是通过概率去求参数,使得模型的分布结果最大程度地与当前数据的分布相接近
  • SVM模型

    戳这里->参看July大神的SVM博客

    • 核心思想:
      这里写图片描述
    • 函数间隔和几何间隔
      为了找到最大化间隔的超平面,我们需要一个合理的间隔度量来进行评价,首先想到的最简单的就是函数间隔,即评价函数wx+b的值的绝对值大小
      这里写图片描述
      但是,函数间隔无法作为最大化超平面间隔的度量,因为其会随着w、b值的缩放而跟着缩放,显然不好,因此引入几何间隔
      这里写图片描述
      几何间隔引入了向量w,因此是实质上几何空间的距离度量,而且不会被w、b影响,只与超平面的位置有关,完全可以作为超平面的度量方法
    • 关于拉格朗日乘子法和对偶问题:
      这里写图片描述
      也可以参考:《拉格朗日乘子法、KKT条件、拉格朗日对偶性》
    • 非线性问题
      首先,我们在已知拉格朗日系数a的前提下,通过求偏导数可以得到权重系数w可以用如下公式得到:
      这里写图片描述
      这里写图片描述
      因此,分类函数可以表示为内积的形式( 这里的形式的有趣之处在于,对于新点 x的预测,只需要计算它与训练数据点的内积即可;此外,所谓 Supporting Vector 也在这里显示出来——事实上,所有非Supporting Vector 所对应的a系数都是等于零的,因此对于新点的内积计算实际上只要针对少量的“支持向量”而不是所有的训练数据即可):
      这里写图片描述
    • 对于非线性问题,可以使用一个映射函数将数据点投影到高维空间中:
      这里写图片描述
      考虑我们可爱的内积形式:
      这里写图片描述
  • EM算法

    http://blog.csdn.net/zouxy09/article/details/8537620/

    • 虽然很牛逼,但我看不懂
    • 简单的说就是先猜,后调整,再猜,再调整,最后win
    • 用于混合高斯模型的时候,与K-means差不多,也是找类别中心,但是Km无法给出后验概率,EM却可以
  • 隐式马尔科夫模型(HMM)

    • 简单易懂的解释:
      https://www.cnblogs.com/skyme/p/4651331.html
    • 三个基本问题
      这里写图片描述
    • 概率计算问题
      • 直接计算:算出整体解空间 ,然后用条件解的个数除以整体解的个数。缺点是整体解空间太大,算法太复杂
      • 前向算法:对每一步的每一个状态序列中的状态进行概率计算,求和,然后进一步计算,最后累加出结果。避免了对非必要状态的概率计算。
    • 预测问题
      • 直接计算:算出可能产生该序列的所有隐序列的数量,然后除一下即可,但是解空间依然很大
      • Viterbi 算法:对每一步观测状态进行概率计算,取当前概率最大的作为下一步观测状态计算的前提,直到停止
    • HMM用于NLP的最简单的应用:
      这里写图片描述
  • 条件随机场 CRF

    https://zhuanlan.zhihu.com/p/25558273