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

门户网站是网络表达吗工业和信息化部投诉电话

门户网站是网络表达吗,工业和信息化部投诉电话,阳江问政平台官网入口,网站开发与设计的参考文献省流版#xff1a; 本文介绍机器学习中的回归算法#xff1a;逻辑回归、KNN、SVM、随机森林和XGBoost。作为机器学习的有监督学习方法#xff0c;分类模型是最重要也是最常见的一类算法#xff0c;在数据分析等岗位的笔试面试中都是常客#xff0c;非常值得深入研究…省流版 本文介绍机器学习中的回归算法逻辑回归、KNN、SVM、随机森林和XGBoost。作为机器学习的有监督学习方法分类模型是最重要也是最常见的一类算法在数据分析等岗位的笔试面试中都是常客非常值得深入研究 内容很多创作不易如果对你有帮助的话还请三连支持~ 有监督学习——分类算法目的是根据输入的特征将数据分为不同的类别从而对数据进行分类 逻辑回归 原理逻辑回归模型基于线性回归模型通过对线性组合进行非线性映射将结果映射到0和1之间的概率值表示某个样本属于某个类别的概率。 公式 sigmoid激活函数其中h(x)是样本x属于正类的概率θ是模型参数 sigmoid激活函数的输出值始终在0和1之间而且当输入为0时输出为0.5。在逻辑回归模型中sigmoid函数将线性方程的输出转换为属于0到1之间的概率值为我们提供了一个 评估样本是否属于某个分类的工具。siemoi激活函数的优点是它可以对输入信号进行非线性映射和压缩使输入信号更具表达力。但是缺点是它产生了“梯度消失”问题因为在极端值(远离0)处斜率接近0这意味着梯度也会很小从而导致训练变慢或停止。 损失函数 定义交叉熵损失函数。推导方法根据函数图像理解 给定y1时损失函数为-log(p)估计出来的概率p越小损失函数越大当概率p取0即预估的分类结果y0时loss值是趋近于正无穷的表明我们分错了实际分类结果是1给定y0时损失函数为-log(1-p)估计出来的概率p越大损失函数越大当概率p取1即预估的分类结果y1时loss值是趋近于正无穷的表明我们分错了实际分类结果是1 Python代码 Python # 导入所需的库 import numpy as np from sklearn.linear_model import LogisticRegression from sklearn.datasets import make_classification from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score# 创建示例数据 X, y make_classification(n_samples1000, n_features10, n_classes2, random_state42)# 将数据集划分为训练集和测试集 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)# 创建逻辑回归模型对象 model LogisticRegression()# 使用训练数据拟合模型 model.fit(X_train, y_train)# 使用模型进行预测 y_pred model.predict(X_test)# 计算模型准确率 accuracy accuracy_score(y_test, y_pred) print(模型准确率, accuracy) K近邻KNN 原理 如果一个样本在特征空间中的K个最近邻中的大多数属于某个类别则该样本也属于这个类别。分类问题KNN通过计算样本与训练集中所有样本的距离并选择距离最近的K个样本来确定样本的类别。回归问题KNN通过计算最近邻的平均值来预测目标变量的值。 计算方法 选择距离度量方法通常使用欧氏距离两点直线距离或曼哈顿距离沿轴的距离等作为距离度量方法。计算距离对于每个待预测的样本计算它与训练集中所有样本的距离。选择最近的K个样本根据计算得到的距离选择距离最近的K个样本。投票或平均对于分类问题采用多数投票的方式确定样本的类别对于回归问题采用这K个样本的平均值作为预测值。 Python # 导入所需的库 from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import accuracy_score# 加载鸢尾花数据集 iris load_iris() X iris.data y iris.target# 将数据集划分为训练集和测试集 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)# 创建KNN分类器对象设置K3 knn_classifier KNeighborsClassifier(n_neighbors3)# 使用训练数据拟合模型 knn_classifier.fit(X_train, y_train)# 使用模型进行预测 y_pred knn_classifier.predict(X_test)# 计算模型准确率 accuracy accuracy_score(y_test, y_pred) print(模型准确率, accuracy) 文中部分内容来自GPT4.0生成对我个人而言这是最重要的生产力工具之一详细的使用教程可以参见下面这篇博客GPT4.0使用教程 支持向量机SVM 原理 在分类问题中支持向量机的目标是找到一个超平面将不同类别的样本分隔开同时使得间隔margin最大化。支持向量机的核心思想是利用支持向量即距离超平面最近的样本点来构建分类决策边界。 计算方法 选择核函数支持向量机可以使用不同的核函数来处理非线性分类问题常用的核函数包括线性核、多项式核、高斯核等。构建优化问题支持向量机的优化问题通常是一个凸优化问题其目标是最大化间隔并且满足约束条件即使得样本点被正确地分类。求解优化问题可以使用优化算法如SMO算法、梯度下降等来求解支持向量机的优化问题得到最优的分类超平面和支持向量。预测利用训练得到的模型对新的样本进行分类预测根据样本到超平面的距离来判断其所属类别。 核函数的作用 将数据映射到高维空间 核函数将原始输入空间中的数据映射到一个更高维的特征空间中使得原本线性不可分的问题变得线性可分。这种映射通常是非线性的因此可以将低维空间中复杂的数据结构映射到高维空间中的简单结构。构建非线性决策边界 在高维特征空间中线性分类器如超平面能够更容易地将数据分开从而构建一个非线性决策边界。这使得 SVM 能够处理非线性分类问题并且具有很强的泛化能力。避免计算高维空间的复杂性 尽管核函数将数据映射到了高维空间但 SVM 的优化问题仍然是在原始输入空间中求解的。核函数的巧妙之处在于它们通过内积计算的方式避免了显式地计算高维特征空间中的数据点从而减少了计算的复杂性。 SVM怎么解决多分类问题 支持向量机Support Vector MachineSVM最初是用于解决二分类问题的但可以通过一些技巧扩展到多分类问题。下面是一些常用的方法 一对一One-vs-One方法 这种方法将每个类别的样本分为一组然后构建一对一的二分类器。也就是说对于K个类别将会构建K*(K-1)/2个分类器。当需要进行分类时每个分类器投票给一个类别最终选择得票最多的类别作为样本的分类结果。一对其余One-vs-Rest方法 这种方法将每个类别的样本作为一个类别而其他所有类别的样本作为另一个类别。然后构建K个二分类器每个分类器都是将一个类别的样本与其他所有类别的样本进行区分。在预测时选择具有最高置信度的类别作为样本的分类结果。多类别SVM 一些SVM库和算法可以直接处理多分类问题。例如LibSVM库中的多类别分类器就支持直接处理多分类问题。这些算法在内部实现了类似于一对一或者一对其余的策略但是更高效并且对参数调整更加友好。 Python# 导入所需的库 import numpy as np from sklearn.linear_model import LogisticRegression from sklearn.datasets import make_classification from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score# 创建示例数据 X, y make_classification(n_samples1000, n_features10, n_classes2, random_state42)# 将数据集划分为训练集和测试集 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)# 创建逻辑回归模型对象 model LogisticRegression()# 使用训练数据拟合模型 model.fit(X_train, y_train)# 使用模型进行预测 y_pred model.predict(X_test)# 计算模型准确率 accuracy accuracy_score(y_test, y_pred) print(模型准确率, accuracy) 随机森林 原理 随机森林由多个决策树组成每个决策树都是基于随机抽取的样本和随机选择的特征进行训练的。最终的分类或回归结果是基于所有决策树的投票或平均得到的。 什么是决策树 决策树算法是一种基于树形结构的分类和预测模型。决策树的每个节点代表一种决策每个分支代表一个可能的结果。通过计算不同的属性值和分类标签之间的信息增益或者基尼指数决策树算法能够自动检测出最相关的属性并以此来判断分类标签。 计算方法 随机抽样训练样本从原始训练数据集中随机抽取一定比例的样本用于训练每棵决策树。随机选择特征对于每棵决策树的每个节点随机选择一定数量的特征进行分裂。 构建决策树利用随机抽样的训练样本和随机选择的特征构建多棵决策树。每棵树都会根据特征的信息增益或基尼系数等准则进行分裂直到达到停止条件为止。集成预测对于分类任务采用多数投票的方式对于回归任务采用平均值的方式将所有决策树的预测结果进行集成得到最终的预测结果。 两处随机 在构建森林的时候每一棵树用一个随机抽样的数据集在构建树的过程中每次分裂都使用特征的一个随机子集。 随机森林不需要标准化 随机森林算法不受输入特征的尺度影响因为它是基于决策树的集成学习算法。决策树的分裂点并不依赖于特征的尺度而是根据数据的不纯度来选择最佳的分裂点。因此对特征进行标准化或归一化不会对随机森林的性能产生明显影响。 XGBoost和随机森林区别 XGBoost随机森林基础学习器梯度提升决策树每棵树的构建是通过迭代拟合残差多棵决策树每棵树独立建立通过随机选择特征和样本来构建不同的树然后将它们的结果进行集成集成方式加法模型通过组合多个弱学习器得到一个强大的模型。每个弱学习器都是在前面学习器的基础上通过梯度下降的方式来最小化损失函数。随机森林采用投票或平均的方式对多棵决策树的结果进行集成对于分类问题采用多数投票对于回归问题采用平均值。参数学习率、树的深度、子采样比例等决策树的数量、每棵树的最大深度等性能更适用大规模数据、高维稀疏数据更适用于相对低维、特征较少 Python # 导入所需的库 from sklearn import datasets from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import accuracy_score# 加载示例数据集 iris datasets.load_iris() X iris.data y iris.target# 将数据集划分为训练集和测试集 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)# 创建随机森林分类器对象 rf_classifier RandomForestClassifier(n_estimators100, random_state42)# 使用训练数据拟合模型 rf_classifier.fit(X_train, y_train)# 使用模型进行预测 y_pred rf_classifier.predict(X_test)# 计算模型准确率 accuracy accuracy_score(y_test, y_pred) print(模型准确率, accuracy) XGBoost 原理 通过迭代地训练决策树模型并利用梯度下降的方法来最小化损失函数。在每一轮迭代中XGBoost 首先计算出当前模型的梯度和二阶导数然后构建一个新的决策树模型来拟合这些梯度和二阶导数以减小损失函数。最终多个决策树模型的预测结果进行加权平均得到最终的预测结果。 计算方法 初始化预测值首先将所有样本的预测值初始化为一个常数通常选择训练数据中的目标变量的平均值。迭代训练决策树通过多轮迭代每轮迭代都训练一个新的决策树模型以最小化损失函数。计算损失函数的一阶和二阶导数对于给定的目标变量和当前模型的预测值计算损失函数的一阶导数梯度和二阶导数Hessian矩阵。构建决策树模型基于损失函数的一阶和二阶导数构建一个新的决策树模型使得在每个叶子节点上的值最小化损失函数。更新预测值利用新构建的决策树模型更新所有样本的预测值。重复迭代重复以上步骤直到达到预定的迭代次数或者达到损失函数的停止条件。 XGBoost和随机森林区别 XGBoost随机森林基础学习器梯度提升决策树每棵树的构建是通过迭代拟合残差多棵决策树每棵树独立建立通过随机选择特征和样本来构建不同的树然后将它们的结果进行集成集成方式加法模型通过组合多个弱学习器得到一个强大的模型。每个弱学习器都是在前面学习器的基础上通过梯度下降的方式来最小化损失函数。随机森林采用投票或平均的方式对多棵决策树的结果进行集成对于分类问题采用多数投票对于回归问题采用平均值。参数学习率、树的深度、子采样比例等决策树的数量、每棵树的最大深度等性能更适用大规模数据、高维稀疏数据更适用于相对低维、特征较少 boosting算法属于串行为什么xgboost可以并行训练 特征并行将特征按照列进行切分每个处理器负责处理一部分特征可以加速特征的处理过程。数据并行将数据按照行进行切分每个处理器负责处理一部分数据可以加速模型的训练过程。基学习器并行Xgboost算法支持多线程训练可以同时训练多个基学习器加快训练速度。分布式训练:Xgboost算法支持分布式训练可以将数据分布在多台机器上进行训练进一步加速训练速度。 xgboost怎么解决样本不均衡问题 采样方法欠采样或过采样调整样本权重 调整样本权重import xgboost as xgb from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score# 假设 X_train, y_train 是训练集的特征和标签 # X_test, y_test 是测试集的特征和标签# 将数据转换为 DMatrix 格式 dtrain xgb.DMatrix(X_train, labely_train) dtest xgb.DMatrix(X_test, labely_test)# 设置样本权重 # 假设客户流失的样本权重为 5客户不流失的样本权重为 1 weight [5 if label 1 else 1 for label in y_train]# 定义参数 params {objective: binary:logistic,eval_metric: error,# 设置正例的权重scale_pos_weight: sum(y_train 0) / sum(y_train 1), }# 训练模型 bst xgb.train(params, dtrain, num_boost_round100, evals[(dtest, test)], early_stopping_rounds10, verbose_evalFalse)# 在测试集上进行预测 y_pred bst.predict(dtest) y_pred_binary [1 if p 0.5 else 0 for p in y_pred]# 计算准确率 accuracy accuracy_score(y_test, y_pred_binary) print(Accuracy: %.2f%% % (accuracy * 100.0)) Python # 导入所需的库 import xgboost as xgb from sklearn import datasets from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score# 加载示例数据集 iris datasets.load_iris() X iris.data y iris.target# 将数据集划分为训练集和测试集 X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42)# 构建 XGBoost 分类器对象 xgb_classifier xgb.XGBClassifier()# 使用训练数据拟合模型 xgb_classifier.fit(X_train, y_train)# 使用模型进行预测 y_pred xgb_classifier.predict(X_test)# 计算模型准确率 accuracy accuracy_score(y_test, y_pred) print(模型准确率, accuracy) 总结 本期内容主要介绍了回归算法。作为有监督算法的一种回归算法是最常见、最重要也是在业务场景中使用的最多的一类机器学习算法在保研考研复试和数据分析等岗位面试中经常出现非常值得深入研究。 文中部分内容来自GPT4.0生成对我个人而言这是最重要的生产力工具之一详细的使用教程可以参见下面这篇博客 GPT4.0使用教程
http://www.pierceye.com/news/144162/

相关文章:

  • wordpress获取所有标签页那些网站用不着做优化
  • 大有网网站现在较为常用的网站开发技术
  • 太原建站公司有哪些网站统计 wordpress
  • 网站轮播图怎么保存盛锡福网站
  • 做网站用百度浏览器网络营销案例分析试题
  • 当建设部门网站南宁网站的优化
  • wordpress访问文件夹成都黑帽seo
  • 上海市建设工程安全质量监督总站网站做配资网站
  • 网站管理建设的需求分析小程序开发教程免费
  • 石家庄网站建设电话重庆最便宜的网站建设
  • 人才网站建设策划书pc网站建设
  • 做网站用哪几个端口 比较好微信营销
  • 网站开发价格有专业做网站的吗网站公司
  • 西安网站建设全包做网站要多少
  • 如何建设传奇网站怎样做招嫖网站
  • 企石镇网站仿做连云港网站开发
  • php 网站做分享功能重庆建设工程信息网30系统
  • 西部数码创建php网站北京上云网站建设公司
  • 中标建设集团有限公司 网站游戏开发软件有哪些
  • 上饶哪里做网站办公家具网站建设公司
  • 建设银行园湖路支行网站外贸网站建设需要注意什么
  • 失物招领网站开发项目需求分析app开发定制公司哪家好做
  • 网站不用备案阿里云 wordpress搭建网站
  • 重庆网站推广软件小朋友做安全教育的网站
  • 商家自己做的商品信息查询网站互联网有哪些行业
  • 用dw做网站时怎么添加弹窗知名网站服务器
  • 网站备案做优惠券第一营销网
  • 网站策划的基本过程全国大型网站建设
  • 个人外贸网站杭州微网站建设公司
  • wordpress皮肤下载站安徽建设工程信息网官方网站