Как сохранить результат прогнозирования из модели ML (SVM, kNN) с помощью sklearn

#python-3.x #machine-learning #scikit-learn #svm #knn

#python-3.x #машинное обучение #scikit-learn #svm #knn

Вопрос:

У меня есть некоторые данные метки, и я использую классификационную модель ML (SVM, kNN) для обучения и тестирования набора данных.

Мои функции ввода выглядят так: (442, 443, 0.608923884514436), (444, 443, 0.6418604651162789)

Метка выглядит так: 0, 1

Затем я sklearn тренировался и тестировал (после разделения набора данных на 80% для обучения и 20% для теста). Пример кода приведен ниже:

 classifiers = [
    SVC(),
    KNeighborsClassifier(n_neighbors=5)]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
trainingData    = X_train
trainingScores  = y_train
for item in classifiers:
    print(item)
    clf = item
    clf.fit(trainingData, trainingScores)
    
    y_pred = clf.predict(X_test)

    print("Accuracy Scor:")
    print(accuracy_score(y_pred, y_test))
    print("Confusion Matrix:")
    print(confusion_matrix(y_pred, y_test))
    print("Classification Report:")
    print(classification_report(y_pred, y_test))
 

Scor точности SVC: 0.6639580602883355

Коэффициент точности kNN: 0.7171690694626475

Я могу предположить, что модель правильно прогнозирует некоторые данные. Мои вопросы

  1. Как я могу сохранить данные прогнозирования, включая метку, заданную моделью, в файле CSV.
  2. Возможно ли использовать эту cross-validation концепцию здесь? Например, если я хочу применить 5 перекрестных проверок. Тогда как я могу это сделать?

Ответ №1:

 import pandas as pd
labels_df = pd.DataFrame(y_pred ,columns=["predicted_label"])
labels_df.to_csv(r'Path where you want to store the exported CSV fileFile Name.csv',index = False)
 

для второго вопроса проверьте это