赞
踩
随着时间的流逝,我们之前学过的知识可能忘了,链接回去,温故而知新。
机器学习的概念,七个步骤,分类问题,回归问题
这里是关于:推荐系统方面的学习总结
概念:研究因变量(目标)与自变量(特征)之间的关系
目的:帮助数据科学家,更好的选择最佳的变量集,用于建立预测模型
场景:价格预测,数量预测
背景:1889年道尔顿和他的朋友K.Pearson收集了上千个家庭的身高、臂长和腿长的记录,企图寻找出儿子们身高与父亲们身高之间的关系
多项式是一种常用的特征构造方法
岭回归和套索回归的混合技术,同时使用L2和L1正则
最小二乘估计是最小化残差平方和(RSS)
m
i
n
w
1
m
∑
i
(
y
i
−
w
T
x
i
)
2
min_w\frac{1}{m}\sum_i(y_i-w^Tx_{i})^2
minwm1∑i(yi−wTxi)2
lasso是最小化RSS中,加入了L1惩罚项(作为约束) m i n w 1 m ∑ i ( y i − w T x i ) 2 + λ n ∣ ∣ w 1 ∣ ∣ min_w\frac{1}{m}\sum_i(y_i-w^Tx_{i})^2+\frac{\lambda}{n}||w_1|| minwm1∑i(yi−wTxi)2+nλ∣∣w1∣∣
岭回归在最小化RSS中,加入了L2惩罚项 m i n w 1 m ∑ i ( y i − w T x i ) 2 + λ n ∣ ∣ w 2 ∣ ∣ min_w\frac{1}{m}\sum_i(y_i-w^Tx_{i})^2+\frac{\lambda}{n}||w_2|| minwm1∑i(yi−wTxi)2+nλ∣∣w2∣∣
数据地址:https://tianchi.aliyun.com/competition/entrance/231784/introduction
目标:给你一辆车的各个属性(除了price字段),预测它的价格
要求:使用神经网络、xgb、lgb等机器学习算法来完成预测
Field | Description |
---|---|
SaleID | 交易ID,唯一编码 |
name | 汽车交易名称,已脱敏 |
regDate | 汽车注册日期,例如20160101,2016年01月01日 |
model | 车型编码,已脱敏 |
brand | 汽车品牌,已脱敏 |
body Type | 车身类型:豪华轿车:0,微型车:1,厢型车:2,大巴车:3,敞篷车:4,双门汽车:5,商务车:6,搅拌车:7 |
fuelType | 燃油类型:汽油:0,柴油:1,液化石油气:2,天然气:3,混合动力:4,其他:5,电动:6 |
geatbox | 变速箱:手动:0,自动:1 |
power | 发动机功率:范围 [ 0, 600 ] |
kilometer | 汽车已行驶公里,单位万km |
notRepairedDamage | 汽车有尚未修复的损坏:是:0,否:1 |
regionCode | 地区编码,已脱敏 |
seller | 销售方:个体:0,非个体:1 |
offerType | 报价类型:提供:0,请求:1 |
creatDate | 汽车上线时间,即开始售卖时间 |
price | 二手车交易价格(预测目标) |
v系列特征 | 匿名特征,包含v0-14在内15个匿名特征 |
评价标准MAE(Mean Absolute Error):
MAE是L1 loss,MAE越小模型越准确
原始数据是用空格分隔
数据整体情况
查看缺失值,缺失值可视化
查看label的分布(该项目中price为label)
使用XGBoost,超参数设置
从目标中我们知道,价格是需要预测的值,可以用核密度函数观察实际价格分布符合哪种分布(使用johnsonsu,norm,lognorm分布)
结论:数据更符合johnsonsu分布,不符合正态分布
plt.hist(train_data['price'], color ='red')
plt.hist(np.log(train_data['price']), color ='red')
峰度用来描述取值分布形态陡缓程度的统计量
峰度为0表示该分布与正态分布的陡缓程度相同
峰度大于0表示分布与正态分布相比较为陡峭,为尖顶峰
峰度小于0表示分布与正态分布相比较为平坦,为平顶峰
sns.distplot(train_data['price'])
print("Skewness: %f" % train_data['price'].skew())
print("Kurtosis: %f" % train_data['price'].kurt())
brand_amount, brand_price_max, brand_price_min, brand_price_median,
brand_price_sum, brand_price_std, brand_price_mean
单模型XGBoost,MAE=1463 完善1和2,MAE=587
clf = lgb.LGBMRegressor (
num_leaves=2**5-1, reg_alpha=0.25, reg_lambda=0.25, objective='regression',
max_depth=-1, learning_rate=0.005, min_child_samples=3, random_state=2021,
n_estimators=2000, subsample=1, colsample_bytree=1,
)
num_leavel=2**5-1 #树的最大叶子数,对比XGBoost一般为2^(max_depth)
reg_alpha,L1正则化系数
reg_lambda,L2正则化系数
max_depth,最大树的深度
n_estimators,树的个数,相当于训练的轮数
subsample,训练样本采样率(行采样)
colsample_bytree,训练特征采样率(列采样)
xgb = xgb.XGBRegressor(
max_depth=6, learning_rate=0.05, n_estimators=2000,
objective='reg:linear', tree_method='gpu_hist',
subsample=0.8, colsample_bytree=0.8,
min_child_samples=3, eval_metric='auc', reg_lambda=0.5
)
注意: s u b s a m p l e , c o l s a m p l e b y t r e e 是 个 值 得 调 参 的 参 数 , 典 型 的 取 值 为 0.5 − 0.9 ( 取 0.7 效 果 可 能 更 好 ) \color{red}subsample, colsample_bytree是个值得调参的参数,典型的取值为0.5-0.9(取0.7效果可能更好) subsample,colsamplebytree是个值得调参的参数,典型的取值为0.5−0.9(取0.7效果可能更好)
结论:XGBoost效果相对LightGBM可能会好一些
根据各个模型的最终预测表现分配不同的权重,比如准确率高的模型给予更高的权重,准确率低的模型给予较小的权重。
将3个模型的预测结果进行加权融合,对比结果提升,评价指标采用MAE,MSE
predict1 = [1.2, 3.2, 2.1, 6.2]
predict2 = [0.9, 3.1, 2.0, 5.9]
predict3 = [1.1, 2.9, 2.2, 6.0]
y_true = [1, 3, 2, 6]
Voting策略,即选择所有模型输出结果中,最多的那个类(少数服从多数)
假
设
我
们
有
三
个
相
互
独
立
的
模
型
,
每
个
模
型
的
准
确
率
均
为
0.7
,
采
用
少
数
服
从
多
数
的
方
式
进
行
V
o
t
i
n
g
,
那
么
最
终
的
正
确
率
=
?
\color{red}假设我们有三个相互独立的模型,每个模型的准确率均为0.7,采用少数服从多数的方式进行Voting,那么最终的正确率=?
假设我们有三个相互独立的模型,每个模型的准确率均为0.7,采用少数服从多数的方式进行Voting,那么最终的正确率=?
在sklearn 中,VotingClassifier,实现了投票法,分为hard和soft。
hard, 硬投票, 少数服从多数(分类器)
soft, 软投票,有权值的投票(加权)
采用不同投放方式,分类结果是否有变化?
以iris分类为例,鸢尾花有四个属性,即花瓣的长宽,茎的长宽,根据这些属性把花分为三类,分别采用三个模型,并加权融合。
LogisticRegression(C=0.1)
RandomForestClassifier(n_estimators=10, max_depth=2)
SVC(C=0.1, probability=True)
3个FC层,每层神经元个数为250,激活函数 用ReLU 最后一个FC层,输出预测结果
weight,特征在提升树里出现的次数,即在所有树中,某个特征作为分裂节点的次数
gain,在所有树中,某个特征在分裂后带来的平均信息增益。
cover,与特征相关的记录(observation)的相对数量
比如有100条记录(observation),4个特征(feature) 和3棵树(tree),假设特征1用来确定Tree1,Tree2和Tree3中10,5和2个记录的叶节点
coverage = (10 + 5 + 2) / 100 = 17%
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。