帮我写一段基于Lightgbm的二分类模型代码
时间: 2023-07-29 17:09:08 浏览: 101
好的,以下是一段基于LightGBM的二分类模型代码示例:
```python
import lightgbm as lgb
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加载数据集
X, y = load_data()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 将数据转换为LightGBM需要的数据格式
train_data = lgb.Dataset(X_train, label=y_train)
test_data = lgb.Dataset(X_test, label=y_test)
# 设置模型参数
params = {
'objective': 'binary',
'boosting_type': 'gbdt',
'metric': 'binary_logloss',
'num_leaves': 31,
'learning_rate': 0.05,
'feature_fraction': 0.9
}
# 训练模型
model = lgb.train(params, train_data, num_boost_round=100)
# 在测试集上评估模型性能
y_pred = model.predict(X_test)
y_pred = [1 if pred > 0.5 else 0 for pred in y_pred]
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)
```
在这个示例中,我们首先加载数据集并将其划分为训练集和测试集。然后,我们使用`lgb.Dataset`将数据转换为LightGBM需要的格式,并设置模型参数。接下来,我们使用`lgb.train`训练模型,并使用测试集评估模型性能。最后,我们计算并输出模型的准确率。
阅读全文