Python и эксперименты в области науки о данных (Exp9)

Эксперимент 9.  Эксперимент по распознаванию рукописных цифр по нескольким категориям.

1. Экспериментальные данные

( 1 ) Тренировочный набор

Данные содержат в общей сложности 42 000 изображений в оттенках серого (разрешение 28*28), которые в настоящее время представлены в файле train_data.csv.Содержимое изображения охватывает 10 рукописных цифр от 0 до 9. Пример изображения показан здесь:

Первые 10 строк файла train_data.csv показаны на рисунке.

  

       (первые 10 строк данных в файле обучающего набора, столбец метки представляет значение числа, а от пикселя от 0 до пикселя 783 — значение серого пикселя)

Исходные данные предоставляются в формате CSV, каждая строка представляет собой изображение, первый столбец — цифровое значение, а остальные — значение серого пикселя изображения. Обратите внимание, что в целом для проблем с распознаванием может потребоваться стандартизировать диапазон значений серого для разных изображений, например сделать одинаковым диапазон значений серого для каждого изображения. Однако приведенные нами данные еще не завершили этот этап.

( 2 ) Тестовый набор

    Есть еще 1000 изображений тестовых данных с неизвестными метками (разрешение тоже 28*28), которые сохраняются в файле «test_data.csv». Каждая линия представляет собой значение серого данного изображения, а значение, представленное каждым изображением, должно быть определено путем моделирования.

2. Цель эксперимента

(1) Спроектировать вектор признаков выборки и обладать определенными возможностями проектирования признаков. Например, можно рассмотреть возможность выполнения уменьшения размерности и другой обработки (PCA и т. д.) значения серого пикселя изображения;

(2) использовать алгоритм классификации машинного обучения для обучения модели классификатора распознаванию рукописных цифр на основе обучающего набора;

(3) Затем примените построенную модель классификатора к тестовому набору и дайте результаты классификации всех образцов с неизвестными метками.

3. Идеи для экспериментов

(1) Визуальная процедура (render.py, пожалуйста, поместите программу и файл данных train_data в приложение).

.csv в той же папке для тестирования), научиться считывать данные можно из этой программы.

(2) Конкретный алгоритм машинного обучения не ограничен, и цель состоит в том, чтобы достичь наилучшего эффекта прогнозирования, и чем выше уровень точности, тем лучше; вы можете попробовать интеграцию нескольких моделей обучения.

(3) Выполнить предварительную обработку, связанную с разработкой признаков, такую ​​как преобразование данных и уменьшение размерности для значения серого данного изображения, причем способ реализации не ограничен.

(4) Для классификаторов с несколькими категориями изучите самостоятельно, например KNN, GNB, логистическую регрессию, дерево решений, SVC svm (из sklearn.svm, импорт SVC) и т. д.

4. Экспериментальные требования

(1) Сохраните результаты прогнозирования в текстовом файле с именем «preds.txt», содержание которого составляет 1000 строк, и каждая строка имеет только одно число от 0 до 9, представляющее результаты прогнозирования вашего алгоритма на тестовых данных. Порядок прогнозируемых данных должен соответствовать порядку выборок в тестовом наборе «test_data.csv».

(2) Упакуйте файл результатов «preds.txt» и код и отправьте его в Xuexuetong в качестве вложения, не отправляя файл отчета об эксперименте.

(3) При оценке экспериментальных результатов используется механизм конкуренции. Поскольку этот эксперимент представляет собой задачу нескольких категорий, мы рассчитаем степень точности результата прогноза каждого студента, а затем ранжируем и оценим соответствующие экспериментальные результаты от высокого к низкому.

Примечание. Точность относится к отношению количества правильно классифицированных тестовых образцов к общему количеству тестовых образцов.

Supongo que te gusta

Origin blog.csdn.net/qq_51314244/article/details/130690515
Recomendado
Clasificación