您的位置:首页 > 游戏 > 游戏 > 全网万能搜索引擎_h5制作工具网站_自己怎么做网站优化_网络营销的特点不包括

全网万能搜索引擎_h5制作工具网站_自己怎么做网站优化_网络营销的特点不包括

2025/3/14 0:15:24 来源:https://blog.csdn.net/s6664/article/details/145857507  浏览:    关键词:全网万能搜索引擎_h5制作工具网站_自己怎么做网站优化_网络营销的特点不包括
全网万能搜索引擎_h5制作工具网站_自己怎么做网站优化_网络营销的特点不包括

一, 机器学习

        机器学习定义: 计算机能够在没有明确的编程情况下学习

        特征: 特征是描述样本的属性或变量,是模型用来学习和预测的基础。如: 房屋面积, 地理位置

        标签: 监督学习中需要预测的目标变量,是模型的输出目标。如: 房屋价格

        样本: 如: {面积=100㎡, 卧室=3, 位置=市中心, 价格=500万}, 数据集中的一个独立实例, 包含一组特征及对应的标签。

样本向量形式:

独热编码举例:

1.1 机器学习的分类

        1) 监督学习: 根据带标签的数据训练模型,预测新样本的标签。如回归, 分类

回归应用: 房价预测

分类算法: 根据年龄和肿瘤大小判断肿瘤良/恶性

        2) 无监督学习: 从未标注数据中发现潜在结构或模式。如聚类异常检测降维(大数据集压缩成更小的数据集, 并可能少地丢失信息)

聚类: 谷歌新闻示例

        3) ​半监督学习: 结合少量标注数据和大量未标注数据进行训练。如医学图像分析

        4) ​强化学习: 通过与环境交互学习策略,最大化累积奖励。如游戏AI, 自动驾驶

1.2 监督学习算法

1.2.1 线性回归 

第i个数据特征:

        损失函数(Loss Function)​:衡量单个样本的预测值与真实值的差异。

        成本函数(Cost Function)​:衡量整个训练集的平均损失。

平方误差损失:

平方误差成本函数: 一定是凸函数,确保只有一个全局最小值

模型(y=wx)与成本函数示例 (左图w=-0.5、0、0.5、1时的情况):

模型(y=wx+b)下的成本函数:

模型与J(w,b)的平面等高线:

        学习率(α)​:控制模型参数更新步长的超参数。 

 学习率的取值的两种情况:

        1) 学习率过大:参数更新步长过大,可能导致损失值震荡甚至发散。

        2) 学习率过小:收敛速度极慢,可能陷入局部极小值。

示例:

梯度下降公式:

推导过程:

梯度算法演示:

两个特征的多元线性回归举例:

特征缩放:  加速模型收敛。有如下方法:

标准化(Z-Score标准化):

标准差:

归一化(Min-Max缩放):

标准化与归一化的区别: 

举例 (标准化前后的数据集) :

    

1.2.2 逻辑回归

        通过线性组合特征与参数,结合Sigmoid函数将输出映射到概率区间(0-1),用于解决分类问题​(尤其是二分类)。

Sigmoid函数模型: 

图形:

对数损失函数(交叉熵损失):

对应图形:  

        为什么不使用均方误差(MSE)作为损失函数: 当预测值接近 0 或 1 时, 梯度接近于0, 权重几乎无法更新。 

   

对应成本函数:

为什么选择对数损失函数:

        1) 概率视角:最大似然估计(MLE)

        2) 优化视角:凸性

梯度下降算法:

与线性回归梯度算法的区别: 模型定义不同:

线性回归与逻辑回归区别: 

1.2.3 正则化  

解决过拟合情况:

        1) 收集更多数据

        2) 仅用特征的一个子集

        3) 正则化

欠拟合(高偏差), 适中, 过拟合(高方差)

正则化项:  

添加正则化项后的梯度算法:

        原理: 通过在损失函数中添加与模型参数相关的惩罚项,限制参数的复杂度,从而提升模型的泛化能力。 (使得W尽可能小以此使得函数趋于平滑)

        λ过大: 参数被过度压缩,模型过于简单,无法捕捉数据中的有效规律。

        λ过小: 正则化作用微弱,模型过度依赖训练数据中的噪声或局部特征。

        备注: 只要正则化得当, 更大的神经网络总是更好的。

例图:

根据交叉验证误差找到适合的λ:

λ取值与交叉验证误差及训练集误差的关系:

1.2.4 决策树 

        一种树形结构的监督学习模型,通过递归划分特征空间,对样本进行分类或回归。

递归分裂过程:

  1. 从根节点开始,计算所有特征的分裂指标(如信息增益)。
  2. 选择最优特征作为当前节点的分裂特征。
  3. 根据特征的取值将数据集划分为子集,生成子节点。
  4. 对每个子节点递归执行步骤1-3,直到满足停止条件。

停止条件:

  • 节点样本数小于预设阈值。
  • 所有样本属于同一类别。
  • 特征已用完或分裂后纯度提升不显著。

        ​预剪枝: 在树生长过程中提前终止分裂。如设置最大深度

 信息熵:度量数据集的混乱程度。值越小分类越明确。图为二分类情况

 示例图:

推广多分类:

信息增益:特征分裂后熵的减少量。值越大特征越重要。图为二分类举例:

多分类推广: 

符号含义:

二分类分裂决策举例: 

  决策树处理处理连续值特征:

        1) 特征排序: 从小到大排序

        2) 候选分割点生成:相邻值的中间点作为候选分割点。

        3) ​计算分裂指标: 计算分裂后的信息增益(分类)或均方误差(回归)。

        4) 选择最优分割点

        5) 递归分裂

示例图: 选择分裂点(分类)

示例图: 选择分类点(回归, 预测值为叶子结点的平均值)

随机森林

         通过构建多棵决策树,结合投票(分类)或平均(回归)实现预测。

 训练步骤

        1) Bootstrap抽样:从D中有放回地抽取N个样本,形成子集D_{t}​。

        2) 构建决策树:在D_{t}上训练一棵CART(分类与回归树)树,每次分裂时仅考虑m个随机选择的特征。m=math.sqrt(总特征数)     

        3) 保存模型:将训练好的树ht​加入森林。

        4) 预测: 

               · 多数投票法(分类):每棵树对样本预测一个类别,最终选择得票最多的类别。

               · 平均值(回归):所有树的预测结果取平均。

        放回抽样: 每次从总体中随机抽取一个样本后,​将该样本放回总体,确保它在后续抽取中仍有可能被再次选中。

基尼系数公式:

符号含义:

        作用:衡量数据集的不纯度。基尼系数越小,数据越“纯净”(同一类样本占比越高)。

基尼指数公式:

符号含义:

        作用:衡量按特征 A 分裂后的整体不纯度。决策树选择基尼指数最小的特征进行分裂。

        XGBoost思想: 在每一轮迭代中,通过拟合前序模型的预测残差(负梯度方向),并自动调整对预测不准样本的关注度,同时结合正则化防止过拟合。

1.3 非监督学习算法

1.3.1 聚类算法

        将未标记的数据划分为若干组(簇), 组内相似性高, 组间差异性大。

        K-means算法: 随机初始化K个中心点 → 分配数据点到最近中心 → 更新中心点 → 迭代至收敛。 

 ​K-means算法流程:

 k-means工作示例:

质心:

 符号含义:

不同初始化时的可能情况: 

肘部算法: 选取合适的K值

1.3.2 异常检测

        密度评估:  当P(x)小于某个值时, 为可疑异常, 相比较监督算法, 更容易发现从未出现过的异常

正态分布(高斯分布)的概率密度函数

 

推广(向量):

非高斯特征转化 :

协调过滤:

回归成本函数:

梯度算法:

均值归一化作用: 若无评分数据,使用全局均值 μglobal​ 作为初始预测值。

预测值:

基于内容的过滤算法:

        PCA算法: 无监督的线性降维方法,通过正交变换将高维数据投影到低维空间,保留数据中的最大方差。以期用更少的特征(主成分)解释原始数据中的大部分变异性。

与线性回归的区别:

1.3.3 强化学习 

贝尔曼方程:

  • Agent(智能体):决策主体,执行动作(Action)。
  • State(状态 s):环境在某一时刻的描述。
  • Action(动作 a):Agent的行为选择。
  • Reward(奖励 R(s)):环境对Agent动作的即时反馈。
  • Value Function(价值函数):衡量状态或动作的长期价值(Q(s,a))。
  • 其中γ∈[0,1]为折扣因子

小批量处理实现流程:

  1. 数据分块:将训练集随机划分为多个小批量。
  2. 前向传播:对当前小批量计算模型输出。
  3. 损失计算:根据预测值和真实标签计算损失(如交叉熵、均方误差)。
  4. 反向传播:计算损失对参数的梯度。
  5. 参数更新:使用优化算法(如SGD、Adam)更新模型参数。
  6. 重复:遍历所有小批量完成一个训练周期(Epoch)。

        优势: 避免一次性加载全部数据, 更新更频繁,加快收敛。

软更新

二、深度学习

2.1 基本概念

        输入层: x向量表示原始数据

        隐藏层: 如下图 layer1 到 layer3输出激活值(向量)。通过权重和激活函数提取抽象特征。

        输出层: layer4, 生成最终预测结果(如分类概率)。

        神经元(节点)​:每层的圆圈代表一个神经元,负责接收输入信号并计算输出。

        激活函数: 引入非线性,使网络能够拟合复杂函数。

前向传播示例图:

三种激活函数:

        备注: 梯度下降时sigmoid两端导函数为0, 二ReLu只有一端。

        为什么模型需要激活函数: 使得模型非线性。神经都是线性回归则神经网络只是一个线性回归。

反向传播: 通过链式法则,依次计算每一层的梯度

举例:

 梯度下降: 利用反向传播计算的梯度,梯度下降通过以下公式更新参数

2.3 多分类与多标签分类

        多分类: 将样本分配到唯一一个类别中, 如数字识别

        多标签分类: 为样本分配多个相关标签, 如图像标注(包含“山”“湖”“树”)

多分类举例: 输出每个类别的概率,选择最大概率对应的类别。

损失函数:

 

网络层

        密集层

        卷积层

2.4 模型评估

数据集划分

        1) 训练集​(Training Set):用于模型训练(通常占60-80%)。

        2) 验证集: 用于调参, 学习数据中的潜在规律。

        3) 测试集​(Test Set):模拟“未知数据”,用于最终评估。

        意义: 若模型仅在训练集上表现好,但在测试集上差,说明模型过拟合(过度记忆训练数据细节),泛化能力弱。

        备注: 避免测试集调参, 若根据测试集结果反复调整模型,导致模型间接拟合测试集。

2.4.1 偏差与方差

        偏差(Bias)​:指模型预测值的期望与真实值之间的差距,反映了模型对数据的拟合能力。高偏差意味着模型过于简单,无法捕捉数据中的潜在关系,导致欠拟合​(Underfitting)。

        方差(Variance)​:指模型对训练数据中微小变化的敏感程度,反映了模型的稳定性。高方差意味着模型过于复杂,过度拟合训练数据中的噪声,导致过拟合​(Overfitting)。

 高偏差(左), 高方差(右) 

2.4.2 诊断偏差与方差

高偏差(欠拟合)​:训练集和验证集误差均高。

解决方案:

        1) 可增加模型复杂度(如使用更高阶多项式、深层神经网络)

        2) 添加更多特征或改进特征工程

        3) 减少正则化强度(如降低λ值)

高方差(过拟合)​:训练误差低,验证误差高且差距大。表现: J(验证集)>>J(训练集)

解决方案:

       1) 可降低模型复杂度(如减少神经网络层数、剪枝决策树)。

        2) 增加训练数据量或使用数据增强。

        3) 增强正则化

 多项式阶数(x轴) 与 交叉验证误差 及 训练集误差 的关系:

学习曲线: 

高偏差学习曲线情况(红线, 较人类水平相比): 

高方差学习曲线情况(前半段): 

训练神经网络的一般步骤: 

数据增强: 在现有的训练样本上修改生成另一个训练样本

 迁移学习: 预训练

两者区别:

维度数据增强迁移学习
核心目标增加数据多样性,提升模型泛化能力复用已有知识,降低目标领域训练成本
依赖条件需要少量原始数据需要源领域模型或相关数据
适用阶段数据准备阶段模型训练阶段
技术范畴数据预处理/正则化模型优化/跨任务学习
典型应用领域图像、文本、语音等所有数据驱动的任务深度学习、跨领域任务(如医疗、金融)

2.4.3 精确度与召唤率

        混淆矩阵:TP(真正例)、TN(真负例)、FP(假正例)、FN(假负例)。

        1) 真正例(TP, True Positive)​:实际为正类,预测也为正类。

        ​2) 假正例(FP, False Positive)​:实际为负类,预测为正类(误报)。

        ​3) 真负例(TN, True Negative)​:实际为负类,预测也为负类。

        ​4) 假负例(FN, False Negative)​:实际为正类,预测为负类(漏报)。

        精确率(Precision)​\frac{TP}{TP+FP}(预测为正的样本中实际为正的比例)。关注预测的准确性

        召回率(Recall)​\frac{TP}{TP+FN}​(实际为正的样本中被正确预测的比例)。关注正类的覆盖率

例子:癌症检测

        设测试集有 ​100 名患者,其中 ​10 人患癌(正类) , 90 人健康(负类)​。模型预测结果如下

  • 正确预测
    • 癌症患者:8 人(TP = 8)。
    • 健康患者:83 人(TN = 83)。
  • 错误预测
    • 将 7 名健康人误诊为癌症(FP = 7)。
    • 漏诊 2 名癌症患者(FN = 2)。

混淆矩阵

预测患癌预测健康
实际患癌TP = 8FN = 2
实际健康FP = 7TN = 83

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com