Skip to content

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tabular Transfer Learning

Transfer Learning (перенос обучения) - одна из ключещих тем современного машинного обучения. Она успешно применяется в компьютерном слухе, зрении и NLP, позволяя переносить знания с больших датасетов на малые. Однако в табличных данных такая практика остаётся малоизученной.


Введение

Цель работы

Исследовать возможность переноса знаний между двумя табличными датасетами на примере Adult Census (источник) и Bank Marketing (целевой).

Задачи

  1. Обучить MLP на большом датасете Adult.
  2. Провести Transfer Learning на Bank Marketing.
  3. Сравнить результаты с обучением с нуля и классическими методами.

Описание данных

Adult Census

  • Целевая переменная: доход больше $50K (бинарная)
  • Кол-во записей: 32 561
  • Признаки: 14 (возраст, образование, профессия, семейное положение, финансовые и др.)

Bank Marketing

  • Целевая переменная: оформление депозита (бинарная)
  • Кол-во записей: 4 521 (урезанная версия)
  • Признаки: 16 (возраст, профессия, баланс, кампания и др.)

Сопоставление признаков

Признак в Adult Признак в Bank
Age age
Education_Num education
Capital Gain - Capital Loss balance
Martial_Status marital
Occupation job

Гипетезы

Гипотеза по Transfer Learning

Transfer Learning между Adult Census и Bank Marketing не даст значимого улучшения качества по сравнению с обучением с нуля. Результат по целевой метрике AP будет выше не более чем на 0.01.

Обоснование:

  • Разные таргеты (доход | депозит)
  • Разные релевантные признаки
  • Сдвиг распределений В признаках
  • MLP строит гиперплоскость под Adult; данные Bank расположены иначе

Гипотеза по классическим методам

Ансамблевые методы на основе деревьев (CatBoost, Random Forest) покажут более высокое качество по метрике AP (не менее чем на 0.02), чем MLP, на данных Bank Marketing, потому что деревья решений менее склонны к переобучению при правильной настройке гиперпараметров, тогда как MLP требует значительно больше данных для стабильного обучения и обобщения.

Обоснование:

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

Эксперименты

Pre-training на Adult

Архитектура: [512, 256, 128], SELU, Dropout=0, BN=False.

Результат: AP = 0.7838.

Fine-tuning последнего слоя

Подход AP F1
Без сброса весов 0.1724 0.0617
Со сбросом весов 0.1668 0.0652
+ Focal Loss 0.1968 0.2701

Вывод: Transfer Learning не дал улучшения.

Обучение с нуля на Bank

Результат: AP = 0.5155.

Таблица с классические модели

Модель AP F1 Время обучения(сек)
CatBoost с параметрами 0.5671 0.4788 0.64
CatBoost (пустой) 0.5552 0.5523 0.64
MLP 0.5155 0.5455 47.29
Random Forest 0.3469 0.5443 0.29
Logistic Regression 0.3311 0.5211 0.04

Анализ экспериментов

Почему Transfer Learning не сработал?

  1. Разные релевантные признаки.
    Ключевые для Bank (campaign, pdays, previous, poutcome) отсутствуют в Adult.

  2. Сдвиг распределений.
    Adult и Bank - разные популяции (население vs клиенты банка).

  3. Разная логика таргета.
    Доход (объективный) vs депозит (поведенческий).

MLP vs CatBoost

MLP дал AP = 0.5155, что всего на 9% ниже CatBoost, но учится в разы дольше. На малых данных классические алгоритмы остаются лучше.

Гипотеза по Transfer Learning подтвердилась

Transfer Learning не даст значимого улучшения

AP = 0.20 против 0.5155 - гипотеза полностью подтвердилась.

Гипотеза по классическим методам подтвердилась

Ансамблевые методы покажут более высокое качество, чем MLP

Разница в AP между CatBoost и MLP составила 0.0516, что превысило ожидаемые 0.02. MLP уступил CatBoost как по качеству, так и по времени обучения (в 30 раз медленнее). Однако MLP оказался достойным конкурентом, обойдя Random Forest по метрике AP.


Заключение

Основные выводы

  1. Transfer Learning на табличных данных - не универсальное решение. Он требует совпадения релевантных признаков и распределений.

  2. Классические алгоритмы остаются лучшими для малых табличных данных (AP = 0.5671, скорость 0.64 сек).

  3. MLP - достойный конкурент (AP = 0.5155), но требует много времени (47 сек).

Для задачи предсказания депозита в Bank Marketing классические методы остаются предпочтительными. Transfer Learning в данной постановке неэффективен из-за несовместимости данных.


Воспроизводимость эксперимента

Код

Все эксперименты реализованы в Jupyter Notebook и доступны в этой репозитории.

Данные

Запуск

  1. Установить зависимости:
    pip install -r requirements.txt
  2. Запустить ноутбук:
    jupyter notebook Research.ipynb
  3. Выполнить ячейки последовательно.

About

Эксперимент с transfer learning на MLP и двух табличных датасетах

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages