转:lightgbm的黑科技--plot函数(代码片段)

leixingzhi7 leixingzhi7     2022-12-24     140

关键词:

本来想研究一下lightGBM的plotting相关的接口,发现网上已经有人做了,而且还挺不错的(lightGBM的黑科技--plot函数),就直接给转过来了

# -*- coding: utf-8 -*-
# @Time    : 2018/6/11
# @Author  : Reynold chen

import lightgbm as lgb
import numpy as np
import matplotlib.pyplot as plt

print(制造数据...)
x_train = np.random.random((1000, 10))
y_train = np.random.rand(1000) > 0.5
x_test = np.random.random((100, 10))
y_test = np.random.randn(100) > 0.5

# 导入到lightgbm矩阵
lgb_train = lgb.Dataset(x_train, y_train)
lgb_test = lgb.Dataset(x_test, y_test, reference=lgb_train)

# 设置参数
params = 
    num_leaves: 5,
    metric: (auc, logloss),  # 可以设置多个评价指标
    verbose: 0

# if (evals_result and gbm) not in locbals():
# global evals_result,gbm
# 如果是局部变量的话,推荐把他们变成全局变量,这样plot的代码位置不受限制
evals_result =   # 记录训练结果所用

print(开始训练...)
# train
gbm = lgb.train(params,
                lgb_train,
                num_boost_round=100,
                valid_sets=[lgb_train, lgb_test],
                evals_result=evals_result,  # 非常重要的参数,一定要明确设置,输出的结果是上面一个参数valid_sets配置的值
                verbose_eval=10)

print(evals_result)
print(画出训练结果...)
ax = lgb.plot_metric(evals_result, metric=auc)  # metric的值与之前的params里面的值对应
plt.show()

print(画特征重要性排序...)
lgb.plot_importance(gbm, max_num_features=10)  # max_features表示最多展示出前10个重要性特征,可以自行设置
plt.show()

print(Plot 3th tree...)  # 画出决策树,其中的第三颗
lgb.plot_tree(gbm, tree_index=3, figsize=(20, 8), show_info=[split_gain])
plt.show()

print(导出决策树的pdf图像到本地)  # 这里需要安装graphviz应用程序和python安装包
graph = lgb.create_tree_digraph(gbm, tree_index=3, name=Tree3)
graph.render(view=True)

原文链接:https://blog.csdn.net/jason160918/article/details/80973448

事件和异常的传播·农场主的黑科技.(代码片段)

inBound事件的传播何为inBound事件以及ChannelInboundHandlerChannelRead事件的传播ChannelRead是典型的inbound事件,以他为例了解inbound事件的传播SimpleInBoundHandler处理器何为inBound事件以及ChannelInboundHandlerChannelHandler的继承关系ChannelInboundHandlerAdap... 查看详情

一个android沉浸式状态栏上的黑科技(代码片段)

本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索郭霖即可关注,每个工作日都有文章更新。说起来,在不知不觉中,我竟然凑成了这沉浸式状态栏三部曲。其实最开始的时候,我主要... 查看详情

一个android沉浸式状态栏上的黑科技(代码片段)

本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索郭霖即可关注,每个工作日都有文章更新。说起来,在不知不觉中,我竟然凑成了这沉浸式状态栏三部曲。其实最开始的时候,我主要... 查看详情

一个android沉浸式状态栏上的黑科技(代码片段)

本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索郭霖即可关注,每个工作日都有文章更新。说起来,在不知不觉中,我竟然凑成了这沉浸式状态栏三部曲。其实最开始的时候,我主要... 查看详情

推荐一个以动画效果显示github提交记录的黑科技工具:gource

...一个能够将git代码仓库的提交历史以动画的方式显示出来的黑科技。先看一些动画效果的截图吧。Gource会从指定的github仓库创建那一刻开始(大家看我下面截图的2017年2月4日就是我github仓库的创建时间),以视频的方式显示每次... 查看详情

bbr是来自于谷歌社区的黑科技

BBR是来自于谷歌社区的黑科技,大家可以在GitHub上关注这个持续发展的TCP拥塞技术.至于这个技术是什么原理呢?我也说不清楚,看这个说明会更明白。原始的TCP流量传输,已经不能适应现在的互联网了,我们把TCP流量比喻成公... 查看详情

lrsvmrfgbdtxgboost和lightgbm比较(代码片段)

正则化L1范数蓝色的是范数的解空间,红色的是损失函数的解空间.L2范数和损失函数的交点处一般在坐标轴上,会使(eta=0),当然并不一定保证交于坐标轴,但是通过实验发现大部分可以得到稀疏解.L2范数蓝色的是范数的解空间;红色的... 查看详情

4个老司机常用的黑科技资源网站

1、MoshMosh是一款黑科技十足的网站,它主要是一个故障生成网站。具体的功能就是我们在制作动画时,如果需要加入特效的话,这个就是个不错的选择,添加它的话,就会让视频监控画面中会出现故障般,一闪一闪并且还模糊的... 查看详情

什么是spark运算过程中的黑科技

Spark在运算过程中提供了一套完整的机制用来提高效率。1.用于收集信息的Accumulator,自带增量,用于spark全局收集数据;共享数据;2.用于提高传输速率的broadcast机制;如果需要将已知大对象比如上万条的List,这些多大几十M甚至... 查看详情

阿里云ai编辑部获ccbn创新奖,传媒行业解决方案背后的黑科技

简介:视频云驱动智媒创新5月27日,CCBN(第二十八届中国国际广播电视信息网络展览会)在北京隆重召开,在本次的“CCBN年度创新奖”评选中,阿里云视频云凭借AI编辑部的传媒行业专业解决方案获得CCBN... 查看详情

一个功能强大的黑科技app,各种资源一应俱全,拥有你就无敌了!

...盘资源,各种资源应有尽有,赶快和小编一起来领略下它的黑科技吧!主界面简洁明了,作为一款可以快捷搜索的浏览器,除了百度搜索外,其中还包括神马、好搜、必应和谷歌4个搜索引擎。软件具有视频、直播、音乐、图片... 查看详情

采集科研文献和数据,我告诉你一个能自动采集的黑科技

我是某高校信息学院的老师,我的研究方向是生物科技。平时的科研工作需要采集国外论文文献和实验数据。其实,在整个科研过程中,花时间最多的环节就在论文文献和实验数据的采集,几乎占到总时间的1/3。一般的,我需要... 查看详情

采集科研文献和数据,我告诉你一个能自动采集的黑科技

我是某高校信息学院的老师,我的研究方向是生物科技。平时的科研工作需要采集国外论文文献和实验数据。其实,在整个科研过程中,花时间最多的环节就在论文文献和实验数据的采集,几乎占到总时间的1/3。一般的,我需要... 查看详情

对话李飞飞,揭秘国际体育赛事风“云”背后的黑科技

...杰出科学家李飞飞为我们揭秘国际体育赛事风“云”背后的黑科技。Q 查看详情

对话李飞飞,揭秘国际体育赛事风“云”背后的黑科技

...杰出科学家李飞飞为我们揭秘国际体育赛事风“云”背后的黑科技。Qÿ 查看详情

从量子加密到机器学习,盘点2015阿里云开放的黑科技

http://www.csdn.net/article/2015-12-18/2826512摘要:因为云计算应用的不断深入。以及对大数据处理需求的不断扩大,用户要求功能丰富、性能强大、高可用性的产品,云计算厂商们也推陈出新,不断地推出新产品,本文就盘点了业内翘... 查看详情

数据中心的黑科技——到底什么是npo/cpo?

大家好,我是小枣君。今天这篇文章,我们来聊聊数据中心的两项最新黑科技—NPO/CPO。故事还是要从头开始讲起。去年,国家发布了“东数西算”战略,吸引了全社会的关注。所谓“东数西算”,其实就是数... 查看详情

史诗级干货长文集成学习进阶(xgboost&lightgbm)(代码片段)

集成学习进阶1.xgboost算法原理1.1最优模型的构建方法1.2XGBoost的目标函数推导1.2.1目标函数确定1.2.2CART树的介绍1.2.3树的复杂度定义1.2.3.1定义每课树的复杂度1.2.3.2树的复杂度举例1.2.4目标函数推导1.3XGBoost的回归树构建方法1.3.1计算... 查看详情