python实现分类lightgbm
时间: 2023-10-09 09:04:45 浏览: 55
下面是一个简单的例子,使用 Python 中的 LightGBM 库进行分类任务:
首先,需要安装 LightGBM 库,可以使用以下命令进行安装:
```python
!pip install lightgbm
```
然后,加载数据集并进行预处理:
```python
import pandas as pd
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# 加载数据集
iris = load_iris()
# 转换为 pandas DataFrame
data = pd.DataFrame(data=iris.data, columns=iris.feature_names)
# 添加目标变量
data['target'] = iris.target
# 划分数据集为训练集和测试集
train_data, test_data, train_label, test_label = train_test_split(data[iris.feature_names], data['target'], test_size=0.2, random_state=42)
```
接下来,使用 LightGBM 进行分类:
```python
import lightgbm as lgb
# 将数据转换为 LightGBM 的数据格式
train_data = lgb.Dataset(train_data, label=train_label)
test_data = lgb.Dataset(test_data, label=test_label)
# 设置参数
params = {
'objective': 'multiclass',
'num_class': 3,
'metric': 'multi_logloss',
'num_leaves': 31,
'learning_rate': 0.05,
'feature_fraction': 0.9
}
# 训练模型
model = lgb.train(params, train_data, valid_sets=[test_data])
```
最后,使用训练好的模型进行预测:
```python
# 预测测试集
pred_label = model.predict(test_data)
# 转换为类别
pred_label = [list(x).index(max(x)) for x in pred_label]
# 计算准确率
accuracy = sum(test_label == pred_label) / len(test_label)
print('Accuracy:', accuracy)
```
以上就是使用 Python 中的 LightGBM 库进行分类任务的简单例子。