tensorflow
yisun123456
大数据开发、个性化推荐
展开
-
模型训练的auc和loss比较问题
AUC 反应的是正样本在负样本前面的概率问题,AUC越大,说明正样本更靠前。LOSS 反应的是真实值与预测值之前的差值,就是损失,LOSS越小,说明预测值越接近于真实值。在二分类问题中,LOSS越小,说明预测的样本预测值两极占比高(负样本更接近0,正样本更接近1)例如:两个模型A B,一个auc高一些,但log也大一些。另一个auc低,但log也低。A模型AUC高,说明它在判断哪个更好的方面,有着更好的表现,但是可能它比较“保守”,预估分都接近于正负样本的比例值(比如ctr=0.1,则预估分接近0原创 2021-11-04 12:23:29 · 3221 阅读 · 0 评论 -
keras使用class weight和sample weight处理不平衡问题
在机器学习或者深度学习中,经常会遇到正负样本不平衡问题,尤其是广告、push等场景,正负样本严重不平衡。常规的就是上采样和下采样。这里介绍Keras中的两个参数class_weight和sample_weight1、class_weight 对训练集中的每个类别加一个权重,如果是大类别样本多那么可以设置低的权重,反之可以设置大的权重值2、sample_weight 对每个样本加权中,思路与上面类似。样本多的类别样本权重低例如 model.fit(class_weight={0:1.,1:原创 2021-08-03 14:38:40 · 2167 阅读 · 2 评论 -
smote 采样
对于正负样本严重不平衡的训练集,可以采用下面的办法进行采样# 使用sklearn的make_classification生成不平衡数据样本from sklearn.datasets import make_classification# 生成一组0和1比例为9比1的样本,X为特征,y为对应的标签X, y = make_classification(n_classes=2, class_sep=2, weights=[0.9, 0.1], n_i...原创 2021-07-23 12:30:19 · 1642 阅读 · 0 评论 -
spark 加载tensorflow model注意事项
1.对于tensorflow训练后的模型需要查看模型的网络结构 在模型保存路径下执行 saved_model_cli show --dir=./ --all图中的name都是要spark加载时创建模型结构时用到的2.spark加载tf的模型原创 2020-09-18 10:30:46 · 567 阅读 · 0 评论 -
spark tensorflow 整合时出现的问题
使用spark分布式环境,训练和加载tensorflow。通常会将加载的模型广播出去,这个时候涉及两个问题:1.加载的模型的路径是hdfs,tensorflow.SavedModelBundle的load使用的是本地路径,所以需要使用sc.addFiles("",true),这个样保证hdfs数据get到环境路径下(本地路径);2.同时,加载的模型往往需要广播到各个节点,但是这个时候也容易报错,可以采用在udf内部或者各个partition中加载模型。...原创 2020-07-30 14:07:43 · 502 阅读 · 2 评论