Пошук звукових аномалій

Спробуємо вирішити завдання пошуку аномалій у звуці.

Приклади аномалій звуку:

  • Несправності в роботі двигуна.
  • Зміни в погоді: дощ, град, вітер.
  • Аномалії робота серця, шлунка, суглобів.
  • Незвичайний трафік на дорозі.
  • Несправності колісних пар у поїзда.
  • Несправності при посадці і зльоті літака.
  • Аномалії руху рідини в трубі, каналі.
  • Аномалії руху повітря в системах кондиціонування, на крилі літака.
  • Несправності автомобіля, велосипеда.
  • Несправності верстата, обладнання.
  • Засмучений музичний інструмент.
  • Неправильно взяті ноти пісні.
  • Ехолокація кораблів і підводних човнів.

Читати далі →

Automatic Relevance Determination або машинне навчання коли даних дуже мало

Коли мова заходить про машинне навчання, зазвичай мають на увазі великі обсяги даних — мільйони чи навіть мільярди транзакцій, з яких треба зробити складний висновок про поведінці, інтересах або поточному стані користувача, покупця або якого-небудь апарату (робота, автомобіля, дрона або верстата).
Однак у житті звичайного аналітика самої звичайної компанії багато даних зустрічається нечасто. Скоріше навіть навпаки — у вас буде мало або дуже мало даних — буквально десятки або сотні записів. Але аналіз все ж потрібно провести. Причому не який потрапило аналіз, а якісний і достовірний.
Часто ситуація ускладнюється ще і тим, що ви без праці можете нагенерить для кожного запису багато ознак (найчастіше додають поліноми, різницю з попереднім значенням і значенням за минулий рік, one-hot-encoding для категоріальних ознак тощо). Ось тільки зовсім нелегко розібратися, які з них дійсно корисні, а які тільки ускладнюють модель і збільшують помилки вашого прозноза.
Для цього ви можете скористатися методами байєсової статистики, наприклад, Automatic Relevance Determination.
Читати далі →

Деякі репозиторії в допомогу тим, хто вивчає і викладає Python і машинне навчання



Привіт спільноті!

Я Юрій Кашницький, раніше робив тут огляд деяких MOOC з комп'ютерних наук і шукав «викиди» серед моделей Playboy.

Зараз я викладаю Python і машинне навчання на факультеті комп'ютерних наук НДУ ВШЕ і в онлайн-курсі співтовариства з аналізу даних MLClass, а також машинне навчання і аналіз великих даних в школі даних одного з російських телеком-операторів.

Чому б недільного вечора не поділитися з співтовариством матеріалами з Python і оглядом репозиторіїв за машинного навчання… В першій частині буде опис репозиторію GitHub з зошитами IPython з програмування на мові Python. У другій — огляд попалися мені класних репозиторіїв GitHub.

Читати далі →

Методи відбору фіч

Ця стаття — огляд, компіляція з кількох джерел, повний список яких я наведу в кінці. Відбір фіч (feature selection) — важлива складова машинного навчання. Тому мені захотілося краще розібратися зі всілякими його методами. Я отримала велике задоволення від пошуку інформації, читання статей, перегляду лекцій. І хочу поділитися цими матеріалами з вами. Я постаралася написати статтю так, щоб вона вимагала мінімальних знань в області і була доступна новачкам.

Читати далі →

Робота з текстовими даними у scikit-learn (переклад документації) — частина 1

Дана стаття являє переклад голови, навчальної роботи з текстовими даними, з офіційної документації scikit-learn.

Мета цієї глави — це дослідження деяких з найбільш важливих інструментів у scikit-learn на одній приватній задачі: аналіз колекції текстових документів (новинні статті) на 20 різних тематик.
У цій главі ми розглянемо як:
  • завантажити вміст файлу і категорії
  • виділити вектора ознак, придатних для машинного навчання
  • навчити одновимірну модель виконувати категоризацію
  • використовувати стратегію grid search, щоб знайти найкращу конфігурацію для вилучення ознак і для класифікатора

Читати далі →

Введення в машинне навчання з допомогою scikit-learn (переклад документації)

Дана стаття являє собою переклад введення в машинне навчання, представлене на офіційному сайті scikit-learn.

У цій частині ми поговоримо про термінах машинного навчання, які ми використовуємо для роботи з scikit-learn, і наведемо простий приклад навчання.

Машинне навчання: постановка питання

Загалом, завдання машинного навчання зводиться до отримання набору вибірок даних і, надалі, до спроб передбачити властивості невідомих даних. Якщо кожен набір даних — це не поодиноке число, а наприклад, багатовимірна сутність (multi-dimensional entry або multivariate data), то він повинен мати кілька ознак або фіч.

Машинне обченіе можна розділити на кілька великих категорій:
  • навчання з учителем (або кероване навчання). Тут дані представлені разом з додатковими ознаками, які ми хочемо передбачити. Натисніть тут, щоб перейти до сторінки Scikit-Learn навчання з вчителем). Це може бути будь-яка з наступних завдань:
  1. класифікація: вибірки даних належать двом або більше класів і ми хочемо навчитися на вже розмічених даних передбачати клас нерозміченого вибірки. Прикладом задачі класифікації може стати розпізнавання рукописних чисел, мета якої — присвоїти кожному вхідного набору даних одну з кінцевого числа дискретних категорій. Інший спосіб розуміння класифікації — це розуміння її в якості дискретної (як протилежність безперервної) форми керованого навчання, де у нас є обмежена кількість категорій, наданих для N вибірок; і ми намагаємося їх позначити правильної категорією або класом.
  2. регресійний аналіз: якщо бажаний вихідний результат складається з одного або більше безперервних змінних, тоді ми стикаємося з регресійним аналізом. Прикладом вирішення такого завдання може служити передбачення довжини лосося як результату функції від його віку і ваги.


  • навчання без вчителя (або самонавчання). В цьому випадку навчальна вибірка складається з набору вхідних даних Х без будь-яких відповідних їм значень. Метою подібних завдань може бути визначення груп схожих елементів всередині даних. Це називається кластеризацией або кластерним аналізом. Також завданням може бути встановлення розподілу даних всередині простору входів, зване густотою очікування (density estimation). Або це може бути виділення даних з високо розмірного простору в двовимірне або тривимірне з метою візуалізації даних. Натисніть тут, щоб перейти до сторінки Scikit-Learn навчання без вчителя).

Читати далі →

Як я підвищував конверсію машинним навчанням

У цій статті я спробую відповісти на такі питання:
  • може один доповідь розумної людини зробити іншої людини одержимим?
  • як зануритися в машинне навчання (майже) з нуля?
  • чому не варто недооцінювати многоруких бандитів?
  • існує срібна куля для a/b тестів?
Відповідь на перше питання буде найбільш лаконічним — «так». Почувши це виступ bobuk на YaC/M, я захопився елегантністю підходу і задумався про те, як би запровадити схоже рішення. Я тоді працював продуктовим менеджером в компанії Wargaming і якраз займався т. н. user acquisition services – технологічними рішеннями для залучення користувачів, у число яких входила і система для A/B тестування лендингов. Так що зерна лягли на благодатний грунт.

На жаль, по всяких причин я не міг щільно зайнятися цим проектом у звичайному робочому режимі. Зате коли я трохи перегорів на роботі і вирішив влаштувати собі довгий творчий відпустку, одержимість перетворилася в бажання зробити такий сервіс розумною ротації лендингов самостійно.

Читати далі →

Ваші запитання про Data Science

Привіт, хабр!

Ми перезапустили MLClass! — перше в Росії товариство прихильників Data Science

У зв'язку з цим, як і обіцяв у статті Ваш персональний курс за Big Data, викладаю відповіді на найбільш поширені питання, які виникають у людей, що цікавляться Data Science та Big Data. Відповіді надано кращими практиками аналізу даних: переможцями Kaggle, співробітниками багатьох компаній, які впроваджують у себе Big Data рішення і всіма, хто знає, що таке Data Science не з чуток. Варто відзначити, що з кожним днем все більше людей в Росії (а також в країнах СНД) цікавляться аналізом даних, проходить все більше змагань, хакатонов. Однак, досі навколо цієї теми існує велика кількість міфів, які я збираюся розвіяти в цьому пості!

Отже, я взяв близько 100 найпоширеніших питань, виділили з них найбільш обговорювані і прокоментував кожен із найбільш детально, щоб запитань більше не залишилося!

Читати далі →

Незвичайні моделі Playboy, або про виявлення викидів в даних c допомогою Scikit-learn

Мотивовану статті користувача BubaVV про передбачення ваги моделі Playboy за її формами та зростання, автор вирішив заглибитися if you now what I mean в цю чудову кров тему дослідження і в тих же даних знайти викиди, тобто особливо сисястые моделі, що виділяються на тлі інших своїми формами, зростанням або вагою. А на тлі цієї розминки почуття гумору заодно трохи розповісти починаючим дослідникам даних про виявлення викидів (outlier detection) і аномалій (anomaly detection) даних з допомогою реалізації однокласове машини опорних векторів (One-class Support Vector Machine) в бібліотеці Scikit-learn, написаної на мові Python.


Читати далі →

Введення в машинне навчання з допомогою Python і Scikit-Learn

Привіт, хабр!



Мене звати Олександр, я займаюся машинним навчанням і аналізом веб-графів (в основному — теоретичним), а також розробкою Big Data продуктів в одному з операторів «Великої Трійки». Це мій перший пост — прошу, не судіть строго!)

Останнім часом до мене все частіше стали звертатися люди, які хочуть навчитися розробляти ефективні алгоритми і брати участь у змаганнях за машинного навчання з питанням: «З чого почати?». Деякий час тому я керував розробкою інструментів Big Data для аналізу медіа та соціальних мереж в одному із закладів Уряду РФ, і у мене залишився певний матеріал, за яким навчалася моя команда і яким можна поділитися. Передбачається, що у читача є гарне знання математики і машинного навчання (у команді були в основному випускники МФТІ і студенти Школи Аналізу Даних).

Читати далі →