kkkkkkkkkkkk564

news2024/11/28 23:43:00

在这里插入图片描述

欢迎关注博主 Mindtechnist 或加入【Linux C/C++/Python社区】一起探讨和分享Linux C/C++/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。


人工智能与机器学习

    • 📝人工智能相关概念
      • ☞什么是人工智能、机器学习、深度学习
      • ☞人工智能发展必备的三要素
      • ☞人工智能主要分支
    • 📝机器学习工作流程
      • ☞数据集
      • ☞数据基本处理
      • ☞特征工程
      • ☞机器学习
        • o 监督学习
        • o 无监督学习
        • o 半监督学习
        • o 强化学习
      • ☞模型评估
        • o 分类模型评估
        • o 回归模型评估
        • o拟合


专栏:《机器学习》



📝人工智能相关概念

☞什么是人工智能、机器学习、深度学习

人工智能这个概念诞生于1956年的达特茅斯会议,因此,1956年也是人工智能元年。在《Python深度学习》一书中,人工智能简洁定义为:努力将通常由人类完成的智力任务自动化。

  • 机器学习是人工智能的一个实现途径;
  • 深度学习是机器学习的一个方法发展而来;

三者的关系如下图所示:在这里插入图片描述
在早期计算机专家认为,只要可以在程序中写出足够多的明确规则来处理知识,就可以实现人工智能,这种方法被称为符号主义人工智能(symbolic AI)。
后来在图灵关于“计算机除了执行我们的命令外,能否自我学习执行特定任务的方法”这一问题之后,又引出了一种新的编程范式。在符号主义人工智能范式中,人们输入规则(程序)以及根据这些规则要处理的数据,系统输出问题的答案。而在机器学习中,人们输入的是数据和从这些数据中预期得到的答案,系统输出的是规则,这些规则可以应用于新的数据并由计算机自动生成答案。这就是机器学习(machine learning),机器学习系统是训练出来的,而不是直接通过程序明确写出来的,所以,机器学习与数理统计密切相关。
深度学习(deep learning)是机器学习的一个分支领域,深度学习强调从连续的层中进行学习,所谓深度是指一系列连续的表示层,数据模型包含的层数称为模型的深度,这些表示层都是通过数据训练自动学习的,通常它们是由神经网络(neural network)模型中学习得到的。我们可以这么理解,深度学习网络中的每一层都像一个过滤器,原始信息经过每一层的过滤器后纯度越来越高。神经网络中每层对输入数据所做的操作保存在当前层的权重(也称为该层的参数)中,权重的本质是一串数字,每一层实现的变换都由权重来参数化。于是,学习的意思就是指为神经网络的所有层找到一组权重值,使得神经网络能够将每个示例输入与其目标一一对应。神经网络的输出值与预期值之间的差距,由损失函数(也叫目标函数)来评价,损失函数的输入为预测值与真实目标值,然后计算出一个距离值,以此来衡量网络在这个示例上的效果好坏。深度学习则是利用这个距离值作为反馈信号来对权重值进行微调,以降低当前示例的损失值。微调的任务由优化器完成,该过程实现了反向传播算法。一开始给神经网络的权重赋予随机值,随着网络处理的示例越来越多,权重值向着正确方向一步步的调整,损失值也将逐渐降低,这个过程就是循环训练的过程。重复这个循环过程来得到使损失函数最小的权重值,而具有最小损失的网络,其输出和目标值尽可能地接近,这就是训练好的网络。(参考《Python深度学习》一书)
在这里插入图片描述

☞人工智能发展必备的三要素

  • 数据
  • 算法
  • 计算力
    • CPU:中央处理器
    • GPU:图形处理器
    • TPU:谷歌张量处理器
    • NPU:神经网络处理器

我们一般用到的是CPU和GPU,二者的区别在于:

  • CPU主要适合I\O密集型的任务
  • GPU主要适合计算密集型任务

对于CPU和GPU并没有谁好谁坏之分,它们的应用场景不同,如果你需要进行大量的计算一般使用GPU,GPU就是为计算而生的;如果你需要频繁的进行IO操作,比如频繁读写文件等等,就需要使用CPU,使用GPU反而不好。
适合在GPU上运行的程序一般具有如下特征:

  • 计算密集型的程序。
    所谓计算密集型(Compute-intensive)的程序,就是其大部分运行时间花在了寄存器运算上,寄存器的速度和处理器的速度相当,从寄存器读写数据几乎没有延时。可以做一下对比,读内存的延迟大概是几百个时钟周期;读硬盘的速度就不说了,即便是SSD, 也实在是太慢了。
  • 易于并行的程序。
    GPU其实是一种SIMD(Single Instruction Multiple Data)架构, 他有成百上千个核,每一个核在同一时间最好能做同样的事情。

☞人工智能主要分支

人工智能的主要技术领域分为计算机视觉CV、自然语言处理NLP(包含文本挖掘/分类、机器翻译和语音识别)、机器人三大领域。

  • 计算机视觉
    计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。物体检测和人脸识别是其比较成功的研究领域。
  • 语音识别
    语音识别是指识别语音(说出的语言)并将其转换成对应文本的技术,文本转语音/TTS也是这一领域内一个类似的研究主题。语音识别现在已经应用很久了,但是类似于鸡尾酒效应、声纹识别等问题还亟待解决。
  • 文本挖掘/分类
    这里的文本挖掘主要是指文本分类,该技术可用于理解、组织和分类结构化或非结构化文本文档。其涵盖的主要任务有句法分析、情绪分析和垃圾信息检测。
  • 机器翻译
    机器翻译(MT)是利用机器自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)。
  • 机器人
    机器人学(Robotics)研究的是机器人的设计、制造、运作和应用,以及控制它们的计算机系统、传感反馈和信息处理。机器人可以分成两大类:固定机器人和移动机器人。固定机器人通常被用于工业生产(比如用于装配线)。常见的移动机器人应用有货运机器人、空中机器人和自动载具。机器人需要不同部件和系统的协作才能实现最优的作业。其中在硬件上包含传感器、反应器和控制器;另外还有能够实现感知能力的软件,比如定位、地图测绘和目标识别。

📝机器学习工作流程

我们已经知道,机器学习就是从数据中自动分析模型,并利用模型对位置数据进行预测。
机器学习工作流程总结

  1. 获取数据。
  2. 数据基本处理。
  3. 特征工程。
  4. 机器学习(模型训练)。
  5. 模型评估,达到要求则上线服务,否则重复上面的过程。

☞数据集

在这里插入图片描述
在这里插入图片描述
在数据集中:

  • 一行数据我们称为一个样本。比如在电影图表中,序号1-9,每一行都是一个样本。
  • 一列数据我们成为一个特征。比如在电影图表中,搞笑镜头/拥抱镜头/打斗镜头,每一列都是一个特征。
  • 有些数据有目标值(标签值),有些数据没有目标值。比如在电影图表中,电影类型就是这个数据集的目标值,而在下面的人物图表中就没有目标值。

数据类型构成:

  • 特征值+目标值(目标值是连续的和离散的)。比如上面的电影图标,在电影图表中,目标值即电影类型有喜剧、动作、爱情,每个类型都是一个离散的点,此时称目标值是离散的;如果目标值是房价,房价的数值可以是连续的,从1万-10万每平方米,这就称目标值是连续的。
  • 只有特征值,没有目标值。比如上面的人物图表。

数据分割:

  • 机器学习一般的数据集会划分为两个部分:
    • 训练数据:用于训练,构建模型。
    • 测试数据:在模型检验时使用,用于评估模型是否有效。
  • 常用的划分比例:
    • 训练集:70% 80% 75%
    • 测试集:30% 20% 25%

☞数据基本处理

处理数据集中的缺失值和异常值。

☞特征工程

特征工程(Feature Engineering)是指使用专业背景知识和技巧去处理数据,使得特征能够在机器学习算法上发挥更好的作用,特征工程直接影响着机器学习的效果。数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。
特征工程主要包含三个内容:

  • 特征提取
    将数据(比如文本或图像)转换成可用于机器学习的数字特征(比如二进制数据)。
  • 特征预处理
    通过一系列函数变换,将特征数据转换成更适合算法模型的特征数据的过程。
  • 特征降维
    在某些特定条件下,降低随机变量(特征)的个数,得到一组不相关主变量的过程。比如将三维立体的地球转换为二维的地图。

☞机器学习

根据数据集的组成,可以把机器学习算法分为监督学习、无监督学习、半监督学习和强化学习几类。

o 监督学习

监督学习是指输入数据是由输入特征值和目标值所组成的,在监督学习中,根据函数的输出不同可以分为两类:

  • 函数输出连续的值,称为回归;
  • 函数输出有限个离散值,称为分类;

回归问题
比如说房价预测,我们根据数据样本集可以拟合出一条连续曲线,这就是回归问题
在这里插入图片描述
分类问题
比如说我们判断一个形状是矩形还是圆形
在这里插入图片描述
监督学习的方法及特点
在这里插入图片描述

o 无监督学习

无监督学习是指,输入数据是由输入特征值组成,没有目标值。输入数据没有被标记,也没有确定的结果,样本数据类别未知,需要根据样本间的相似性对样本集进行类别划分。比如下图对人物进行分类。
在这里插入图片描述
无监督学习方法及特点
在这里插入图片描述
监督学习和无监督学习对比如下
在这里插入图片描述

o 半监督学习

半监督学习是指,训练集同时包含有样本数据和未标记样本数据。

o 强化学习

强化学习是指智能系统在与环境的连续交互中学习最佳行为策略的机器学习问题。强化学习主要包含五个元素:agent, action, reward, environment, observation。强化学习的目标就是获得累计最多的奖励。
在这里插入图片描述

☞模型评估

模型评估是模型开发过程不可或缺的一部分。它有助于发现表达数据的最佳模型和所选模型将来工作的性能如何。按照数据集的目标值不同,可以把模型评估分为分类模型评估和回归模型评估。

o 分类模型评估

比如前面判断图形是圆形还是矩形(离散的)
在这里插入图片描述
其评价指标包括:准确率、精确率、召回率、F1-score、AUC指标等。

o 回归模型评估

比如前面的房价预测(连续的)
在这里插入图片描述
评价指标包括:均方根误差(Root Mean Squared Error,RMSE)、相对平方误差(Relative Squared Error,RSE)、平均绝对误差(Mean Absolute Error,MAE)、相对绝对误差(Relative Absolute Error,RAE)

o拟合

模型评估是用来评价训练好的模型的表现效果的,从表现效果来看,大致可以分为两类:过拟合和欠拟合。

  • 欠拟合(under-fitting):模型学习太过粗糙,连训练集中的样本数据特征关系都没有学出来。比如说,识别猫科动物,机器学习学到的特征包括四条腿、会撒娇,实际上狗也有四条腿,也会撒娇,这就导致机器可能把狗也误认为猫科动物。
  • 过拟合(over-fitting):所建的机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在测试数据集中表现不佳。比如说,机器学习时使用的都是黄色的老虎、橘猫、黄色的狮子,这时候机器学习到的特征就包含了一个颜色特征:黄色。但是白色的老虎或者黑猫可能被机器识别为非猫科动物。

在这里插入图片描述
在这里插入图片描述


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

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

相关文章

【LeetCode:LCR 077. 排序链表 + 链表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

发表博客之:gemm/threadblock/threadblock_swizzle.h 文件夹讲解,cutlass深入讲解

文章目录 [发表博客之:gemm/threadblock/threadblock_swizzle.h 文件夹讲解,cutlass深入讲解](https://cyj666.blog.csdn.net/article/details/138514145)先来看一下最简单的struct GemmIdentityThreadblockSwizzle结构体 发表博客之:gemm/th…

STM32G030C8T6:EEPROM读写实验(I2C通信)

本专栏记录STM32开发各个功能的详细过程,方便自己后续查看,当然也供正在入门STM32单片机的兄弟们参考; 本小节的目标是,系统主频64 MHZ,采用高速外部晶振,实现PB11,PB10 引脚模拟I2C 时序,对M24C08 的EEPRO…

就业班 第三阶段(zabbix) 2401--5.9 day1 普通集zabbix 5.0部署 nginx部署+agent部署

文章目录 环境一、zabbix 5.0 部署1、安装yum源2、安装相关软件3、数据库安装和配置mariaDB数据库mysql57数据库 安装mysql万能卸载mysql代码:启动mysql并初始化4、数据表导入5、修改配置,启动服务6、配置 web GUI7、浏览器访问注意数据加密的选项不要勾…

基于Springboot的滴答拍摄影

基于SpringbootVue的滴答拍摄影设计与实现 开发语言:Java数据库:MySQL技术:SpringbootMybatis工具:IDEA、Maven、Navicat 系统展示 用户登录 首页 摄影作品 摄影服务 摄影论坛 后台登录 后台首页 用户管理 摄影师管理 摄影作…

谷歌继续将生成式人工智能融入网络安全

谷歌正在将多个威胁情报流与 Gemini 生成人工智能模型相结合,以创建新的云服务。 Google 威胁情报服务旨在帮助安全团队快速准确地整理大量数据,以便更好地保护组织免受网络攻击。 本周在旧金山举行的 RSA 会议上推出的 Google 威胁情报服务吸收了 Mand…

旅游组团奖励标准,申报条件!利川市旅游组团奖励办法

利川市旅游组团奖励有哪些?关于利川市旅游组团奖励标准,申报条件整理如下: 第一条根据《湖北省人民政府办公厅印发关于更好服务市场主体推动经济稳健发展若干政策措施的通知》(鄂政办发〔2022〕54号)、《恩施州人民政府…

力扣2105---给植物浇水II(Java、模拟、双指针)

题目描述: Alice 和 Bob 打算给花园里的 n 株植物浇水。植物排成一行,从左到右进行标记,编号从 0 到 n - 1 。其中,第 i 株植物的位置是 x i 。 每一株植物都需要浇特定量的水。Alice 和 Bob 每人有一个水罐,最初是…

Centos固定静态ip地址

这里我用的是Vmware虚拟机搭建的三台机器 进入 cd /etc/sysconfig/network-scripts然后使用 ip addr命令,查看自己虚拟机的以太网地址。 我这里是ens33 上面的第一个选项是本地环回地址,不用管它 然后查看刚刚进入的network-scripts目录下的文件 找到…

【机器学习】AI时代的核心驱动力

机器学习:AI时代的核心驱动力 一、引言二、机器学习的基本原理与应用三、机器学习算法概览四、代码实例:线性回归的Python实现 一、引言 在数字化浪潮席卷全球的今天,人工智能(AI)已经不再是科幻小说中的遥远概念&…

106短信平台疑难解答:为何手机正常却收不到短信?

当您使用群发短信平台发送消息时,有时尽管系统提示发送成功,但手机却未能收到短信。这背后可能隐藏着一些不为人知的原因。 首先,我们要明确,在正常情况下,只要手机状态正常,都应该能够接收到短信。然而&am…

图表控件LightningChart .NET中文教程 - 创建3D网格模型实时着色应用

LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学…

【论文泛读|附源码】如何进行动力学重构? 神经网络自动编码器结合SINDy发现数据背后蕴含的方程

这一篇文章叫做 数据驱动的坐标发现与方程发现算法。 想回答的问题很简单,“如何根据数据写方程”。 想想牛顿的处境,如何根据各种不同物体下落的数据,写出万有引力的数学公式的。这篇文章就是来做这件事的。当然,这篇论文并没有…

远程连接阿里云ECS

说明:ECS(阿里云服务器)可选择的系统镜像如下: 本文介绍基于Windows系统,对CentOS、Ubuntu、Windows这三个操作系统的连接方式,以及连接工具Windterm的使用。 CentOS & Windterm CentOS是我使用时间最…

df 中的 NoneType、空和 None

哈喽,大家好,我是木头左! 目录 简介什么是 NoneType?什么是空(Empty)?什么是 None?Python 中如何判断 NoneType?Pandas DataFrame 中的 NoneType、空和 None实操&#x…

《红警OL》更换新东家,中国儒意收购有爱互娱全部股权

易采游戏网5月10日消息,近日港股上市公司中国儒意发布公告,宣布将以2.59亿人民币全资收购北京有爱互娱科技有限公司。此次收购的卖方为持股94.1047%的北京朝夕光年信息技术有限公司和持股5.8953%的北京游逸科技有限公司。这一消息在游戏行业引起了广泛关…

Github 2024-05-10 Java开源项目日报Top10

根据Github Trendings的统计,今日(2024-05-10统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目10C++项目2JavaGuide - Java 程序员学习和面试指南 创建周期:2118 天开发语言:Java协议类型:Apache License 2.0Star数量:140773 个…

Vue自定义封装音频播放组件(带拖拽进度条)

Vue自定义封装音频播放组件(带拖拽进度条) 描述 该款自定义组件可作为音频、视频播放的进度条,用于控制音频、视频的播放进度、暂停开始、拖拽进度条拓展性极高。 实现效果 具体效果可以根据自定义内容进行位置调整 项目需求 有播放暂停…

element ui的确认提示框文字样式修改

修改确认提示框的默认按钮样式,使用message属性修改: 例: js代码: this.$msgbox({title: 确定要删除吗?,message: this.$createElement(p, null, [this.$createElement(span, { style: color: red }, 该素材一旦删除&#xff0…

Ubuntu20.04右键打不开终端

今天用virtualbox安装了ubuntu20.04 问题:右键打开终端,怎么也打开不了! 点了也没反应,或者鼠标转小圈圈,然后也没有反应… 解决方法: 1、Ctrl Alt F6 先切换到终端访问界面 mac电脑 Ctrl Alt F6 …