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

01人工智能基础入门

一、AI应用场景和发展历程

1.1行业应用

1、deepdream图像生成、yolo目标检测

2、知识图谱、画风迁移

3、语音识别、计算机视觉

4、用户画像

5、百度人工智能布局

1.2发展历程
人工智能的发展经历了 3 个阶段:
  • 1980年代是正式成形期,尚不具备影响力。
  • 1990-2010年代是蓬勃发展期,诞生了众多的理论和算法,真正走向了实用。
  • 2012年之后是深度学习期,深度学习技术诞生并急速发展,较好的解决了现阶段AI的一些重点问题,并带来了产业界的快速发展。
1.3GPU和CPU比较
1,GPU 加速计算可以将应用程序 计算密集 分的工作负载转移到 GPU ,同时仍由 CPU 运行其余程序代码 。从用户的角度来看, 应用程序的运行速度明显加快。
2,CPU 由专为顺序串行处理而优化的几个核心组成,而 GPU 则拥有一个由 数以千计 的更小、更高效的核心 (专为同时处理多重任务而设计)组成的大规模并行计算架构。
3, CPU 需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断 的处理。 这些都使得 CPU 的内部结构异常复杂。而 GPU 面对的则是类型高度统一的、相互无依赖的大规模 数据和不需要被打断的纯净的计算环境 GPU 采用了数量众多的计算单元和超长的流水线,但只有非常简单的控制逻辑并省去了Cache 。而 CPU 不仅被 Cache 占据了大量空间,而且还有有复杂的控制逻辑和诸多优化电路,相比之下计算能力只是CPU 很小的一部分。

CPU 擅长逻辑控制,串行的运算对比,通用类型数据运算不同, GPU 擅长的是大规 模并发计算算 ,这也正是密码 破解等所需要的。所以GPU除了图像处理,也越来越多的参与到计算当中来。

二、人工智能主要分支

2.1 机器学习

机器学习是从数据中自动分析获得模型,并利用模型对未知数据进行预测

机器学习是从人工智能中产生的一个重要学科分支,是实现智能化的关键

经典定义:利用经验改善系统自身的性能

随着该领域的发展,目前主要研究智能数据分析的理论和算法,并已成为智能数据分析技术的源泉之一

2.2深度学习

深度学习通过组合低层特征形成更加抽象的高层表示属性类别,以发现数据的分布式特征表示。

http://playground.tensorflow.org

增加层数:通过更抽象的概念识别物体,器官层,分子层,原子层
增加结点数:增加同一层物质的种类
 2.3机器学习vs深度学习

三、机器学习工作流程

1.获取数据 2.数据预处理 3.特征工程 4.机器学习(模型训练) 5.模型评估

四、机器学习算法分类

第一列叫标签,每一列叫特征,每一行叫样本

训练集就是指历史数据,可以理解为课堂作业,既能看到特征数据也能看到标签,通过训练集学习内在规律

测试集就是考试,只能看到特征数据,看不到标签,通过考试预测标签

4.1有监督学习

1.监督学习:有标签,监督就是指有标签,有标准答案

有监督定义:输入数据是由输入特征值和目标值所组成,即输入的训练数据 为有标签的。

  • 有监督学习1:回归问题

回归问题:给定D维输入变量x ,并且每一个输入矢量x都有对应的值y,要求对于新来的数据预测它对应的连续的目   标值t。 例如:预测房价,根据样本集拟合出一条连续曲线

  • 有监督学习2:分类问题

回归问题和分类问题的本质一样,都是针对输入做出输出预测,其区别在于输出预测的类型。 分类问题:给定一个新的模式,根据训练集推断它所 对应的类别(如:+1 ,-1 ),是一种定性输出,也叫离散变量预测,而回归问题,给定一个新的模式,根据训练集推断它所对应的输出值(实数)是多少,是一种定量输出,也叫连续变量预测。 如果预测的结果为连续的值,是回归问题; 如为离散的值,是分类问题 例如:根据肿瘤特征判断良性还是恶性,得到的是结   果是“ 良性”或者“恶性” ,是离散的;温度是连续的值,所以是回归。

总结:训练结果跟数据集质量,分布有关。俗话说,"垃圾进垃圾出"

分类问题,结果是固定的,比如良性、恶性等;回归问题是预测一个数值。、

  • 监督学习:有标签
  • 任务:分类任务和回归任务
4.2无监督学习

无监督定义:输入数据没有被标记,也没有确定的结果,即样本数据类别未知,没有标签,需要根据样本间的相似性对样本集进行聚类,以发现事物内部结构及相互关系

第一类:基于样本间相似性度量的聚类方法:设法 定出不同类别的核心或初始内核,然后依 据样本与核心之间的相似性度量将样本聚 集成不同的类别。

第二类:基于概率密度函数估计的直接方法:指 设法找到各类别在特征空间的分布参数, 再进行分类。

无监督学习是在寻找数据集中的规律性,这种规律性并不一定要达到划分数据集 的目的,也就是说不一定要“分类”。 这一点是比有监督学习方法的用途要广。譬如分析一堆数据的主分量,或分析数 据集有什么特点都可以归于非监督学习方法的范畴。

4.3半监督学习

半监督学习:训练集数据一部分有标签而其余部分无标签,即训练集同时包含有标记样 本和无标记样本。

4.4强化学习

强化学习定义:实质是make decisions 问题,即自动进行决策,并且可以做连续决策希望一段时间后获得最多的累计奖励。 主要包含四个要素 :agent ,环境状态,行动,奖励

强化学习案例1 : 小孩想要走路,但在这之前,他需要先站起来,站起来 之后还要保持平衡,接下来还要先迈出一条腿,是左腿还是右腿,迈出一步后还要迈出下一步。 小孩就是 agent ,他试图通过采取行动 (即行走)来操 纵环境 (行走的表面),并且从一个状态转变到另一个 状态 (即他走的每一步),当他完成任务的子任务(即走了几步)时,孩子得到奖励 (给巧克力吃),并且当他不能走路时,就不会给巧克力。

强化学习案例2 : 一个 autonomous agent 要学习如何打 tennis(网球)比赛,它需要考虑这些动作: serves, returns, and volleys ,这些行为会影响谁赢谁输。 执行每一个动作都是在一个激励下进行的,就是要赢得比赛。   为了实现比分最大化,它需要遵循一个策略。

强化学习案例3 : Manufacturing 一家日本公司 Fanuc(发那科) ,工厂机器人 在拿起一个物体时,会捕捉这个过程的视频,记住它每次操作的行动,  操作成功还是失败了,积累经验,下一次可以更快更准地采取行动。

强化学习与监督学习的区别:

蓝色代表强化学习,紫红色代表监督学习,纵轴代表错误率的下降趋势

4.5 总结:

4.6 扩展

批量学习和在线学习

在线学习:需要接收持续的数据流 (例如股票价格)同时对数据流的 变化做出快速或自主的反应。

如果你的计算资源有限,在线学习 系统同样也是一个很好的选择:新的数据实例一旦经过系统的学习, 就不再需要,你可以将其丢弃(除 非你想要回滚到前一个状态,再“ 重新学习”数据),这可以节省大 量的空间。 挑战:学习率,不良数据。

相关文章:

01人工智能基础入门

一、AI应用场景和发展历程 1.1行业应用 1、deepdream图像生成、yolo目标检测 2、知识图谱、画风迁移 3、语音识别、计算机视觉 4、用户画像 5、百度人工智能布局 1.2发展历程 人工智能的发展经历了 3 个阶段: 1980年代是正式成形期,尚不具备影响力。 …...

嵌入式AI的本地化部署的好处

嵌入式AI本地化处理(即边缘计算)的核心优势在于将AI算力下沉至设备端,直接处理数据而非依赖云端,这种模式在多个维度上展现出显著价值: 一、数据隐私与安全性提升 1. 敏感数据本地存储 金融、医疗等涉及隐私的行业…...

进程和内存管理

目录 一.进程的基本信息 1.1进程的定义 1.2进程的特征 1.3进程的组成 1.4线程产生的背景 1.5线程的定义 1.6进程与线程的区别 1.7进程的类别 1.8进程的优先级 1.8.1进程优先级的概念 1.8.2PRI和NI 1.9僵尸进程 1.9.1僵尸进程的定义 1.9.2僵尸进程产生的原因 1.9…...

001 vue

https://cn.vuejs.org/ 文章目录 v-bindv-modelv-on修饰符条件渲染/控制:v-if v-show列表渲染 M:即Model,模型,包括数据和一些基本操作 V:即View,视图,页面渲染结果 VM:即View-Mode…...

css动态设置div宽高,calc函数

在css中使用calc函数 calc() 是 CSS 中的一种函数,用于动态计算长度值。它允许你在 CSS 属性中进行数学运算,结合不同的单位(如 px、%、em 等),从而创建更加灵活和响应式的布局 表达式规则 运算符:支持加…...

MySQL篇(四)事务相关知识详解

MySQL篇(四)事务相关知识详解 MySQL篇(四)事务相关知识详解一、事务的特性(ACID)原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(…...

React 项目使用 pdf.js 及 Elasticpdf 教程

摘要:本文章介绍如何在 React 中使用 pdf.js 及基于 pdf.js 的批注开发包 Elasticpdf。简单 5 步可完成集成部署,包括数据的云端同步,示例代码完善且简单,文末有集成代码分享。 1. 工具库介绍与 Demo 1.1 代码包结构 ElasticP…...

性能测试之jmeter的基本使用

简介 Jmeter是Apache的开源项目,基于Java开发,主要用于进行压力测试。 优点:开源免费、支持多协议、轻量级、功能强大 官网:https://jmeter.apache.org/index.html 安装 安装步骤: 下载:进入jmeter的…...

CAD插件实现:所有文字显示到列表、缩放、编辑——CAD-c#二次开发

当图中有大量文字,需要全部显示到一个列表时并缩放到需要的文字时,可采用插件实现,效果如下: 附部分代码如下: private void BtnSelectText_Click(object sender, EventArgs e){var doc Application.DocumentManager.…...

【Git】“warning: LF will be replaced by CRLF”的解决办法

一、原因分析 不同操作系统的换行符标准不同: • Windows:使用 CRLF(\r\n)表示换行; • Linux/Mac:使用 LF(\n)表示换行 Git 检测到本地文件的换行符与仓库设置或目标平台不兼容时…...

vue2(13) 组件注册的学习笔记

文章目录 Vue2 组件注册学习笔记一、组件注册的基本概念二、全局注册三、局部注册四、组件名的命名规范五、在模块系统中注册组件六、基础组件的自动化全局注册七、总结Vue2 组件注册学习笔记 一、组件注册的基本概念 在Vue中,组件是可复用的Vue实例,具有封装的模板和逻辑。…...

【spring Cloud Netflix】OpenFeign组件

1.概述 Feign旨在使编写Java Http客户端变得更容易。前面在使用RibbonRestTemplate进行服务的远程调用 时,利用RestTemplate对Http请求的封装处理,形成了一套模板化的调用方法。但是在实际开发中,由 于对服务的依赖调用可不止一处&#xff0…...

go游戏后端开发20:房间消息推送处理

创建房间逻辑前的概念梳理及代码实现 在编写创建房间的逻辑之前,我们需要先创建几个关键概念。 第一个概念是“联盟”。联盟可以理解为一个组织,它持有多个房间。一个联盟下可能挂载多个房间,这是我们的第一个概念。 第二个概念是“管理”…...

Oracle数据库数据编程SQL<8 文本编辑器Notepad++和UltraEdit(UE)对比>

首先,用户界面方面。Notepad是开源的,界面看起来比较简洁,可能更适合喜欢轻量级工具的用户。而UltraEdit作为商业软件,界面可能更现代化,功能布局更复杂一些。不过,UltraEdit支持更多的主题和自定义选项&am…...

Linux驱动开发练习案例

1 开发目标 1.1 架构图 操作系统:基于Linux5.10.10源码和STM32MP157开发板,完成tf-a(FSBL)、u-boot(SSBL)、uImage、dtbs的裁剪; 驱动层:为每个外设配置DTS并且单独封装外设驱动模块。其中电压ADC测试,采用linux内核…...

Windows程序中计时器WM_TIMER消息的使用

本文章是对《Windows程序设计》这本书第八章计时器的总结,如果有时间,可以去看书里的讲解,如果时间不充裕,想马上知道计时器该如何使用,欢迎阅读本文,本文已经将计时器的干货整理完毕! 什么是计…...

Apache httpclient okhttp(1)

学习链接 Apache httpclient & okhttp(1) Apache httpclient & okhttp(2) httpcomponents-client github apache httpclient文档 apache httpclient文档详细使用 log4j日志官方文档 【Java基础】- HttpURLConnection…...

微信小程序—路由

关于 app.json 中的配置 app.json 主要是对整个小程序进行一个全局的配置。 pages:在这个配置项目中,就可以配置小程序里面的页面,小程序默认显示 pages 数组中的第一个页面windows:主要配置和导航栏相关的 当然,在…...

人工智能驱动的数据仓库优化:现状、挑战与未来趋势

1. 引言:数据仓库的演进与人工智能驱动优化的兴起 现代数据仓库的复杂性和规模正以前所未有的速度增长,这主要是由于数据量、种类和产生速度的急剧增加所致。传统的数据仓库技术在应对这些现代数据需求方面显得力不从心,这催生了对更先进解决…...

LVS高可用负载均衡

一、项目图 二、主机规划 主机系统安装应用网络IPclientredhat 9.5无NAT192.168.72.115/24lvs-masterredhat 9.5ipvsadm,keepalivedNAT192.168.72.116/24 VIP 192.168.72.100/32lvs-backupredhat 9.5ipvsadm,keepalivedNAT192.168.72.117/24 VIP 192.168…...

脑影像分析软件推荐 | JuSpace

目录 1. 软件界面 2.工具包功能简介 3.软件安装注意事项 参考文献: Dukart J, Holiga S, Rullmann M, Lanzenberger R, Hawkins PCT, Mehta MA, Hesse S, Barthel H, Sabri O, Jech R, Eickhoff SB. JuSpace: A tool for spatial correlation analyses of magne…...

集合框架——常用类

集合框架的理解 就是一个常用类 集合主要有三种类型【集合与集合之间可以互转】 List(列表,是接口)Set(集合,是接口)Map(键值对,是接口)Collection是以上及所有集合的根接口,其里面的子类,一部分支持集合有序元素可重复,一部分支持集合无序元素不重复 可重复和不…...

【NLP 面经 7、常见transformer面试题】

目录 1. 为何使用多头注意力机制? 2. Q和K使用不同权重矩阵的原因 3. 选择点乘而非加法的原因 4. Attention进行scaled的原因 5. 对padding做mask操作 6. 多头注意力降维原因 7. Transformer Encoder模块简介 8. 乘以embedding size的开方的意义 9. 位置编码 10. 其…...

分布式事务解决方案全解析:从经典模式到现代实践

前言 在分布式系统中,数据一致性是一个核心问题。随着微服务架构的普及,跨服务、跨数据库的操作变得越来越普遍,如何保证这些操作的原子性、一致性、隔离性和持久性(ACID)成为了一个极具挑战性的任务。本文将全面介绍…...

软件工程面试题(二十七)

1、j a v a 对象初始化顺序 1.类的初始化(initialization class & interface) 2.对象的创建(creation of new class instances) 顺序:应为类的加载肯定是第一步的,所以类的初始化在前。大体的初始化顺序是: 类初始化 -> 子类构造函数 -> 父类构造函数 -&g…...

fastGPT—nextjs—mongoose—团队管理之部门相关api接口实现

创建部门或者子部门 import type { NextApiRequest, NextApiResponse } from next; import { NextAPI } from /service/middleware/entry; import { MongoOrgModel } from fastgpt/service/support/permission/org/orgSchema;async function handler(req: NextApiRequest, res…...

C++ 数据竞态检查

-fsanitizethread 编译时,添加参数-fsanitizethread -g,可以运行态检查数据竞态问题,包括: 数据竞态死锁锁、条件变量错误使用 check_tsan 开源库 yalantinglibs有段检查编译器是否支持 fsanitize 编译参数的宏,挺…...

逛好公园的好处

逛公园和软件开发看似是两个不同的活动,但它们之间存在一些有趣的关联和相互促进的关系: 激发创造力:公园中的自然景观、多样的人群以及各种活动能为开发者带来新的灵感和创意。软件开发过程中,从公园中获得的创意可以帮助开发者设…...

C++开发工具全景指南

专业编译与调试工具深度解析 2025年4月 编译器套件 GNU Compiler Collection (GCC) GNU编译器套件是自由软件基金会开发的跨平台编译器系统,支持C、C、Objective-C、Fortran、Ada等多种编程语言。作为Linux系统的标准编译器,GCC以其强大的优化能力和…...

【网络安全】 防火墙技术

防火墙是网络安全防御的重要组成部分,它的主要任务是阻止或限制不安全的网络通信。在这篇文章中,我们将详细介绍防火墙的工作原理,类型以及如何配置和使用防火墙。我们将尽可能使用简单的语言和实例,以便于初学者理解。 一、什么…...