zoukankan      html  css  js  c++  java
  • 机器学习十讲(二)

    数学知识回顾:

    矩阵的逆

    • 对于n*n方阵A,如果存在矩阵B使得AB = BA = I,则称BA的逆矩阵,记为A-1

    • 若A为可逆矩阵,则其逆矩阵是唯一的

    • 如何判断矩阵是否可逆?

      • 行列式不等于0
      • 满秩
      • 行(或列)向量组线性无关
      • ...
    import numpy as np
    
    # 格式化numpy输出
    np.set_printoptions(formatter={'float': '{:0.2f}'.format})
    A = np.array([[4, 5, 1], [0, 8, 3], [9, 4, 7]])
    # 求行列式
    print("行列式" + str(np.linalg.det(A)))
    B = np.linalg.inv(A)  # 求逆
    print("A的逆矩阵为B:")
    print(B)
    print("BA:")  # 结果验证
    print(B.dot(A))
    print("AB:")
    print(A.dot(B))
    

      

    回归:

    • 回归如今指的用一个或多个自变量来预测因变量的数学方法
    • 在机器学习中,回归指的是一类预测变量为连续值的有监督学习方法

    在回归模型中,需要预测的变量叫做因变量,用来解释因变量变化的变量叫做自变量

    一元线性回归:

    • 模型为y = w1x + w0,其中w0,w1为回归系数
    • 给定训练集D = {(x1,y1),...(xn,yn)},我们的目标是找到一条直线y = w1x + w0使得所有样本尽可能落在它的附近。

    多元线性回归:

    • y = w1x1 + w22+...+ wdxd +w0

    • 训练集D = {(x1,y1),...(xn,yn)}

    • ...

    • 假设训练集的特征部分记为n*(d+1)矩阵X,其中最后一列取值全为1

    • 标签部分记为...

    • 最小二乘的参数估计,如果变量之间存在较强的共线性,则XTX近似奇异,对参数的估计变得不准确,造成过度拟合现象。

    • 解决方法:正则化,主成分回归、偏最小二乘回归

    image-20210201235744504

    • 正则化可以减小线性回归的过度拟合和多重共线性等问题

    岭回归:

    • 岭回归:线性回归目标函数加上对W的惩罚函数λ||w||22λ||w||22
    • 线性回归目标函数:(Xwy)T(Xwy)(Xw−y)T(Xw−y)
    • 岭回归目标函数:(Xwy)T(Xwy)+λ||w||22(Xw−y)T(Xw−y)+λ||w||22
    • 对w求导并令导数等于零易得:xˆridge=(XTX+λI)1XTyx^ridge=(XTX+λI)−1XTy
    • 根据岭迹做超参数λλ的选择(岭迹分析)

    LASSO:

    • LASSO是一种系数压缩估计法,它的基本思想是通过追求稀疏性自动选择重要的变量
    • LASSO的目标函数:(Xwy)T(Xwy)+λ||w||1(Xw−y)T(Xw−y)+λ||w||1
    • LASSO的解xˆLASSOx^LASSO没有解析表达式,常用的求解算法包括坐标下降法、LARS算法和LSTA算法等

    回归模型的评价指标

    • 均方误差:MSE(y,yˆ)=1nni=1(yiyˆi)2MSE(y,y^)=1n∑i=1n(yi−y^i)2
    • 均方根误差:RMSE(y,yˆ)=1nni=1(yiyˆi)2−−−−−−−−−−−−−−√RMSE(y,y^)=1n∑i=1n(yi−y^i)2
    • 平均绝对误差:MAE(y,yˆ)=1nni=1|yiyˆi|MAE(y,y^)=1n∑i=1n|yi−y^i|
    • 决定系数:R2(y,yˆ)=1SSresSStot=1ni=1(yiyˆi)2ni=1(yiy¯i)2
  • 相关阅读:
    POJ 1611
    [Erlang24]使用zotonic搭建网站记录
    [Erlang23]怎么有效的遍历ETS表?
    [Erlang22]如何按规则位数输出数字
    [Git00] Pro Git 一二章读书笔记
    十分钟用HTML&CSS让博客园变得高大上
    [Erlang21]Erlang性能分析工具eprof fporf的应用
    [Erlang20]一起攻克Binary
    [Erlang19]Erlang的config文件读取效率问题
    [Erlang18]教练!又发现Erlang Shell里面的神奇函数一只
  • 原文地址:https://www.cnblogs.com/zwx655/p/14467029.html
Copyright © 2011-2022 走看看