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

人工智能导论-机器学习

机器学习概述

概述

本章主要介绍的机器学习的概念、发展历程、发展趋势、相关应用,着重拓展机监督学习和无监督学习的相关知识。

重点:机器学习的定义和应用;

难点:机器学习算法及分类。

机器学习 - 重要性

在这里插入图片描述

MachineLeaning出现前

自从50年代以后,AI的发展就磕磕碰碰,没达到足够震撼从早期的逻辑推理,到中期的专家系统,这些科研进步确实使我们离机器的智能有点接近了,但还有一大段距离

MachineLeaning出现后

直到机器学习诞生以后,人工智能界感觉终于找对了方向。基于机器学习的图像识别和语音识别在某些垂直领域达到了跟人相媲美的程度。机器学习使人类第一次如此接近AI的梦想。

机器学习 - 类比人脑思考与决策

机器善于处理数据不断提高性能

人类学习利用经验不断提高性能

思考:能否把“经验”变成数据,让机器可以“模仿”人类进行学习?

在这里插入图片描述

机器学习 - 何谓智慧

人类区别于其他物体(植物,动物)的最主要区别是 “智慧”。智慧是对生活的感悟,是对人生的积淀与思考,这与我们机器学习的思想何其相似?通过经验获取规律,指导人生与未来。没有经验就没有智慧。学习沉淀,总结规律、产生决策

在这里插入图片描述

  • 是计算能力么,应该不是,心算速度快的人我们一般称之为天才。
  • 是反应能力么,也不是,反应快的人我们称之为灵敏。
  • 是记忆能力么,也不是,记忆好的人我们一般称之为过目不忘。
  • 是推理能力么,这样的人我也许会称他智力很高,类似“福尔摩斯”,但不会称他拥有智慧。
  • 是知识能力么,这样的人我们称之为博闻广,也不会称他拥有智慧。

机器学习 - 发展历程

在这里插入图片描述

机器学习 - 与AI关系

区别1:人工智能是一种广泛的概念,而机器学习是人工智能的一部分。机器学习(ML)是一种人工智能的子领域,它使用算法和统计模型来让计算机自动从数据中学习,其目 标是让计算机自动发现数据中的模式和规律,从而可以预测未来的结果。

区别2:人工智能需要程序员来编写算法和规则,而机器学习则是让计算机自己学习。这意味着,机器学习算法可以从数据中自动发现模式和规律,而不需要手动编写规则。

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

在这里插入图片描述

机器学习 - 定义

定义:机器学习(Machine Learning)本质上就是让计算机在数据中学习规律,并根据所得到的规律对未来数据进行预测。

基本思路:让机器模仿人类学习行为的过程。如人类解决新问题一般是通过“经验归纳,总结规律,从而预测未来”的过程。则机器学习的基本过程如下:
在这里插入图片描述

在这里插入图片描述

机器学习 - 工作原理

定义:机器学习(Machine Learning)本质上就是让计算机在数据中学习规律,并根据所得到的规律对未来数据进行预测。

在这里插入图片描述

Machine Learning = task + data + objective + algorithm

–Tom Mitchell

机器学习 - 分类

在这里插入图片描述

机器学习 - 分类(3种重点类型)

在这里插入图片描述

在这里插入图片描述

分类1 - 监督学习

定义:是使用标记数据集来训练算法,以便对数据进行分类或准确预测结果。当输入数据被输入到模型中时,它会调整其权重,直到模型被适当地拟合,这是交叉验证过程的一部分。

应用:监督式学习可以帮助组织大规模地解决各种现实世界的问题,例如对收件箱中单独文件夹中的垃圾邮件进行分类。

在这里插入图片描述

分类2 – 半监督学习

定义:侧重于在“有监督”的分类算法中加入无标记样本来实现半监督分类。

典型算法:如下图。

在这里插入图片描述

分类3 - 无监督学习

定义:从无标注数据样本出发,学习数据样本中蕴含的模式,完成如聚类或降维等特定任务。本质是一种统计手段,即从未标注数据中寻找隐含结构的过程。

在现实生活中,高质量标注数据难以获得,因此,无监督学习多数情况下是监督学习的补充。
在这里插入图片描述

监督学习无监督学习
任务目标明确任务目标不明确 (适用范围广)
训练数据带标签训练数据不带标签 (减少数据分析成本)
效果易于评估效果不易于评估 (需要科学选择)

分类4 - 强化学习

定义:类似监督学习,但未使用样本数据进行训练,而是通过不断试错进行学习的模式。

重要构成:2个交互对象 + 4个核心要素

应用:机器人避障、棋牌类游戏、广告和推荐等应用场景中。
在这里插入图片描述

四要素说明
策略 (Policy)•定义智能体的行为 •是从状态到行为的映射 •本身可是具体映射,也可是随机分布
奖励函数 (Reward)•是一个标量的反馈信号 •能表征在某一步智能体的表现如何 •智能体的任务就是使得一个时段内积累的总奖励值最大
价值函数 (Value)•价值函数是对未来奖励的预测 •它可以评估状态的好坏 •价值函数的计算需要对状态之间的转移 进行分析
环境模型 (Model)•模型可以预测环境下一步的表现 •表现具体可由预测状态和奖励来反映 •模型可选择

分类4 - 强化学习

在这里插入图片描述

机器学习- 趋势分析

机器学习正真开始研 究和发展应该从80年代开始, 我们借助 AMiner 平台, 将近些年机器学习论文进行统计分析所生成的发展趋势图以深度神经网络、强化学习为代表的深度学习相关的技术研究热度上升很快,近几年仍然是研究热点。

在这里插入图片描述

机器学习算法 - 分类及应用

在这里插入图片描述

回归分类
输出 类型预测连续值(如价格、 温度等)预测离散标签 (如是/否)
评估指标通常使用“均方误差 (MSE)、R²分数”等常使用“准确率、 F1分数”等
分类聚类
区别按某种标准给对象贴标签(label),再根据标签来区分归类。事先没有“标签”; 通过某种成因分析找出事物间存在聚集性的原因。
分类器需由人工标注的分类训练得到,属于有指导学习。无需人工标注和预先训练分类器,类别在聚类过程中自动生成,属于无指导学习。
应用场景l适合类别或分类体 系已经确定的场合; l比如按照国图分类法分类图书l适合不存在分类体系、 类别数不确定的场合, 常作为某些应用的前端; l如多文档文摘、搜索引 擎结果后聚类(元搜索)等。

回归分析(预测连续、具体的数据)

回归分析:是一种预测性的建模技术,研究因变量(目标)和自变量(预测器)之间的关系。通过这个模型,可以用一组特征(自变量)来预测一个连续的结果(因变量)。

应用:通常用于“预测分析、时间序列模型以及发现变量之间的因果关系”。例如,司机的鲁莽驾驶与道路交通事故数量之间的关系,最好的研究方法就是回归。

重要性:回归问题是机器学习领域中最古老、最基础,同时也是最广泛应用的问题之一。无论是在金融、医疗、零售还是自然科学中,回归模型都扮演着至关重要的角色。

举例:用房间面积、位置等特征来预测房价。

在这里插入图片描述

线性回归

定义:一种通过属性的线性组合来进行预测的线性模型。

目标:是找到一条直线或者一个平面或者更高维的超平面,使得预测值与真实值之间的误差最小化。
在这里插入图片描述

在这里插入图片描述

多项式回归(曲线)

定义:与线性回归尝试使用直线拟合数据不同,多项式回归使用多项式方程进行拟合。

在这里插入图片描述

在这里插入图片描述

支持向量回归(超平面)

定义:是支持向量机(SVM)的回归版本,用于解决回归问题。它试图找到一个超平面,以便在给定容忍度内最大程度地减小预测和实际值之间的误差。

在这里插入图片描述

在这里插入图片描述

决策树回归(树结构)

定义:是一种非参数的、基于树结构的回归方法。它通过将特征空间划分为一组简单的区域,并在每个区域内进行预测。

在这里插入图片描述

数学原理

决策树回归不依赖于具体的数学模型。它通过递归地将数据集划分为不同的子集,并在每个子集内计算目标变量的平均值作为预测

分类分析(预测非连续、离散型数据-模式识别)

  • 定义:分类算法也称为模式识别,其主要目的是从数据中发现规律,并将数据分成不同的类别。
  • 过程:分类算法通过对已知类别训练集的计算和分析,从中发现类别规则并预测新数据的类别。
  • 典型算法:包括决策树、朴素贝叶斯、逻辑回归、K-最近邻、支持向量机等。
  • 应用:金融、医疗、电子商务等领域,以帮助人们更好地理解和利用数据。

在这里插入图片描述

基础分类算法 - 决策树、逻辑回归

决策树(n叉树)

通过将数据集划分为不同的子集来预测目标变量。它从根节点开始,根据某个特征对数据集进行划分,然后递归地生成更多的子节点,直到满足停止条件为止。决策树的每个内部节点表示一个特征属性上的判断条件,每个分支代表一个可能的属性值,每个叶节点表示一个分类结果。
在这里插入图片描述

逻辑回归:

一种用于二元分类的算法,通过使用逻辑函数将线性回归的结果映射到 [0,1]范围内。将输入特征与输出类别之间的关系表示为线性回归函数,然后通过逻辑函数将线性回归的结果转换为一个概率值,用于预测目标变量。

特点:计算效率高,但在处理高维数据时可能会过拟合。

在这里插入图片描述

基础分类算法 - SVM、朴素贝叶斯

支持向量机(SVM):通过找到一个超平面来划分不同的类别。它试图最大化两个类别之间的边界,这个边界被称为间隔。

目标:找到一个能够将数据集中的点正确分类的超平面,同时最大化间隔。在二分类问题中, SVM通过求解一个二次优化问题来找到这个超平面。

在这里插入图片描述

朴素贝叶斯:是一种基于贝叶斯定理的分类算法,通过计算每个类别的条件概率来预测目标变量。假设每个特征之间独立,然后根据这个假设来计算类别的条件概率,并选择概率最大的类别作为预测结果

优点:在处理高维数据时效率高,并且对数据集的大小和分布不敏感。

在这里插入图片描述

集成分类算法 - 随机森林、AdBoost

随机森林:是一种使用多棵树对样本进行训练并预测的分类器。既可以用于处理分类和回归问题,也适用于降维问题。

它通过随机选择样本和特征来生成多个决策树,然后以投票的方式将最多个数的结果作为最终分类结果。

优点:对异常值与噪音也有很好的容忍,相较于决策树有着更好的预测和分类性能。
在这里插入图片描述

AdBoost:是一种迭代算法,通过将多个弱分类器的结果组合来预测目标变量。

将数据集分成多个子集,然后针对每个子集训练一个弱分类器,并调整每个弱分类器的权重,使得分类错误的样本得到更大的权重,然后再次训练弱分类器。如此反复迭代,直到达到预设的迭代次数或者弱分类器的精度达到某个阈值为止。

优点:可处理多类分类问题,且对噪声和异常值不敏感
在这里插入图片描述

集成分类算法 - GBDT

梯度提升决策树(GBDT):GBDT算法是一种基于梯度提升的分类算法,它通过将多个决策树的结果组合来预测目标变量。

GBDT算法通过不断地添加树、更新模型参数和优化目标函数来提高模型的精度。每棵树都是通过对样本特征空间进行划分、寻找最佳划分点来生成的。每棵树生成后,就对应一个残差函数,用当前所有树的残差和作为下一棵树的生成依据。如此反复迭代,直到达到预设的迭代次数或者满足其他停止条件为止。最终的预测结果由所有树的加权和决定。

优点:在处理复杂和非线性问题时表现良好,并且对数据集的大小和分布不敏感。

在这里插入图片描述

聚类分析

定义:将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类。

目标:一类无监督学习的算法,其目标是将数据集中的样本划分为若干个互不重叠的子集,每个子集被称为一个“簇”,使得同一簇内的样本相似度较高,而不同簇之间的样本相似度较低。即,在不事先知道数 据的真实类别标签的情况下,发现数据中的内在结构和模式。

重要性:“物以类聚,人以群分”,在自然科学和社会科学中,存在着大量的分类问题。聚类分析又称群分析,它是研究(样品或指标)分类问题的一种统计分析方法。

聚类分析方法:系统聚类法、有序样品聚类法、动态聚类法、模糊聚类法、图论聚类法、聚类预报法等。

在这里插入图片描述

聚类算法 - K-Means、DBSCAN

K均值聚类(K-Means): 最经典和常用的聚类算法之一。它通过将数据划分为K个簇,并使每个样本点到其所属簇的中心距离最小化来实现。

K-Means算法迭代更新簇的中心,直至达到收敛条件。
在这里插入图片描述

DBSCAN(Density-Based Spatial Clustering of Applications with Noise): 一种基于样本密度的聚类算法。

通过寻找高密度区域,将数据划分为不同的簇,并可以识别噪声点。不需要预先指定簇的数量,适用于不规则形状的簇和对噪声相对鲁棒的场景。
在这里插入图片描述

K-Means聚类 - 算法原理

  • 初始化:随机选择k个中心点,作为初始的聚类中心。
  • 计算距离:计算每个样本到k个中心点的距离,将各样本划分到距离最近的中心点所在的簇。
  • 重新计算中心:为各簇所有点的均值,重新计算各簇的中心。
  • 迭代:不断迭代2、3步骤,直到各簇不再发生变化或者达到预设的迭代次数。

在这里插入图片描述

层次聚类及其他

定义:是一种基于树形结构的聚类算法,通过将数据点逐步合并成簇,最终形成一棵树形的聚类结构。

分为两种:自底向上聚类(Agglomerative Clustering)和自上向下聚类(Divisive Clustering)

在这里插入图片描述

其他聚类算法
DBSCAN聚类
均值漂移聚类
谱聚类
模糊聚类 Fuzzy Clustering
密度峰值聚类 Density Peaks Clustering
基于高斯混合模型GMM
最大值期望EM的聚类
在这里插入图片描述

降维 - 引入原因

  • 存在问题:在机器学习中经常会碰到一些高维的数据集,导致出现以下情况:
  • 维度灾难:指“数据样本稀疏,距离计算”等困难,这是所有机器学习方法共同面临的严重问题。
  • 特征冗余:另外,在高维特征中容易出现特征之间的线性相关,这也就意味着有些特征存在冗余。
  • 基本思想:为解决以上问题,可“将高维数据集投影到低维空间”,同时尽量保留变量的信息或方差。

分类

线性降维非线性降维
原理基于线性变换将数据映射到低维空间,通过非线性变换将数据映射到低维空间
范围线性可分的数据集非线性结构的数据集
复杂度算法简单,所以计算效 率高,易于理解和实现计算复杂度较高,通常需要 更多的计算资源和时间
完整性通常不能捕捉数据中的非线性结构,可能会导致信息丢失l能够更好地保留数据中的非线性结构和局部关系, l提供更好的可视化效果

线性降维 - PCA

  • 主成分分析 (Principal component analysis) :用于将高维数据集转换为低维表示,同时保留数据集的主要特征。
  • 目标:通过找到数据中最大方差的方向(主成分),然后在低维空间中找到一个有效的投影轴,通过投影,将原始数据中相对重要的信息表达出来,达到降维目的。
  • 应用:最常用的算法,在数据压缩,消除冗余等领域有着广泛使用。

在这里插入图片描述

线性降维 - LDA

  • LDA(线性判别分析):它与主成分分析(PCA)不同,因为它不仅考虑了数据的方差结构,还考虑了数据的类别信息。LDA旨在找到一个投影方向,最大化不同类别之间的距离(类间散布),同时最小化同一类别内部的距离(类内散布)。
  • 目标:以 "类内方差最小化,类间方差最大化 "为目标,找到可以优化分类的特征子空间,对数据进行投影,以达到降维的目的。
  • 应用:该方法广泛用于面部识别、情感分析等领域

在这里插入图片描述

线性降维 - 奇异阵分解

  • 奇异值分解(Singular Value Decomposition,SVD):是一种用于矩阵分解的重要技术。它将一个矩阵分解为三个矩阵的乘积形式,这三个矩阵分别是一个“正交矩阵、一个对角矩阵和另一个正交矩阵的转置”。
  • 目标:在降维中,只保留奇异值较大的项,可以实现对数据的有效压缩和表示。
  • 应用:具有广泛的应用,包括数据压缩、降维、矩阵逆求解、推荐系统等。

在这里插入图片描述

非线性降维 - 核PCA

  • 核PCA:可看作是正态主成分分析的非线性版本。
  • 特点:常规PCA和核PCA都可以进行降维。但核PCA能很好处理线性不可分割的数据。因此,其主要用途是“使线性不可分的数据线性可分”,同时降低数据的维数。
  • 应用:在图像处理、信号处理等领域中,可更准确地获取和分析数据信息。

在这里插入图片描述

非线性降维 - LLE

  • 局部线性嵌入(Locally linear embedding,LLE):能够使降维后的数据较好地保持原有流形结构。它是流形学习方法最经典的工作之一。很多后续的流形学习、降维方法都与 LLE 有密切联系。
  • 对比:和传统的PCA,LDA 等关注样本方差的降维方法相比,LLE关注于降维时保持样本局部的线性特征。
  • 应用:由于LLE保持了样本局部特征,广泛用于图像图像识别,高维数据可视化等。一个形象的流形降维过程如图有一块卷起来的布,希望将其展开到一个二维平面,且展开后的布能够在局部保持布结构的特征。其实也就是将其展开的过程,就像两个人将其拉开一样。

在这里插入图片描述

机器学习算法 - 总结与选用原则

NFL定理(No Free Lunch)一个算法A若在某些问题上比算法B好,必定存在一些特殊问题使得算法B比A 好。因此,不存在绝对好的学习算法,必须要有具体问题,具体分析的思维。着重发现数据集中潜藏的结构来简化训练。

在这里插入图片描述

机器学习平台 - 技术框架

随着机器学习算法在许多领域取得长足 进步,对机器学习系统的需求不断增长,促成搭建专用的机器学习平台。

同时,基于效率考虑,希望机器学习应用可以自动化构建并使用。

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

自动化机器学习(AutoML) :可在给定数据集上,自动选择使用哪种机器学习算法、如何预处理其特征,以及如何设置所有超参数。

机器学习应用流程 - 如何应用?

机器学习是将现实中的问题抽象为数学模型,利用历史数据对数据模型进行训练,然后基于数据模型对新数据进行求解,并将结果再转为现实问题的答案的过程。

机器学习一般的应用实现步骤如下:

将现实问题抽象为

  • 数学问题
  • 数据准备
  • 选择或创建模型
  • 模型训练及评估
  • 预测结果

在这里插入图片描述

机器学习应用流程 - 参考框架

在这里插入图片描述

应用案例 - 常见问题分类及案例

回归任务:预计外卖送达的时间

在这里插入图片描述

分类任务:垃圾邮件分类

在这里插入图片描述

聚类任务:商品个性化推荐

在这里插入图片描述

降维任务:人脸识别

在这里插入图片描述

相关文章:

人工智能导论-机器学习

机器学习概述 概述 本章主要介绍的机器学习的概念、发展历程、发展趋势、相关应用,着重拓展机监督学习和无监督学习的相关知识。 重点:机器学习的定义和应用; 难点:机器学习算法及分类。 机器学习 - 重要性 MachineLeaning出…...

计算机网络——网络层(路由选择协议、路由器工作原理、IP多播、虚拟专用网和网络地址转换)

目录 路由选择协议 因特网的路由选择协议特点 路由信息协议RIP RIP衡量目的网络距离 RIP选择路由器的方式 RIP具有以下三个重要特点 RIP的基本工作流程 RIP的距离向量算法 ​编辑 ​编辑 RIP存在的问题——“坏消息传播得慢” RIP的封装 开放最短路径优先协议OSPF…...

对接企业微信API自建应用配置企业可信IP

前言 为了实现系统调用团队会议功能,组织发起企业微信会议,于是需要和企业微信做API对接。对接过程很难受,文档不清晰、没有SDK、没有技术支持甚至文档报文和实际接口报文都不匹配,只能说企业微信的API是从业以来见过的最难用的AP…...

Windows右键新建Markdown文件类型配置 | Typora | VSCode

🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 今天毛毛张分享的是如何在右键的新建菜单中添加新建MarkdownFile文件,这是毛毛张分享的关于Typora软件的相关知识的第三期 文章目录 1.前言🏝…...

PyTorch构建一个肺部CT图像分类模型来分辨肺癌

当你有5万个标注的肺部CT DICOM图像数据,并且希望使用PyTorch构建一个肺部CT图像分类模型来分辨肺癌,以下是详细的步骤和示例代码: 数据准备 首先,确保你的数据集被正确分为训练集、验证集和测试集,并且每个图像都有相…...

MySQL简介及数据库

mysql简介 mysql是一个轻量级关系型数据库管理系统,具有体积小,速度快,开源的优点 sql是一种结构化查询语言(Structured Query Language),专门用来管理和处理关系型数据库的标准化编程语言,mysql实现了SQL标准&#xf…...

服务器基础1

服务器基础复习01 1.环境部署 系统:华为欧拉系统 网络简单配置nmtui 因为华为欧拉系统密码需要复杂度 所以我们可以进入后更改密码 echo 123 | passwd --stdin root也可以 echo "root:123" | chpasswd2.关闭防火墙,禁用SElinux 首先先关…...

<数据集>光伏板缺陷检测数据集<目标检测>

数据集格式:VOCYOLO格式 图片数量:2400张 标注数量(xml文件个数):2400 标注数量(txt文件个数):2400 标注类别数:4 标注类别名称:[Crack,Grid,Spot] 序号类别名称图片数框数1Crack8688922Grid8248843S…...

leetcode 513. 找树左下角的值

给定一个二叉树的 根节点 root&#xff0c;请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root [2,1,3] 输出: 1示例 2: 输入: [1,2,3,4,null,5,6,null,null,7] 输出: 7提示: 二叉树的节点个数的范围是 [1,104]-231 < Node.val &…...

C++并发编程实战学习笔记

一、C的并发&#xff1a; 多进程并发&#xff1a; 将应用程序分为多个独立的进程&#xff0c;它们在同一时刻运行&#xff0c;就像同 时进行网页浏览和文字处理一样。独立的进程可以通过进程间常规的通信渠道传递讯息(信号、套接字、文件、管道等等)。不过&#xff0c;这种进程…...

【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【25】【分布式事务】

持续学习&持续更新中… 守破离 【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【25】【分布式事务】 本地事务事务的基本性质事务的隔离级别&#xff08;下面四个越往下&#xff0c;隔离级 别越高&#xff0c;并发能力越差&#xff09;事务的传播行为&#xff08;是否…...

HC05主从一体蓝牙模块的裸机使用——单片机<-->蓝牙模块

HC-05是一种常用的蓝牙模块&#xff0c;具有低功耗、低成本、易于使用的特点。它可以实现与其他蓝牙设备&#xff08;如手机、电脑等&#xff09;进行无线通信。HC-05蓝牙模块具有串口通信接口&#xff0c;可以通过串口与主控制器&#xff08;如Arduino、Raspberry Pi等&#x…...

“点点通“餐饮点餐小程序-计算机毕业设计源码11264

"点点通"餐饮点餐小程序 XXX专业XX级XX班&#xff1a;XXX 指导教师&#xff1a;XXX 摘要 随着中国经济的飞速增长&#xff0c;消费者的智能化水平不断提高&#xff0c;许多智能手机和相关的软件正在得到更多的关注和支持。其中&#xff0c;微信的餐饮点餐小程序更…...

C#知识|账号管理系统-账号信息管理界面[1]:账号分类选择框、Panel面板设置

哈喽,你好啊,我是雷工! 前一节实现了多条件查询后端代码的编写, 接下来继续学习账号信息管理界面的功能编写,本节主要记录账号分类选择框和Panel的设置, 以下为学习笔记。 01 功能说明 本节实现以下功能: ①:账号分类选择框只能选择,无法自由输入; ②:账号分类框默认…...

Meta即将推出4000亿的Llama 3 超级AI模型,或将改写大语言模型竞争格局!|TodayAI

2024年4月&#xff0c;科技巨头Meta发布了其最新的AI大型语言模型——Llama 3&#xff0c;该模型基于一个至少比前代产品Llama 2大七倍的数据集&#xff0c;展现出前所未有的性能。在最初发布时&#xff0c;Llama 3提供了8B和70B两种参数规模的版本&#xff0c;并迅速超越了Goo…...

数据挖掘新技能:Python爬虫编程指南

Python爬虫的优势 Python之所以成为数据爬取的首选语言&#xff0c;主要得益于其丰富的库和框架支持。以下是一些常用的库&#xff1a; Requests&#xff1a;用于发送HTTP请求&#xff0c;简单易用&#xff0c;是Python爬虫的基础库。BeautifulSoup&#xff1a;用于解析HTML文…...

object-C 解答算法:移动零(leetCode-283)

移动零(leetCode-283) 题目如下图:(也可以到leetCode上看完整题目,题号283) 解题思路: 本质就是把非0的元素往前移动,接下来要考虑的是怎么移动,每次移动多少? 这里需要用到双指针,i 记录每次遍历的元素值, j 记录“非0元素值”需要移动到的位置; 当所有“非0元素值”都移…...

靖江美食元宇宙

关于“靖江美食元宇宙”的具体信息&#xff0c;搜索结果中并未提供直接相关的详细描述。不过&#xff0c;搜索结果显示了有关元宇宙在食品领域的应用和探索&#xff0c;例如食品元宇宙的概念、不同品牌尝试进入元宇宙市场的例子等。这些信息表明&#xff0c;元宇宙技术正在被用…...

模板方法设计模式

模板方法设计模式: 模板方法设计模式&#xff1a;解决方法中存在重复代码的问题。 模板方法设计模式的写法&#xff1a; 1、定义一个抽象类 2、在里面定义2个方法 ​ 一个是模板方法&#xff1a;把相同代码放里面去 ​ 一个是抽象方法&#xff1a;具体实现交给子类完成 建议使用…...

对象存储解决方案:高性能分布式对象存储系统MinIO

文章目录 引言I 自动化数据管理界面1.1 图形用户界面:GUI1.2 命令行界面:MinIO CLI1.3 应用程序编程接口:MinIO APIII 部署集成2.1 建议使用RPM或DEB安装方式2.2 创建环境变量文件2.3 启动MinIO服务2.4 将NGINX用作反向代理,配置负载。III 基础概念3.1 为什么是对象存储?3…...

2024 年需要考虑的 16 个知识库趋势和统计数据

自2017年以来&#xff0c;千禧一代已成为全球人口最多的一代。如果您的企业还没有准备好应对这一变化带来的挑战&#xff0c;那么是时候加快这一进程了。 毫不奇怪&#xff0c;千禧一代痴迷于智能手机和技术。他们具有流动性&#xff0c;期望与他们互动的品牌能够即时高效。 …...

微信小程序-实现跳转链接并拼接参数(URL拼接路径参数)

第一种常用拼接方法&#xff1a;普通传值的拼接 //普通传值的拼接checkRouteBinttap: function (e) {wx.navigateTo({url: ../checkRoute/checkRoute?classId this.data.classInfo.classId "&taskId" this.data.classInfo.taskId,})}第二种&#xff1a;拼接…...

【代码随想录|第十一章 图论part01 | 797.所有可能的路径 】

代码随想录|第十一章 图论part01 | 图论理论基础&#xff0c;797.所有可能的路径&#xff0c;广搜理论基础 一、图论理论基础1.图的基本概念2.图的构造1&#xff09;邻接矩阵2&#xff09;邻接表 3.图的遍历方式4.深度优先搜索理论基础 二、797.所有可能的路径1.核心代码2.问题…...

尚硅谷大数据技术-数据湖Hudi视频教程-笔记03【Hudi集成Spark】

大数据新风口&#xff1a;Hudi数据湖&#xff08;尚硅谷&Apache Hudi联合出品&#xff09; B站直达&#xff1a;https://www.bilibili.com/video/BV1ue4y1i7na 尚硅谷数据湖Hudi视频教程百度网盘&#xff1a;https://pan.baidu.com/s/1NkPku5Pp-l0gfgoo63hR-Q?pwdyyds阿里…...

【python】Pandas中IndexError: single positional indexer is out of bounds的报错分析

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…...

ubuntu上通过修改grub启动参数,将串口重定向到sol

要修改 GRUB 启动参数以实现串口重定向到 Serial Over LAN (SOL)&#xff0c;你需要编辑 /etc/default/grub 文件&#xff0c;并更新 GRUB 配置。这里是详细步骤&#xff1a; 1. 编辑 /etc/default/grub 打开终端并使用文本编辑器&#xff08;如 nano 或 vim&#xff09;编辑…...

【Git】(基础篇四)—— GitHub使用

GitHub使用 经过上一篇的文章&#xff0c;相信大家已经对git的基本操作熟悉了&#xff0c;但哪些使用git的方法只是在本地仓库进行&#xff0c;本文介绍如何使用git和远程仓库进行连接使用。 Github和Gitee 主要用到的两个远程仓库在线平台是github和gitee GitHub GitHub …...

【Qt+opencv】基础的图像绘制

文章目录 前言line函数ellipse函数rectangle函数circle函数fillPoly函数putText函数总结 前言 在计算机视觉和图像处理领域&#xff0c;OpenCV是一个强大的库&#xff0c;提供了丰富的功能和算法。而Qt是一个跨平台的C图形用户界面应用程序开发框架&#xff0c;它为开发者提供…...

使用Nginx OpenResty与Redis实现高效IP黑白名单管理

1、引言 在当今数字化时代&#xff0c;网络安全已成为企业和个人用户关注的焦点。IP黑白名单作为一种有效的网络安全策略&#xff0c;允许我们精确控制对Web资源的访问权限。通过白名单&#xff0c;我们可以确保只有可信的IP地址能够访问敏感资源&#xff1b;而黑名单则可以阻…...

EasyExcel导入导出数据类型转换

前言&#xff1a; 1、基本数据类型转换&#xff1a;当前原始的数据类型是interger类型&#xff0c;需要在导出时将其映射为对应的字符串&#xff0c;并且导入时可以将字符串重新映射为interger类型。 2、时间格式转换&#xff1a;数据从数据库中获取的类型为LocalDate类型&…...

网站开发流程博客/广告营销策划

引入模块的方式&#xff1a; 1. import 模块 2. from xxx import 模块 一、collections 模块 1.Counter() counter是一个计数器&#xff0c;主要用来计数&#xff0c;计算一个字符串中每个字符出现的次数 1 from collections import Counter 2 s "我要从南走到北&#xf…...

p2p贷款网站开发/网站seo优化总结

/*S.O.L.I.D五大原则1. 单一原则2. 开闭原则3. 里氏替换原则4. 接口分离原则5. 依赖反转原则 */ /*单一原则&#xff1a;类发生更改的原因只有一个如何知道一个对象的多个行为构造多个职责或单个职责&#xff1f;判断标准&#xff1a;1. 存储对象&#xff1a;提供对象信息给其他…...

申请一个域名多少钱/wordpress seo教程

AVCodecContext AVCodecContext 结构表示程序运行的当前 Codec 使用的上下文&#xff0c;着重于所有 Codec 共有的属性(并且是在程序运行时才能确定其值)和关联其他结构的字段。extradata 和 extradata_size 两个成员表述了相应 Codec 使用的私有数据&#xff1b;codec成员关联…...

巴中城市建设投资有限公司网站/房地产销售技巧和话术

发现问题我使用的Oracle11g&#xff0c;当我敲下如下一段命令后&#xff0c;就让我傻眼了。。alter system set sga_max_size960M scopespfile;shutdown immediatestartup此时的startup报错了&#xff0c;错误为&#xff1a;SQL> startupORA-00844: Parameter not taking ME…...

酒店网站可以怎么做/软件培训机构排行榜

为什么80%的码农都做不了架构师&#xff1f;>>> 具体做法&#xff1a; 不同环境的配置设置一个配置文件&#xff0c;例如&#xff1a;dev环境下的配置配置在application-dev.properties中&#xff1b;prod环境下的配置配置在application-prod.properties中。在appl…...

建设银行平潭招聘网站/短视频seo厂家

上次说到可以使用Kodi来进行媒体文件的管理&#xff0c;可是Kodi本身不能播放4k HDR的视频。这次教大家一个新办法&#xff0c;就是设置Kodi&#xff0c;让Kodi在播放HDR视频时&#xff0c;使用外置的播放器&#xff0c;也就是potplayer。直奔主题&#xff0c;kodi设置外置播放…...