
python机器学习实战
文章平均质量分 72
python机器学习实战
星幻夜极
这个作者很懒,什么都没留下…
展开
-
AdaBoost与GBDT模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》一、AdaBoost模型AdaBoost算法(Adaptive Boosting)是一种有效而实用的Boosting算法,它以一种高度自适应的方式按顺序训练弱学习器。针对分类问题,AdaBoost算法根据前一次的分类效果调整数据的权重,在上一个弱学习器中分类错误的样本的权重会在下一个弱学习器中增加,分类正确的样本的权重则相应减少,并且在每一轮迭代时会向模型加入一个新的弱学习器。不断重复调整权重和训练弱学习器,直到误分类数低于预设值或.原创 2022-02-01 17:35:26 · 1434 阅读 · 0 评论 -
关联分析:Apriori算法
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》步骤1:设定最小支持度和最小置信度首先设定最小支持度为2/5,即40%;最小置信度为4/5,即80%。步骤2:根据最小支持度找出所有的频繁项集这一步骤是关联分析中较为重要的一个环节,我们需要找到所有的频繁项集,因为强关联规则都是从频繁项集中产生的。举例来说,项集{A,B,C,D}只出现了1次,支持度为1/5,小于最小支持度2/5,该项集就不是频繁项集,这就意味着很难从该项集中挖掘出类似{A,B,C}→{D}的强关联规则,即.原创 2022-02-08 15:18:00 · 8165 阅读 · 2 评论 -
特征工程之数据预处理
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》一、非数值类型数据处理Get_dummies哑变量处理哑变量也叫虚拟变量,通常取值为0或1,上面提到的将性别中的“男”和“女”分别转换成数字1和0就是哑变量最经典的应用。在Python中,通常利用pandas库中的get_dummies()函数进行哑变量处理,它不仅可以处理“男”和“女”这种只有两个分类的简单问题,还可以处理含有多个分类的问题。# 非数值类型数据处理# Get_dummies哑变量处理import panda.原创 2022-02-03 15:00:24 · 1684 阅读 · 0 评论 -
XGBoost与Light-GBM算法
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》一、XGBoost算法XGBoost算法在某种程度上可以说是GBDT算法的改良版,两者在本质上都是利用了Boosting算法中拟合残差的思想。XGBoost算法的官方说明文档网址作为对GBDT算法的高效实现,XGBoost算法在以下两方面进行了优化。算法本身的优化:XGBoost算法的损失函数,除了本身的损失,还加上了正则化部分,可以防止过拟合,泛化能力更强。XGBoost算法的损失函数是对误差部分做二阶泰勒展开,相较于GBD.原创 2022-02-02 14:04:33 · 2853 阅读 · 0 评论 -
数据降维之PCA(主成分分析)
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》如果特征变量的数量非常多(如成百上千个特征变量),我们往往需要进行数据降维。降维的方法主要有选择特征和抽取特征两种:选择特征是从原有的特征中挑选出最佳的特征;抽取特征则是将数据由高维向低维投影,进行坐标的线性转换。PCA即为典型的抽取特征的方法,它不仅是对高维数据进行降维,更重要的是经过降维去除噪声,发现数据中的模式。基本用法# 三维空间降维Python代码实现import pandas as pdX = pd.DataFra.原创 2022-02-04 15:53:08 · 2820 阅读 · 1 评论 -
基于皮尔逊相关系数的电影智能推荐系统
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》# 1.读取数据import pandas as pdmovies = pd.read_excel('电影.xlsx')movies.head()score = pd.read_excel('评分.xlsx')score.head()df = pd.merge(movies, score, on='电影编号') # 通过“电影编号”列关联起来df.head()原创 2022-02-07 12:16:22 · 2315 阅读 · 0 评论 -
神经网络模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》# 1.数据读取import pandas as pddf = pd.read_excel('产品评价.xlsx')df.head()# 2.中文分词import jiebawords = []for i, row in df.iterrows(): word = jieba.cut(row['评论']) result = ' '.join(word) words.append(result).原创 2022-02-09 12:37:16 · 1039 阅读 · 0 评论 -
数据聚类与分群分析
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》KMeans算法KMeans算法名称中的K代表类别数量,Means代表每个类别内样本的均值,所以KMeans算法又称为K-均值算法。KMeans算法以距离作为样本间相似度的度量标准,将距离相近的样本分配至同一个类别。样本间距离的计算方式可以是欧氏距离、曼哈顿距离、余弦相似度等,KMeans算法通常采用欧氏距离来度量各样本间的距离。# 1.读取数据import pandas as pddata = pd.read_excel(.原创 2022-02-05 12:58:43 · 1755 阅读 · 0 评论 -
决策树模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》决策树模型的建树依据主要用到的是基尼系数的概念。基尼系数(gini)用于计算一个系统中的失序现象,即系统的混乱程度。基尼系数越高,系统的混乱程度就越高,建立决策树模型的目的就是降低系统的混乱程度,根据基尼系数判断如何划分节点,从而得到合适的数据分类效果。采用基尼系数进行运算的决策树也称为CART决策树。回归决策树模型的概念和分类决策树模型基本一致,最大的不同就是其划分标准不是基尼系数或信息熵,而是均方误差MSE。案例实战:员工离职.原创 2022-01-27 14:56:19 · 5763 阅读 · 0 评论 -
K近邻模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》K近邻算法分类模型将离待预测样本点最近的K个训练样本点中出现次数最多的分类作为待预测样本点的分类,K近邻算法回归模型则将离待预测样本点最近的K个训练样本点的平均值作为待预测样本点的分类。案例一# 1.读取数据import pandas as pddf = pd.read_excel('手写字体识别.xlsx')print(df.head())运行结果:# 2.提取特征变量和目标变量X = df.drop(colum.原创 2022-01-30 13:05:05 · 675 阅读 · 0 评论 -
朴素贝叶斯模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》朴素贝叶斯模型是一种非常经典的机器学习模型,它主要基于贝叶斯公式,在应用过程中会把数据集中的特征看成是相互独立的,而不需考虑特征间的关联关系,因此运算速度较快。相比于其他经典的机器学习模型,朴素贝叶斯模型的泛化能力稍弱,不过当样本及特征的数量增加时,其预测效果也是不错的。import pandas as pddf = pd.read_excel('肿瘤数据.xlsx')df.head()X = df.drop(columns.原创 2022-01-28 20:30:51 · 1649 阅读 · 0 评论 -
逻辑回归模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》逻辑回归模型本质就是将线性回归模型通过Sigmoid函数进行了一个非线性转换,得到一个介于0~1之间的概率值。因此,逻辑回归模型的本质是预测概率,而不是直接预测具体类别(如属于0还是1)。# 1.读取数据import pandas as pddf = pd.read_excel('股票客户流失.xlsx')df.head()运行结果:# 2.划分特征变量和目标变量X = df.drop(columns='是否流失').原创 2022-01-26 15:38:26 · 3711 阅读 · 0 评论 -
随机森林模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》集成模型简介集成学习模型使用一系列弱学习器(也称为基础模型或基模型)进行学习,并将各个弱学习器的结果进行整合,从而获得比单个学习器更好的学习效果。集成学习模型的常见算法有Bagging算法和Boosting算法两种。Bagging算法的典型机器学习模型为随机森林模型,而Boosting算法的典型机器学习模型则为AdaBoost、GBDT、XGBoost和LightGBM模型。Bagging算法假设原始数据共有10000条,从中.原创 2022-01-31 10:17:22 · 27488 阅读 · 0 评论 -
参数调优:K折交叉验证与GridSearch网格搜索
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》一、K折交叉验证在机器学习中,因为训练集和测试集的数据划分是随机的,所以有时会重复地使用数据,以便更好地评估模型的有效性,并选出最好的模型,该做法称为交叉验证。具体而言就是对原始样本数据进行切分,然后组合成为多组不同的训练集和测试集,用训练集训练模型,用测试集评估模型。某次的训练集可能是下次的测试集,故而称为交叉验证。交叉验证的方法有简单交叉验证、K折交叉验证和留一交叉验证3种。其中K折交叉验证应用较为广泛,它是指将数据集随机等分.原创 2022-01-27 15:29:51 · 2780 阅读 · 0 评论 -
模型评估方法:ROC曲线与KS曲线
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》对于二分类模型来说,主流的评估方法有ROC曲线和KS曲线两种。一、ROC曲线如果把假警报率理解为代价的话,那么命中率就是收益,所以也可以说在阈值相同的情况下,希望假警报率(代价)尽可能小,命中率(收益)尽可能高,该思想反映在图形上就是ROC曲线尽可能地陡峭。曲线越靠近左上角,说明在相同的阈值条件下,命中率越高,假警报率越低,模型越完善。#混淆矩阵的Python代码实现from sklearn.metrics import c.原创 2022-01-26 17:42:32 · 4612 阅读 · 0 评论 -
线性回归模型
本文代码及数据集来自《Python大数据分析与机器学习商业案例实战》1、一元线性回归#一元线性回归import pandas as pddf = pd.read_excel(r'D:\桌面\IT行业收入表.xlsx')X = df[['工龄']] #自变量集合要写成二维结构形式,即大列表里包含小列表Y = df['薪水']from matplotlib import pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei']pl.原创 2022-01-23 19:33:31 · 1254 阅读 · 0 评论