Особисто я вважаю Python одним із найкращих варіантів, і я трохи працював у галузі аудіоідентифікації. Запрошуємо перевірити, наприклад, моє програмне забезпечення для автоматичної ідентифікації птахів із шумних аудіозаписів: Ornithokrites . Програму використовує Департамент охорони природи Нової Зеландії, і вони раді цьому. На основі цього прикладу я хотів би зазначити кілька переваг використання Python:
- Величезна громада, що швидко розвивається, що забезпечує багато бібліотек. SciPy надає безліч методів обробки сигналів (надано, не так вже й багато та зрілих, як Matlab). Майте на увазі, що SciPy, хоча є однією з найважливіших, є лише однією із сотень, яка може допомогти вам у ваших починаннях. Я знайшов Aubio найкращим для аналізу музики. Напевно для розпізнавання мови та музики вам сподобається велика кількість аудіофункцій, які Yaafe може отримати.
- Це безкоштовно! Вийшовши з академій, ви швидко дізнаєтесь, що Matlab - це досить дорого. І навіть якщо ви можете собі це дозволити, то ваші перспективні користувачі не будуть раді цій залежності. Наприклад, згаданий відділ охорони природи не приймає фірмове програмне забезпечення.
- Ідентифікація часто вимагає машинного навчання, і Python має для цього чудовий набір інструментів: sklearn. Це сучасна бібліотека мистецтв - і проста у використанні. Погляньте на змагання Kaggle (машинне навчання) і перевірте, скільки топ-програмістів використовують Python та sklearn.
- Ви можете керувати "великими даними". Якщо ви хочете запустити аналіз на величезну мережеву базу даних записів, то Python має добре створений набір інструментів. Я не думаю, що Matlab / Octave інтерфейс легко з Hadoop, хоча, будь ласка, виправте мене, якщо я помиляюся. R робить цю область краще.
- Якщо говорити про взаємодію, ви можете легко інтерфейсувати свою програму з веб-сайтом. Це те, як я керую Ornithokrites (розпізнавання птахів): програма працює на сервісі хмарних обчислень Amazon Web Services. Чудово, якщо ви хочете надати своє програмне забезпечення іншим людям, які не обов'язково хочуть пройти процедуру встановлення всіх необхідних бібліотек.
Мій другий вибір був би Р. Хоча він не такий багатий на функції, як Python, він має велику кількість корисних бібліотек (перевірте, наприклад, шиття для ваших програм). Встановлення цих систем як в Windows, так і в Linux - це торт, що важливо, якщо ви хочете, щоб інші користувалися вашою програмою. Однак, на мій досвід, високоефективні обчислення в R важче - важлива річ, яку потрібно помітити, якщо вам потрібно зробити ВЕЛИКОГО обробку та ідентифікацію.
Приклади класифікації музики на Python:
Системи машинного навчання книг з Python мають розділ про класифікацію музики
Інші інструменти (список аж ніяк не повний): Python in Music