Лемматизация и стемминг текста
Обычно тексты содержат разные грамматические формы одного и того же слова (например, "ученый" и "ученым"), а также в документе могут встречаться однокоренные слова. Как объяснить машине, что это по сути одно и то же? Для этого нужно текст нормализовать, то есть привести все встречающиеся словоформы к одной, нормальной словарной форме. Самые простой варианты это сделать – использовать стемминг и лемматизацию.
😻 #NN #train
Обычно тексты содержат разные грамматические формы одного и того же слова (например, "ученый" и "ученым"), а также в документе могут встречаться однокоренные слова. Как объяснить машине, что это по сути одно и то же? Для этого нужно текст нормализовать, то есть привести все встречающиеся словоформы к одной, нормальной словарной форме. Самые простой варианты это сделать – использовать стемминг и лемматизацию.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35🔥7❤4
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30❤4🔥4☃3⚡2
7 способов кодирования категориальных переменных, которые надо знать
Почти все реальные датасеты содержат категориальные фичи. Чтобы использовать их в моделях, нужно их закодировать. На карточке сверху изображены 7 способов это сделать:
1) One Hot Encoding – бинарное кодирования с добавлением новых столбцов.
2) Если убрать одну колонку из OHE, то мы избавимся от мультиколлинеарности и получим dummy encoding.
3) Если строчку со всеми нулями из пункта выше заменить на строку с -1, то получим effect encoding.
4) Или же можно просто присвоить каждому значению категории номер, и это будет label encoding.
5) Если данные как-то ранжированы по-порядку, то можно использовать ordinal encoding.
6) Count encoding – кодируем каждое значение частотой/абсолютами его встречаемости.
7) А если немного оптимизировать One Hot Encoding, то получим Binary Encoding. Например, если у нас 4 категории, то мы можем закодировать их всевозможными сочетаниями из двух битов (0 или 1).
😻 #train
Почти все реальные датасеты содержат категориальные фичи. Чтобы использовать их в моделях, нужно их закодировать. На карточке сверху изображены 7 способов это сделать:
1) One Hot Encoding – бинарное кодирования с добавлением новых столбцов.
2) Если убрать одну колонку из OHE, то мы избавимся от мультиколлинеарности и получим dummy encoding.
3) Если строчку со всеми нулями из пункта выше заменить на строку с -1, то получим effect encoding.
4) Или же можно просто присвоить каждому значению категории номер, и это будет label encoding.
5) Если данные как-то ранжированы по-порядку, то можно использовать ordinal encoding.
6) Count encoding – кодируем каждое значение частотой/абсолютами его встречаемости.
7) А если немного оптимизировать One Hot Encoding, то получим Binary Encoding. Например, если у нас 4 категории, то мы можем закодировать их всевозможными сочетаниями из двух битов (0 или 1).
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥35👍7❤4
Как визуализировать дерево решений
Ну во-первых, это красиво. Во-вторых, самое прекрасное свойство деревьей решений – интерпретируемость, и визуализировать модель в этом случае очень полезно. Помимо того, что мы видим, как модель будет принимать решение, можно еще и оценить разделимость данных (например, посмотрев на индекс Джини и количество айтемов каждого класса в вершинах).
В комментариях написали готовый код для визуализации на примере Ирисов Фишера.
😻 #analytics #python #train
Ну во-первых, это красиво. Во-вторых, самое прекрасное свойство деревьей решений – интерпретируемость, и визуализировать модель в этом случае очень полезно. Помимо того, что мы видим, как модель будет принимать решение, можно еще и оценить разделимость данных (например, посмотрев на индекс Джини и количество айтемов каждого класса в вершинах).
В комментариях написали готовый код для визуализации на примере Ирисов Фишера.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤7
Самые популярные методы кросс-валидации
Часто, для более надежной оценки наших моделей, мы не просто делим данные на трейн-тест, а используем более хитрые методы – методы кросс-валидации. В карточках – про то, какие они бывают и как работают. Просто и наглядно.
😻 #train
Часто, для более надежной оценки наших моделей, мы не просто делим данные на трейн-тест, а используем более хитрые методы – методы кросс-валидации. В карточках – про то, какие они бывают и как работают. Просто и наглядно.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥8❤4😍2❤🔥1🤯1
Что такое data leakage?
Утечку данных (data leakage) называют одной из десяти основных проблем машинного обучения. Давайте разберемся, что это такое прежде, чемзальет ваших соседей снизу это доставит кучу проблем аналитикам и бизнесу.
😻 #train #analytics
Утечку данных (data leakage) называют одной из десяти основных проблем машинного обучения. Давайте разберемся, что это такое прежде, чем
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35❤4🔥4
HalvingSearch – ускорение поиска по сетке
Подбор гперпараметров – сложная и распросраненная задача. Для ее решения часто используют поиск по сетке, но этот алгоритм очень уж медленный. Поэтому сегодня давайте обратим внимание на halving search. Его относительно недавно добавили в sklearn, и пришло время разобраться, как с ним работать.
😻 #train
Подбор гперпараметров – сложная и распросраненная задача. Для ее решения часто используют поиск по сетке, но этот алгоритм очень уж медленный. Поэтому сегодня давайте обратим внимание на halving search. Его относительно недавно добавили в sklearn, и пришло время разобраться, как с ним работать.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍47🔥5❤3
Что делать с НЕнормальным распределением?
Как известно, моделям (особенно линейным) нравится, когда данные имеют нормальное распределение. Но что делать, если это не так? Рассказываем про два варианта: простой и посложнее.
😻 #train #analytics #python
Как известно, моделям (особенно линейным) нравится, когда данные имеют нормальное распределение. Но что делать, если это не так? Рассказываем про два варианта: простой и посложнее.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥45🌚8❤6
Кластеризуем алгоритмы кластеризации
Алгоритмов кластеризации на свете целая куча. Чтобы помочь вам лучше их запомнить и понять, мы разбили их на группы по принципу работы: групп получилось всего 6 – вот они слева направо.
😻 #train
Алгоритмов кластеризации на свете целая куча. Чтобы помочь вам лучше их запомнить и понять, мы разбили их на группы по принципу работы: групп получилось всего 6 – вот они слева направо.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍58❤🔥11❤5
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍40🤯8❤4🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥7❤3
Как сделать линейную регрессию устойчивой к выбросам
Всем (ну почти ) хороша линейная регрессия, вот только к выбросам неустойчива. Хотя и это можно исправить: краткий гайд – в карточках.
😻 #train
Всем (
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72🔥21❤8
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍40🔥9❤4
А мы написали нашу первую статью на Хабр!
Посвятили ее крутой библиотеке RecTools от коллег из МТС. Внутри:
▶️ за что мы так любим эту библиотеку;
▶️ ликбез по основным рексис-моделям (ItemKNN, ALS, SVD, Lightfm, DSSM);
▶️ как готовить данные и запускать модели в библиотеке;
▶️ как рассчитывать метрики;
▶️ оставили много полезных дополнительных материалов.
Очень старались, так что ждем ваших реакций!
😻 #NN #train
Посвятили ее крутой библиотеке RecTools от коллег из МТС. Внутри:
Очень старались, так что ждем ваших реакций!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍55🔥20👏4🌚3
Как менять код на Python после запуска
Представьте: поставили вы обучаться модельку, радуетесь, но внезапно после первой эпохи осознаете, что забыли запринтить лос… И перезапускать не хочется (время же!), и без логирования как-то грустно живется.
Оказывается, есть волшебная таблетка – утилита reloading. Она перезагружает тело цикла после каждой итерации без потери прогресса. То есть вы добавляете что-то в цикл, и на следующей итерации код работает уже по-другому.
Установить чудо можно через pip.
😻 #train #python
Представьте: поставили вы обучаться модельку, радуетесь, но внезапно после первой эпохи осознаете, что забыли запринтить лос… И перезапускать не хочется (время же!), и без логирования как-то грустно живется.
Оказывается, есть волшебная таблетка – утилита reloading. Она перезагружает тело цикла после каждой итерации без потери прогресса. То есть вы добавляете что-то в цикл, и на следующей итерации код работает уже по-другому.
Установить чудо можно через pip.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍98❤12🫡7🔥5😁4⚡1
Продолжаем исследовать линейную регрессию
Да-да, этот алгоритм не так прост, как кажется. Попробуем найти в нем еще некоторые загвоздки и понять, как их исправить.
😻 #train
Да-да, этот алгоритм не так прост, как кажется. Попробуем найти в нем еще некоторые загвоздки и понять, как их исправить.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤54👍17🔥11🤯2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82❤8⚡6
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤35👍13🔥12❤🔥5
Как понять бустинг за 30 секунд
Шаг 1. Посмотреть на картинку сверху, на которой просто и изящно показано, что:
– бустинг - итеративный процесс
– каждый следующий эстиматор уделяет большее внимание неправильно классифицированным образцам из предыдущего дерева
– окончательный прогноз представляет собой взвешенную комбинацию всех прогнозов
Шаг 2. Поздравляем! Вы великолепны.
Шаг 2'. Но если все-таки хотите подробнее – читайте этот пост.
😻 #train
Шаг 1. Посмотреть на картинку сверху, на которой просто и изящно показано, что:
– бустинг - итеративный процесс
– каждый следующий эстиматор уделяет большее внимание неправильно классифицированным образцам из предыдущего дерева
– окончательный прогноз представляет собой взвешенную комбинацию всех прогнозов
Шаг 2. Поздравляем! Вы великолепны.
Шаг 2'. Но если все-таки хотите подробнее – читайте этот пост.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥25👍13❤6
Знали ли вы, что случайные деревья можно тестить на трейне?
Такой метод называется out-of-bag validation (в комментах даем приз за самый смешной перевод названия на русский). Давайте разбираться, почему это работает.
😻 #train
Такой метод называется out-of-bag validation (в комментах даем приз за самый смешной перевод названия на русский). Давайте разбираться, почему это работает.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥45❤6👍4⚡3😁3🕊2