Действительно крутые алгоритмы, которые должен знать каждый Data Scientist

Не забудьте ПОДПИСАТЬСЯ здесь, чтобы не пропустить новую статью о руководствах по науке о данных, хитростях и советах, жизненных уроках и многом другом!

Введение

Это снова то время года! На этот раз вместо 12 проектов по науке о данных за 12 дней Рождества я хотел поделиться с вами 12 АЛГОРИТМАМИ, которые действительно круты и действительно эффективны, и мы говорим не только об алгоритмах с учителем.

Просто чтобы мы были на одной волне, алгоритм – это набор инструкций, которые используются для решения проблемы. Технически рецепт — это алгоритм, но мы сосредоточимся на алгоритмах, имеющих отношение к науке о данных.

Я собираюсь больше сосредоточиться на логике каждого алгоритма и меньше на математике, но на всякий случай предоставлю дополнительные ресурсы. :)

С учетом сказанного, давайте погрузимся прямо в это!

1. ДБСКАН

Что это такое?

DBSCAN, также известный как пространственная кластеризация приложений на основе плотности с шумом, представляет собой алгоритм кластеризации, который идентифицирует кластеры, находя области, которые плотно упакованы вместе, другими словами, точки, которые имеют много близких соседей.

DBSCAN — лучший алгоритм кластеризации (лучше, чем кластеризация k-средних или иерархическая кластеризация) по нескольким причинам:

  • Может самостоятельно определить оптимальное количество кластеров
  • Он может находить скопления аномальной формы, а не только круглые.
  • Он достаточно надежен, чтобы на него не влияли выбросы

Дополнительные ресурсы







Не забудьте ПОДПИСАТЬСЯ здесь, чтобы не пропустить новую статью о руководствах по науке о данных, хитростях и советах, жизненных уроках и многом другом!

2. TF-IDF

Что это такое?

TF-IDF расшифровывается как «Частота термина — обратная частота документа» и используется для определения того, насколько важным словом является документ в корпусе (наборе документов).

В частности, значение TD-IDF для данного слова увеличивается относительно количества раз, которое слово появляется в документе, и уменьшается на количество документов в корпусе, которые также содержат это конкретное слово. Это делается для того, чтобы учесть слова, которые используются чаще всего.

TF-IDF — популярный метод в области обработки естественного языка (NLP) и поиска информации.

Дополнительные ресурсы







3. Априорный алгоритм

Что это такое?

Алгоритм априори — это алгоритм правила ассоциации, который чаще всего используется для определения групп элементов, наиболее тесно связанных друг с другом в наборе элементов.

В качестве примера предположим, что у нас есть база данных о покупках клиентов в продуктовом магазине. Априорный алгоритм можно использовать для определения того, какие пары или группы товаров чаще всего покупаются вместе.

Есть два основных параметра: поддержка и доверие. Поддержка относится к частоте появления элемента, а достоверность представляет собой условную вероятность того, что один элемент был приобретен при условии, что был приобретен один или несколько других элементов.

Дополнительные ресурсы





4. Экспоненциальное сглаживание Холта-Уинтерса

Что это такое?

Экспоненциальное сглаживание Холта-Винтерса, также известное как тройное экспоненциальное сглаживание, является популярным методом прогнозирования данных временных рядов, который демонстрирует как тренд, так и сезонность.

Это называется тройным экспоненциальным сглаживанием, потому что оно учитывает уровень данных, тенденцию данных и сезонность данных.

Преимущества этого метода прогнозирования по сравнению с другими методами, такими как ARIMA, заключаются в следующем:

  • Это просто понять и реализовать
  • Это довольно точно
  • И это вычислительно недорого и не ресурсоемко.

Дополнительные ресурсы







Не забудьте ПОДПИСАТЬСЯ здесь, чтобы не пропустить новую статью о руководствах по науке о данных, хитростях и советах, жизненных уроках и многом другом!

5. Матричная факторизация

Что это такое?

Алгоритмы матричной факторизации представляют собой разновидность алгоритма коллаборативной фильтрации, обычно используемого для построения рекомендательных систем.

Идея совместной фильтрации заключается в том, что она предсказывает интересы данного пользователя на основе интересов других подобных пользователей. Это известно как подход, основанный на памяти, но другой подход — это подход, основанный на моделях, в котором алгоритмы машинного обучения используются для прогнозирования оценок пользователей для элементов без рейтинга.

Дополнительные ресурсы







6. Расстояние Левенштейна

Что это такое?

Расстояние Левенштейна — простой алгоритм, используемый для определения сходства между двумя строками.

В частности, оно равно минимальному количеству односимвольных правок (замен, добавлений, удалений) для замены одного слова другим.

Например, расстояние Левенштейна между «тако» и «яйца» равно 4. Расстояние Левенштейна между «крестом» и «кроссвордом» также равно 4. Интуитивно странно, что эти пары ранжируются одинаково, что показывает ограничения этого алгоритма.

Итак, два лучших алгоритма подобия строк, которые я рекомендую изучить, — это алгоритмы Trigram и Jaro-Winkler.

Дополнительные ресурсы





7. Рейтинг страницы

Что это такое?

PageRank — это алгоритм, созданный Google для ранжирования своих веб-страниц в результатах поиска. Согласно Google, «PageRank работает путем подсчета количества и качества ссылок на страницу, чтобы определить приблизительную оценку важности веб-сайта. Основное предположение состоит в том, что более важные веб-сайты, скорее всего, получат больше ссылок с других веб-сайтов».

Упрощенная формула выглядит следующим образом:

PageRank страницы u равен сумме PageRank страницы v, разделенной на количество ссылок со страницы v, для всех страниц, ссылающихся на страницу u.

Дополнительные ресурсы





8. Алгоритм Дейкстры

Что это такое?

Алгоритм Дейкстры — это алгоритм, используемый для поиска кратчайшего пути от начальной вершины (узла) до целевой вершины (узла) в графе узлов.

Алгоритм Дейкстры использует жадный итеративный подход, который генерирует набор информации, включающий кратчайшие пути от начальной вершины до каждой другой вершины графа (см. видео ниже).

Алгоритм Дейкстры обычно используется для поиска кратчайших маршрутов транспортировки, определения длины кратчайших нефтепроводов, а также в некоторых приложениях для социальных сетей.

Дополнительные ресурсы





Не забудьте ПОДПИСАТЬСЯ здесь, чтобы не пропустить новую статью о руководствах по науке о данных, хитростях и советах, жизненных уроках и многом другом!

9. Эпсилон-жадный алгоритм

Что это такое?

Алгоритм Эпсилон-Жадный — это простой подход к проблеме многорукого бандита, которая представляет собой дилемму разведки и эксплуатации.

Идея проблемы заключается в том, что существует k различных альтернатив, каждая из которых возвращает разное вознаграждение, но вы не знаете вознаграждения ни для одной из альтернатив. Итак, вы начинаете с исследования различных альтернатив, и со временем возникает компромисс между исследованием дополнительных вариантов и использованием наиболее высокооплачиваемых вариантов. вариант.

При использовании Эпсилон-жадного алгоритма случайная альтернатива выбирается за долю ε времени. В остальное время (1-ε) выбирается альтернатива с наибольшей известной выплатой (вознаграждением). ε — это параметр, который вы должны установить.

Лучшие решения включают решение с верхней доверительной границей и байесовскую выборку Томпсона.

Дополнительные ресурсы





10. Гауссовский наивный байесовский метод

Что это такое?

Naïve Bayes — это классификационный алгоритм ML, основанный на теореме Байеса.

В частности, гауссовский наивный байесовский метод — это тип наивного байесовского метода, который предполагает, что непрерывные переменные следуют нормальному распределению и представлен следующим уравнением:

Хотя наивный байесовский метод содержит очень нереалистичные предположения, он быстр, прост в реализации и хорошо работает с мультиклассовым прогнозированием. Это делает его популярным для предсказания в реальном времени, многоклассового предсказания, классификации текста и даже дополняет системы рекомендаций.

Дополнительные ресурсы





11. Классификатор случайного леса

Что это такое?

Алгоритм случайного леса — это алгоритм обучения ансамбля, который включает в себя создание нескольких деревьев решений, а затем выбирает режим всех прогнозов каждого дерева решений. Используя систему голосования или модель «победы большинства», она снижает вероятность ошибки для отдельного дерева. В результате получается более точная, более надежная и менее предвзятая модель.

Используя образ, если бы мы создали одно дерево решений, третье дерево предсказывало бы 0. Но при использовании всех четырех деревьев решений предсказанное значение было бы единицей.

Дополнительные ресурсы



12. Угловой детектор Харриса

Что это такое?

Детектор углов Харриса — это оператор, который используется в алгоритмах компьютерного зрения для определения углов на изображении. Это важно для обработки изображений и компьютерного зрения, поскольку известно, что углы являются важными элементами изображения.

Основная интуиция такова:

  • В плоской области нет изменения градиента (изменения цвета) в любом направлении.
  • В области края нет изменения градиента в направлении края.
  • Только в угловой области наблюдается изменение градиента во всех направлениях.

Таким образом, этот метод используется по всему изображению, чтобы определить, где находятся углы изображения.

Дополнительные ресурсы





Спасибо за прочтение!

Не забудьте подписаться здесь, чтобы не пропустить новую статью о руководствах по науке о данных, хитростях и советах, жизненных уроках и многом другом!

Не знаете, что читать дальше? Я подобрал для вас еще одну статью:



и еще один:



Теренс Шин