机器学习基础入门(二)(线性回归与成本函数)

news2024/11/28 22:50:53

目录

线性回归模型

问题

过程

模型f的选择 

回归和分类比较

机器学习术语

模型训练 

成本函数

介绍

设计成本函数

直观化理解成本函数


线性回归模型

问题

已知一系列房子的大小以及其对应的价格的数据,要求是已知房子大小预测其房子的价格

 

过程

一、根据已知的房子大小以及其对应的价格数据,画出上图所示的二维散点图

二、根据数据拟合一条直线,让其最接近数据样本,如下图

房价、房子大小关系拟合图

三、根据拟合出来的直线,将房子大小代入式子,便可预测房子的价格 

机器学习模型流程图

 注意:

1、y-hat:利用模型求出的预测值

2、y:训练集中的真实值

3、x:待预测的变量

4、f:训练出来的模型

 

模型f的选择 

在线性回归中,我们选择线性函数来作为训练模型如: 

f_w,_b(x)=wx+b

简写为:

 f(x)=wx+b

该模型也称为:单变量线性回归最基础的回归模型) 

 

回归和分类比较

1、回归模型可以有无穷多个输出,分类模型的输出值个数是少量且固定的

2、分类模型和回归模型都是监督模型

3、分类模型是特殊的回归模型

 

机器学习术语

训练集:用来训练模型的数据

模型训练 

在得到已知数据并构造散点图后,我们下一步要做的就是在数据中拟合直线。如何知道拟合的直线效果好不好呢?这个时候就要引入成本函数

通过比较不同直线在已知训练数据中成本函数值的大小就可以判断该直线拟合的效果如何

 

成本函数

介绍

成本函数(损失函数)是衡量模型预测结果与真实标签之间差异的函数

以下是两者的详细介绍:

  • 损失函数(Loss Function):它计算的是单个样本的真实值与预测值之间的误差。在机器学习中,损失函数用于评估模型对于单个数据点的预测性能,常见的损失函数包括平均平方误差、交叉熵损失等。
  • 成本函数(Cost Function):它是在所有训练样本上定义的,通常是指所有样本上的损失函数之和或平均值。成本函数衡量的是整个模型在全部数据集上的表现,通过最小化成本函数来寻找模型参数的最优解。

 

设计成本函数

1、损失函数就是衡量直线拟合的如何——》拟合好不好就是看预测值和真实值差距大不大

2、得到损失函数:\hat{y}-y——》考虑差值有正有负,将损失函数修改为:(\hat{y}-y)^2

3、衡量模型在整合训练集中的误差——》损失函数修改为:\sum^m_{i=1}(\hat{y}-y)^2(m为训练集数量)

4、考虑到评估训练模型的好坏(客观的量,不受训练集大小影响)——》损失函数修改为:\frac{1}{m}\sum^m_{i=1}(\hat{y}-y)^2——》方便后续计算再次修改损失函数为:\frac{1}{2m}\sum^m_{i=1}(\hat{y}-y)^2

5、将损失函数\frac{1}{2m}\sum^m_{i=1}(\hat{y}-y)^2正式命名为J(w,b)=\frac{1}{2m}\sum^m_{i=1}(\hat{y}-y)^2

上面构造出来的成本函数称为:均方误差(MSE)

 

直观化理解成本函数

成本函数:J(w,b)是一个关于w,b两个参数的变量

模型f:f_w,_b(x)是一个关于x的变量

当选定一个w,b就能构造一个模型f,同时计算出模型f的成本函数的值,从而在成本函数图像中确定一个点。当选择更多的w,b时就能画出成本函数的函数图像

左图:由训练集得到的散点图,用于计算成本函数值
右图:由每一个参数对应的成本函数值,画出的成本函数的函数图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1603390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JS-43-Node.js02-安装Node.js和npm

Node.js是一个基于Chrome V8引擎的JavaScript运行时环境,可以让JavaScript实现后端开发,所以,首先在本机安装Node.js环境。 一、安装Node.js 官网:下载 Node.js 默认两个版本的下载: 64位windows系统的LTS(Long Tim…

git工作流程简介及常用命令

1、git工作流程 1.从远程仓库中克隆或拉取代码到本地仓库(clone/pull) 2.从本地进行代码修改 3.在提交前先将代码提交到暂存区 4.提交到本地仓库。本地仓库中保存修改的各个历史版本 5.修改完成后,需要…

SnapGene Mac激活版 分子生物学软件

SnapGene Mac是一款功能全面、操作便捷的综合性分子生物学软件,专为Mac用户打造。它集成了DNA序列编辑、分析、可视化和团队协作等多种功能,为科研人员提供了一个高效、可靠的分子生物学研究工具。 SnapGene Mac激活版下载 在SnapGene Mac中,…

看图找LOGO,基于YOLOv5系列【n/m/x】参数模型开发构建生活场景下的商品商标LOGO检测识别系统

日常生活中,我们会看到眼花缭乱的各种各样的产品logo,但是往往却未必能认全,正因为有这个想法,这里我花费了过去近两周的时间采集和构建了包含50种商品商标logo的数据集来开发构建对应的检测识别系统,在前文中我们已经…

Python学习教程(Python学习路线+Python学习视频):Python数据结构

数据结构引言: 数据结构是组织数据的方式,以便能够更好的存储和获取数据。数据结构定义数据之间的关系和对这些数据的操作方式。数据结构屏蔽了数据存储和操作的细节,让程序员能更好的处理业务逻辑,同时拥有快速的数据存储和获取方…

游戏、app抓包

文章目录 协议app抓包游戏抓包 协议 在抓包之前,首先我们要对每个程序使用什么协议有个大致的了解,比如网页这种就是走的http协议。 在一些app中我们通过发送一个请求,然后服务器接受,响应,返回一个数据包&#xff0c…

VTK —— 二、教程二 - 利用vtk观察者检测多边形圆锥水平旋转360°过程(附完整源码)

代码效果 本代码编译运行均在如下链接文章生成的库执行成功,若无VTK库则请先参考如下链接编译vtk源码: VTK —— 一、Windows10下编译VTK源码,并用Vs2017代码测试(附编译流程、附编译好的库、vtk测试源码) 教程描述 本…

使用clickhouse-backup迁移数据

作者:俊达 1 说明 上一篇文章中,我们介绍了clickhouse-backup工具。除了备份恢复,我们也可以使用该工具来迁移数据。 这篇文章中,我们提供一个使用clickhouse-backup做集群迁移的方案。 2 前置条件 1、源端和目标端网络联通&a…

vscode 配置go环境

https://www.zhihu.com/question/486786946/answer/2723663432 注意一定要安装最新版,否则不容易debug //main.go package main //说明hello.go这个文件在main这个包中import "fmt" //导入内置包,可以使用其中函数等func main() {fmt.Println("Hello…

微信小程序的常用API ①

前言:什么是微信小程序的API? (1)微信小程序的API是由宿主环境提供的。通俗来说API是一种接口函数,把函数封装起来给开发者使用,这样好多功能都无需开发者去实现,直接调用即可。 (…

真有立即做出40+BI零售数据分析报表的方案?

有,奥威BI零售数据分析方案是一套标准化的BI方案,预设零售数据分析模型和BI报表,点击应用后,将自动从系统中取数,并根据方案的预设计算分析指标、分析数据,并生成让人快速理解数据情况的BI数据可视化报表。…

javaweb http

1、http简介 HTTP 超文本传输协议(HTTP-Hyper Text transfer protocol),是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过十几年的使用与发展&…

npm ERR! code CERT_HAS_EXPIRED (创建vue过程)

npm ERR! code CERT_HAS_EXPIRED (创建vue过程) 起因:卸载 npm uninstall -g vue-cli时候发现报这个错误。 当我们创建vue之前,使用npm更新或者安装啥的时,出现此类提示,则表明,用来验证和网络加…

使用GAN做图像超分——SRGAN,ESRGAN

在GAN出现之前,使用的更多是MSE,PSNR,SSIM来衡量图像相似度,同时也使用他们作为损失函数。 但是这些引以为傲的指标,有时候也不是那么靠谱: MSE对于大的误差更敏感,所以结果就是会倾向于收敛到期望附近&am…

《Kubernetes部署篇:基于Kylin V10+ARM架构CPU+外部etcd使用containerd部署K8S 1.26.15容器版集群(一主多从)》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:企业级K8s集群运维实战 1、在当前实验环境中安装K8S1.25.14版本,出现了一个问题,就是在pod中访问百度网站,大…

使用嘉立创EDA打开JSON格式的PCB及原理图

一、将PCB和原理图放同一文件夹 并打包成.zip文件 二、打开嘉立创EDA并导入.zip文件 文件 -> 导入 -> 嘉立创EDA标准版/专业版 三、选择.zip文件并选择 “导入文件并提取库” 四、自定义工程路径 完成导入并转换为.eprj文件 五、视频教学 bilibili_使用立创EDA打开JSO…

Ansible 提示 sshpass 错误

错误的信息为: AILED! > {"msg": "to use the ssh connection type with passwords or pkcs11_provider, you must install the sshpass program"}问题和原因 这是在运行 ansible 的服务器需要安装 sshpass 组件。 可以直接运行&#xff1…

Xamarin.Android中“ADB0020: Android ABI 不匹配。你正将应用支持的“armeabi-v7a;arm64-v8a”异常处理

这里写自定义目录标题 1、问题2、解决 1、问题 在Xamarin.Android中出现ADB0020: Android ABI 不匹配。你正将应用支持的“armeabi-v7a;arm64-v8a”ABI 部署到 ABI“x86_64;x86”的不兼容设备。应创建匹配其中一个应用 ABI 的仿真程序,或将“x86_64”添加到应用生成…

web自动化系列-selenium 的鼠标操作(十)

对于鼠标操作 ,我们可以通过click()方法进行点击操作 ,但是有些特殊场景下的操作 ,click()是无法完成的 ,比如 :我想进行鼠标悬停 、想进行鼠标拖拽 ,怎么办 ? 这个时候你用click()是无法完成的…

论文解读:(CoOp)Learning to Prompt for Vision-Language Models

文章汇总 存在的问题 虽然训练类别通常具有文本形式,例如“金鱼”或“卫生纸”,但它们将被转换为离散标签,只是为了简化交叉熵损失的计算,从而使文本中的语义封装在很大程度上未被利用。这样的学习范式将视觉识别系统限制在闭集…