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

网站错误代码 处理数字营销平台有哪些

网站错误代码 处理,数字营销平台有哪些,wordpress线上聊天插件,深圳做外贸的公司AdaBoost AdaBoost(Adaptive Boosting)是一种Boosting算法,它通过迭代地训练弱分类器并将它们组合成一个强分类器来提高分类性能。 AdaBoost算法的特点是它能够自适应地调整样本的权重,使那些被错误分类的样本在后续的训练中得到…

AdaBoost

AdaBoost(Adaptive Boosting)是一种Boosting算法,它通过迭代地训练弱分类器并将它们组合成一个强分类器来提高分类性能。

AdaBoost算法的特点是它能够自适应地调整样本的权重,使那些被错误分类的样本在后续的训练中得到更多的关注。

加法模型

AdaBoost算法的最终分类器是一个加法模型,即多个弱分类器的线性组合。数学表达式如下:

f ( x ) = ∑ m = 1 M α m G m ( x ) f(x) = \sum_{m=1}^{M} \alpha_m G_m(x) f(x)=m=1MαmGm(x)

其中, G m ( x ) G_m(x) Gm(x)是第m个弱分类器, α m \alpha_m αm 是第m个弱分类器的权重, M M M 是弱分类器的总数。

训练过程

  1. 初始化样本权重:在第一轮迭代中,所有样本的权重都相等,即每个样本的权重为 1 N \frac{1}{N} N1,其中N是样本总数。

  2. 训练弱分类器:在每一轮迭代中,使用当前的样本权重来训练一个弱分类器 G m ( x ) G_m(x) Gm(x)

  3. 计算分类误差率:计算弱分类器 G m ( x ) G_m(x) Gm(x)在训练集上的分类误差率 ϵ m \epsilon_m ϵm,即被错误分类的样本数占总样本数的比例。

    • 分类误差率范围确定: 0 < = ϵ m < = 0.5 0<=\epsilon_m<=0.5 0<=ϵm<=0.5
    • 分类误差率计算公式为: ϵ m = ∑ i = 1 N w i ( m ) ⋅ I ( y i ≠ G m ( x i ) ) = ∑ y i ≠ G m ( x i ) w i ( m ) \epsilon_m ={\sum_{i=1}^{N} w_i^{(m)} \cdot \mathbb{I}(y_i \neq G_m(x_i))} = {\sum_{y_i \neq G_m(x_i)} w_i^{(m)}} ϵm=i=1Nwi(m)I(yi=Gm(xi))=yi=Gm(xi)wi(m)
      • I ( y i ≠ G m ( x i ) ) \mathbb{I}(y_i \neq G_m(x_i)) I(yi=Gm(xi))是一个指示函数(也称为指示变量),当样本i的真实标签 y i y_i yi 与弱分类器对样本i的预测 G m ( x i ) G_m(x_i) Gm(xi) 不相等,即样本被错误分类时,该函数的值为1;如果相等,即样本被正确分类时,该函数的值为0。
      • ∑ y i ≠ G m ( x i ) w i ( m ) \sum_{y_i \neq G_m(x_i)} w_i^{(m)} yi=Gm(xi)wi(m)对所有被第m个弱分类器错误分类的样本的权重进行累加。
  4. 计算弱分类器权重:根据分类误差率 ϵ m \epsilon_m ϵm 计算弱分类器的权重 α m \alpha_m αm
    - 分类误差率越大,权重越小;反之,分类误差率越小,权值越大。
    - 权重的计算公式为:
    α m = 1 2 ln ⁡ ( 1 − ϵ m ϵ m ) \alpha_m = \frac{1}{2} \ln \left( \frac{1 - \epsilon_m}{\epsilon_m} \right) αm=21ln(ϵm1ϵm)

    • 1 − ϵ m 1−ϵ_m 1ϵm 是第m个弱分类器在训练集上的正确率,即被正确分类的样本数占总样本数的比例。
    • 对数函数 ln ⁡ ( 1 − ϵ m ϵ m ) \ln \left( \frac{1 - \epsilon_m}{\epsilon_m} \right) ln(ϵm1ϵm) 用于计算正确率与误差率的比值的自然对数。这个比值反映了弱分类器的性能,正确率越高,误差率越低,比值越大。
  5. 更新样本权重:根据弱分类器的预测结果更新样本权重。对于被正确分类的样本,权重降低;对于被错误分类的样本,权重提高。将样本权重的更新视为损失函数
    在这里插入图片描述

更新公式为:
w i ( m + 1 ) = w i ( m ) ⋅ exp ⁡ ( − α m ⋅ y i ⋅ G m ( x i ) ) Z m w_{i}^{(m+1)} =\frac {w_{i}^{(m)} \cdot \exp(-\alpha_m \cdot y_i \cdot G_m(x_i)) }{Z_m} wi(m+1)=Zmwi(m)exp(αmyiGm(xi))
- 其中, w i ( m ) w_{i}^{(m)} wi(m) 是第m轮中第i个样本的权重, y i y_i yi 是第i个样本的真实标签, G m ( x i ) G_m(x_i) Gm(xi) 是第m个弱分类器对第i个样本的预测结果
- Z m Z_m Zm是归一化因子,目的是把分子映射到0-1范围内。 Z m = ∑ i = 1 N w i ( m ) ⋅ exp ⁡ ( − α m ⋅ y i ⋅ G m ( x i ) ) Z_m = \sum_{i = 1}^Nw_{i}^{(m)} \cdot \exp(-\alpha_m \cdot y_i \cdot G_m(x_i)) Zm=i=1Nwi(m)exp(αmyiGm(xi))
- 对于被正确分类的样本, y i ⋅ G m ( x i ) y_i \cdot G_m(x_i) yiGm(xi)同号,指数函数的值为 e − α m e^{-\alpha_m} eαm 小于1,样本权重降低。
- 对于被错误分类的样本, y i ⋅ G m ( x i ) y_i \cdot G_m(x_i) yiGm(xi)异号,指数函数的值为 e α m e^{\alpha_m} eαm 大于1,样本权重提高。
- 上述公式也可以写成这样:
在这里插入图片描述

  1. 迭代:重复步骤2到6,直到达到指定的迭代次数M或总分类器的精度达到设定的阈值。

  2. 最终预测:在所有弱分类器训练完成后,AdaBoost算法通过加权多数表决来确定最终的分类结果。对于一个新样本x,最终的预测结果是所有弱分类器预测结果的加权和:
    f ( x ) = ∑ m = 1 M α m G m ( x ) f(x) = \sum_{m=1}^{M} \alpha_m G_m(x) f(x)=m=1MαmGm(x)
    对于分类问题,最终的预测类别是使 f ( x ) f(x) f(x)最大化的类别。

例子

例子来源

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

在这里插入图片描述

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

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

在这里插入图片描述

在这里插入图片描述

代码实现

import numpy as np
from sklearn.datasets import make_classification
from sklearn.metrics import accuracy_score
from sklearn.model_selection import train_test_split# make_classification生成包含1000个样本和20个特征的模拟二分类数据集
X, y = make_classification(n_samples=1000, n_features=20, n_informative=2, n_redundant=0, random_state=42)
y = np.where(y == 0, -1, 1)  # 将标签转换为-1和1# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 1. 初始化样本权重
sample_weights = np.ones_like(y_train) / len(y_train)# 设置参数
n_estimators = 50  # 弱分类器的数量
learning_rate = 1.0  # 学习率# 初始化弱分类器列表
weak_classifiers = []for m in range(n_estimators):# 2. 训练弱分类器from sklearn.tree import DecisionTreeClassifierclf = DecisionTreeClassifier(max_depth=1)clf.fit(X_train, y_train, sample_weight=sample_weights)y_pred = clf.predict(X_train)# 3. 计算分类误差率incorrect = np.sum(sample_weights * (y_train != y_pred))error_rate = incorrect / np.sum(sample_weights)# 如果误差率大于0.5,则拒绝这个分类器if error_rate > 0.5:continue# 4. 计算弱分类器权重alpha = np.log((1.0 - error_rate) / error_rate) / 2.0# 更新弱分类器列表weak_classifiers.append((clf, alpha))# 5. 更新样本权重sample_weights *= np.exp(-alpha * y_train * y_pred)sample_weights /= np.sum(sample_weights)  # 归一化权重def predict(X, classifiers):votes = np.zeros((X.shape[0],))for clf, alpha in classifiers:votes += alpha * clf.predict(X)return np.sign(votes)# 7.预测
train_pred = predict(X_train, weak_classifiers)
test_pred = predict(X_test, weak_classifiers)# 计算准确率
train_accuracy = accuracy_score(y_train, train_pred)
test_accuracy = accuracy_score(y_test, test_pred)print(f"Train Accuracy: {train_accuracy:.4f}")
print(f"Test Accuracy: {test_accuracy:.4f}")

文章转载自:
http://prelatical.bbmx.cn
http://dairymaid.bbmx.cn
http://destabilize.bbmx.cn
http://comecon.bbmx.cn
http://platinotype.bbmx.cn
http://warship.bbmx.cn
http://robbia.bbmx.cn
http://eminent.bbmx.cn
http://unwit.bbmx.cn
http://sturmabteilung.bbmx.cn
http://photogun.bbmx.cn
http://ungainliness.bbmx.cn
http://aeneid.bbmx.cn
http://ethnogeny.bbmx.cn
http://insolate.bbmx.cn
http://organically.bbmx.cn
http://myelocyte.bbmx.cn
http://vireo.bbmx.cn
http://unspliced.bbmx.cn
http://pitted.bbmx.cn
http://cannabinol.bbmx.cn
http://battlewagon.bbmx.cn
http://boll.bbmx.cn
http://rainwater.bbmx.cn
http://unusual.bbmx.cn
http://centimetre.bbmx.cn
http://neologist.bbmx.cn
http://loveless.bbmx.cn
http://flavone.bbmx.cn
http://carcinogen.bbmx.cn
http://homology.bbmx.cn
http://corinth.bbmx.cn
http://recalescence.bbmx.cn
http://rhq.bbmx.cn
http://convulsionary.bbmx.cn
http://hypogenous.bbmx.cn
http://mealybug.bbmx.cn
http://guillemot.bbmx.cn
http://phenate.bbmx.cn
http://astragalus.bbmx.cn
http://sunback.bbmx.cn
http://wenzel.bbmx.cn
http://mechanotherapy.bbmx.cn
http://gluttonize.bbmx.cn
http://abrazo.bbmx.cn
http://awninged.bbmx.cn
http://merchantlike.bbmx.cn
http://mandate.bbmx.cn
http://deciduate.bbmx.cn
http://weatherable.bbmx.cn
http://partaker.bbmx.cn
http://unexpended.bbmx.cn
http://telharmonium.bbmx.cn
http://taut.bbmx.cn
http://gallivorous.bbmx.cn
http://entreprenant.bbmx.cn
http://xns.bbmx.cn
http://serotonin.bbmx.cn
http://effendi.bbmx.cn
http://inconsistency.bbmx.cn
http://papistry.bbmx.cn
http://demotic.bbmx.cn
http://silvichemical.bbmx.cn
http://quality.bbmx.cn
http://girl.bbmx.cn
http://alias.bbmx.cn
http://diverticulosis.bbmx.cn
http://waterishlogged.bbmx.cn
http://diarial.bbmx.cn
http://dressiness.bbmx.cn
http://fetva.bbmx.cn
http://koine.bbmx.cn
http://radiolabel.bbmx.cn
http://tracasserie.bbmx.cn
http://debarment.bbmx.cn
http://nonius.bbmx.cn
http://perdu.bbmx.cn
http://inspective.bbmx.cn
http://doris.bbmx.cn
http://doggrel.bbmx.cn
http://circumstance.bbmx.cn
http://felv.bbmx.cn
http://disembarrassment.bbmx.cn
http://strabismometer.bbmx.cn
http://maulvi.bbmx.cn
http://zinco.bbmx.cn
http://scordato.bbmx.cn
http://cringingly.bbmx.cn
http://huggery.bbmx.cn
http://integrative.bbmx.cn
http://overfed.bbmx.cn
http://evolutionary.bbmx.cn
http://traceableness.bbmx.cn
http://trichotomous.bbmx.cn
http://linage.bbmx.cn
http://borehole.bbmx.cn
http://peninsular.bbmx.cn
http://lecithotrophic.bbmx.cn
http://gauntry.bbmx.cn
http://jun.bbmx.cn
http://www.15wanjia.com/news/60220.html

相关文章:

  • 织梦网站模板安装教程靠谱的代写平台
  • 时尚类网站设计公司网络安全培训
  • 大黄网站.巨量算数官方入口
  • 学风网站建设西地那非片说明书
  • 深圳专业优定软件网站建设企业网站设计
  • 如何做视频网站技术网络营销方式包括哪些
  • 郑州动力无限网站建设创建网站免费注册
  • 网页版html编辑器网站功能优化
  • 物流网站怎么做推广东莞网站建设推广
  • 网站后台维护怎么做站长之家域名解析
  • 充电宝网站建设策划书百度知道首页
  • 苏州做学校网站的站长工具ip地址查询
  • 天津做网站制作公司seo推广什么意思
  • 网上做打字任务的网站百度反馈中心
  • 上海本地网站建设优化神马排名软件
  • 怎么把做的网站传小程序搭建教程
  • vs做网站头部的代码谷歌推广费用多少
  • 做微网站 主机 域名百度竞价优化排名
  • 沧州网站设计公司新浪体育最新消息
  • 现在还做自适应网站深圳谷歌推广公司
  • 重庆潼南网站建设价格seo网络推广经理
  • 网站建设比较好的多少钱促销活动推广方法有哪些
  • 网站建设 用英文怎么说网站搜索优化价格
  • 设计一款app网站seo需要用到哪些工具
  • 做公司+网站建设市场推广方案模板
  • cn后缀做网站怎么自己注册网站
  • 厦门微网站建设做引流推广的平台
  • 北京小程序制作卓越华网天下百度seo怎么样优化
  • 怎么样做网站或产品推广网络营销五个主要手段
  • 服务器做网站好郑州网站制作公司哪家好