机器学习决策树原理详解
一、引言
在当今蓬勃发展的人工智能与大数据领域,大模型正以前所未有的影响力改变着众多行业的格局。而决策树作为机器学习算法家族中的经典成员,以其简洁直观的特点和广泛的适用性,不仅能独立解决诸多实际问题,更是诸多先进大模型构建的重要基石。深入理解决策树的原理,犹如掌握了开启机器学习大门的一把关键钥匙,对于后续进阶学习和实践应用意义重大。
二、决策树的基本概念
决策树本质上是一种基于树形结构的预测模型,它模拟了人类做决策的过程,通过对输入数据的一系列特征条件进行层层判断,最终得出相应的决策结果。形象地说,它就好比是一个精心绘制的流程图,从根节点出发,沿着不同分支,依据不同的特征取值情况不断进行筛选,直至抵达叶子节点,而叶子节点所代表的便是分类任务中的具体类别或者回归任务中的预测数值。
例如,考虑一个简单的判断动物种类的场景,我们可以依据动物的一些外观特征来构建决策树。假如有特征 “是否有羽毛”“是否会飞”“是否有四条腿” 等,从根节点开始,如果动物 “有羽毛”,就沿着对应的分支继续判断 “是否会飞” 等特征,经过这样一系列的判断后,最终确定动物属于鸟类、哺乳动物或是爬行动物等具体类别。
三、决策树的构建过程
(一)特征选择
特征选择是构建决策树的核心环节,其目的是确定在每个节点上依据哪个特征来对数据集进行划分,以便让决策树能够高效、准确地进行分类或回归。常用的特征选择标准有信息增益、信息增益率以及基尼指数等,下面详细介绍它们的计算方法和应用场景。
以判断水果是苹果还是橙子为例,假设现在有另一个特征 “颜色”,其取值可能为 “红色”“橙色”“黄色”。如果 “颜色” 为 “红色” 的子集里有 50 个苹果和 10 个橙子,“颜色” 为 “橙色” 的子集里有 10 个苹果和 30 个橙子,“颜色” 为 “黄色” 的子集里有 0 个苹果和 0 个橙子。分别计算各子集的熵以及根据上述公式计算基于 “颜色” 特征的信息增益,选择信息增益最大的特征作为当前节点的划分依据。
在使用基尼指数进行特征选择时,会计算每个特征划分后子集的基尼指数,选择使划分后基尼指数最小的特征作为节点划分依据,这样可以使得划分后的数据集更加 “纯净”,即类别更加单一化。
(二)决策树生成
在确定了特征选择的标准后,就可以开始构建决策树了,具体步骤如下:
1、对于根节点,计算所有可用特征的相应指标(如信息增益、信息增益率或基尼指数),然后依据所选用的特征选择标准,选出最优的特征进行节点划分,将整个数据集按照该特征的不同取值分成若干个子集。例如,在判断水果种类的案例中,如果以 “颜色” 作为根节点的划分特征,且 “颜色” 有 “红色”“橙色”“黄色” 三种取值,那么数据集就会被相应地划分为三个子集。
2、针对每个划分出来的子集,重复上述步骤,即再次计算各子集内可用特征的指标,选择最优特征继续划分,只要子集内的样本不满足预先设定的停止条件(下面会详细介绍停止条件),就持续构建子树。
3、当某个子集内的所有样本都属于同一类别(分类任务),或者在回归任务中满足一定的误差要求等停止条件时,该子集就被标记为叶子节点,不再继续进行划分,至此,一棵决策树就逐步生成了。
(三)停止条件
为了防止决策树过度生长,避免出现过拟合问题,需要设置合理的停止条件来终止决策树的构建过程,常见的停止条件如下:
样本数量限制:当节点中的样本个数小于某个设定的阈值时,例如规定一个节点内的样本数不能少于 5 个。如果继续划分,由于样本过少,很可能导致划分后的子集缺乏代表性,无法准确学习到有效的分类或回归规律,所以此时将该节点标记为叶子节点。
类别纯度要求:在分类任务中,若节点中的样本类别纯度已经足够高,比如通过熵、基尼指数等指标衡量,发现样本几乎都属于同一类别了(例如基尼指数小于某个极小值,如 0.05),就意味着该节点已经具有很高的确定性,无需再进行划分,可将其作为叶子节点处理。
树的深度限制:预先设定一个最大深度值,比如限定决策树的深度不能超过 10 层。因为随着树深度的不断增加,模型对训练数据的拟合会越来越精细,但也更容易记住训练数据中的噪声和细节,从而导致在新的测试数据上泛化能力变差,出现过拟合现象,所以限制树的深度有助于保持模型的泛化性能。
四、决策树的剪枝策略
决策树在构建过程中由于不断地对数据进行细分,很容易出现过拟合问题,也就是对训练数据的拟合效果非常好,但在面对未曾见过的新数据时,预测准确性却大打折扣。为了应对这一问题,需要对生成的决策树进行剪枝操作,常见的剪枝策略有预剪枝和后剪枝两种。
(一)预剪枝
预剪枝是在决策树构建的过程中就提前进行剪枝操作,即在节点划分之前,根据当前节点的一些情况以及预先设定的停止条件等,判断是否需要继续划分该节点来生长树。
例如,在构建判断水果种类的决策树时,按照正常的构建流程,可能会根据 “形状” 特征对某个节点进一步划分。但如果采用预剪枝策略,在划分前发现当前节点的样本数量已经很少了(比如小于设定的阈值 5 个),或者通过验证集验证发现继续划分该节点后在验证集上的准确率并没有提升,反而可能下降了,那么就决定不再对该节点进行划分,直接将其标记为叶子节点。
预剪枝的优点在于能够显著减少后续计算量和训练时间,并且在一定程度上有效避免了过拟合现象的发生。然而,它也存在一定的局限性,由于过早地停止了树的生长,可能会导致模型对数据的学习不够充分,出现欠拟合情况,使得模型的泛化能力无法达到最优状态。
(二)后剪枝
后剪枝则是在决策树完全按照正常流程生长完毕之后,再从叶子节点开始,自下而上地对树进行剪枝操作。它通过比较剪枝前后模型在验证集上的性能表现(如准确率、误差等指标)来决定是否要将某个子树替换为一个叶子节点。
比如,对于已经生成的一棵判断水果种类的完整决策树,从最底层的叶子节点开始,考虑将某个叶子节点及其对应的子树替换为一个单一的叶子节点,然后在验证集上对比剪枝前后的准确率。如果发现剪枝后的准确率没有明显下降,甚至还有所提升,那就说明这个子树是可以被剪掉的,通过这样逐步向上的操作,对整棵树进行优化。
后剪枝的优势在于通常能够获得更好的泛化性能,使决策树在新数据上有更稳定、准确的表现。不过,其缺点是计算成本相对较高,毕竟需要先构建出完整的决策树,再花费额外的计算资源去评估和执行剪枝操作。
五、决策树的优缺点
(一)优点
直观可解释性强:决策树模型呈现出清晰的树形结构,其决策过程一目了然,很容易理解和向他人解释。例如在医疗诊断领域,医生可以通过查看决策树了解模型是基于哪些症状特征来判断患者是否患有某种疾病的,这对于模型的可信度和实际应用推广非常重要。
数据适应性广:它能够处理离散型和连续型的数据,不需要对数据进行过于复杂的预处理就能直接应用于模型构建。比如在分析客户购买行为时,客户的年龄(连续型数据)、性别(离散型数据)等不同类型的数据都可以作为特征纳入决策树模型中进行分析。
对异常值和缺失值相对不敏感:相较于一些其他机器学习算法,决策树在数据存在一定的异常值或者部分特征值缺失的情况下,依然能够正常进行训练和预测。例如在分析电商用户的购买数据时,偶尔出现的个别异常购买金额或者部分用户某些信息未填写完整等情况,并不会对决策树的构建和使用造成太大的阻碍。
(二)缺点
易出现过拟合:决策树在构建过程中,如果不加以适当控制,很容易生长得过于复杂,对训练数据过度拟合,导致在新的测试数据上表现不佳。例如在预测股票价格走势时,如果决策树过于追求对历史数据的精确拟合,那么在面对未来新的市场情况时,就很难做出准确的预测。
对类别不平衡数据处理欠佳:当数据集中不同类别样本数量相差悬殊时(如正类样本占比极少,负类样本占比极大),决策树可能会偏向多数类,使得对少数类的预测效果较差。比如在检测网络诈骗行为的场景中,如果正常交易数据远远多于诈骗交易数据,决策树可能会更多地将样本判断为正常交易,而忽略了对诈骗交易的准确识别。
预测精度相对有限:一般情况下,相较于一些复杂的集成模型(如随机森林、梯度提升树等),单棵决策树的预测精度会稍低一些。不过,决策树常常作为这些集成模型的基础组成部分,通过集成多个决策树的方式来提升整体的预测性能。
六、总结
决策树作为一种经典且极具实用价值的机器学习算法,其原理涵盖了从特征选择、树的构建到剪枝等多个方面,每个环节都紧密相连,共同影响着模型的性能和表现。虽然它存在一定的局限性,但通过合理运用其优点,并结合实际案例进行针对性的优化,能够在众多领域有效地解决分类和回归等实际问题,同时也为后续学习和应用更复杂的大模型提供了重要的思路和基础支撑。希望通过本文全面且详细的介绍,读者能对决策树原理及应用有更深入透彻的理解,从而在自己的技术实践中更好地运用这一算法。
相关文章:
机器学习决策树原理详解
一、引言 在当今蓬勃发展的人工智能与大数据领域,大模型正以前所未有的影响力改变着众多行业的格局。而决策树作为机器学习算法家族中的经典成员,以其简洁直观的特点和广泛的适用性,不仅能独立解决诸多实际问题,更是诸多先进大模…...
深入探索JavaScript循环语句:从基础到高级应用
深入探索JavaScript循环语句:从基础到高级应用 在前端开发中,JavaScript 的循环语句是构建动态和交互式网页的关键工具。本文将全面介绍 JavaScript 中的几种主要循环语句,包括 for、while、do...while 以及 for...in 和 for...of࿰…...
从0开始深度学习(35)——YOLO V5原理详解
以YOLO V5s为例,介绍YOLO V5的网络结构,以及其中具体的功能模块 1 YOLO V5的整体网络结构 YOLO V5网络结构分为四个部分: 输入端: 输入端负责对输入图像进行预处理,包括数据增强、锚框计算等。骨干网络(Ba…...
高级数据库模式设计与性能优化
数据库模式设计不仅仅是创建表和字段那么简单,还需要考虑数据的一致性、性能优化、安全性和可扩展性等多个方面。本文将深入探讨数据库模式设计的高级技巧,并提供一个实际的例子来展示如何在项目中应用这些技巧。 1. 数据库模式设计的高级技巧 1.1 多对…...
【开源免费】基于SpringBoot+Vue.JS图书进销存管理系统(JAVA毕业设计)
博主说明:本文项目编号 T 082 ,文末自助获取源码 \color{red}{T082,文末自助获取源码} T082,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…...
监控易助力扩容1000个点位
铁路交通作为城市发展的重要动脉,其IT系统的稳定运行对于保障铁路运输的安全与高效至关重要。近期,四川某铁路用户为了进一步提升IT基础资源的监控和管理水平,决定对现有的运维体系进行扩容升级,引入了监控易一体化运维软件&#…...
克服大规模语言模型限制,构建新的应用方法——LangChain
大模型 大模型的出现和落地开启了人工智能(AI)新一轮的信息技术革命,改变了人们的生 活方式、工作方式和思维方式。大模型的落地需要数据、算力和算法三大要素。经过几 年发展,大模型的数据集(包括多模态数据集)制作已经形成了规约,Meta、Go…...
MacOS 下 pico/pico2 学习笔记
1.安装开发工具 cmake brew install cmakeopenocd brew install openocdarm-none-eabi-gcc 用 brew 安装的版本会出现如下错误: arm-none-eabi-gcc: fatal error: cannot read spec file nosys.specs: No such file or directory用 arm 官方的版本没有问题。 cd …...
Leetcode 每日一题 1.两数之和
目录 问题描述 示例 示例 1 示例 2 示例 3 提示 解决方案 算法思路 过题图片 代码实现 复杂度分析 注意事项 题目链接 结论 问题描述 给定一个整数数组 nums 和一个目标值 target,请你找出数组中和为目标值的那两个整数,并返回它们的数组下…...
柯桥职场商务英语生活英语口语培训外贸纺织口语学习
"等一下"该怎么说? 大家应该都知道,wait a moment是一个祈使句,祈使句就难免带有命令的口吻,还有点不耐烦。 如果你把“等一下”说成wait a moment,外国人多半认为你是个傲慢无礼的人。毕竟在他们看来wait a…...
ElasticSearch如何做性能优化?
大家好,我是锋哥。今天分享关于【ElasticSearch如何做性能优化?】面试题。希望对大家有帮助; ElasticSearch如何做性能优化? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在 Elasticsearch 中,性能优化是…...
深度学习常用损失函数介绍
均方差损失(Mean Square Error,MSE) 均方误差损失又称为二次损失、L2损失,常用于回归预测任务中。均方误差函数通过计算预测值和实际值之间距离(即误差)的平方来衡量模型优劣。即预测值和真实值越接近&…...
PSHuman 部署笔记
目录 github地址: 依赖项: xformers安装: 解决方法,安装xformers smpl_data下载: 推理步骤: SMPLDataset 香港科技大学提出了一种叫PSHuman的新框架。这个方法利用了一个多视角扩散模型的“先验知识…...
怎么样能使Ubuntu的文件浏览器显示当前目录的路径,而不是只显示一个文件名?
默认情况下Ubuntu的文件浏览器是只显示当前目录的目录名的,这很不便我们查看路径或直接利用路径进行定位,那么怎么样能使Ubuntu的文件浏览器显示当前目录的路径呢? 两种方法: 第1种-临时方法 按下快捷键 Ctrl L,导航…...
自回归模型(AR )
最近看到一些模型使用了自回归方法,这里就学习一下整理一下相关内容方便以后查阅。 自回归模型(AR ) 自回归模型(AR )AR 模型的引入AR 模型的定义参数的估计方法模型阶数选择平稳性与因果性条件自相关与偏自相关函数优…...
工具推荐-js爬取工具
现在测试方向都偏向于从js中的接口来入手找到可以进的点,关于快速扫描js文件来发现敏感接口的工具有很多,下面的jjjjs就是其一 项目地址: GitHub - ttstormxx/jjjjjjjjjjjjjs: 爬网站JS文件,自动fuzz api接口,指定api接口&#x…...
CSS学习记录05
CSS外边距 CSS margin属性用于在任何定义的边框之外,为元素周围创建空间。通过CSS,您可以完全控制外边距,一些属性可用于设置元素每侧(上、右、下和左)的外边距。 Margin - 单独的边 CSS拥有用于为元素的每一侧指定…...
差异基因富集分析(R语言——GOKEGGGSEA)
接着上次的内容,上篇内容给大家分享了基因表达量怎么做分组差异分析,从而获得差异基因集,想了解的可以去看一下,这篇主要给大家分享一下得到显著差异基因集后怎么做一下通路富集。 1.准备差异基因集 我就直接把上次分享的拿到这…...
ISO 45001 职业健康安全管理体系的实施具有多方面的重要意义
对企业的意义 提升企业形象:实施 ISO 45001 体系体现了企业对员工职业健康安全的重视和承诺,有助于树立良好的企业形象,增强企业在社会公众、客户、投资者等方面的认可度和美誉度,提升企业的市场竞争力。增强员工满意度和忠诚度&a…...
HarmonyOS-中级(三)
文章目录 合理使用动画和转场Web组件和WebView给应用添加通知和提醒 🏡作者主页:点击! 🤖HarmonyOS专栏:点击! ⏰️创作时间:2024年12月08日12点12分 合理使用动画和转场 动效场景设计&#x…...
报错:Invalid HTTP method: PATCH executing PATCH http://XXX.XXX
分析: 问题在于我使用feignclietn调用PatchMapping方法时,发送的 PATCH 请求方法出现了不匹配的情况。虽然说springboot自带了RESTful风格的方法(GET、POST、PUT、DELETE、PATCH,但是PATCH相较于前几个来说算是新的HTTP方法&#…...
Open WebUI项目源码学习记录(从0开始基于纯CPU环境部署一个网页Chat服务)
感谢您点开这篇文章:D,鼠鼠我是一个代码小白,下文是学习开源项目Open WebUI过程中的一点笔记记录,希望能帮助到你~ 本人菜鸟,持续成长,能力不足有疏漏的地方欢迎一起探讨指正,比心心~…...
WPF Prism 01-BootstrapperShell
Prism介绍 Prism 是一个用于在 WPF、.NET MAUI、Uno 平台和 Xamarin Forms 中构建松耦合、可维护和可测试的 XAML 应用程序的框架。每个平台都有单独的发布版本,并且这些版本将在独立的开发时间线上进行开发。Prism 提供了一组设计模式的实现,这些模式有…...
在Ubuntu22.04 jammy下用qemu模型riscv32环境装鸿蒙(未完成,待续)
在使用实体ESP32C3 安装鸿蒙失败后,就是这个:完全按照手册win10里装Ubuntu 虚拟机然后编译ESP32(主要是想针对ESP32C3和S3)开发板的鸿蒙系统(失败)-CSDN博客转向用qemu模拟环境装鸿蒙 学习手册riscv32_virt/README_zh.md OpenHar…...
第2章:CSS基本语法 --[CSS零基础入门]
CSS(层叠样式表,Cascading Style Sheets)是用来描述HTML或XML(包括各种XML:SVG, MathML 或 XHTML)等文档的外观和格式的语言。以下是CSS的基本语法: 1.选择器 1.元素选择器 元素选择器是基于HTML标签名称来选择元素的。当你使用元素选择器时,你是在告诉浏览器对页面…...
win11 恢复任务栏copilot图标, 亲测有效
1、修改C:\Windows\System32\IntegratedServicesRegionPolicySet.json,解除中国不能使用copilot的限制。 使用Notepad搜索copilot全文搜索,将下面两处的“CN,”删除,删除后如下: {"$comment": "Show Copilot on t…...
Python爬虫实战:抓取拼多多商品详情数据(基于pdd.item_get接口)
在当前的电商市场中,拼多多以其独特的拼团模式和优惠价格吸引了大量用户,成为继淘宝、京东之后的又一大电商平台。对于数据分析和市场研究者来说,获取拼多多的商品详情数据显得尤为重要。本文将介绍如何使用Python爬虫技术,通过调…...
如何在x86模拟器和鸿蒙API9如何使用MQTT模块ohos_mqtt
目录 引言 安装失败的原因 如何编译so文件的x86_64版本 下载源代码 安装NDK 代码编译 安装MQTT软件包 避免MQTT软件包自动升级 设置libs 客户端程序的编写 运行测试 结语 参考文献 引言 在上周的博客(如何在鸿蒙API9和x86模拟器中使用MQTT-CSDN博客&am…...
VB.NET 从入门到精通:开启编程进阶之路
摘要: 本文全面深入地阐述了 VB.NET 的学习路径,从基础的环境搭建与语法入门开始,逐步深入到面向对象编程、图形用户界面设计、数据访问、异常处理、多线程编程以及与其他技术的集成等核心领域,通过详细的代码示例与理论讲解&…...
芝法酱学习笔记(1.3)——SpringBoot+mybatis plus+atomikos实现多数据源事务
一、前言 1.1 业务需求 之前我们在讲解注册和登录的时候,有一个重要的技术点忽略了过去。那就是多数据源的事务问题。 按照我们的业务需求,monitor服务可能涉及同时对监控中心数据库和企业中心数据库进行操作,而我们希望这样的操作在一个事…...
图像处理插件:让小程序焕发视觉新生的秘密武器
在小程序开发中,图像处理是一个重要的环节,它涉及到图片的加载、显示、裁剪、压缩等多个方面。为了简化这一复杂过程,开发者通常会使用图像处理插件。这些插件不仅提供了丰富的图像处理功能,还封装了底层的图像操作逻辑࿰…...
力扣刷题TOP101: 27.BM34 判断是不是二叉搜索树
目录: 目的 思路 复杂度 记忆秘诀 python代码 目的: 给定一个二叉树根节点,请判断这棵树是不是二叉搜索树。 二叉搜索树满足每个节点的左子树上的所有节点均小于当前节点且右子树上的所有节点均大于当前节点。 思路 什么是二叉搜索树&am…...
Linux图形化工具推荐
1、MobaXterm MobaXterm Xserver with SSH, telnet, RDP, VNC and X11 - DownloadFree X server for Windows with tabbed SSH terminal, telnet, RDP, VNC and X11-forwarding - Downloadhttps://mobaxterm.mobatek.net/download.html 2、FinalShell FinalShell SSH工具,服…...
蓝队基础:企业网络安全架构与防御策略
声明 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,此文章为对视频内容稍加整理发布,文章所提到的网站以及内容,只做学习交流,其他…...
数据结构:栈
什么是栈: 栈是一种特殊的线性表,仅能在线性表的一端操作,栈顶允许操作,栈底不允许操作。 栈的特点是:先进后出,或者说是后进先出,从栈顶放入元素的操作叫入栈,取出元素叫出栈。 栈…...
tcp_recvmsg 函数
tcp_recvmsg 函数是 Linux 内核 TCP 栈的一部分,它主要用于处理从 TCP socket 接收数据的过程。这个函数的主要任务是从 TCP 接收队列中提取数据,并将这些数据拷贝到用户空间提供的缓冲区中。 以下是 tcp_recvmsg 函数的一般工作流程和功能解释: 函数签名和参数 int tcp_re…...
《数据结构》(应用题)
历年真题(09~24) 2009 最短路径(Dijkstra青春版) 【2009统考真题】带权图(权值非负,表示边连接的两顶点间的距离)的最短路径问题是找出从初始顶点到目标顶点之间的一条最短路径。假设从初始顶点…...
阿里内部正式开源“Spring Cloud Alibaba (全彩小册)”
年轻的毕业生们满怀希望与忐忑,去寻找、竞争一个工作机会。已经在职的开发同学,也想通过社会招聘或者内推的时机争取到更好的待遇、更大的平台。 然而,面试人群众多,技术市场却相对冷淡,面试的同学们不得不面临着 1 个…...
LeetCode题练习与总结:根据字符出现频率排序--451
一、题目描述 给定一个字符串 s ,根据字符出现的 频率 对其进行 降序排序 。一个字符出现的 频率 是它出现在字符串中的次数。 返回 已排序的字符串 。如果有多个答案,返回其中任何一个。 示例 1: 输入: s "tree" 输出: "eert" …...
Excel VBA学习系列汇总20241205
整理几年工作中,实用VBA代码,绝对干货! 方便自己查询,方便大家学习, 有缘人可复制使用,记得分享给大家免费学习哦! 序历史文章1新学期开始,如何新学期开始,如何按成绩名次…...
给el-table表头添加icon图标,以及鼠标移入icon时显示el-tooltip提示内容
在你的代码中,你已经正确地使用了 el-tooltip 组件来实现鼠标划过加号时显示提示信息。el-tooltip 组件的 content 属性设置了提示信息的内容,placement 属性设置了提示信息的位置。 你需要确保 el-tooltip 组件的 content 属性和 placement 属性设置正…...
基于LLM智能问答系统【阿里云:天池比赛】
流程: 1、分别识别问题及提供的资料文件中的公司名实体,有公司名的走语义检索,无公司名的走结构化召回 2、结构化召回:Qwen根据问题生成sql,执行sql获取结果数值,把结果数值与问题给到Qwen生成最终结果 …...
k8s-Informer概要解析(2)
Client-go 主要用在 k8s 控制器中 什么是 k8s Informer Informer 负责与 kubernetes APIServer 进行 Watch 操作,Watch 的资源,可以是 kubernetes 内置资源对象,也可以 CRD。 Informer 是一个带有本地缓存以及索引机制的核心工具包&#x…...
Leetcode 3376. Minimum Time to Break Locks I
Leetcode 3376. Minimum Time to Break Locks I 1. 解题思路2. 代码实现 题目链接:3376. Minimum Time to Break Locks I 1. 解题思路 这一题我最开始的思路走的是贪婪算法的路子,优先走X的增长,不过很不幸失败了,后面还是暴力…...
介绍8款开源网络安全产品
01 HFish蜜罐 HFish是一款开源的蜜罐系统,用于模拟各种网络服务和应用,以吸引潜在的黑客攻击。它能够记录攻击尝试并收集攻击者的信息,从而帮助网络管理员识别潜在的威胁。HFish支持多种协议和服务,包括HTTP、FTP、SSH等&#…...
vue2面试题|[2024-12-5]
开题答辩终于结束了,又要开始我的前端面试学习啦!!! 1.v-model双向绑定原理 class Vue{constructor(options){this.$options optionsthis.$watchEvent {}if(typeof options.beforeCreate function){options.beforeCreate.bind…...
共筑数字安全防线,2024开源和软件安全沙龙即将启幕
随着数字化转型进程的加快以及开源代码的广泛应用,开源凭借平等、开放、协作、共享的优秀创作模式,逐渐成为推动数字技术创新、加速传统行业转型升级的重要模式。但随着软件供应链日趋复杂多元,使得其安全风险不断加剧,针对软件供…...
目标跟踪领域经典论文解析
亲爱的小伙伴们😘,在求知的漫漫旅途中,若你对深度学习的奥秘、JAVA 、PYTHON与SAP 的奇妙世界,亦或是读研论文的撰写攻略有所探寻🧐,那不妨给我一个小小的关注吧🥰。我会精心筹备,在…...
SQL DQL数据查询语言(后续)
SQL DQL数据查询语言(后续) 1.子查询 在查询语句中的WHERE条件子句中,又嵌套了另外一个查询语句在返回列中嵌套一个查询 where条件中嵌套 要求:查询课程为《高等数学-2》且分数不小于80分的学生的学号和姓名select a.StudentNo,a…...
Gitee配置SSH公钥
采用SSH协议同步Git仓库代码的好处就是高效。在配置好SSH公钥后,不需要每次操作都要输入用户名和密码(主要针对命令行来说)。 以我个人项目为例。 生成 SSH 公钥 1. 通过命令 ssh-keygen 生成 SSH Key: ssh-keygen -t ed25519…...