数据挖掘
文章平均质量分 71
数据挖掘
WGS.
道阻且长,与君共勉:你若对得起时间,时间便会对得起你。
展开
-
基于AdaBoostSVM的不平衡数据训练(原理+代码,超详细)
文章目录Boosting思想AdaBoostSVM最大间隔支持向量 & 支持向量平面寻找最大间隔AdaBoostSVM代码实现Boosting思想 Boosting一族是可将弱学习器提升为强学习器的算法,它的思想就是每一个基分类器纠正前一个基分类器的错误,至于纠正的方式不同所以有不同的boosting算法。算法思想如下:1.先从训练集训练出一个基学习器。2.再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续得到较大的关注。3.然后基于调整后的样本分布来训原创 2022-04-08 14:58:35 · 2677 阅读 · 0 评论 -
XGB 训练的时候添加自定义eval_metric:f1、准确率,并对样本、特征加权训练
文章目录XGB 训练的时候添加自定义eval_metric:f1、准确率,并对样本、特征加权训练随机搜索XGB 训练的时候添加自定义eval_metric:f1、准确率,并对样本、特征加权训练以下demo重点说明:eval_metric:用以训练的时候评估,必须要指定验证集,本博文分享自定义准确率、f1verbose:训练的时候对验证集评估是否打印,True和1等价,比如verbose=10,就会打印n_estimators // 10次feature_weights:特征加权训练,给一个sof原创 2022-04-07 16:35:01 · 5515 阅读 · 1 评论 -
原生LGB训练demo
文章目录假数据生成原生LGB训练sklearn LGB训练随机搜索调参假数据生成from sklearn.feature_selection import VarianceThresholdfrom sklearn.feature_selection import SelectKBest, f_classif, chi2from sklearn.feature_selection import RFEfrom xgboost.sklearn import XGBClassifierfrom li原创 2022-04-07 10:51:08 · 1981 阅读 · 0 评论 -
Caused by: java.lang.IllegalArgumentException: Cannot grow BufferHolder by size 1752 because the siz
报错如下:Caused by: java.lang.IllegalArgumentException: Cannot grow BufferHolder by size 9384 because the size after growing exceeds size limitation 2147483632不能按大小9384增加BufferHolder,因为增长后的大小超过了大小限制2147483632参考链接:https://docs.microsoft.com/zh-cn/azure/da原创 2022-03-06 10:05:00 · 3415 阅读 · 0 评论 -
连续特征分布直方图,并正太化,代码实现
import pandas as pd, numpy as np, warningspd.set_option('display.max_columns', 100)pd.set_option('display.width', 230)import seaborn as snsfrom scipy import stats, integrateimport matplotlib.pyplot as pltfrom scipy.stats import shapiro, kstestfrom s原创 2021-11-26 15:18:31 · 1948 阅读 · 0 评论 -
机器学习正负样本失衡时的评估指标参考,及代码实现
文章目录混淆矩阵GAUC修改F1SpecificityG-MeanMCC----GAUC代码实现修改F1代码实现MCC代码实现参考自:https://www.zhihu.com/question/428547855https://www.jianshu.com/p/7919ef304b19混淆矩阵预测结果真实结果正例反例正例TP(真正例)FN(假反例)反例FP(假正例)TN(真反例)F1=2∗P∗RP+RF1 = \frac{2 * P *原创 2021-11-26 15:00:27 · 2156 阅读 · 2 评论 -
机器学习中样本不平衡的解决方案
文章目录采样正样本过采样正样本smote负样本欠采样基于聚类的随机采样(CBO)SMOTEBoost(采样方法和集成学习的集成)将二分类看成一分类或异常检测问题focal lossimbalance-XGBoost正负样本失衡时的评估指标注:本文中,将大众样本视为负样本,小众样本视为正样本。即正样本很少,负样本很多。采样首先最基本的就是采样,分为过采样和欠采样。正样本过采样1.如果随机的复制多分正样本进行过采样,那么必然会导致过拟合,因为训练数据中的正样本会反复出现。这种做法不建议。2.可以通原创 2021-11-26 14:53:49 · 2127 阅读 · 0 评论 -
sklearn 将onehot之后的结果拼接回原来的dataframe
data = {'hour': [10, 9, 8, 11, 12, 18, 20], 'WHrate': [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7]}data = pd.DataFrame(data)dataonehot = OneHotEncoder()arrays = onehot.fit_transform(np.array(data['hour']).reshape(-1, 1))arrays = arrays.toarray()names = ['原创 2021-11-17 14:27:04 · 2740 阅读 · 1 评论 -
将两个one-hot后的稀疏矩阵拼接
文章目录假数据构造one-hot拼接one-hot后的稀疏矩阵思路一思路二import pandas as pd, numpy as np, warningsfrom sklearn.ensemble import GradientBoostingClassifierfrom sklearn.preprocessing import OneHotEncoderwarnings.filterwarnings("ignore", category=DeprecationWarning)假数据构造原创 2021-11-09 14:52:05 · 966 阅读 · 0 评论 -
机器学习-常用回归算法归纳(全网之最)
文章目录前言一元线性回归多元线性回归局部加权线性回归多项式回归Lasso回归 & Ridge回归Lasso回归Ridge回归岭回归和lasso回归的区别L1正则 & L2正则弹性网络回归贝叶斯岭回归Huber回归KNNSVMSVM最大间隔支持向量 & 支持向量平面寻找最大间隔SVRCART树随机森林GBDTboosting思想AdaBoost思想提升树 & 梯度提升GBDT面试题整理XGBOOST面试题整理LightGBMXGBoost的缺点LightGBM的优化基于Hist原创 2021-10-28 18:14:11 · 21796 阅读 · 5 评论 -
pyspark --- 归一化&Label编码
文章目录Label编码代码归一化代码以下代码块直接调用即可from pyspark.ml.feature import StringIndexer, StringIndexerModelfrom pyspark.ml import Pipeline, PipelineModelfrom pyspark.ml.feature import MinMaxScaler as MinMaxScalerSpark, VectorAssemblerLabel编码代码# label编码def labe原创 2021-09-13 16:16:18 · 1482 阅读 · 2 评论 -
pyspark---label编码
from pyspark.ml.feature import OneHotEncoder, StringIndexer, StringIndexerModeldf = ss.createDataFrame([ (2, "iphone"), (11, "小米"), (22, "huawei"), (33, "a锤子"), (66, "小米"), (50, "iphone")], ["id", "value"])df.show()+---+------原创 2021-09-09 14:50:35 · 509 阅读 · 0 评论 -
推荐中的评估指标:AUC、GAUC
文章目录混淆矩阵ROC曲线AUC求解AUCGAUC:Group AUCGAUC代码本文将介绍一下分类任务中的一个非常重要的评估指标:AUC,以及针对AUC的不足引出的另一指标:GAUC。混淆矩阵TP:表示正确拒绝的样本数(坏样本要拒绝)FP:表示误报的样本数,即被错误拒绝的样本数(错的记成正的)FN:表示漏报的样本数,即被错误准入(错误的拒绝了)的样本数(正例预测成负例,好样本没有准入,正例的少了,召回的少了)(好的少了,好的记成错的)TN:正确准入的样本数TP是真1;FP是假1;FN原创 2021-09-02 22:16:48 · 2659 阅读 · 0 评论 -
针对连续变量长尾严重的解决办法
这里所说的长尾就是指某个或某几个连续变量的数值分布差别很大,呈现长尾图的样式。类似这种。两种办法可以考虑,一个是对数变换,另一个就是Box-Cox变换。或许很多人会问,分箱或者归一化不行吗,针对这种问题,分箱是不恰当的,归一化也还是原来的分布。log变换Log变换通常用来创建单调的数据变换。它的主要作用在于帮助稳定方差,始终保持分布接近于正态分布并使得数据与分布的平均值无关。当应用于倾斜分布时 Log 变换是很有用的,因为Log变换倾向于拉伸那些落在较低的幅度范围内自变量值的范围,倾向于压缩或原创 2021-05-24 09:58:51 · 1001 阅读 · 0 评论 -
Word2vec---经典的 Embedding 方法
文章目录什么是 Word2vec?Word2vec 的样本是怎么生成的?Word2vec 模型的结构是什么样的?怎样把词向量从 Word2vec 模型中提取出来?Word2vec 对 Embedding 技术的奠基性意义Item2Vec:Word2vec 方法的推广Word2vec代码实现提到 Embedding,就一定要深入讲解一下 Word2vec。它不仅让词向量在自然语言处理领域再度流行,更关键的 是,自从 2013 年谷歌提出 Word2vec 以来,Embedding 技术从自然语言处理领域推广原创 2021-02-05 15:42:52 · 2144 阅读 · 0 评论 -
所有人都在谈的Embedding到底是什么?
文章目录什么是 Embedding?Embedding 技术对深度学习推荐系统的重要性说起 Embedding,我想你肯定不会陌生,至少经常听说。事实上,Embedding 技术不仅名气大,而且用 Embedding 方法进行相似物品推荐,几乎成了业界最流行的做法,无论是国外的 Facebook、Airbnb,还是在国 内的阿里、美团,我们都可以看到 Embedding 的成功应用。因此,自从深度学习流行起来之后,Embedding 就 成为了深度学习推荐系统方向最火热的话题之一。但是 Embeddin原创 2021-02-05 15:37:49 · 7512 阅读 · 0 评论 -
DeepFM---如何让模型更好地处理特征交叉
文章目录为什么深度学习模型需要加强特征交叉的能力?善于处理特征交叉的机器学习模型 FM深度学习模型和 FM 模型的结合 DeepFM特征交叉新方法:元素积操作TensorFlow实现1TensorFlow实现2Embedding MLP、Wide&Deep、NerualCF 等几种不同的模型结构, 这几种模型都是怎么处理特征交叉这个问题的?比如说,模型的输入有性别、年龄、电影风格这几个特征,在训练样本中我们发现有 25 岁男生喜欢科幻电影的样 本,有 35 岁女生喜欢看恐怖电影的样本,那你觉得模原创 2021-02-05 15:29:14 · 1226 阅读 · 0 评论 -
NeuralCF---如何用深度学习改造协同过滤
文章目录NeuralCF 模型的结构NeuralCF 模型的扩展,双塔模型NeuralCF 的 TensorFlow 实现在前深度学习的时代,协同过滤曾经大放异彩,但随着技术的发展,协同过滤相比深度学习模型的弊端就日益显现 出来了,因为它是通过直接利用非常稀疏的共现矩阵进行预测的,所以模型的泛化能力非常弱,遇到历史行为非常 少的用户,就没法产生准确的推荐结果了。虽然,我们可以通过矩阵分解算法增强它的泛化能力,但因为矩阵分解是利用非常简单的内积方式来处理用户向量 和物品向量的交叉问题的,所以,它的拟合能力原创 2021-02-05 15:20:47 · 2279 阅读 · 0 评论 -
深度推荐模型 Wide&Deep (附代码)
文章目录Wide&Deep 模型的结构模型的记忆能力模型的泛化能力Wide&Deep 模型的应用场景TensorFlow 实现Pytorch实现Wide&Deep 模型的结构上图就是 Wide&Deep 模型的结构图了,它是由左侧的 Wide 部分和右侧的 Deep 部分组成的。Wide 部分的结构 太简单了,就是把输入层直接连接到输出层,中间没有做任何处理。Deep 层的结构稍复杂,是一个深层的网络。知道了 Wide&Deep 模型的结构之后,我们先来解决第原创 2021-02-05 15:11:04 · 2439 阅读 · 7 评论 -
基于模型的特征选取方法(LR、树模型、PCA)
文章目录数据集加载和准备从系数获取特征重要性从树模型获取特征重要性从 PCA 分数中获取特征重要性数据集加载和准备为了方便介绍,我这里使用"load_breast_cancer"数据集,该数据内置于 Scikit-Learn 中。import numpy as npimport pandas as pdfrom sklearn.datasets import load_breast_cancerimport matplotlib.pyplot as pltfrom matplotlib imp原创 2021-02-05 14:55:24 · 3403 阅读 · 1 评论 -
关于 “辛普森悖论“ 的理解
最近在研究FM模型的时候,遇到了一个名词:辛普森悖论。下面来说一下什么是 辛普森悖论。在对样本集合进行分组研究时,在分组比较中都占优势的一方,在总评中有时反而是失势的一方,这种有悖常理的现象,就成为 “辛普森悖论”。下面来看个例子:就用视频推荐的例子,来阐述一下辛普森悖论。如下两表为某视频应用中男性用户和女性用户点击视频的数据。表1视频点击(次)曝光(次)点击率视频A85301.51%视频B5115203.36%表2视频点击(次)原创 2021-01-14 19:16:31 · 1952 阅读 · 2 评论 -
不错的数据挖掘数据集资源分享
文章目录气候监测数据集几个实用的测试数据集下载的网站reuters语料库数据集这个网站数据集也比较多进行文本分类,还有一个数据集是可以用的,即rainbow的数据集UCI收集的机器学习数据集statlib关于基金的数据挖掘的网站进行文本分类&WEB时间序列数据的网址apriori算法的测试数据数据生成器的链接关联规则分析WEKA癌症基因金融数据一个很好的资源网址为另一个人提供的kdnuggets 相关链接数据集(借花献佛了)整理不易,转载请注明出处气候监测数据集http://cdiac.o原创 2020-12-29 10:54:06 · 1114 阅读 · 0 评论 -
推荐算法简述
文章目录1.基于内容的推荐系统1.1 TF-IDF1.2 打标签1.3 商品名称与关键字2.基于关联规则的推荐系统3.基于协同过滤的推荐系统3.1 User-based协同过滤系统3.2 Item-based协同过滤系统4.基于用户模型学习的推荐系统5.其他1.基于内容的推荐系统基于内容推荐是推荐系统中比较常见的一种做法,这种方法对于每个item基于其自身属性,抽取一些特征用来表示这个item的内容,从而推荐那些和当前item含有相同或相近特征的一些item这种推荐系统多用于一些资讯类的应用上,针对原创 2020-12-07 15:07:33 · 1167 阅读 · 1 评论 -
推荐系统的引入
文章目录推荐系统的引入什么是推荐系统案例引入为什么使用推荐系统推荐系统用途和使用场景推荐系统的应用场景混合的推荐机制 ***推荐系统的引入什么是推荐系统想买啤酒,通过附近的便利店,通过比较几个牌子的口碑或者价格找到自己喜欢的,扫码付款。如果你很宅,你可以打开京东或天猫超市输入啤酒关键字,然后会看到一大堆关于啤酒的商品,找到喜欢的品牌下单、付款然后等待送货上门。上述都是用户在有明确需求的情况下,面对信息过载的时候所采用的措施。如果用户没有明确的需求?比如你今天很无聊,想下载一部电影,但是你面对如此之多原创 2020-12-07 10:19:35 · 312 阅读 · 0 评论 -
风控中评分卡的分数转化
文章目录小结在前由概率到分数的转换概率转换分数最终表达式变量的分值计算评分卡性能评估坏账率与通过率的审批策略双卡审批策略将模型预测概率转化为分数,更符合人的一个直观感受小结在前1.把对数几率当成分数2.在对数几率的基础上进行缩放平移(简单的线性变换,就是对数几率的线性变换)3.可用线性代数式所表示,能直观的看到每个变量都对分值有影响(可解释性强)4.变量可以用指示函数的方式,拆成每一个具体的值概率转换为分数需要三个条件1.样本总的分数是由每个变量的分数之和累加得到2.模型预测概率的变原创 2020-12-01 20:04:48 · 4918 阅读 · 1 评论 -
关于模型的评估指标(超详细)
文章目录正负样本的选择标准评估指标回归问题的评估指标SSE 和方差均方误差(MSE)均方根误差(RMSE)R Squared分类问题的评估指标错误率召回率(查全率)精确率(查准率)混淆矩阵和分类报告P-R曲线准确率f1分值什么时候关注召回率,什么时候关注精确率概率密度评估指标概率密度曲线图相对熵(K-L散度)概率、信息量信息熵相对熵(K-L散度)交叉熵概率分布评估指标ROC曲线KS曲线提升图提升图的另一种形式洛伦兹图(累计提升图)KS曲线模型的开发基于历史数据,而模型的使用则针对未来的数据。为了模拟这种建原创 2020-12-01 19:58:54 · 33103 阅读 · 3 评论 -
变量选择详解与源码实现
文章目录1.过滤法变量选择1.1缺失情况变量筛选1.2方差变量筛选1.3预测能力变量筛选1.4业务理解的变量筛选(IV、PSI)1.5相关性指标变量筛选(最大相关最小冗余)2.包装法变量选择3.嵌入法变量选择4.一般变量选择过程1.基于IV值进行初步筛选2.聚类分析3.相关性分析4.逐步回归变量选择(包装法)5.随机森林或 Xgboost 模型变量重要性排序,得到最终的变量筛选结果5.过滤法、包装法、嵌入法源码1.读取数据区分离散变量与连续变量2.对连续变量和离散变量分箱(删除分箱数只有1的)3.对训练数据原创 2020-11-22 15:41:25 · 3281 阅读 · 6 评论 -
连续变量分箱
文章目录1.变量分箱对模型的好处2.分箱的局限3.变量分箱要注意的问题4.变量分箱的流程5.卡方分箱6.KS分箱7.混淆矩阵概念复习8.最优IV分箱9.基于树的最优分箱方法10.分箱框架源码(卡方、最优IV、信息增益)变量分箱主要是对连续变量离散化对特征的一个优化过程变量分箱(特征分箱)是一种特征工程方法,意在增强变量的可解释性与预测能力。变量分箱方法主要用于连续变量,对于变量取值较稀疏的离散变量也应该进行分箱处理。比如借款人的地址信息往往非常稀疏,通常先对地址信息处理到省或市,用每个省或市的坏样本原创 2020-11-20 09:27:28 · 4182 阅读 · 2 评论 -
离散变量编码
文章目录无监督编码One-hot编码独热编码优缺点调库实现Dummy variable 编码(哑变量)离散变量 One-hot 编码或哑变量编码的优点Label 编码有监督编码WOE编码WOE 编码的好处为什么不直接用WOE做特征选择 而用IVIV代码实现数据读取,分割数据集one-hot编码哑变量编码label 标签编码自定义标签映射WOE编码上述源码对离散变量进行编码转换,以进行数值化,其原则是保证编码后变量的距离可计算且符合原始变量之间的距离度量.常用距离公式介绍无监督编码编码的时候和标签原创 2020-11-18 15:11:55 · 2324 阅读 · 6 评论 -
数据清洗与预处理
文章目录数据集成数据清洗探索性分析(EDA)数据集字段说明代码实现读取数据集区分离散变量和连续变量由于数据集比较规范,为了演示注入脏数据对变量status_account随机注入字符串添加两列时间格式的数据添加冗余数据特殊字符清洗时间格式统一样本去除冗余探索性分析添加缺失值缺失值绘图对于连续数据绘制箱线图,观察是否有异常值查看数据分布源码数据集成评分卡模型开发需求确定后,接下来需要收集数据,进行数据集成。为了全面地描述借款人的信用属性,会从多个维度进行考量,如借款人的基本信息数据、信用数据、消费数据和行原创 2020-11-15 19:37:21 · 1816 阅读 · 3 评论 -
评分卡模型介绍
文章目录申请评分卡行为评分卡催收评分卡反欺诈模型个人信贷中,信用风险评估的关键是:通过分析借款人的信用信息,评估借款人的偿还能力和意愿量化违约风险信用评分卡模式是个人信贷风险管理中的重要手段,是一种结合专家经验的数据驱动方式评分卡模型包括申请评分卡、行为评分卡、催收评分卡。其中,申请评分卡是最重要的评分卡,因为平台风险管理的主要风险均来自于申请阶段。除此之外还有反欺诈模型、营销评分卡和客户流失评分卡等,它们在风控系统中的先后顺序如图 1-2 所示申请评分卡申请评分卡是平台风险管理中最原创 2020-11-13 09:01:22 · 2433 阅读 · 1 评论 -
智能风控背景
文章目录1.金融科技介绍1.1 金融科技的前世今生1.金融科技 1.0:从模拟到数字2.金融科技 2.0:传统金融服务的数字化3.金融科技 3.0:发达国家市场的 Fintech4.金融科技 3.5:亚洲和非洲新兴市场的 Fintech1.2 金融科技正深刻地改变和塑造着金融业态1.3 新兴科技不断强化金融科技的应用能力1.4 金融风险控制面临着前所未有的挑战1.5 智能风控和评分卡1.金融科技介绍从定义上讲,“金融科技”或者 Fintech 是指使用技术提供财务解决方案。金融科技基于大数据、云计算和人原创 2020-11-07 15:07:57 · 2309 阅读 · 2 评论 -
用户画像(一)数仓与表结构的基本构建
文章目录初识用户画像基础架构数仓分层用户画像标签用户源数据分析画像目标分析用户画像建模用户基本属性表用户消费订单表用户购买类目表用户访问信息表商品订单表埋点日志表访问日志表商品评论表搜索日志表用户收藏表、购物车信心表环境准备数仓表的基本介绍用户画像表结构开发客户消费订单表订单表(bdm_order)订单明细表(bdm_order_des)订单表(fdm_order)订单表明细表(fdm_order_desc)订单模型表(gdm_order)订单地址模型表(gdm_user_order_addr_model)原创 2020-11-07 08:19:50 · 2901 阅读 · 2 评论 -
数据分析---网站日志流分析
文章目录数据分析平台介绍网站流量分析项目的一些问题1.数据处理流程1.数据采集2.数据预处理3.数据入库4.数据分析(ETL)5.数据展现2.mr程序进行数据预处理理论方面3.流量分析常见分类骨灰级指标IPPVUV基础级指标复合级指标基础分析(PV,IP,UV)4.统计分析建表事实表设计维度表设计访问日志明细宽表以下ETL需求小结1.流量分析1.1多维度统计PV总量按时间维度按终端维度1.2按referer维度(按照来访维度统计pv)1.3统计pv总量最大的来源TOPN (分组TOP)1.4人均浏览页数2.原创 2020-10-20 09:20:03 · 1123 阅读 · 0 评论 -
通用的团队竞技类的数据分析挖掘方法
文章目录前言分享目录一些橄榄球相关的基本概念绘制比赛实况绘制动态比赛实况绘制球员的泰森多边形球员控制区域热图1.论文以足球数据为基础,量化了某个时刻的球场控制热图,且考虑了球在其中的影响,注意此时还是假设每个球员的影响在球场中都是一个圆形区域:2.但是理想状态每个球员的影响可能是圆可能是椭圆,这里我想象一个球员是一颗石子,如果垂直丢入水中(球员静置不动时),那么波纹就是一个圆形,如果是斜着抛入水中,那么波纹应该是一个与石子方向上的椭圆:3.那么引入速度、方向后的球场控制热图,就应该是下面这样:参考文献竞赛原创 2020-09-28 20:10:26 · 560 阅读 · 0 评论 -
数据挖掘---营销推广预测响应
数据集及源码:https://download.csdn.net/download/qq_42363032/12645777文章目录预测1.读取数据2.提取X和Y3.连续型变量特征重要性筛选(相关系数)将相关系数小于0.1的删除(弱相关)筛选之后的数值型特征4.离散型变量特征筛选(方差分析)筛选之后的离散型特征5.特征重新拼接看一下连续型特征的基本统计量(EDA探索性分析)连续型变量处理对数处理看一下离散型特征的基本统计量(EDA探索性分析)离散型变量处理6.前向选择法筛选变量7.建立线性回归模型回归1.原创 2020-07-26 19:38:18 · 662 阅读 · 0 评论 -
数据挖掘---银行案例_预测违约概率
数据集及源码 https://download.csdn.net/download/qq_42363032/12643050文章目录Bank数据介绍表关系分析读取并筛选数据1.读取csv文件2.将csv文件的文件名作为Key, 内容作为value,存入到局部变量中3.对贷款表(Loans)的还款状态做词频统计还款状态映射为数值类型4.对贷款表和客户表做连接查询(因为贷款表和客户表没有直接的主外键关系,这里通过权限分配表【Disp】)来连接5.在4.表基础上,再与人口地区统计表 (District)建立连原创 2020-07-20 19:31:08 · 4706 阅读 · 3 评论