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

一.AI大模型开发-初识机器学习

机器学习基本概念

前言

本文主要介绍了深度学习基础,包括机器学习、深度学习的概念,机器学习的两种典型任务分类任务和回归任务,机器学习中的基础名词解释以及模型训练的基本流程等。

一.认识机器学习

1.人工智能和机器学习

人工智能(Artificial Intelligence,简称AI) 是指由计算机系统所表现出的智能行为。它是一门研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的学科。人工智能的目标是使机器能够执行通常需要人类智能才能完成的任务,如学习、推理、解决问题、理解语言、识别图像等

人工智能的关键技术包括:

  • 机器学习(Machine Learning, ML):通过数据训练模型,使计算机能够从经验中学习并改进性能。
  • 深度学习(Deep Learning):一种特殊的机器学习方法,使用多层神经网络来处理复杂的数据模式。
  • 自然语言处理(Natural Language Processing, NLP):使计算机能够理解和生成人类语言。
  • 计算机视觉(Computer Vision*:让计算机能够“看”和解释图像或视频内容。
  • 强化学习(Reinforcement Learning):通过奖励和惩罚机制来训练AI系统做出最优决策。

机器学习是一种通过大量数据去迭代逼近未知参数的最优解的方法。 深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络。

在这里插入图片描述

人工智能已经广泛应用于多个行业,如医疗、金融、交通、娱乐、教育等。常见的应用场景包括自动驾驶汽车、智能客服、个性化推荐、疾病诊断、语音助手等。

2.机器如何学习

机器学习是对人脑学习的模拟,人类通过学习在大脑中形成对事物的认知,也就是知识,当大脑接受到新的问题时能够根据自身的认知和经验给出答案。那么机器也是一样,我们对AI提供大量的数据进行学习和反复训练那么AI也能够形成一套“知识”体系。当输入新的数据给AI那么它就能根据自己的“知识”体系给出较为精准的结果,如下:

在这里插入图片描述

3.什么是神经网络

深度学习和机器学习最大的区别是深度学习引入了神经网络,神经网络的构建是通过模拟人类神经元之间的信息传递过程。

人体大脑学习过程是通过感觉器官接收外界刺激信息,如视觉、听觉、触觉等,这些信息转化为神经信号传递到大脑,神经信号在神经元之间通过突触进行传导。 神经元是主要由树突、轴突、突出组成,树突是从上面接收很多信号,经过轴突处理后传递给突触,突触会进行选择性向下一级的树突传递信号。

通过这种方式,神经元之间形成了复杂的连接网络,使得大脑能够进行信息的传递、整合和处理,以实现各种认知、情感和行为功能。此外,突触在学习、记忆等过程中还可以发生动态的变化和重塑,以适应新的经验和环境需求。
在这里插入图片描述

那么神经网络模拟的就是神经元之间的信息传递过程,每个神经网络单元抽象出来一种=数学MP模型,也叫感知器,它接收多个输入(x1,x2,x3…),产生一个输出 即 y= W1X1+W2X2+W3X3+…+WnXn + b。

这就好比是神经末梢感受各种外部环境的变化(感知外部刺激),产生不同的电信号(也就是输入:x1,x2,x3…xn),这些强度不同(也就是参数w1,w2,w3…wn)的电信号汇聚到一起,会改变这些神经元内的电位,如果神经元的电位超过了一个“阈值”(参数 b),它就会被激活(激活函数),即“兴奋”起来,向其他神经元发送化学物质。

下面是MP模型示例图,它是麦卡洛克一皮茨模型(McCulloch-Pitts model )简称,一种早期的神经元网络模型.
在这里插入图片描述
MP模型由美国神经生理学家麦卡洛克(McCulloch, W.)和数学家皮茨 <Pitts,W.)于1943年共同提出。设有n个神经元相互连结,每个神经元的状态Si (i=1,2,…,n)取值0或1,分别表示该神经元的抑制和兴奋,每个神经元的状态都受其他神经元的制约,B是第i个神经元的阂值,W是神经元i与神经元j之间的连结强度。

MP模型过程:

  1. 每个神经元都是一个多输入端如x1,x2,x3
  2. 每个输入都会乘以权重w1,w2,w3,再加一个阈值 b
  3. 最后我们会得到 y = w1x1 + w2x2 + w3x3 + b,最终我们得到一个值 y
  4. 得到这个值后是否会向下游输出则取决于激活函数f(x)
  5. 向下游输出的结果Oj的值要么是0,要么是1。

激活函数

激活函数:就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。

如果不用激活函数:每一层输出都是上层输入的线性函数,无论神经网络有多少层,输出都是输入的线性组合,这种情况就是最原始的感知机(Perceptron)。 如果使用激活函数:激活函数给神经元引入了非线性因素,使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。

单个的感知器(也叫单感知机)就构成了一个简单的模型(MP模型),但在现实世界中,实际的决策模型则要复杂得多,往往是由多个感知器组成的多层网络,如下图所示,这也是经典的神经网络模型(也叫多感知机),由输入层、隐含层、输出层构成。

4.机器学习的两种任务

机器学习的典型任务可以分为:分类任务 和 回归任务,分类任务:找到分类边界,将不同类型的数据划分开。回归任务:通过模型拟合数据点分布,预测新数据的值。分类任务输出离散值,回归任务输出连续值。

分类任务: 是根据每个样本的值特征预测该样本属于类型A、类型B还是类型C,例如情感分类、内容审核,相当于学习了一个分类边界(决策边界),用分类边界把不同类别的数据区分开来。

回归任务:是对连续值进行预测,根据每个样本的值特征预测该样本的具体数值,例如房价预测,股票预测等,相当于学习到了这一组数据背后的分布,能够根据数据的输入预测该数据的取值。

在这里插入图片描述
分类模型只能输出对与错,通常用来将预测结果是将样本划分到某个特定类别,而回归模型输出的数据的预测值,例如,判断一个水果是苹果还是橙子用分类模型,而预测明天的气温是多少度则用回归模型。

5.有监督学习和无监督学习

为什么要分有监督和无监督:当训练员训练小狗的时候,如果小狗做出了一个正确的动作,都会奖励一个实物给小狗来标记一个正确的信号,模型训练也是如此:我们需要通过真实数据去标注模型的预测值是否正确,或者误差值是多少,这个就是有监督学习,有监督和无监督区别如下:

有监督学习:监督学习利用大量的标注数据来训练模型,对模型的预测值和数据的真实标签计算损失,然后将误差进行反向传播(计算梯度、更新参数),通过不断的学习,最终可以获得识别新样本的能力。

每条数据都有正确答案,通过模型预结果与正确答案的误差不断优化模型参数

无监督学习:无监督学习不依赖任何标签值,通过对数据内在特征的挖掘,找到样本间的关系,比如聚类相关的任务。有监督和无监督最主要的区别在于模型在训练时是否需要人工标注的标签信息。

只有数据没有答案,常见的是聚类算法,通过衡量样本之间的距离来划分类別

6.什么是模型

模型可以通过对海量数据的学习,吸收数据里面的“知识”。然后,再对知识进行运用,例如回答问题、创造内容等,所谓模型,就是一个包含了大量未知参数的函数,给函数输入数据生成输出,所谓训练,就是通过大量的数据去迭代逼近这些未知参数的最优解。

为什么要训练模型?如果我们对模型提供不同领域的数据进行训练那么他们能够预测的数据范围也就不一样。比如:我们使用法律相关的数据进行训练,那么当你在询问它法律的问题时他就能给出较为精准的答案,当你问他医疗的问题它肯定就无法给出你想要的答案了。

就好比一只小狗你训练它跳火圈,那么它就只会跳火圈,你训练它学猫叫他它就会学猫叫,AI也是一样,这样就形成了一个一个的“模型”,有些模型的能力是绘图,有些模型的能力是对话,就看你怎么训练它。

如果你们公司希望大模型能够针对于你们自己的业务和数据做出精准的预测值,那么就需要通过你们公司自己的大量数据去训练,这也就是为什么企业都需要自己去部署和训练模型,因为市面上的模型不一定适用于你们公司的业务。

大模型(Large Model) 是指参数量非常庞大、规模远超传统模型的人工智能模型。这类模型通常具有数以亿计甚至数以万亿计的参数,能够在多种任务上表现出卓越的性能和通用性。大模型通过大量的数据训练,能够捕捉到复杂的数据模式和语义信息,从而在自然语言处理、计算机视觉、语音识别等领域展现出强大的能力。

我们现在口头上常说的大模型,实际上特指大模型的其中一类,也是用得最多的一类——语言大模型(Large Language Model,也叫大语言模型,简称LLM)。
除了语言大模型之外,还有视觉大模型、多模态大模型等。现在,包括所有类别在内的大模型合集,被称为广义的大模型。而语言大模型,被称为狭义的大模型

7.大模型训练流程

如果想要大模型如同人脑一样给出精准结果,那么需要提供大量数据进行“投喂”(学习),并且需要“标记”模型给出的答案是否“正确”,我们把学习的过程,我们称之为训练,运用的过程,则称之为推理。比如:我给大模型投喂的数据是"1+1=?" , 然后给出正确值为 2,那么大模型就学习到1+1=2,那么当你对他提出问题“1+1=?”,那么它可能就会给出推理的值2,下面是大模型学习和训练的过程:
在这里插入图片描述

相关文章:

一.AI大模型开发-初识机器学习

机器学习基本概念 前言 本文主要介绍了深度学习基础&#xff0c;包括机器学习、深度学习的概念&#xff0c;机器学习的两种典型任务分类任务和回归任务&#xff0c;机器学习中的基础名词解释以及模型训练的基本流程等。 一.认识机器学习 1.人工智能和机器学习 人工智能&am…...

RoCE和 TCP的区别

RoCE&#xff08;RDMA over Converged Ethernet&#xff09;和 TCP&#xff08;Transmission Control Protocol&#xff09;都是用于数据传输的协议&#xff0c;但它们在多个方面存在显著区别&#xff0c;以下为你详细介绍&#xff1a; 设计目标 RoCE&#xff1a;主要设计目标…...

勒索病毒攻击:如何应对和恢复

近年来,勒索病毒(Ransomware)已经成为全球信息安全领域最具破坏力的威胁之一。无论是个人用户,还是大中型企业,甚至政府机构,勒索病毒的攻击频率和破坏性日益增加。2020年及2021年,勒索病毒攻击不仅数量激增,且其攻击手法、目标和传播方式也变得更加复杂、精密和具有针…...

解决MySQL错误:You can‘t specify target table ‘xxx‘ for update in FROM clause

目录 错误复现场景原因分析解决方案方法1&#xff1a;使用派生表&#xff08;推荐&#xff09;方法2&#xff1a;改用JOIN操作方法3&#xff1a;使用临时表 总结 在编写MySQL的UPDATE或DELETE语句时&#xff0c;如果子查询中直接引用了要操作的目标表&#xff0c;可能会遇到一个…...

在Linux上安装和使用Docker

在Linux上安装和使用Docker&#xff1a;一步步指南 Docker是一种流行的容器化平台&#xff0c;它可以帮助开发者轻松构建、部署和运行应用程序。在本文中&#xff0c;我们将介绍如何在Linux系统上安装Docker&#xff0c;并提供一些常用的Docker命令和使用说明。 1. 安装Docke…...

【Git】四、标签管理

文章目录 Ⅰ. 理解标签Ⅱ. 创建标签① 轻量级标签② 含附注类标签 Ⅲ. 操作标签 Ⅰ. 理解标签 ​ 标签 tag &#xff0c;可以简单的理解为是 对某次 commit 的一个标识&#xff0c;相当于起了一个别名。例如&#xff0c;在项目发布某个版本的时候&#xff0c;针对最后一次 com…...

elementui中aria-hidden报错

浏览器检查的原因&#xff0c;不影响功能&#xff0c;但会在控制台报红 解决办法&#xff1a; 在对应元素设置display:none .el-radio__original {display: none !important;}...

DeepSeek 助力 Vue 开发:打造丝滑的表单验证(Form Validation)

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 Deep…...

【MySQL】简单掌握数据类型与表操作,让数据库性能飞跃

个人主页&#xff1a;♡喜欢做梦 欢迎 &#x1f44d;点赞 ➕关注 ❤️收藏 &#x1f4ac;评论 目录 &#x1f333;一、数据类型 &#x1f343;1.数值类型 &#x1f342;整型类型 &#x1f342;浮点型类型 &#x1f342;定点数类型 &#x1f343;2.字符串类型 3.&am…...

JUC并发编程——Java线程(一)

文章目录 1. 线程的创建1.1 方法1&#xff1a; 直接使用Thread1.2 方法2&#xff1a;使用Runnable配合Thread1.3 方法3&#xff1a;FutureTask配合Thread 2. 线程运行2.1 原理2.2 常见方法2.2.1 start与run2.2.2 sleep与yield2.2.3 join2.2.4 interrupt 3. 主线程和守护线程4. …...

Python入门笔记3

ros小车亚博官网例子延时性基本上跑完了&#xff0c;发现自己一些基础Python语法还不熟悉。 本节学习循环&#xff1a; while\for\break\continue 1. while 循环 while 循环会在条件表达式为真时&#xff0c;重复执行一段代码块&#xff0c;直到条件表达式变为假。 格式&am…...

【SQL教程|07】sql中条件查询where用法示例

SQL WHERE 条件查询教程 在SQL中&#xff0c;WHERE 条件用于在 SELECT 语句后过滤结果集&#xff0c;只返回符合条件的记录。它帮助我们从大量数据中提取所需的信息。以下是使用 WHERE 条件的逐步指南。 1. 基本语法 SELECT [字段] FROM [表] WHERE [条件];SELECT&#xff1a…...

项目实战(13)-双频RFID语音播报阅读器

一. 产品简介&#xff1a; 1、项目背景是在实际应用中需要读取射频标签ID&#xff0c;但是市面上这种标签类型不统一&#xff1b;有的频段是125KHz&#xff0c;高频的是13.56MHz。所以需要一个读卡模块实现这两种卡的识别读取。 2、板子核心处理器是STM32F407&#xff0c;显示…...

基本控制环节的幅频和相频特性

基本控制环节的幅频和相频特性 在控制系统中&#xff0c;不同类型的控制环节具有各自独特的动态特性。为了研究这些环节对信号的影响&#xff0c;通常需要分析其频率响应特性&#xff0c;即幅频特性和相频特性。以下对几种常见的基本控制环节进行逐一分析。 1. 比例环节 比例…...

vue3 ref和reactive的区别

在 Vue 3 中&#xff0c;ref 和 reactive 是两种用于创建响应式数据的 API&#xff0c;但它们的使用场景和实现方式有一些区别。用大白话来说&#xff0c;它们的区别可以这样理解&#xff1a; 1. ref&#xff1a;适合处理简单数据 是什么&#xff1a;ref 是用来包装一个基本类…...

Maven 构建报告与文档生成

Maven 是一种强大的构建工具&#xff0c;它不仅可以帮助我们构建和管理项目&#xff0c;还提供了生成项目报告和文档的功能。通过 Maven 的插件&#xff0c;我们可以自动生成代码文档&#xff08;如 Javadoc&#xff09;&#xff0c;执行测试并生成测试报告&#xff0c;以及其他…...

复制内容到软件内部,软件内部内容不刷新

在Windows 10系统中&#xff0c;遇到复制内容后需要点击任务栏才能刷新软件内容的问题&#xff0c;可能是由于软件自身刷新机制、系统资源管理或显卡驱动等原因导致。以下是逐步解决方案 1. 检查软件设置 开启自动刷新功能&#xff1a;某些软件&#xff08;如文件管理器、IDE、…...

C# 实现完善 Excel 不规则合并单元格数据导入

目录 功能完善 Excel与DataSet的映射关系 运行环境 Excel DCOM 配置 设计实现 组件库引入 方法更新 返回值 参数设计 打开数据源并计算Sheets 拆分合并的单元格 创建DataTable 将单元格数据写入DataTable 删除虚拟列 总结 功能完善 在我的文章 《C#实现Excel…...

C#功能测试

List 内部元素为引用 src[0]为"11" List<Source> src new List<Source>(); src.Add(new Source() { Name "1", Age 1, Description "1" }); src.Add(new Source() { Name "2", Age 2, Description "2"…...

C++17并行化加速STL算法——std::execution

C17 并行化STL算法 文章目录 C17 并行化STL算法概念环境准备工具类 并行算法 - 使用并行算法 - 执行策略总览选择标准详细介绍顺序执行 seq并行化顺序执行 par并行化乱序执行 par_unseq 并行算法 - 异常处理可以不使用并行算法并行算法 - 限制并行算法有哪些原有算法17引入新算…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

模型参数、模型存储精度、参数与显存

模型参数量衡量单位 M&#xff1a;百万&#xff08;Million&#xff09; B&#xff1a;十亿&#xff08;Billion&#xff09; 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的&#xff0c;但是一个参数所表示多少字节不一定&#xff0c;需要看这个参数以什么…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例&#xff0c;也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下&#xff1a; 定义实例工厂类&#xff08;Java代码&#xff09;&#xff0c;定义实例工厂&#xff08;xml&#xff09;&#xff0c;定义调用实例工厂&#xff…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

排序算法总结(C++)

目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指&#xff1a;同样大小的样本 **&#xff08;同样大小的数据&#xff09;**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...

免费PDF转图片工具

免费PDF转图片工具 一款简单易用的PDF转图片工具&#xff0c;可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件&#xff0c;也不需要在线上传文件&#xff0c;保护您的隐私。 工具截图 主要特点 &#x1f680; 快速转换&#xff1a;本地转换&#xff0c;无需等待上…...