人工智能、机器学习与深度学习:概念解析与内在联系
人工智能、机器学习与深度学习:概念解析与内在联系
一、人工智能(Artificial Intelligence, AI)
(一)人工智能的定义
人工智能的定义随着技术发展不断演变。从广义上讲,人工智能是指通过计算机技术实现的、模拟人类智能的理论、方法、技术及应用系统。其核心目标是使机器能够执行通常需要人类智能才能完成的任务,如推理、学习、感知、语言理解、决策等。
1956年达特茅斯会议被视为人工智能学科的诞生标志,当时学者们将其定义为“让机器的行为看起来像人所表现出的智能行为一样”。随着技术进步,现代人工智能的定义更强调通过算法和数据实现智能行为,例如利用机器学习算法让机器从数据中学习规律并解决问题。
(二)人工智能的发展历程
- 孕育期(20世纪40-50年代)
图灵提出“图灵测试”,为人工智能提供了可操作的智能判定标准;麦卡洛克和皮茨提出神经网络模型,为后续深度学习奠定基础。 - 黄金年代(20世纪50-70年代初)
符号主义学派兴起,代表性成果如纽厄尔和西蒙的“逻辑理论家”程序,成功证明数学定理;同时,感知机模型诞生,开启神经网络研究热潮。 - 第一次寒冬(20世纪70年代-80年代初)
计算能力限制和理论瓶颈导致神经网络研究陷入低谷,符号主义因专家系统开发成本过高也面临挑战。 - 第二次黄金期(20世纪80年代-90年代)
专家系统在医疗、金融等领域商业化应用,如MYCIN医疗诊断系统;机器学习算法快速发展,决策树、支持向量机(SVM)等算法相继提出。 - 第二次寒冬(20世纪90年代末-21世纪初)
专家系统维护成本高、适应性差的问题凸显,人工智能研究再次遇冷。 - 爆发期(21世纪以来)
大数据和计算能力的提升推动机器学习尤其是深度学习的崛起,AlphaGo击败人类围棋冠军、自然语言处理模型GPT系列的突破等事件,使人工智能进入公众视野并广泛应用。
(三)人工智能的主要研究领域
- 计算机视觉(Computer Vision)
目标是让机器“看懂”图像和视频,涉及图像分类、目标检测、语义分割、图像生成等任务。应用场景包括安防监控、医学影像诊断、自动驾驶等。 - 自然语言处理(Natural Language Processing, NLP)
研究机器与人类语言的交互,涵盖文本分类、机器翻译、问答系统、语音识别与合成等。典型应用如智能客服、机器翻译软件、GPT等生成式模型。 - 专家系统(Expert System)
基于知识图谱和推理规则构建的系统,用于模拟领域专家解决问题,如医疗诊断专家系统、地质勘探专家系统。 - 机器人学(Robotics)
结合人工智能与机械工程,开发具有感知、规划、执行能力的机器人,包括工业机器人、服务机器人(如扫地机器人、手术机器人)、人形机器人等。 - 智能决策与优化(Intelligent Decision and Optimization)
利用算法解决复杂决策问题,如路径规划(物流配送)、博弈论应用(AlphaGo)、金融投资策略优化等。 - 语音识别与合成(Speech Recognition and Synthesis)
实现语音到文本的转换(如语音输入)和文本到语音的生成(如语音播报),应用于智能音箱、语音助手等。
(四)人工智能的技术分支
- 符号主义(Symbolicism)
基于逻辑推理和符号系统,认为智能可通过符号规则表示和操作实现,典型方法包括命题逻辑、谓词逻辑、知识图谱。 - 连接主义(Connectionism)
模拟生物神经网络结构,通过神经元之间的连接权重学习知识,深度学习属于连接主义的范畴。 - 行为主义(Behaviorism)
从控制论角度出发,强调通过感知-行动循环实现智能,代表方法如强化学习,应用于机器人控制、游戏AI等。
二、机器学习(Machine Learning, ML)
(一)机器学习的定义
机器学习是人工智能的核心分支,致力于研究如何让计算机从数据中自动学习规律,并利用这些规律进行预测或决策。其本质是通过算法对数据进行处理,提取隐含的模式和特征,从而提升系统在特定任务上的性能。
Tom Mitchell在《机器学习》一书中给出经典定义:“对于某类任务T和性能度量P,如果一个计算机程序在T上以P衡量的性能随着经验E的增加而提高,则称该程序在从经验E中学习。”其中,经验E通常指数据,任务T如分类、回归等,性能度量P如准确率、均方误差等。
(二)机器学习的核心原理
机器学习的实现依赖于三个关键要素:数据、算法和目标函数。
- 数据:是学习的基础,包括训练数据、验证数据和测试数据。数据的质量(如准确性、完整性)和数量直接影响模型性能。
- 算法:是学习的工具,负责从数据中提取特征和规律。不同算法适用于不同类型的数据和任务,如决策树适用于结构化数据分类,神经网络适用于图像和语音等非结构化数据。
- 目标函数:用于衡量模型在任务上的性能,指导算法优化参数。例如,分类任务常用交叉熵损失函数,回归任务常用均方误差损失函数。
(三)机器学习的主要类型
根据学习方式的不同,机器学习可分为以下几类:
- 监督学习(Supervised Learning)
训练数据包含输入特征和明确的标签(输出),算法通过学习输入与输出的映射关系进行预测。- 分类任务:输出为离散类别,如垃圾邮件分类、图像分类。
- 回归任务:输出为连续数值,如房价预测、股票价格预测。
典型算法:线性回归、逻辑回归、决策树、随机森林、支持向量机(SVM)。
- 无监督学习(Unsupervised Learning)
训练数据无标签,算法通过发现数据中的内在结构和模式进行聚类或降维。- 聚类分析:将相似样本分组,如客户分群、图像聚类。
- 降维:减少数据特征维度,如主成分分析(PCA)、t-SNE。
典型算法:K-means聚类、层次聚类、DBSCAN、自编码器。
- 半监督学习(Semi-supervised Learning)
结合少量有标签数据和大量无标签数据进行学习,适用于标签获取成本高的场景,如图像标注。
典型方法:自我训练(Self-Training)、协同训练(Co-Training)。 - 强化学习(Reinforcement Learning, RL)
智能体通过与环境交互,以试错的方式学习行为策略,目标是最大化长期累积奖励。
关键要素:智能体(Agent)、环境(Environment)、状态(State)、动作(Action)、奖励(Reward)。
应用场景:游戏AI(AlphaGo、AlphaZero)、机器人控制、自动驾驶。
典型算法:Q-learning、策略梯度(Policy Gradient)、深度强化学习(如DQN、PPO)。
(四)机器学习的发展趋势
- 从单一算法到集成学习
通过组合多个弱学习器提升模型性能,如随机森林、梯度提升树(GBDT、XGBoost、LightGBM)。 - 从结构化数据到非结构化数据
传统机器学习擅长处理表格型结构化数据,随着深度学习兴起,逐渐向图像、语音、文本等非结构化数据扩展。 - 从批学习到在线学习
在线学习允许模型在新数据到来时实时更新,适用于数据流场景,如推荐系统、实时监控。 - 从黑箱模型到可解释性机器学习
随着人工智能在医疗、金融等敏感领域的应用,模型可解释性需求增加,相关技术如SHAP值、LIME逐渐受到关注。
三、深度学习(Deep Learning, DL)
(一)深度学习的定义
深度学习是机器学习的子集,属于连接主义范畴,其核心是通过多层神经网络结构自动学习数据的层次化特征表示。“深度”指神经网络的层数较多(通常超过3层),能够从原始数据中提取从低级到高级的抽象特征。
例如,在图像识别中,浅层网络学习边缘、纹理等低级特征,深层网络逐步组合这些特征形成物体部件、完整物体的高级表示,从而实现精准分类。
(二)深度学习的技术演进
- 早期探索(20世纪80-90年代)
反向传播算法(Backpropagation)的提出为多层神经网络训练奠定基础,但受限于计算能力和数据量,深度神经网络(如深度信念网络DBN)应用有限。 - 卷积神经网络(CNN)的突破(2012年)
AlexNet在ImageNet图像分类竞赛中以显著优势夺冠,证明深度学习在图像领域的强大能力,推动CNN成为计算机视觉的主流算法。 - 循环神经网络(RNN)与自然语言处理(2010年代中期)
LSTM和GRU等改进的RNN结构解决长序列依赖问题,使得深度学习在语音识别、机器翻译等序列任务中超越传统方法。 - Transformer与预训练模型(2017年至今)
Vaswani等人提出Transformer架构,摒弃循环结构,基于自注意力机制实现并行计算,成为BERT、GPT等预训练模型的基础,引发自然语言处理领域的革命。
(三)深度学习的核心架构
- 卷积神经网络(CNN)
- 结构特点:包含卷积层(提取空间特征)、池化层(下采样降维)、全连接层(分类或回归)。
- 应用场景:图像分类、目标检测(如YOLO、Faster R-CNN)、图像生成(如GAN)。
- 循环神经网络(RNN)
- 结构特点:神经元之间存在循环连接,可处理序列数据,记忆历史信息。
- 改进版本:LSTM(长短期记忆网络)通过门控机制缓解梯度消失问题,GRU(门控循环单元)为LSTM的轻量级变体。
- 应用场景:语音识别、文本生成、时间序列预测。
- Transformer
- 结构特点:基于自注意力机制(Self-Attention),并行处理序列中的每个位置,解决RNN的长距离依赖和并行计算限制。
- 关键组件:多头注意力(Multi-Head Attention)、位置编码(Positional Encoding)、前馈神经网络(Feed-Forward Network)。
- 应用场景:机器翻译(如Google Translate)、文本生成(如GPT-4)、多模态任务(如图文生成)。
- 生成对抗网络(GAN)
- 结构特点:由生成器(Generator)和判别器(Discriminator)组成,通过对抗训练生成逼真样本。
- 应用场景:图像生成(如人脸合成)、图像修复、视频生成。
(四)深度学习的关键技术
- 预训练模型(Pre-trained Models)
- 原理:在大规模通用数据上预训练模型,然后在特定任务上微调(Fine-tuning),减少对小样本数据的依赖。
- 典型模型:
- 自然语言处理:BERT(双向编码)、GPT(自回归生成)、LLaMA(开源大语言模型)。
- 计算机视觉:ResNet(图像分类)、DALL·E(图文生成)。
- 迁移学习(Transfer Learning)
将在源领域学习的知识迁移到目标领域,适用于目标领域数据不足的场景,如医疗影像分析(利用自然图像预训练的CNN模型)。 - 自动机器学习(AutoML)
自动化完成模型选择、超参数调优、特征工程等流程,降低深度学习应用门槛,如Google AutoML、AutoKeras。 - 分布式训练
利用多GPU/TPU集群加速大规模模型训练,如数据并行(不同设备处理不同数据批次)、模型并行(不同设备处理模型不同层)。
四、三者的内在联系与区别
(一)层次关系:人工智能 > 机器学习 > 深度学习
- 人工智能是最大的概念范畴
涵盖所有模拟人类智能的理论和技术,包括符号主义、连接主义、行为主义等多种途径。机器学习和深度学习均属于人工智能的技术分支。 - 机器学习是人工智能的核心实现方式
通过数据驱动的算法使机器具备学习能力,是当前人工智能应用的主流方法。除机器学习外,人工智能还包括非机器学习方法,如基于规则的专家系统。 - 深度学习是机器学习的子集
专注于深层神经网络的研究,通过多层非线性变换自动提取特征,在图像、语音、自然语言等领域表现突出。
(二)技术演进的逻辑
- 从手工特征到自动特征学习
- 传统人工智能(如专家系统)依赖人工设计规则和特征,需要领域专家参与,成本高且适应性差。
- 机器学习通过算法自动学习特征与标签的映射关系,但仍需人工进行特征工程(如筛选、缩放、组合)。
- 深度学习完全摒弃手工特征,通过神经网络自动从原始数据中提取多层次特征,极大降低了对领域知识的依赖。
- 从简单模型到复杂模型
- 机器学习算法如线性回归、决策树结构简单,适用于小规模结构化数据。
- 深度学习通过深层网络结构(如数十层的ResNet、数百亿参数的GPT-4)处理复杂非线性关系,适合大规模非结构化数据。
(三)应用场景的互补性
领域 | 人工智能(广义) | 机器学习 | 深度学习 |
---|---|---|---|
结构化数据 | 专家系统(如金融风控规则) | 随机森林、XGBoost | 深度森林(Deep Forest) |
图像识别 | 基于规则的边缘检测 | SVM+手工特征(如HOG) | CNN(如ResNet、YOLO) |
自然语言处理 | 基于模板的问答系统 | 词袋模型+逻辑回归 | Transformer(如BERT、GPT) |
机器人控制 | 基于行为树的路径规划 | 强化学习(如Q-learning) | 深度强化学习(如DQN) |
(四)关键区别对比
维度 | 人工智能(AI) | 机器学习(ML) | 深度学习(DL) |
---|---|---|---|
定义范围 | 最大,涵盖所有智能模拟技术 | 人工智能的子集,数据驱动 | 机器学习的子集,深层网络 |
核心方法 | 符号逻辑、机器学习、强化学习等 | 统计学习、优化算法 | 神经网络、反向传播、注意力机制 |
特征处理 | 依赖人工规则或算法自动提取 | 依赖人工特征工程 | 自动分层提取 |
数据依赖 | 不一定依赖大量数据 | 依赖中等规模数据 | 高度依赖大规模数据 |
计算成本 | 因方法而异(如规则系统成本低) | 中低(如线性模型) | 高(需GPU/TPU加速) |
典型应用 | 智能客服、专家系统、自动驾驶 | 垃圾邮件分类、推荐系统 | 图像生成、语音识别、大语言模型 |
五、发展趋势与未来展望
(一)人工智能的发展趋势
- 通用人工智能(AGI)的探索
当前人工智能属于专用人工智能(ANI),只能在特定领域表现出色。未来研究可能结合符号主义与连接主义,构建具备人类级推理和泛化能力的通用人工智能,但技术挑战巨大。 - 多模态融合
融合文本、图像、语音、视频等多模态数据,实现更丰富的交互形式,如图文生成视频、语音驱动虚拟人。 - 边缘智能与轻量化模型
将AI模型部署到手机、物联网设备等边缘端,降低对云端计算的依赖,需开发轻量化模型(如MobileNet、TinyBERT)和联邦学习技术。 - 人工智能伦理与安全
随着AI应用普及,数据隐私(如GDPR)、算法偏见(如招聘歧视)、模型可解释性(如医疗诊断)、AI安全(如自主武器系统)等问题成为研究重点。
(二)机器学习与深度学习的协同发展
- 传统机器学习的持续优化
在小数据场景、可解释性要求高的领域(如医疗诊断),机器学习算法(如逻辑回归、随机森林)仍具有不可替代性,未来将进一步提升其鲁棒性和泛化能力。 - 深度学习与其他领域的交叉
- 神经符号学习(Neurosymbolic Learning):结合神经网络的感知能力与符号系统的推理能力,如知识图谱与深度学习结合的问答系统。
- 生物启发的深度学习:模拟大脑神经网络结构,开发更高效的脉冲神经网络(SNN),降低计算能耗。
- 自监督学习(Self-Supervised Learning)的崛起
利用大量无标签数据通过 pretext task 自动生成监督信号,减少对人工标注数据的依赖,成为继监督学习、无监督学习后的第三大学习范式,如对比学习(Contrastive Learning)在图像和文本领域的应用。
(三)三者融合的典型案例
- 自动驾驶
- 人工智能层面:整合环境感知(计算机视觉)、路径规划(智能决策)、车辆控制(机器人学)等模块,实现端到端的自动驾驶系统。
- 机器学习层面:使用深度学习(CNN感知图像、Transformer处理传感器融合数据)进行环境建模,强化学习优化驾驶策略。
- 深度学习层面:特斯拉的Autopilot利用大规模视觉数据训练神经网络,实现车道保持、自动变道等功能。
- 医疗人工智能
- 人工智能层面:构建医疗诊断专家系统,结合患者病历、影像数据、基因信息进行综合判断。
- 机器学习层面:用随机森林预测疾病风险,深度学习(如3D CNN)分析CT/MRI图像检测肿瘤。
- 深度学习层面:Google DeepMind的AlphaFold利用深度学习预测蛋白质结构,加速药物研发。
六、总结
人工智能、机器学习与深度学习是一脉相承的技术体系,体现了人类对机器智能从抽象概念到具体实现的探索历程。人工智能提供宏观目标,机器学习定义实现路径,深度学习则是当前最具突破性的技术分支。
未来,三者的融合将推动人工智能向更通用、更智能、更可靠的方向发展,同时也需关注技术伦理、社会影响等深层问题。对于研究者和从业者而言,理解三者的联系与区别,有助于在不同场景中选择合适的技术方案,把握人工智能领域的发展脉络。
相关文章:
人工智能、机器学习与深度学习:概念解析与内在联系
人工智能、机器学习与深度学习:概念解析与内在联系 一、人工智能(Artificial Intelligence, AI) (一)人工智能的定义 人工智能的定义随着技术发展不断演变。从广义上讲,人工智能是指通过计算机技术实现的…...
【Linux学习】Ubuntu对用户进行管理
目录 写在前面 【Linux学习】Ubuntu对用户进行管理一、为什么需要用户管理?二、用户管理基础操作(一)用户管理1. 用户管理命令表格2. 关键操作场景说明场景一:创建用户并配置权限场景二:修改用户属性场景三:…...
JVM 垃圾回收器
以下是对主流 JVM 垃圾回收器的详细解析,涵盖 一、Serial GC(单线程串行回收器) 二、Parallel GC(吞吐量优先回收器) 三、CMS(Concurrent Mark Sweep,低延迟回收器) 四、G1&…...
JUC入门(三)
7、Callable 1、可以有返回值 2、可以抛出异常 3、方法不同 run()/call() 代码测试 老版本的应用 package com.yw.callable;public class Old {public static void main(String[] args) {new Thread(new MyThread()).start();} }class MyThread implements Runnable{Overri…...
RV1126多线程获取SMARTP的GOP模式数据和普通GOP模式数据
通过代码的方式同时获取SMARTP模式的VENC码流数据和普通GOP模式的VENC码流数据,并进行对比画质。 一.RV1126 VI采集摄像头数据并同时编码SMARTP模式和普通GOP模式的编码码流流程 RV1126利用多线程同时获取普通GOP的VENC码流数据和SMARTP的码流数据一般如上图&#…...
MySQL事务、视图、索引、备份和恢复
1. 事务 如果不使用事务,那么如果出现了张三账户汇款成功-500元,但是李四那边的服务器出现了故障没有接收到500元,那么就会出现张三账户里有500元但是李四那边的账户还是1元的情况,转账的500元被吞了。 创建事务 2. 视图 创建视图…...
yolov8训练模型优化模型【误检】
针对 YOLOv8 模型在电动车人脸检测中出现误检行人人脸的问题,结合最新研究与实践经验,以下提供多维度优化方案及具体实施步骤: 一、数据集优化 数据清洗与标注增强 剔除干扰样本:确保训练集中所有标注仅包含骑行状态的人脸&#x…...
初识MySQL · 索引
目录 前言: 重温磁盘 认识索引 为什么这么做,怎么做 重谈page 聚簇索引VS非聚簇索引 回表查询 索引分类 前言: 前文我们主要是介绍了MySQL的一些基本操作,增删查改一类的操作都介绍了,并且因为大多数情况下&am…...
Kubernetes in action-配置和应用升级
Kubernetes的配置和应用升级 1、配置1.1 configMap1.2 secret1.3 Downward API1.4 Kubernetes API 2、服务升级2.1 升级方式2.1.1 先删除所有的旧版pod,使用新版本pod替换2.1.2 先创建新版pod,再删除旧版本pod2.1.3 滚动优化 2.2 使用deployment声明式升…...
十三、面向对象底层逻辑-Dubbo序列化Serialization接口
一、引言:分布式通信的数据桥梁 在分布式服务调用中,参数的跨网络传输需要将对象转化为二进制流,这一过程直接影响系统的性能、兼容性与安全性。Dubbo通过Serialization接口构建了可扩展的序列化体系,支持多种序列化协议的无缝切…...
5.19 打卡
DAY 30 模块和库的导入 知识点回顾: 导入官方库的三种手段导入自定义库/模块的方式导入库/模块的核心逻辑:找到根目录(python解释器的目录和终端的目录不一致) 作业:自己新建几个不同路径文件尝试下如何导入...
MathType公式如何按照(1)(2)…编号
在word中使用mathtype插入公式,发现插入的公式编号默认为(1.1),(1.2)…,但论文中常用的公式编号是(1)(2)…,分享一下如何实现(1.1)→(1)。 ①word菜单找到“MathType”,点击“插入编号”-“格式化”。 ②取消勾选“章编号”和“节…...
解决即使安装了pageoffice网页还是无法跳转、点击按钮没有反应等问题
出现的现象: 安装了pageoffice网页还是无法跳转、点击按钮没有反应 网页提示的错误: 点击按钮之前右键检查网页发现的错误: 点击无效按钮之后右键检查出现的错误: 原因: 鉴于安全性的考虑,新版浏览器不支…...
正点原子STM32新建工程
MDK 源自德国的 KEIL 公司,是 RealView MDK 的简称。 MDK5 由两个部分组成: MDK Core 和 Software Packs。 MDK Core 又分成四个部分: uVision IDE with Editor(编辑器), ARMC/C Compiler(编译…...
计算机网络 第三章:运输层(一)
运输层位于应用层和网络层之间,是分层的网络体系结构的重要部分。该层为运行在不同主机上的应用进程提供直接的通信服务。通常特别关注因特网协议,即 TCP 和 UDP 运输层协议。 讨论运输层和网络层的关析,为研究运输层第一个关键功能ÿ…...
机器学习(14)——模型调参
文章目录 一、动态调参方法论1. 调参策略选择2. 千万数据优化原则 二、模型调参策略对比1. LightGBM调参路线2. XGBoost调参路线3. 随机森林调参策略 三、代码实现示例通用数据准备(适用于所有模型)1. LightGBM调参示例2. XGBoost调参示例3. 随机森林调参…...
基于PetaLinux的Zynq PS应用自启动全攻略
一、嵌入式Linux启动管理的艺术 在工业机器人、智能摄像头、边缘计算网关等场景中,开机自启动管理是系统可靠性的第一道关卡。本文将深入讲解Zynq PS端在PetaLinux环境下实现: Systemd服务深度定制启动时序精准控制启动速度优化技巧动态服务管理创新方案二、环境搭建与工程配…...
贪心算法:多处最优服务次序、删数问题
多处最优服务次序问题 问题描述:设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti(1≤i≤n),共有s处可以提供此项服务。应如何安排n个顾客的服务次序,才能使平均等待时间达到最小?平均等待时间是n个顾客等待服务时间的总和除以n。 算法设计:对于给定的n个顾…...
使用 Flask 框架实现FTP,允许用户通过 Web 界面浏览和下载文件夹中的所有文件
Flask 文件和文件夹下载服务实现 以下是一个基于 Flask 框架的简单 Web 服务,用于开放指定文件夹(./shared_files),允许用户通过浏览器浏览和下载文件夹中的所有文件和子文件夹。ZIP 和 TAR 文件将直接下载,而文件夹将…...
【Go】从0开始学习Go
文章目录 从0开始学习Go0 与C对比1 代码框架1.1 helloworld式代码示例1.2 主体代码元素(核心三部分)1.3 其他 2 与C/C区别3 有用的小工具4 注意事项 从0开始学习Go 0 与C对比 特性CGo编译型语言需要编译为机器码直接编译为二进制可执行文件静态类型类型…...
软件设计师SQL考点分析——求三连
一、考点分值占比与趋势分析 综合知识分值统计表(75分制) 年份考题数量分值分值占比考察重点2018334%关系代数、权限控制2019222.67%SQL注入、授权语句2020445.33%投影操作、权限回收2021334%视图操作、权限传递2022222.67%数据库安全、WITH GRANT OPT…...
使用tcs34725传感器和51单片机识别颜色
使用TCS34725颜色传感器和51单片机来识别颜色是一个非常有趣的项目。TCS34725是一种常用的RGB颜色传感器,能够测量红、绿、蓝光的强度,从而实现颜色识别。 1. 硬件连接 TCS34725传感器通过IC接口与51单片机连接。以下是连接方式: SDA&…...
数据库-oracle-包-视图传参
并发下可能不准确 -- 修改包规范 CREATE OR REPLACE PACKAGE sczz.p_view_param IS function set_n(n varchar2) return varchar2; function get_n return varchar2; function set_ny(ny varchar2) return varchar2; function get_ny return varchar2; …...
深入探讨Java中的上下文传递与ThreadLocal的局限性及Scoped Values的兴起
在Java开发中,特别是在依赖框架的应用程序中,上下文数据的管理是一个常见但具有挑战性的问题。上下文数据可能包括元数据、配置信息或其他需要在代码不同部分之间共享的信息。传统的做法是通过方法参数显式传递这些上下文,但这种方法会导致代码复杂、难以维护,尤其是在大型…...
Spring boot 学习笔记2
Maven 项目管理工具:Maven 通过 pom.xml(Project Object Model)文件描述项目配置,包括依赖、构建流程、插件等,实现项目标准化管理 依赖管理:自动下载并管理项目所需的第三方库(如 Spring、MyB…...
“保证医疗器械信息来源合法 真实、安全的保障措施、情况说明及相关证明”模板
保证医疗器械信息来源合法真实、安全的保障措施、情况说明及相关证明 一、医疗器械信息来源合法、真实、安全的管理措施 目前我公司网站所展示的医疗器械是企业代理品种,是取得合法注册资格的产品,拥有合法证明文件的产品。本网站仅展示本公司行政许可…...
Feature Toggle 不再乱:如何设计一个干净、安全、可控的特性开关系统?
网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...
不锈钢保温容器行业2025数据分析报告
不锈钢保温容器市场概况 2024年全球不锈钢保温容器市场规模约为453.3亿元,预计到2031年将增长至608.3亿元,年均复合增长率(CAGR)为4.3%。这一增长主要得益于全球范围内对保温容器需求的持续增加,尤其是在户外活动、餐…...
leetcode239 滑动窗口最大值deque方式
这段文字描述的是使用单调队列(Monotonic Queue) 解决滑动窗口最大值问题的优化算法。我来简单解释一下: 核心思路 问题分析:在滑动窗口中,若存在两个下标 i < j 且 nums[i] ≤ nums[j],则 nums[i] 永远…...
腾讯云怎么在游戏云中助力
腾讯云游戏云:依托深厚游戏基因,打造高质量全方位生态平台 在竞争激烈的云计算市场中,腾讯云凭借其得天独厚的游戏生态资源和深耕多年的技术沉淀,正成为游戏行业不可忽视的重要力量。腾讯不仅是全球领先的游戏开发和发行商&#…...
深入理解pip:Python包管理的核心工具与实战指南
# 深入理解pip:Python包管理的核心工具与实战指南 在Python开发中,第三方库是提升效率的关键。而pip作为Python官方的包管理工具,承担着安装、卸载、升级和管理库的重要职责。本文将全面解析pip的核心命令,结合实例演示用法&#…...
【python】windows修改 pip 默认安装路径
在 Windows 系统 下,希望修改 pip 默认安装路径,结合你前面贴的图片和信息,一个 推荐做法(不修改 site.py)的完整教程。 目标:让 pip 安装包默认装到你指定的路径(如 D:\MyPythonLibsÿ…...
Python函数——万字详解
—— 小 峰 编 程 导 语: 从今天开始,我们将进入第二模块的学习——函数。第一模块主要是学习python基础知识,从第二模块开始就可以通过程序去解决工作中实际的问题。从今天开始,我们将进入第二模块的学习,此模块…...
es在已有历史数据的文档新增加字段操作
新增字段设置默认值 场景 在已经有大量数据的索引文档上,增加新字段 技术实现 一.更新索引映射 通过PUT请求显式定义新字段类型,确保后续写入的文档能被正确解析 PUT /文档名/_mapping {"properties": {"字段名1": {"type…...
LeetCode 35 搜索插入位置题解
LeetCode 35 搜索插入位置题解 题目描述 题目链接 给定一个排序数组和一个目标值,在数组中找到目标值并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置(需保证数组仍然有序)。要求时间复杂度为 O(log n)。…...
RabbitMQ通信模式(Simplest)Python示例
RabbitMQ通信模式-Python示例 0.RabbitMQ官网通信模式1.Simplest(简单)模式1.1 发送端1.2 接收端 0.RabbitMQ官网通信模式 1.Simplest(简单)模式 1.1 发送端 # -*- coding: utf-8 -*- """ Author: xxx date: 2025/5/19 11:30 Description: Simaple简单模…...
游戏开发实战(一):Python复刻「崩坏星穹铁道」嗷呜嗷呜事务所---源码级解析该小游戏背后的算法与设计模式【纯原创】
文章目录 奇美拉项目游戏规则奇美拉(Chimeras)档案领队成员 结果展示: 奇美拉项目 由于项目工程较大,并且我打算把我的思考过程和实现过程中踩过的坑都分享一下,因此会分3-4篇博文详细讲解本项目。本文首先介绍下游戏规则并给出奇美拉档案。…...
力扣热题100之删除链表的倒数第N个节点
题目 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 代码 方法一 将链表中的值放入列表中,然后删除倒数第n个值,再将剩下的数依次转化为链表 # Definition for singly-linked list. # class ListNode: # …...
OCframework编译Swift
建一个OC的framework: 需要对外暴露的OC文件,需要放到OC的.h文件中 framework中,OC类,调用framework中的Swift类: #import "WowAudioFocus/WowAudioFocus-Swift.h" //02 #import "{工程名}/{工程…...
【AI News | 20250519】每日AI进展
AI Repos 1、deepdrone DeepDrone是一款基于smolagents框架的无人机聊天代理,集成DroneKit实现无人机分析与操作。用户可通过自然语言聊天与无人机助手交互,实现飞行路径和传感器数据可视化、基于飞行时长的维护建议、任务规划以及真实的无人机控制&…...
分布式ID生成系统
代码地址: github mid 简介 分布式 ID 生成系统是一个高性能、可靠的 ID 生成服务,支持两种模式:Snowflake(基于时间戳的内存生成)和 Segment(基于 MySQL 的号段分配)。系统采用双 Buffer 策略优化性能,集成 Prometheus 监控和 Zap 结构化日志,确保高可用性和可观测性…...
MAC常用操作整理
音量方法: 电脑键盘的右上角就有静音和不静音的按钮,还有调节音量的按钮,调节屏幕亮度的按钮 切换输入法方法: 1.大写按键,2.function按键(fn), 3.control 空格键, 选择上一个输入法,4.controloption空格…...
【Canvas与图标】圆角方块蓝星CSS图标
【成图】 120*120的png图标 大小图: 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>圆角方块蓝星CSS Draft1</…...
易境通散货拼柜系统:提高货代企业货物配载效率
在国际物流代理运输领域,货物配载是整个供应链的核心环节,其优化对于提升整个供应链的效率至关重要。传统的配载管理方式往往依赖人工操作,不仅效率低下,还容易出现错误。面对多订单、多货主、多目的地的复杂场景,传统…...
[Spring Boot]整合Java Mail实现Outlook发送邮件
日常开发过程中,我们经常需要使用到邮件发送任务,比方说验证码的发送、日常信息的通知等。日常比较常用的邮件发送方包括:163、QQ等,本文主要讲解Outlook SMTP的开启方式、OutLook STARTTTL的配置、如何通过JavaMail来实现电子邮件的发送等。 Outlook作为微软提供的企业电子…...
【盈达科技】GEO优化实战策略
提升内容在生成式引擎中的可见性:实战策略 随着生成式引擎(Generative Engines, GEs)的兴起,内容创作者面临着新的挑战和机遇。这些引擎通过整合和总结多源信息来提供精准且个性化的回答,正在迅速取代传统搜索引擎。为…...
HTTP 协议基础
本篇文章会从如下角度介绍 HTTP 协议: 原理与工作机制请求方法与状态码Header 与 Body 1、原理与工作机制 1.1 HTTP 是什么 HyperText Transfer Protocol,超文本传输协议,"超"表示扩展而非超级,即可以链接到其他文本…...
ros运行包,Ubuntu20.04成功运行LIO-SAM
zz:~/lio_sam_ws$ source devel/setup.bash zz:~/lio_sam_ws$ roslaunch lio_sam run.launch 创建包链接: 链接1:Ubuntu20.04成功运行LIO-SAM_ubuntu20.04运行liosam-CSDN博客 链接2:ubuntu 20.04 ROS 编译和运行 lio-sam,并且导出PCD文件…...
Linux《自主Shell命令行解释器》
在上一篇的进程控制当中我们已经了解了进程退出、进程等待以及进程替换的相关概念,那么在了解了这些的概念之后接下来在本篇当中我们就可以结合之前我们学习的知识来实现一个自主的Shell命令行解释器,通过Shell的实现能让我们进一步的理解操作系统当中的…...
设置IDEA打开新项目使用JDK17
由于最近在学习Spring-AI,所以JDK8已经不适用了,但是每次创建新项目都还是JDK8,每次调来调去很麻烦 把Projects和SDKs都调整为JDK17即可 同时,Maven也要做些更改,主要是添加build标签 <build><plugins>&…...