EEWiKi
首页
  • 命名数据网络
  • 论文笔记
  • 机器学习
  • 研学周报
  • C++
  • Python
  • 计算机网络
  • 数据结构与算法
  • 计算机组成原理
  • 操作系统
  • 英语学习
  • 面试
  • 运动
  • 生活读书杂货
  • 实用技巧
  • 软件使用安装
最近更新
GitHub (opens new window)
首页
  • 命名数据网络
  • 论文笔记
  • 机器学习
  • 研学周报
  • C++
  • Python
  • 计算机网络
  • 数据结构与算法
  • 计算机组成原理
  • 操作系统
  • 英语学习
  • 面试
  • 运动
  • 生活读书杂货
  • 实用技巧
  • 软件使用安装
最近更新
GitHub (opens new window)
  • 关于
  • 命名数据网络

  • 机器学习

    • 机器学习概述
    • 线性回归
      • 单变量线性回归
      • 多变量线性回归
        • 符号说明
        • 梯度下降 vs. 正规方程
      • 向量化
    • 逻辑回归
    • 正则化
    • 神经网络
    • 决策树
  • 概率论基础

  • 中文技术文档写作规范

  • 科研相关
  • 机器学习
peirsist
2022-06-11
目录

线性回归

# 单变量线性回归

梯度下降做的事就是找到一个值 使得代价函数 最小

# 多变量线性回归

变量书写规范

  • 通常用 大写、黑体 字母表示矩阵,用小写字母表示标量或向量。
  • 正斜体 总的原则是变量(矢量,张量)等用斜体;数字、确定符号、词汇缩缩、单位等用正体。参考 科技论文书写规范之正斜体问题 (opens new window)

# 符号说明

符号/变量 含义
特征量的数目
训练样本的数量
学习方法的解决方案或函数也称为假设
第个训练样本的输入特征值
第个训练样本中第个特征量的值

XgAtXD.png (opens new window)


XgAa0H.png (opens new window)


XgAUne.png (opens new window)


XgAd7d.png (opens new window)

python计算代价函数的代码

def conputeCost (x, y, theta):
    inner = np.power(((x * theta.T) – y), 2)
    return np.sum(inner) / (2 * len(x))

通过图像, 轴是代价函数的最小值 ,轴是迭代次数。如果随着迭代次数的增加,代价函数越来越小,就说明 梯度下降 在正常工作。

# 梯度下降 vs. 正规方程

梯度下降 正规方程
需要选择学习率 不需要
需要多次迭代 一次运算就得出结果
当特征数量大的时候比较适用 计算 如果特征数量很大,则运算的速度就会很慢,矩阵逆运算的时间复杂度是 ,通常来说 n<10000 还是可以接受的。
适用于各种模型 只适用与线性模型

# 向量化

使用程序计算这样一个线性回归假设函数:,可以写成向量的形式:

非向量化实现

double prediction = 0.0;
for(int j = 0; j<=n; j++)
    prediction += theta[j] * x[j];

向量化实现,使用 C++ 数值线性代数库,更简单、更高效的代码

double prediction = theta.transpose( ) * x;

提示

  1. 机器学习中的线性代数之矩阵求导 (opens new window)
  2. 矩阵转置基本性质 (opens new window)
  3. 常见的二范数是什么意思?有什么用? (opens new window)
上次更新: 2022/08/11, 03:44:08
机器学习概述
逻辑回归

← 机器学习概述 逻辑回归→

最近更新
01
极大似然估计
08-11
02
C++基础
08-11
03
STL
08-11
更多文章>
Theme by Vdoing | Copyright © 2022-2022 peirsist | 早睡,运动,读书
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式