Загрузка
Загружаем соревнования
Внеучебное соревнование по машинному обучению Формат: индивидуальный | Длительность: 1 день
Компания разрабатывает систему автоматического распознавания документов. При сканировании страницы система разбивает её на прямоугольные блоки и для каждого блока вычисляет набор геометрических и статистических характеристик.
Ваша задача — по этим характеристикам определить, что именно содержит каждый блок: сплошной текст, горизонтальную линию, картинку, вертикальную линию или графический элемент.
Это классическая задача многоклассовой классификации с акцентом на генерацию признаков (Feature Engineering). Данные сырые, признаки неочевидные, а победа зависит от того, насколько хорошо вы понимаете физику задачи.
Вам предоставляются два файла:
Файл | Описание |
|---|---|
| Обучающая выборка с ответами |
| Тестовая выборка без ответов (нужно предсказать) |
Колонка | Тип | Описание |
|---|---|---|
| int | Уникальный идентификатор блока |
| int | Высота блока в пикселях |
| int | Длина блока в пикселях |
Значение | Класс |
|---|---|
1 | Текст |
2 | Горизонтальная линия |
3 | Картинка |
4 | Вертикальная линия |
5 | Графический элемент |
⚠️ Внимание: Классы несбалансированы. Класс «Текст» (1) встречается значительно чаще остальных. Учитывайте это при выборе метрики и стратегии.
Для каждой строки из test.csv необходимо предсказать значение class.
Итоговый файл submission.csv должен содержать ровно две колонки:
Колонка | Описание |
|---|---|
| Идентификатор строки из |
| Предсказанный класс (целое число от 1 до 5) |
Пример корректного файла:
id,class
0,1
1,3
2,1
3,2
4,1Файл принимается только в формате
.csv. Убедитесь, что число строк вsubmission.csvсовпадает с числом строк вtest.csv, и чтоidсоответствуют исходным.
Weighted F1-score
Метрика учитывает дисбаланс классов: для каждого класса вычисляется F1-score, а итоговый результат — это средневзвешенное значение, где вес класса пропорционален его частоте в выборке.
Где:
Диапазон метрики: от 0.0 (худший результат) до 1.0 (идеальный результат).
Соревнование проходит в два этапа оценки:
⚠️ Важно: Не подгоняйте модель под публичный лидерборд! Модель, которая идеально работает на публичной части, может провалиться на приватной. Делайте ставку на устойчивые и логически обоснованные признаки.
submission.csv за всё время соревнования.test.csv для обучения модели.pandas, scikit-learn, CatBoost, XGBoost, LightGBM, scipy и др.test.csv.submission.csv. Код можно не прикладывать, но рекомендуется сохранять его для себя.Это соревнование с акцентом на Feature Engineering, а не на подбор гиперпараметров. Вот направления для размышлений:
height, lenght и eccen. Какие отношения или произведения этих признаков помогут модели?p_black и p_and. Что происходит с чёрными пикселями после сглаживания для текста, а что — для картинки?wb_trans и mean_tr описывают структуру блока. У сплошного текста переходов много, у закрашенной линии — мало. Как это использовать?🧠 Главный совет: прежде чем запускать модель, потратьте 20–30 минут на визуальный анализ данных и генерацию гипотез. Хороший признак, придуманный руками, часто даёт больший прирост, чем сложный алгоритм.
Событие | Время |
|---|---|
Старт соревнования, выдача данных | 09:00 |
Дедлайн по сабмитам | 18:00 |
Публикация результатов Private LB | 19:00 |
Разбор решений и награждение | 19:30 |
Файл | Назначение |
|---|---|
| Обучающие данные с ответами |
| Данные для предсказания |
| Пример файла ответа (все ответы = мода) |
Удачи! Пусть лучший признак победит. 🚀
|
int |
Площадь блока ( |
| float | Эксцентриситет — вытянутость блока ( |
| float | Доля чёрных пикселей в блоке |
| float | Доля чёрных пикселей после применения алгоритма сглаживания (RLSA) |
| float | Среднее число переходов «белый → чёрный» |
| int | Общее число чёрных пикселей в исходном блоке |
| int | Общее число чёрных пикселей после RLSA |
| int | Число переходов «белый → чёрный» в исходном блоке |
| int | Целевая переменная (только в |