当前位置: 首页 > news >正文

【机器学习】线性回归与一元线性回归

线性回归与一元线性回归

    • V1.1
    • 线性回归问题
    • 线性方程的最优解
    • 一元线性回归
      • 一元线性回归的方程
      • 一元线性回归距离衡量方法
      • 一元线性回归的最优化求解
      • 一元线性回归的最小二乘法解法

V1.1

线性回归问题

线性回归问题就是找一条线超平面,并使用线超平面来描述数据分布,即特征向量和特征标签的对应关系(线超平面中也包含了特征标签的维度)。
线或超平面中既有特征向量的维度( x 1 , . . . , x n x_1,...,x_n x1,...,xn),也有特征标签的维度( y y y)。例如,特征向量只有一个维度,则模型可视化后有两个维度,及特征向量( x x x)和特征标签( y y y)的维度,用坐标系表示就是二维坐标系中的一条直线。
输入是一维或多维特征向量输出是线性式(对应到使用线和超平面计算结果)计算的结果
线性回归模型使用线性式描述,线性式的形式如下:
y = w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n y=w_0+w_1*x_1+w_2*x_2+...+w_n*x_n y=w0+w1x1+w2x2+...+wnxn
模型的使用方法,使用数据训练得到模型后,输入待预测的特征向量,就会根据线性模型计算预测值。因为是用模型计算的,因此预测值会落在模型线性方程上。

线性方程的最优解

那么怎样找到线性方程的最优解呢?我们需要衡量每1个特征向量的预测值真实值的距离,即距离衡量
并且需要一种投票机制来衡量,根据每个特征向量的距离,计算正在研究的线性模型的总体损失,以得出模型的优劣程度。

一元线性回归

一元线性回归,一元指输入特征向量是一个维度,一元线性回归的输出也是一个维度。

一元线性回归的方程

一元线性回归模型使用如下方程描述
y = k x + b y=kx+b y=kx+b

一元线性回归距离衡量方法

衡量一个模型总体的优劣程度要用到损失函数。计算预测值与真实值的差值的平方,并将其加和即可得到整体目前所测试的模型的总体损失。
一元线性回归的损失函数使用公式表述为:
∑ i = 1 m ( y i − y i ^ ) 2 \sum_{i=1}^m(y_i-\hat{y_i})^2 i=1m(yiyi^)2
其中 y i y_i yi是特征向量的标签值,即真实值 y i ^ \hat{y_i} yi^是正在研究的模型的对应特征向量的预测值

一元线性回归的最优化求解

通过最小化损失函数,我们可以将一元线性回归问题,转化为最优化问题,并使用最优化问题的解法求解。
在研究的模型的总体损失值越小越好,越小的损失值,对应的模型更能准确的反应数据(即特征向量)的特征,其对应更优的参数。
在一元线性回归模型中,待求的参数是模型公式中的 k k k b b b
arg min ⁡ k , b ∑ i = 1 m ( y i − y i ^ ) 2 \argmin_{k,b}\sum_{i=1}^m(y_i-\hat{y_i})^2 k,bargmini=1m(yiyi^)2
y i ^ = k ∗ x i + b \hat{y_i}=k*{x_i}+b yi^=kxi+b带入,得到
arg min ⁡ k , b ∑ i = 1 m ( y i − k ∗ x i − b ) 2 \argmin_{k,b}\sum_{i=1}^m(y_i-k*{x_i}-b)^2 k,bargmini=1m(yikxib)2

最小化损失是找到最优的两个参数, k k k b b b 使得模型的总体损失最小。

一元线性回归的最小二乘法解法

已经有数学的方法来计算一元线性回归的最优解,即最小二乘法,此外还有梯度下降的方法来求解。最小二乘法是一种数学方法,能够直接给出准确的解,而梯度下降的方法是搜索的方法。
最小二乘法公式如下,直接套用即可,输入训练数据,计算训练数据的平均值,即可得到最有参数 k k k b b b
k = ∑ i = 1 m ( x i − x ˉ ) ( y i − y ˉ ) ∑ i = 1 m ( x i − x ˉ ) 2 k=\frac{\sum_{i=1}^m(x_i-\bar{x})(y_i-\bar{y})}{\sum_{i=1}^{m}(x_i-\bar{x})^2} k=i=1m(xixˉ)2i=1m(xixˉ)(yiyˉ)
b = y ˉ − k ∗ x ˉ b=\bar{y}-k*\bar{x} b=yˉkxˉ

相关文章:

【机器学习】线性回归与一元线性回归

线性回归与一元线性回归 V1.1线性回归问题线性方程的最优解一元线性回归一元线性回归的方程一元线性回归距离衡量方法一元线性回归的最优化求解一元线性回归的最小二乘法解法 V1.1 线性回归问题 线性回归问题就是找一条线或超平面,并使用线或超平面来描述数据分布…...

哈希表-两个数的交集

代码随想录-刷题笔记 349. 两个数组的交集 - 力扣&#xff08;LeetCode&#xff09; 内容: 集合的使用 , 重复的数剔除掉&#xff0c;剩下的即为交集&#xff0c;最后加入数组即可。 class Solution {public int[] intersection(int[] nums1, int[] nums2) {Set<Integer…...

望远镜成像系统--科学评价光学镜头

望远镜是一种利用透镜或反射镜以及其他光学器件观测遥远物体的光学仪器。其原理是通过透镜的折射或反射镜的反射&#xff0c;将光线聚焦成像&#xff0c;再经过一个放大目镜进行观察。日常生活中的光学望远镜又称“天文望远镜”。1608年&#xff0c;荷兰的一位眼镜商汉斯利伯希…...

服务器延迟给视频网站造成的影响

在数字化时代中&#xff0c;网络视频已经成为人们日常娱乐和获取信息的重要平台&#xff0c;网络视频的流畅性会影响着用户的体验度&#xff0c;那么&#xff0c;当服务器出现延迟会对视频网站造成哪些影响呢&#xff1f;本文就来共同了解一下吧&#xff01; 当所使用的服务器由…...

C++算法竞赛基础语法-9

快速排序是一种高效的排序算法&#xff0c;由C. A. R. Hoare在1960年提出&#xff0c;基本思想是分治法&#xff08;Divide and Conquer&#xff09;策略&#xff0c;通过递归将一个大问题分解为若干个较小的子问题&#xff0c;然后合并这些子问题的解来解决原始问题 快速排序…...

国产编辑器EverEdit - 极简追梦人的福音:迷你查找

1 迷你查找 1.1 应用场景 某些场景下&#xff0c;用户不希望调出复杂的查找对话框&#xff0c;此时可以使用迷你查找窗口。 1.2 使用方法 选择主菜单查找 -> 迷你查找&#xff0c;或使用快捷键Ctrl Alt F&#xff0c;会在右上角弹出迷你查找窗口&#xff0c;如下图所示…...

Flutter 异步编程利器:Future 与 Stream 深度解析

目录 一、Future&#xff1a;处理单次异步操作 1. 概念解读 2. 使用场景 3. 基本用法 3.1 创建 Future 3.2 使用 then 消费 Future 3.3 特性 二、Stream&#xff1a;处理连续异步事件流 1. 概念解读 2. 使用场景 3. 基本用法 3.1 创建 Stream 3.2 监听 Stream 3.…...

数据结构 day05

数据结构 day05 5. 队列5.3. 链式队列5.3.1. 特征5.3.2. 代码实现 6. 双向链表6.1. 特性6.2. 代码实现 5. 队列 5.3. 链式队列 5.3.1. 特征 逻辑结构&#xff1a;线性结构 存储结构&#xff1a;链式存储 操作&#xff1a;创建、入列、出列、判空、清空 5.3.2. 代码实现 头文…...

股票数据接口API实例代码python、JAVA等多种语言演示免费获取实时数据、历史数据、CDMA、KDJ等指标数据配有API说明文档

​ 本文中所有接口均可直接在浏览器打开获取数据&#xff0c;为了便于大家验证有效性&#xff0c;已经做好了超链接&#xff0c;直接点击即可&#xff01; 沪深两市股票列表 API接口链接&#xff08;可点击验证&#xff09;&#xff1a;https://api.mairui.club/hslt/list/b…...

【Map vs Set】:Java数据存储的“双子星”对决

个人主页&#xff1a;♡喜欢做梦 欢迎 &#x1f44d;点赞 ➕关注 ❤️收藏 &#x1f4ac;评论 目录 &#x1f370;一、搜索 &#x1f36e;1.概念 &#x1f36e;2.模型 &#x1f370;二、Map &#x1f368;1.什么是Map&#xff1f; &#x1f368;2.Map的实例化 &…...

ollama+langchain+deepseek本机跑通大模型

一、部署deepseek Ollama&#xff0c;这是是一个开源的大语言模型平台&#xff0c;它允许用户在本地环境中运行、创建和共享大型语言模型。Ollama提供了丰富的功能和特性&#xff0c;使得用户可以在自己的计算机上轻松地部署和运行大型语言模型。官网&#xff1a;https://ollam…...

03【FreeRTO队列-如何获取任务信息与队列的动静态创建】

一.利用 vTaskList()以及 vTaskGetRunTimeStats()来获取任务的信息 1.现象与开启启用宏 freeRTOSConfig.h //必须启用 #define configUSE_TRACE_FACILITY 1 #define configGENERATE_RUN_TIME_STATS 1 #define configUSE_STATS_FORMATTING_FUNCTIONS…...

vue-plugin-hiprint (vue2

页面效果 <template><div><div class="d-flex flex-column mt5"><div class="d-flex flex-row " style="margin-bottom: 10px;justify-content: center;"><!-- 纸张大小 A3、A4 等 --><div class="paper…...

【后端面试总结】什么是堆,什么是栈

堆与栈&#xff1a;计算机科学中的两大内存管理利器 在计算机科学中&#xff0c;内存管理是软件开发的核心组成部分之一。其中&#xff0c;堆&#xff08;Heap&#xff09;和栈&#xff08;Stack&#xff09;是两种最基本的内存分配方式&#xff0c;它们各自有着独特的特性和应…...

第39周:猫狗识别 2(Tensorflow实战第九周)

目录 前言 一、前期工作 1.1 设置GPU 1.2 导入数据 输出 二、数据预处理 2.1 加载数据 2.2 再次检查数据 2.3 配置数据集 2.4 可视化数据 三、构建VGG-16网络 3.1 VGG-16网络介绍 3.2 搭建VGG-16模型 四、编译 五、训练模型 5.1 上次程序的主要Bug 5.2 修改版…...

力扣--239.滑动窗口最大值

问题 给你一个整数数组 nums&#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例 1&#xff1a; 输入&#xff1a;nums [1,3,-1,-3,5,3,6,7], …...

傅里叶变换推导

基本模型 假设在二维直角坐标系中&#xff0c;可以用相互垂直的基向量和表示&#xff1a; 假设&#xff1a; 假设在上的投影为&#xff0c;那么&#xff1a; 所以&#xff1a; 用公式表达&#xff1a; 但是在实际中&#xff0c;基向量和不一定长度都是1&#xff0c;重新推导一…...

扣子工作流中禁止同类别的图像流节点,不能超过4个

一、问题1不能在一个工作流中超过4个图像的并行节点 1、现象 本来想着在扣子中一次生成多张图片。 然后问了扣子小助手 2、图像节点限制 扣子给了如下反馈 近期图像流上线了并发限额&#xff0c;具体规则如下&#xff1a; 针对对象&#xff1a;单用户维度&#xff0c;非 bot…...

Java 语言深度剖析与实践应用

一、引言 Java 作为一种广泛应用于各种领域的编程语言&#xff0c;自 1995 年诞生以来&#xff0c;凭借其跨平台性、面向对象特性、丰富的类库以及强大的生态系统&#xff0c;在软件开发行业占据着重要地位。无论是企业级应用开发、移动应用开发、大数据处理还是分布式系统构建…...

1.14学习总结

日常刷题单 刷了题目后&#xff0c;对于排序方法更加熟练&#xff0c;手搓代码的速度也得到了提高。 感觉字符串还不熟练&#xff0c;高精度更是云里雾里&#xff0c;上升空间极大。 同时看见今晚有个入门难度的测试&#xff0c;去练了练手&#xff0c;想看看自己是什么成分&…...

基于Alexa技能与无服务器架构的香港地铁实时查询系统开发实战

1. 项目概述与核心价值最近在折腾智能音箱的技能开发&#xff0c;发现一个挺有意思的开源项目&#xff1a;tomfong/hk-mtr-next-train-skill。这是一个为香港地铁&#xff08;MTR&#xff09;乘客量身定做的语音技能&#xff0c;让你动动嘴皮子&#xff0c;就能问出下一班车什么…...

dotai-cli:AI命令行工具的设计原理与工程实践

1. 项目概述&#xff1a;一个面向开发者的AI命令行工具最近在GitHub上看到一个挺有意思的项目&#xff0c;叫nbslabs/dotai-cli。光看名字&#xff0c;你可能会联想到.env文件或者dotfiles这类开发者常用的配置管理方式&#xff0c;没错&#xff0c;这个项目的核心思路就是把AI…...

纯Go实现Llama大模型推理引擎:llama.go架构解析与部署实践

1. 项目概述与核心价值最近在折腾大语言模型本地部署和推理时&#xff0c;发现了一个挺有意思的项目——gitctrlx/llama.go。简单来说&#xff0c;这是一个用纯Go语言实现的Llama系列大模型推理引擎。如果你和我一样&#xff0c;对在本地跑大模型感兴趣&#xff0c;但又不想被P…...

智能体工作流中如何实现多模型灵活切换与成本控制

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 智能体工作流中如何实现多模型灵活切换与成本控制 在构建复杂的智能体工作流时&#xff0c;开发者常常面临两个核心挑战&#xff1…...

年轻人用 AI 完成情绪自救:从发疯吐槽到平行宇宙重养自己

五一节后&#xff0c;年轻人情绪宣泄新方式五一假期结束&#xff0c;打工人的“节后综合症”未消。面对工作群消息和改不完的 PPT&#xff0c;打工人蝈蝈在摸鱼时打开灵光 APP 里的小游戏“老板被我 fire 了”&#xff0c;体验痛扁老板、原地暴富的爽感。而这个应用是网友二旬老…...

inline 函数与宏(#define)的核心区别

inline 函数与宏的核心区别 宏&#xff08;#define&#xff09;是预处理阶段的文本替换&#xff0c;inline 函数是编译阶段的真正函数&#xff0c;这是本质区别。一、核心区别 宏&#xff1a;无脑文本替换&#xff0c;没有类型检查、没有语法检查&#xff0c;容易出 bug。inlin…...

从Swagger到Knife4j:一个老项目的平滑升级与避坑全记录(Spring Boot 2.1.4实战)

从Swagger到Knife4j&#xff1a;一个老项目的平滑升级与避坑全记录&#xff08;Spring Boot 2.1.4实战&#xff09; 当维护一个使用Spring Boot 2.1.4和Springfox 2.9.2的老项目时&#xff0c;开发团队常常面临接口文档工具过时的问题。传统Swagger UI的界面陈旧、功能单一&am…...

终极指南:如何快速找到Windows热键冲突的罪魁祸首

终极指南&#xff1a;如何快速找到Windows热键冲突的罪魁祸首 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是否曾经遇…...

CANN/metadef AppendDim函数API

AppendDim 【免费下载链接】metadef Ascend Metadata Definition 项目地址: https://gitcode.com/cann/metadef 函数功能 向后扩展一个dim值&#xff0c;如果扩展的dim数量超出Shape的最大限制&#xff0c;那么本函数不做任何事情。 函数原型 Shape& AppendDim(c…...

CANN社区机器人能力列表

Robot 能力列表 【免费下载链接】infrastructure 本仓库用于托管CANN社区基础设施团队的公开信息&#xff0c;包括不限于&#xff1a;会议日程&#xff0c;成员信息&#xff0c;服务文档和配置等信息 项目地址: https://gitcode.com/cann/infrastructure 能力分类具体功…...