Другой вывод с одинаковыми данными в инкрементальном ML
Я пытаюсь построить инкрементную модель, в которой каждый раз, когда я запускаю команду для частичного соответствия, выходные данные моей матрицы путаницы обновляются. Мне интересно, почему это происходит. В идеале не должно быть такого серьезного изменения только при подгонке модели к тем же данным.
from sklearn.model_selection import ParameterGrid
from sklearn.linear_model import SGDClassifier
from sklearn.metrics import roc_auc_score
from parfit import bestFit
import parfit as pf
model =SGDClassifier()
grid ={ 'alpha' : [1e-4,1e-3,1e-2,1e-1,1e0,1e1,1e2,1e3,1e4], #learning rate
'n_iter': [1000], #epoch
'loss' : ['log'], #logistic regression
'penalty':['l2'],
'n_jobs': [-1]
}
paramGrid = ParameterGrid(grid)
bestModel, bestScore, allModels, allScores = pf.bestFit(model,
paramGrid, train_X1, train_Y1, test_X1, test_Y1, metric = roc_auc_score,
greater_is_better = True, scoreLabel = "AUC")
print(bestModel, bestScore)
bestModel.partial_fit(train_X2,train_Y2)
##accuracy of train and test of mini batch 2##
print("Accuracy with Mini Batch2 (train,test)-" ,
accuracy_score(train_Y2,bestModel.predict(train_X2)),
accuracy_score(test_Y2,bestModel.predict(test_X2)))
confusion_matrix(comb_Y2,bestModel.predict(comb_X2))