Pull to refresh
  • by relevance
  • by date
  • by rating

Основы анализа данных на python с использованием pandas+sklearn

Python *
Добрый день уважаемые читатели. В сегодняшней посте я продолжу свой цикл статей посвященный анализу данных на python c помощью модуля Pandas и расскажу один из вариантов использования данного модуля в связке с модулем для машинного обучения scikit-learn. Работа данной связки будет показана на примере задачи про спасенных с "Титаника". Данное задание имеет большую популярность среди людей, только начинающих заниматься анализом данных и машинным обучением.
Читать дальше →
Total votes 26: ↑25 and ↓1 +24
Views 151K
Comments 7

Kaggle и Titanic — еще одно решение задачи с помощью Python

Sport programming *Python *Programming *Machine learning *
Tutorial
Хочу поделиться опытом работы с задачей известного конкурса по машинному обучению от Kaggle. Этот конкурс позиционируется как конкурс для начинающих, а у меня как раз не было почти никакого практического опыта в этой области. Я немного знал теорию, но с реальными данными дела почти не имел и с питоном плотно не работал. В итоге, потратив пару предновогодних вечеров, набрал 0.80383 (первая четверть рейтинга).



Читать дальше →
Total votes 31: ↑30 and ↓1 +29
Views 69K
Comments 6

Распознавание DGA доменов. А что если нейронные сети?

Digital Security corporate blog Information Security *Machine learning *

Всем привет!


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

Читать дальше →
Total votes 22: ↑20 and ↓2 +18
Views 13K
Comments 8

Как работает метод главных компонент (PCA) на простом примере

Python *Algorithms *Machine learning *
Sandbox


В этой статье я бы хотел рассказать о том, как именно работает метод анализа главных компонент (PCA – principal component analysis) с точки зрения интуиции, стоящей за ее математическим аппаратом. Максимально просто, но подробно.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Views 157K
Comments 22

Решение задачи «Оценка производительности» mlbootcamp.ru

Python *Machine learning *
Sandbox
Осталось менее трех дней до окончания конкурса «Оценка производительности». Возможно, данная статья кому-то поможет улучшить свое решение. Суть задачи — предсказать время умножения двух матриц на разных вычислительных системах. В качестве оценки качества предсказания берется наименьшая средняя относительная ошибка MAPE.

На текущий момент первое место — 4.68%. Ниже хочу описать свой путь к 6.69% (а это уже 70+ место).
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views 4.5K
Comments 5

Как различать британскую и американскую литературу с помощью машинного обучения

Python *Algorithms *Machine learning *
Sandbox

Однажды мне стало интересно, отличается ли британская и американская литература с точки зрения выбора слов, и если отличается, удастся ли мне обучить классификатор, который бы различал литературные тексты с точки зрения частоты использованных слов. Различать тексты, написанные на разных языках, довольно легко, мощность пересечения множества слов небольшая относительно множества слов в выборке. Классификация текста по категориям «наука», «христианство», «компьютерная графика», «атеизм», — всем известный hello world среди задач по работе с частотностью текста. Передо мной стояла более сложная задача, так как я сравнивала два диалекта одного языка, а тексты не имели общей смысловой направленности.


image

Читать дальше →
Total votes 47: ↑45 and ↓2 +43
Views 7.8K
Comments 21

Интересные алгоритмы кластеризации, часть вторая: DBSCAN

Data Mining *Algorithms *Mathematics *Machine learning *
Часть первая — Affinity Propagation
Часть вторая — DBSCAN
Часть третья — кластеризация временных рядов
Часть четвёртая — Self-Organizing Maps (SOM)
Часть пятая — Growing Neural Gas (GNG)

Углубимся ещё немного в малохоженные дебри Data Science. Сегодня в очереди на препарацию алгоритм кластеризации DBSCAN. Прошу под кат людей, которые сталкивались или собираются столкнуться с кластеризацией данных, в которых встречаются сгустки произвольной формы — сегодня ваш арсенал пополнится отличным инструментом.


Читать дальше →
Total votes 26: ↑25 and ↓1 +24
Views 53K
Comments 4

Расчет оттока клиентов банка (решение задачи с помощью Python)

Entertaining tasks Python *
Sandbox
Хочу поделиться опытом решения задачи по машинному обучению и анализу данных от Kaggle. Данная статья позиционируется как руководство для начинающих пользователей на примере не совсем простой задачи.
Читать дальше →
Total votes 19: ↑14 and ↓5 +9
Views 13K
Comments 10

Хронология уровня CO в атмосфере США (решение задачи Kaggle с помощью Python+Feature Engineering)

Python *Big Data *Data visualization
Tutorial
Хочу поделиться опытом решения задачи по машинному обучению и анализу данных от Kaggle. Данная статья позиционируется как руководство для начинающих пользователей на примере не совсем простой задачи.

Выборка данных

Выборка данных содержит порядка 8,5 млн строк и 29 столбцов.Вот некоторые из параметров:

  • Широта-latitude
  • Долгота-longitude
  • Способ взятия пробы-method_name
  • Дата и время взятия пробы-date_local

image

Задача

  1. Найти параметры максимально влияющие на уровень CO в атмосфере.
  2. Создание гипотезы, предсказывающей уровень CO в атмосфере.
  3. Создание нескольких простых визуализаций.
Читать дальше →
Total votes 21: ↑16 and ↓5 +11
Views 6.3K
Comments 16

Готовим иерархическую кластеризацию или как я выявлял специализации у резюме

HeadHunter corporate blog Python *Programming *Machine learning *Artificial Intelligence
Я работаю разработчиком в hh.ru, и мне хочется перейти в датасайнс, но пока не хватает навыков. Поэтому в свободное от работы время я изучаю машинное обучение и стараюсь решать практические задачи из этой области. Недавно мне подкинули задачу по кластеризации наших резюме. Пост будет о том, как я решал её при помощи агломеративной иерархической кластеризации. Если не хочется читать, но интересен результат, то можно посмотреть сразу демо.

Читать дальше →
Total votes 15: ↑15 and ↓0 +15
Views 16K
Comments 19

Краткий обзор алгоритма машинного обучения Метод Опорных Векторов (SVM)

Python *Programming *Big Data *Mathematics *Machine learning *
Tutorial

Предисловие




В данной статье мы изучим несколько аспектов SVM:

  • теоретическую составляющую SVM;
  • как алгоритм работает на выборках, которые невозможно разбить на классылинейно;
  • пример использования на Python и имплементация алгоритма в библиотеке SciKit Learn.
Читать дальше →
Total votes 29: ↑27 and ↓2 +25
Views 43K
Comments 19

Говорит и показывает: отличается ли риторика популярных украинских политиков?

Python *Open data *Machine learning *Natural Language Processing *
Можно ли по цитате определить, кто из политиков ее автор? Украинская НКО Vox Ukraine делает проект VoxCheck, в рамках которого проверяет высказывания наиболее рейтинговых политиков. Недавно они выложили всю базу проверенных цитат. Я как раз слушаю курсы по NLP и решила проверить, насколько точно по тексту цитаты можно определить ее автора.

Disclaimer. Эта статья написана из интереса к теме и желания опробовать изученный материал на практике, без претензий на максимально точный и детальный анализ.
Читать дальше →
Total votes 64: ↑53 and ↓11 +42
Views 12K
Comments 26

Как решить старую задачу с помощью ML на Python и .Net

Python *.NET *Machine learning *Natural Language Processing *
Tutorial


Бывает, что некоторые задачи преследуют тебя много лет. Для меня такой задачей стала склейка предложений текстов, в которых жестко забит переход на новую строку, а часто еще и перенос слов. На практике, это извлеченный из PDF или с помощью OCR текст. Часто можно было встретить такие тексты на сайтах он-лайн библиотек, в архивах старых документов, которые редактировались еще DOS-редакторами. И такое форматирование очень мешает затем правильной разбивке на предложения (а с переносами — и на токены) для последующей NLP-обработки. Да и банально показать такой документ в поисковой выдаче — будет некрасиво.


Решал я эту задачу несколько раз — на Delphi, C#. Тогда это был жесткий алгоритм, где руками прописывал, например, какая может быть ширина текста, чтобы этот текст считался отформатированным "по-старому". Не всегда это срабатывало идеально, но в общем, хватало.

Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views 6.3K
Comments 16

Рост. Вес. Три соседа

Python *Mathematics *Machine learning *

В поиске интересного и простого ДатаСета я набрёл этого красавца.


Об этом красавце


В нём есть данные о росте и весе 10 000 мужчин и женщин. Никакого описания. Ничего «лишнего». Только рост, вес и метка пола. Эта таинственная простота мне понравилась.


Что ж, начнём!


Что мне было интересно?


  • В каком диапазоне вес и рост у большинства мужчин и женщин?
  • Какие они — «средний» мужчина и «средняя» женщина?
  • Сможет ли простенькая модель машинного обучения «KNN» по этим данным угадать вес по росту?

Погнали!


logo

Читать дальше →
Total votes 26: ↑16 and ↓10 +6
Views 7.4K
Comments 24

Угадай меня, если сможешь: прогнозирование рейтинга фильма до его выхода

Python *Data Mining *Open data *Machine learning *
Недавно мне на глаза попался датасет на Kaggle с данными о 45 тысячах фильмов с Full MovieLens Dataset. Данные содержали не только информацию об актерах, съемочной команде, сюжете и т.п., но и оценки, выставленные фильмам пользователями ресурса (26 миллионов оценок от 270 тыс.пользователей).

Стандартная задача для таких данных — это рекомендательная система. Но мне в голову почему-то пришло прогнозирование рейтинга фильма на основе информации, доступной до его выхода. Я не знаток кинематографа, и поэтому обычно ориентируюсь на рецензии, выбирая что посмотреть из новинок. Но ведь рецензенты тоже несколько biased — они-то смотрят гораздо больше разных фильмов, чем рядовой зритель. Поэтому спрогнозировать, как оценит фильм обычная публика, показалось занятным.
Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Views 5.4K
Comments 8

«Вроде такое уже было?» Поиск похожих инцидентов и заявок

Python *Service Desk *Machine learning *

Всем, кто провел определенное время, поддерживая системы, знакомо чувство déjà vu при получении новой заявки: "вроде такое было, вроде решали, но как конкретно — не помню". Можно потратить время, покопаться в предыдущих заявках и постараться найти похожие. Это поможет: инцидент будет закрыт быстрее, а может быть даже удастся обнаружить глубинную причину и закрыть проблему раз и навсегда.


У "молодых" сотрудников, только присоединившихся к команде, такой истории в голове еще нет. Они, скорее всего, не знают, что аналогичный инцидент, например, произошел полгода-год назад. И решил тот инцидент коллега из соседней комнаты.


Скорее всего, "молодые" сотрудники не станут искать в базе инцидентов что-то похожее, а будут решать проблемы "с нуля". Потратят больше времени, приобретут опыт и в следующий раз справятся быстрее. А может быть — сразу забудут под потоком новых заявок. И в следующий раз все повторится снова.


Мы уже используем ML-модели для классификации инцидентов. Чтобы помочь нашей команде эффективнее обрабатывать заявки, мы создали еще одну ML-модель для подготовки списка "ранее закрытые похожие инциденты". Детали — под катом.

Читать дальше →
Total votes 3: ↑3 and ↓0 +3
Views 3.2K
Comments 16

Поиск похожих инцидентов и заявок. Метрики и оптимизация

Python *Service Desk *Machine learning *

В предыдущей статье я рассказал про нашу систему поиска похожих заявок. После ее запуска мы стали получать первые отзывы. Какие-то рекомендации аналитикам нравились и были полезны, какие-то — нет.


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


Под катом я расскажу про:


  • сбор отзывов на рекомендации
  • выработку метрик для оценки качества рекомендаций
  • построение цикла оптимизации модели
  • полученные инсайты и новую модель
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 1.6K
Comments 2

Ансамбли нейронных сетей с PyTorch и Sklearn

Python *Programming *Machine learning *
Sandbox
🔥 Technotext 2020
Tutorial

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


И тут на помощь приходят ансамбли...


Что такое ансамбли


Ансамбль алгоритмов машинного обучения — это использование нескольких (не обязательно разных) моделей вместо одной. То есть сначала мы обучаем каждую модель, а затем объединяем их предсказания. Получается, что наши модели вместе образуют одну более сложную (в плане обобщающей способности — способности "понимать" данные) модель, которую часто называют метамоделью. Чаще всего метамодель обучается уже не на нашей первоначальной выборке данных, а на предсказаниях других моделей. Она как бы учитывает опыт всех моделей, и это позволяет уменьшить ошибки.

Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 8.9K
Comments 6

Детектирование аномалий с помощью автоенкодеров на Python

Python *Programming *Machine learning *
Tutorial

Детектирование аномалий — интересная задача машинного обучения. Не существует какого-то определенного способа ее решения, так как каждый набор данных имеет свои особенности. Но в то же время есть несколько подходов, которые помогают добиться успеха. Я хочу рассказать про один из таких подходов — автоенкодеры.

Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 9.5K
Comments 4

Анализируем шедевры живописи с помощью классического ML

OTUS corporate blog Python *Machine learning *
Sandbox
🔥 Technotext 2020


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

Вооружившись самодельным парсером под покровом ночи я ворвался в онлайн галерею и вынес оттуда почти 50 тысяч картин. Давайте разберем, что интересного с этим можно сделать, используя только классические ML инструменты (осторожно, трафик).
Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Views 4.2K
Comments 7
1