PLUSH_PYTHON Telegram 64
А вы знали про confident learning?
#ml

"Уверенное обучение" в контексте machine learning - что бы это могло значить? 🤔 Почти все алгоритмы машинного обучения основаны на предположении, что обучающие данные чисты и заслуживают доверия. Однако на самом деле в них часто закрадываются ошибки разметки, которые плохо влияют на обучение моделей. Confident learning - это относительно новый подход к обучению моделей в русле data-centric ML. Он объединяет в себе различные практики и трюки для обнаружения ошибок разметки и эффективного обучения моделей несмотря на присутствие в данных таких ошибок.

Зачем знать про этот подход? Его можно применять в почти любых задачах машинного обучения с учителем (мультикласс- и мультилейбл-классификация, регрессия) в NLP, CV, работе со структурированными данными. Подход автоматически определяет ошибки в разметке, не требуя подбора гиперпараметров (использует кросс-валидацию для предсказания вероятностей в режиме out-of-sample). После этого можно обучить модель только на данных, не содержащих ошибок разметки - как правило, такая модель будет более точной. 🤓

Confident learning хорошо обоснован теоретически, также есть реализация его методов в библиотеке cleanlab со свободной лицензией. Статья, описывающая подход, имеет 400+ цитирований с 2021 года, а репозиторий cleanlab - 6,2К звёзд. При этом подход не то чтобы очень широко известен. Вы можете применить confident learning в своих рабочих задачах (будем честны, как часто мы видим идеально размеченные датасеты?), а также блеснуть эрудицией на собеседованиях.

Например, с cleanlab можно одной строчкой кода запустить диагностику датасета и получить отчёт о возможных проблемах:

from cleanlab.dataset import health_summary

health_summary(labels, pred_probs)

Ещё один короткий пример для классификации текстов:

cl = CleanLearning(model, cv_n_folds=cv_n_folds)
label_issues = cl.find_label_issues(
X=train_texts,
labels=train_labels,
)
cl.fit(
X=train_texts,
labels=train_labels,
label_issues=cl.get_label_issues(),
)

При обучении новой модели на очищенных от ошибок данных будьте внимательны к тому, как вы оцениваете итоговый результат. Если оценивать на тестовом сете, содержащем ошибки разметки, то эффект от confident learning не будет заметен. Авторы библиотеки дают рекомендации, как правильно применять этот подход, в понятных тьюториалах и FAQ.

Для тех, кто дочитал до конца 🙏, небольшой бонус - курс 2023 года от MIT по датацентричному ИИ с большим количеством лабораторных работ. Очень рекомендую!



tgoop.com/plush_python/64
Create:
Last Update:

А вы знали про confident learning?
#ml

"Уверенное обучение" в контексте machine learning - что бы это могло значить? 🤔 Почти все алгоритмы машинного обучения основаны на предположении, что обучающие данные чисты и заслуживают доверия. Однако на самом деле в них часто закрадываются ошибки разметки, которые плохо влияют на обучение моделей. Confident learning - это относительно новый подход к обучению моделей в русле data-centric ML. Он объединяет в себе различные практики и трюки для обнаружения ошибок разметки и эффективного обучения моделей несмотря на присутствие в данных таких ошибок.

Зачем знать про этот подход? Его можно применять в почти любых задачах машинного обучения с учителем (мультикласс- и мультилейбл-классификация, регрессия) в NLP, CV, работе со структурированными данными. Подход автоматически определяет ошибки в разметке, не требуя подбора гиперпараметров (использует кросс-валидацию для предсказания вероятностей в режиме out-of-sample). После этого можно обучить модель только на данных, не содержащих ошибок разметки - как правило, такая модель будет более точной. 🤓

Confident learning хорошо обоснован теоретически, также есть реализация его методов в библиотеке cleanlab со свободной лицензией. Статья, описывающая подход, имеет 400+ цитирований с 2021 года, а репозиторий cleanlab - 6,2К звёзд. При этом подход не то чтобы очень широко известен. Вы можете применить confident learning в своих рабочих задачах (будем честны, как часто мы видим идеально размеченные датасеты?), а также блеснуть эрудицией на собеседованиях.

Например, с cleanlab можно одной строчкой кода запустить диагностику датасета и получить отчёт о возможных проблемах:

from cleanlab.dataset import health_summary

health_summary(labels, pred_probs)

Ещё один короткий пример для классификации текстов:

cl = CleanLearning(model, cv_n_folds=cv_n_folds)
label_issues = cl.find_label_issues(
X=train_texts,
labels=train_labels,
)
cl.fit(
X=train_texts,
labels=train_labels,
label_issues=cl.get_label_issues(),
)

При обучении новой модели на очищенных от ошибок данных будьте внимательны к тому, как вы оцениваете итоговый результат. Если оценивать на тестовом сете, содержащем ошибки разметки, то эффект от confident learning не будет заметен. Авторы библиотеки дают рекомендации, как правильно применять этот подход, в понятных тьюториалах и FAQ.

Для тех, кто дочитал до конца 🙏, небольшой бонус - курс 2023 года от MIT по датацентричному ИИ с большим количеством лабораторных работ. Очень рекомендую!

BY Плюшевый Питон


Share with your friend now:
tgoop.com/plush_python/64

View MORE
Open in Telegram


Telegram News

Date: |

A new window will come up. Enter your channel name and bio. (See the character limits above.) Click “Create.” It’s easy to create a Telegram channel via desktop app or mobile app (for Android and iOS): To view your bio, click the Menu icon and select “View channel info.” Telegram channels fall into two types: “Hey degen, are you stressed? Just let it all out,” he wrote, along with a link to join the group.
from us


Telegram Плюшевый Питон
FROM American