Знание ваших данных является решающим фактором для машинного обучения. Мы все знакомы с термином Garbage in, Garbage out (или GIGO для краткости), возникшим в области статистики и науки о данных, чтобы проиллюстрировать тот факт, что
качество выходных данных, полученных от модели ML, в значительной степени зависит от качества. информации, которая была введена. Если ваши данные недействительны или точны, ваши результаты бесполезны. «Мусорные данные» – это данные, которые
просто заполнены ошибками, выбросами, отсутствующими значениями и артефактами, но также могут быть и данными, не имеющими никакого применения.
Решение состоит в том, чтобы вынести мусор из ваших данных! тратя меньше времени на «соответствие/прогнозирование», но тратя больше времени на обработку и проверку входных данных, чтобы убедиться, что в модель попадают данные нужного типа. В этом сообщении блога я рассмотрю проблему целостности данных для целей машинного обучения. Я рассмотрю некоторые настоятельно рекомендуемые методологии и лучшие практики, основанные на данных, чтобы обеспечить качество обучающих данных для моделирования ML. Я представлю несколько вариантов использования из своего опыта, демонстрируя самые простые артефакты в данных более сложным и беспорядочным.
Как упоминалось выше, обработка данных является важной частью, чтобы сделать процесс проверки модели EDA и данных и машинного обучения более быстрым, эффективным и автоматизированным, я создаю Octopus-ml: https://github.com/gershonc/octopus-ml
Octopus-ML — это набор удобных инструментов машинного обучения и визуализации и проверки данных, которые позволяют легко обучать, оценивать и проверять модели и данные машинного обучения с минимальными усилиями.
Модуль можно легко установить с помощью pip:
> pip install octopus-ml
Вот несколько избранных инструментов и рекомендуемых визуализаций (в наборе данных Kaggle Titanic):
Первым шагом проверки данных является поиск артефактов в данных, функций с асимметричным распределением, дубликатов и т. д. Octopus ML имеет автоматический способ выполнения этих тестов, очень похожий на pandas-profiling.
После того, как мы проверили данные и решили основные проблемы с данными, следующим шагом будет запуск начальной модели машинного обучения и запуск перекрестной проверки. Вот пример метода cv_plot Octopus-ML. Как мы видим ниже, эта модель надежна и не переоснащена.
Вот пример очень полезной визуализации при оценке вашей модели машинного обучения. Он показывает вероятность прогнозов при окрашивании целевой метки, что позволяет очень легко определить FP / FN и в целом оценить разделение бинарной классификации.
Ниже приведен пример надежной визуализации гистограммы, которая окрашивает цель/метку. Это позволяет легко обнаружить различия между двумя классами. На этом примере сразу видно, что большинство выживших в титанических катастрофах — дети.
Обнаружение аномалий — отличный инструмент для поиска точек данных/наблюдений с выбросами в наших данных. вот пример действительно простого способа извлечения аномалий с помощью Octopus-ML (используя Isolation Forest)