我的Jupyter笔记本的python内核不断消亡。我之前已经成功运行了以下所有代码。目前,存在问题。首先,我将向您展示我能够成功运行的代码块:
import xgboost as xgb
xgtrain = xgb.DMatrix(data = X_train_sub.values, label = Y_train.values) # create dense matrix of training values
xgtest = xgb.DMatrix(data = X_test_sub.values, label = Y_test.values) # create dense matrix of test values
param = {'max_depth':2, 'eta':1, 'silent':1, 'objective':'binary:logistic'} # specify parameters via map
我的数据很小的地方:
X_train_imp_sub.shape
(1365, 18)
但是,我笔记本的内核一直死于这一块:
xgmodel = xgb.train(param, xgtrain, num_boost_round = 2) # train the model
predictions = xgmodel.predict(xgtest) # make prediction
from sklearn.metrics import accuracy_score
accuracy = accuracy_score(y_true = Y_test,
y_pred = predictions.round(),
normalize = True) # If False, return # of correctly classified samples. Else, return fraction of correctly classified samples
print("Accuracy: %.2f%%" % (accuracy * 100.0))
当我将其分解并逐行运行时,内核似乎在xgb.train()
行上死亡。
数据很小。 xgboost参数应为保守参数(即num_boost_round = 2
,max_depth:2
,eta:1
,并且在计算上不昂贵。不确定发生了什么。
如前所述,我以前能够成功运行两个块。我关闭了所有其他笔记本电脑,并重新启动计算机,但情况没有好运。我正在通过Macbook Pro上的Anaconda Navigator启动jupyter
。
-更新-
当我在xgboost
训练单元下面选择一个单元,然后选择:Cells
-> Run All Above
时,内核将始终死在xgboost
训练线上。这连续发生了约40-50次。我尝试了很多次,因为我正在更改代码,以为以后可以解决xgboost
问题。
后来,我一次又一次地运行相同的单元格,xgboost
在我第一次尝试此操作后以及以后每次都很好地完成了。我不知道为什么会这样,但是很高兴知道。
答案 0 :(得分:11)
我遇到了类似的问题。这为我解决了这个问题。
<select class="form-control" name="country" id="country">
@foreach($countries as $key => $country)
<option value="{{$key}}" {{ Auth::user()->country == $country ? 'selected' : '' }}>{{ $country}}</option>
@endforeach
</select>
答案 1 :(得分:1)
我有同样的问题。愚蠢的事情是它运行正常,只是突然决定它要疯了!我尝试了@PandaRocks的解决方案。那没起效。我尝试重新启动。 甚至看到了一些有关删除库文件here的内容。
最终按照here所述,通过使用conda
重新安装XGBoost来解决该问题:
$ conda install -c conda-forge xgboost
答案 2 :(得分:0)
检查数据中是否有“Inf”值。使用“pct_change()”时经常出现这种情况。使用 Inf 值时,xgBoost 会使内核崩溃。