当我尝试使用以下命令创建XGBoost DMatrix时,我的jupyter notebook内核无任何错误信息而死亡:
# Create the XGBoost DMatrix
dtrain = xgb.DMatrix(X_train, y_train)
我已经尝试了以下方法,但都没有成功:
- 仅处理数据集的50%或25%
- 按照 此线程 的说明删除 libiomp5.dylib
- 在笔记本顶部包含
import os os.environ['KMP_DUPLICATE_LIB_OK']='True'
,如此线程所述 - 使用
brew install libomp
更新 libomp - 重新安装我的
mambaforge
包管理器
目前我不知道该从哪里着手寻找解决方案。非常欢迎任何帮助和意见。
--
复现在本地使用 xgboost 产生错误的最小可重现示例 (MRE):
# create dummy data
d = {
'y': [1, 0, 0, 1],
'x1': [1, 2, 3, 4],
'x2': [5, 6, 7, 8],
'x3': [9, 0, 1, 2]}
df = pd.DataFrame(data=d)
# create train/test splits
X, y = df.iloc[:, 1:], df["y"]
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.25, shuffle=True, random_state=2)
# Create the XGBoost DMatrix
dtrain = xgb.DMatrix(X_train, y_train)
我正在使用:
- 一台2020年的M1 Macbook Pro
- Python:3.9
- XGBoost:1.4.2
- Pandas:1.3.1
- Numpy:1.21.2
注意:我尝试了降级XGBoost。版本1.2.0可以创建DMatrix
,但在调用xgb.train(params, dtrain)
时出现相同的行为(没有错误消息,内核停止)。