机器学习基础认识(一)

news2024/11/20 4:26:17

机器学习应用

机器学习的应用,主要分为两类:预测、分类

预测,一般是指:根据数据,预测数值
分类,一般是指:根据数据,进行分类

预测与分类的关系【个人理解】

分类,本质上也是一种预测。

预测,可预测实值,也可预测类别。

预测实值可通过线性回归模型,预测出线性的实际数值。
但当预测某个数据的类别(例如男女、老少等非连续的离散值)时,则变为了人们常说的分类问题。

因此,如果非要对预测、分类进行一个严格区分:
『 预测问题是对线性连续值的预测,分类问题是对非线性值的预测 』

机器学习基础流程

  1. 建立模型:根据应用类型,构造函数模型
  2. 学习模型:将数据应用于模型计算,并不断地根据计算结果,完善模型
  3. 使用模型:将学习后的模型(即训练好的模型),进行实际应用

机器学习的流程,就像是做菜-菠萝炒鸡。

👉建立模型,就像是根据目标,凭经验设计一个做菜的固定步骤。

  • 开火
  • 烧油
  • 放菜
  • 放盐
  • 关火

虽然知道需要什么材料,但这个过程需要多少油,多少盐,多少火力,煮多久——无从知晓!
所以,建立模型时,只知道需要锅碗瓢盆油盐酱醋这些参数,但却不知道参数是多少!!!

👉学习模型,就像是一个鲁莽的菜鸟厨师。
它菜就菜在,不知道这些材料,都需要放多少量(即它也不知道放多少油盐酱醋才好吃)
它莽就莽在,不管三七二十一,先按这个步骤随便放初始量的材料,直接开炒!
每次炒的结果,都由一个试吃小白鼠去尝,如果小白鼠摇摇头不满意,鲁莽的菜鸟厨师就稍微调整一下材料用量

俗话说的好,不怕莽夫莽,就怕莽夫坚持不懈地莽下去。——我人有多俗,这话就有多俗,因为这话就是我这个俗人说的。。。

炒的次数多了,这个材料量自然就会慢慢调整好,小白鼠总有一天会拍灯,为你转身!
于是,鲁莽的菜鸟厨师,经过坚持不懈的尝试与改进,终于含泪掌握了菠萝炒鸡的配方。

其实有点儿“暴力破解法”的思想,就是,我也不知道你什么答案,但我一个个试,总能试出最佳答案!

👉使用模型,就像是鲁莽的菜鸟厨师,拿着配方出去开饭店了!

【比喻还是有些不够恰当的,但精髓到位就行】

1. 建立模型

建立模型,就是根据应用类型,构造函数模型。
应用类型分为:预测、分类。

1.1 预测的函数模型

预测:一般采用线性回归模型。

求解线性回归模型参数,即是学习模型的过程

常见的线性回归函数:一元线性回归【y = wx + b】、多元线性回归【Y= W T X W^{T}X WTX

1.1.1 一元线性回归

一元线性回归【y = wx + b】,只有一个自变量 x,和一个因变量 y,有两个未知参数w和b
其中,w是变量x的权重,b是偏差。

一元线性回归,适用于预测只有单个因素影响某个指标的数据,并且该因素与该数据指标,是线性关系才会预测的更准。

例如,假设工资是唯一影响幸福指数的因素,那么可以建立一元线性回归的预测模型。
即:y = wx+b,x表示工资,y表示幸福指数

工资x幸福指数y
10k10%
19k13%
15k40%
119k80%
500k120%

1.1.2 多元线性回归

多元线性回归【y = W T X W^{T}X WTX】,有多个变量x1,x2,x3…xn,构成了自变量X,每一个自变量x,都有对应的权重w1,w2,w3…wn
即y = W T X W^{T}X WTX=w1x1+w2x2+w3x3+…+wnxn + w0*x0【这里的w0,x0,其实就相当于x0=1,w0=b,表示偏差b】

只有一个因变量y,因此多元线性回归,适用于由多个因素x影响某个数据指标y的情况,如果因素和指标是线性关系才会预测更准。
例如,假设颜值和工作,是影响幸福指数的两个因素,那么可以建立多元线性回归的预测模型。
即:y = W T X W^{T}X WTX,X为,x0=1,x1,x2; y表示工资。

颜值x1工资x2幸福指数y
3010k10%
1019k13%
8015k40%
40119k80%
90500k120%

1.2 分类的函数模型

分类:一般是线性回归函数+非线性函数,构成的逻辑回归函数。
通常是引入非线性函数(激活函数),对线性回归结果进行非线性加工计算。

常见的激活函数有逻辑回归

具体的激活函数σ有多种,常见的有sigmoid函数(也叫逻辑回归函数)、Relu函数、softmax函数等。

在这里插入图片描述

(sigmoid与softmax实际相通,解释不同)

线性回归预测的结果值,经过逻辑回归,可实现分类效果。

总结来看:

如果要求实现预测,需建立线性回归模型。
如果要求实现分类,需建立逻辑回归模型。

2. 学习模型:求解最优模型

选择损失函数
模型效果如何,是通过判断当前模型计算结果与实际结果拟合程度,拟合效果可通过损失函数来计算。

损失函数:用于判断模型效果。

损失函数有多种,常见的有三种:最小二乘法、极大似然估计法、交叉熵法。

即对应:平方损失函数(最小二乘法)、交叉熵损失函数(极大似然估计法、交叉熵法)

认识常用损失函数:

① 最小二乘法(模型计算结果与实际结果差值的平方和)

Loss = (模型计算结果-实际结果)的平方和

平方损失函数值越小,模型越优

② 极大似然估计法——(即交叉熵法,解释角度不同,但公式相同)

似然值:每个模型下发生的概率,叫做似然值。当似然值越大,表示该概率模型与实际结果概率的分布更接近。

极大似然估计法,就是在挑出似然值越大的那个概率模型。

Loss =

似然值(交叉熵)越大,模型越优。

总结来看:

最小二乘法(平方损失函数值越小,模型越优)

极大似然估计法(似然值越大,模型越优)

计算损失函数的值,并更新模型参数
模型与实际模型的拟合程度通过损失函数计算可得,而损失函数的计算通常有以下两种方法:

求出解析解,得到精确模型——数学计算求极值
求出近似解,逼近较优模型——梯度下降法、牛顿法…

① 求出解析解,更新模型参数

解析法求线性回归(可换为逻辑回归)的平方损失函数极小值

但使用解析法求出线性回归的平方损失函数极小值的前提是,是满秩矩阵

(数据集内容不同,结果可能满秩,也可能不满秩,因此最小二乘法在数据量过大数据内容不确定情况,有可能无法使用最小二乘法,可采用L2正则化进行优化【此知识点难度较大,待更新】,或是数量级差距过大,最小二乘法得出的结果偏差过大)

解析法求交叉熵损失函数的极大值(求解似然最大值)

对交叉熵损失函数求导,使导数为0,计算极值(具体不作详解)

计算平方损失函数、或是交叉熵损失函数的极值后,得到模型参数,即可更新为最终模型。

解析法难以应对大批量的数据集计算,因此实际常用求近似解,逼近较优模型的方式。

② 求出近似解,更新模型参数

求出近似解-梯度下降法:

使用梯度下降法,求解损失函数的值,多次迭代计算出损失函数的值。

停止迭代的方式有两种:

①设置损失函数的阈值,当损失函数小于某阈值,即停止迭代

②设置迭代的次数,当迭代次数超过时,即停止迭代(迭代会收敛,迭代次数越多,则越逼近极值)

多次迭代过程中,不断更新模型参数,使模型在迭代过程中逐渐变优。

牛顿法:

(正在学习中,涉及较多,待更新)

多层神经网络的浅显认识
上述是对单层神经网络的模型进行迭代,更新模型参数。

但当涉及多层神经网络时,中间含有较多隐含层,要如何更新各层模型的参数呢?

若是要训练多层神经网络,可考虑误差反向传播法:

计算当前模型的预测值与实际值的误差,根据误差值反向计算各层的参数加粗样式

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

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

相关文章

零基础怎么入门网络安全?看这篇就够啦!

由于我之前写了不少网络安全技术相关的故事文章,不少读者朋友知道我是从事网络安全相关的工作,于是经常有人在微信里问我: 我刚入门网络安全,该怎么学?要学哪些东西?有哪些方向?怎么选&#xff…

Centos7.6部署postgresql15主从

目录 安装pg15(master和standby)主数据库配置(master)初始化数据库创建归档日志目录设置数据库访问权限修改数据库配置文件开启数据库 从数据库配置(standby)同步主库的数据文件创建文件standby.signal启动从数据库 主从状态验证master上验证standby上验…

H5性能测试怎么做?这些关键指标你得搞清楚

目录 01、Http相关 02、组件是否压缩 03、图片格式和大小是否合适 04、CSS放在顶部 05、JS放在底部 06、JS &CSS压缩 07、是否添加缓存 08、避免非200返回值 09、使用CDN 03、WebView相关 学习资源分享 软件测试面试小程序 01、Http相关 01、Http请求个数 有…

新星计划 Electron+vue2 桌面应用 1 基础

/(ㄒoㄒ)/~~报名了两个新星计划,工作之余写博客…… 另外一个是uniapp的属于个人兴趣,这个桌面应用正好符合工作需要。 活动地址:https://marketing.csdn.net/p/1738cda78d47b2ebb920916aab7c3584 教程地址: 2023新星导师活动…

Java实现PDF导出/预览

网上有很多关于PDF导出的文章,但是个人感觉实现的过于复杂,又是模板又是html的,有的还需要字体模板的支持,本片文章只是实现简单的PDF表格导出,可以实现PDF动态表格导出/预览,这类文章网上很少,…

实践「容器镜像扫描」,Get 云原生应用的正确打开方式

🌟 容器技术的兴起,让应用程序更加轻量化和可移植,大大提高了应用交付效率。但容器中的应用也面临各种安全威胁,容器及其镜像安全不可小觑。 近日,在「DevSecOps 软件安全开发实践」课程上,极狐(GitLab) 高…

Linux设置系统时间(上海时区、硬件时间、重启有效)

#查看时间 date#删除当前时区 rm -rf /etc/localtime #修改默认时区为上海 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #设置硬件时间 月/日/年 时:分:秒 hwclock --set --date"05/18/2023 17:11:15"#设置系统时间和硬件时间同步 hwclock --hctosys#保…

大数据发展前沿复习

对抗学习 生成对抗网络(GAN)是非监督式学习的一种方法,透过两个神经网络相互博弈的方式进行学习。生成对抗网络由一个生成网络与一个判别网络组成。生成网络以随机取样作为输入,其输出结果需要尽量模仿训练集中的真实样本。判别网…

vmware17pro安装激活ubuntu22版本最新教程无废话

第一步:下载 下载很方便 官方一键下载链接 第二步 安装 点下一步,一键安装即可,有可能会重启电脑,没关系的,是安全的 第三步:ji活 懂得都懂这是什么 JU090-6039P-08409-8J0QH-2YR7F 4A4RR-813DK-M81A9…

C语言算法--快速排序法

C语言算法–快速排序法 1-什么是快速排序法 快速排序(Quicksort)是一种常用的排序算法,它基于分治的思想。它的核心思想是选择一个基准元素,将数组划分为两个子数组,使得左边的子数组中的所有元素都小于等于基准元素…

【Flutter开发】Navigator2.0介绍及使用

目录 Navigator1.0Navigator2.0APPRouteInformationParserRouterDelegate 问题The Navigator.pages must not be empty to use the Navigator.pages API浏览器的回退按钮 总结 Navigator1.0 我们学习flutter一开始接触的路由管理就是Navigator1.0,它非常方便&#…

JAVA-Activiti 7与达梦、人大金仓兼容-nacos、服务pom文件配置(2)

目录 第一步,修改nacos服务配置 >需注意< 第二步,pom.xml依赖包配置 Activiti的源码包解决之后,接下来就好做很多了 第一步,修改nacos服务配置 spring:datasource:url: jdbc:kingbase8://127.0.0.1:54321/progress?currentSchemaprogress,productNamePostgreSQL,SYS…

保密+完整+可用+安全,规避代码安全「马奇诺防线」,构建软件供应链整体安全

近日&#xff0c;在「江狐会」广州站上&#xff0c;极狐(GitLab) 高级解决方案架构师武让分享了如何通过三大阶段 四大要点&#xff0c;规避代码安全「马奇诺防线」&#xff0c;真正确保软件供应链安全。以下内容整理自本次演讲。Enjoy&#xff5e; 先跟大家分享一个故事 一战…

计算机体系结构|MIT6.175和MIT6.375学习笔记

在2023年初&#xff0c;达坦科技发起成立硬件设计学习社区&#xff0c;邀请所有有志于从事数字芯片设计的同学加入我们的学习互助自学小组&#xff0c;以理解数字芯片设计的精髓&#xff0c;强化理论知识的同时提升实操技能&#xff0c;继而整体提升设计能力。现在&#xff0c;…

Vmware虚拟机安装MacOS13-Ventura详细教程

小编亲测 前提准备 功能强大的 Windows 电脑&#xff08;不能太差&#xff0c;不然会卡&#xff09;至少8GB内存默认是80GB的存储空间VMWare Workstation&#xff08;版本应该没什么需求&#xff0c;我装的是VMware Workstation 17 Pro&#xff09;Unlocker解锁软件MacOS Ventu…

最快的 Houdini 和 V-Ray 云渲染服务

Houdini是SideFX开发的一款3D动画软件应用。Houdini 最常用于 FX 部门&#xff0c;用于在电影和游戏中创建视觉效果。它被主要的 VFX 公司使用&#xff0c;例如 Walt Disney Animation Studios、Pixar、DreamWorks Animation、Double Negative、ILM、MPC、Framestore 等。Houdi…

推荐几款音频转文字软件给你

不知道小伙伴们有没有遇到过这种情况&#xff0c;在上学时期&#xff0c;我们经常需要记录老师上课的板书内容&#xff0c;但是边听边记可能速度会跟不上&#xff0c;还会遗漏掉一些内容&#xff0c;而且效率也不高。其实这时候&#xff0c;我们可以将老师讲话的内容先录制下来…

鸿蒙Hi3861学习十三-Huawei LiteOS-M(STA模式)

一、简介 AP&#xff08;Access Point&#xff09;无线接入点 AP是无线接入点&#xff0c;是一个无线网络的创建者&#xff0c;是网络的中心节点。一般家庭或办公室使用的无线路由器就是一个AP。 STA&#xff08;Station&#xff09;站点 STA也可以理解为终端的意思&#xff…

高性能零售IT系统的建设10-一个系统日志记录搞崩了整个公司的O2O交易系统

背景 绝大多数业务系统其实都是一座屎山&#xff0c;本人接手的这座屎山目前已经成了一座金山。这其中的幸酸只有那些从0参与过并活到现在的一些“老人”们心中自知其中的滋味。 在3年半前&#xff0c;本以为买来的一套将近600万行代码、达800张表、几乎用到了所有的互联网中间…

分布式系统:高并发

目录 1.什么是高并发 2.术语 3.如何应对处理高并发 3.1.提升系统的并发能力 3.3.1.垂直扩展 3.3.2.水平扩展 3.2.流量控制 4.削峰 4.1.怎样来实现流量削峰方案 4.2.限流 5.总结 1.什么是高并发 高并发是指系统在同一时间内处理大量请求的能力。在软件开发中&a…