Что делать с «маленькими» данными?
Оригинальная статья на Medium.com. Перевод — Top-Translate.ru.
Во многих технологических компаниях сегодня есть специалисты по данным, сведущие в инфраструктурных инструментах для больших данных и алгоритмах машинного обучения, но время от времени возникают наборы данных с очень небольшим числом базовых точек, и ни один из этих алгоритмов не может правильно справиться с ними. Что же, чёрт возьми, происходит? Что с этим можно сделать?
Откуда появляются маленькие данные?
Большая часть деятельности по обработке, актуальности данных и машинному обучению в технологических компаниях сосредоточена на «биг дате» и сценариях с огромными наборами данных. Наборами, в которых строки – это документы, пользователи, файлы, запросы, песни, изображения и т.д. Это элементы, которых существуют тысячи, сотни тысяч, миллионы или даже миллиарды. Инфраструктура, инструменты и алгоритмы для работы с такими наборами данных за последнее десятилетие или около того развиваются очень быстро, постоянно улучшаясь. И большинство специалистов по данным и практиков машинного обучения приобрели опыт работы в таких ситуациях, привыкли к соответствующим алгоритмам и обладают хорошей интуицией в отношении обычных взаимовлияний (систематические ошибки и расхождения, гибкость и устойчивость, характеристики, заданные вручную, и машинное обучение и т.д.). Но время от времени в работе по-прежнему возникают маленькие данные и зачастую, с ними сложнее работать, для них требуется другой набор алгоритмов и навыков. Такие наборы данных возникают в нескольких ситуациях:
Решения для предприятий: когда вы пытаетесь создать решение для предприятия со сравнительно ограниченным числом сотрудников вместо единого решения для тысяч пользователей или если вы создаете решение, ориентированное на компании, а не отдельных лиц.
Временные ряды: Время в дефиците! Особенно по сравнению с пользователями, запросами, сессиями, документами и т.д. Очевидно, это зависит от единиц измерения времени или скорости выборки, но эффективно увеличить скорость выборки не всегда легко, и если вы работаете, например, с одним числом ежедневно, то каждый день у вас имеется одна точка данных.
Совокупное моделирование штатов, стран, спортивных команд или любой ситуации, где население само по себе ограничено (или производить выборку действительно затратно).
Многомерное A/B тестирование: здесь точками данных становятся методы обработки или комбинации методов обработки. Так что, если вы рассматриваете 3 измерения X4 конфигурации (включая контроль), вы получите 12 точек данных.
Моделирование редких явлений: землетрясения, наводнения и т.д.
Проблемы маленьких данных
Проблемы маленьких данных многочисленны, но в основном они относятся к высокой вариантности:
Становится гораздо труднее избежать чрезмерно близкой подгонки
Чрезмерно близко подгоняются не только данные режима обучения, но иногда также и проверочный набор.
Резко отклоняющиеся значения (выбросы) становятся более опасными
Шум в целом становится реальной проблемой, будь то в вашей целевой переменной или в некоторых характеристиках.
Так что же делать в таких ситуациях?
1) Наймите статистика
Я не шучу! Статистики – это настоящие ученые в сфере данных. Область статистики была разработана, когда данные было гораздо сложнее найти. Эта область занималась проблемами маленьких выборок. Статистические тесты, параметрические модели, бутстреппинг и другие полезные математические инструменты – это прерогатива классической статистики, не современного машинного обучения. Не имея хорошего статистика, наймите морского биолога-зоолога, психолога или того, кто обучался в вашей сфере деятельности с экспериментами с малой выборкой. Чем ближе к ней, тем лучше. Если вы не хотите нанимать статистика на полный рабочий день, сделайте его временным консультантом. Но найм статистика с классической подготовкой может быть очень хорошим вложением.
2) Придерживайтесь простых моделей
Точнее: придерживайтесь ограниченного набора гипотез. Один из способов рассмотрения прогнозного моделирования – это задача поиска. Какая модель из первоначального набора возможных моделей является наиболее подходящей для наших данных? В некотором смысле, каждая точка данных, которую мы используем для подгонки, отклоняет все модели, которые делают ее маловероятной, либо принимает модели, которые согласуются с ней. Если у вас есть большие объемы данных, вы можете позволить себе эффективно исследовать огромные наборы моделей/гипотез и, в конечном итоге прийти к подходящему. Если у вас не так много точек данных, с которых можно начать, вы должны начать с довольно небольшого набора возможных гипотез (например, набора всех линейных моделей с 3 ненулевыми весами, набора деревьев решений с глубиной
Похожие новости
- Неизменяемая архитектура. Практическая проверка кодом. Аутентификация
- Spark_news: Рейтинг компаний, которые закрывали магазины в России к 2026 году
- Охота на CVE в Cursor IDE: полный технический разбор безопасности AI-редактора
- GooD_News: Huawei выходит на рынок AI-очков
- Руководство по геопространственной разведке (GEOINT)
- Cроки факторизации приватных ключей RSA и Bitcoin немного приблизились
- [Перевод] Знакомство с одним прогоном Mythos применительно к Firefox: а разговоров-то было?
- Victor Koch: «Эффект Бони»
- DDoS снова «переобулся»: как изменился ландшафт угроз в I квартале 2026 года
- AlinaTen: DeepRoute.ai заявила о более чем 300 тысячах автомобилей с её системой автопилота