Ich versuche, Features aus einer Sounddatei zu extrahieren und den Sound einer bestimmten Kategorie zuzuordnen (z. B. Hunderinde, Fahrzeugmotor usw.). Ich möchte Klarheit über die folgenden Dinge:
1) Ist das überhaupt machbar? Es gibt Programme, die Sprache erkennen und zwischen verschiedenen Arten von Hunderinde unterscheiden können. Aber ist es möglich, ein Programm zu haben, das ein Klangbeispiel empfangen und einfach sagen kann, um was für einen Klang es sich handelt? (Angenommen, es gibt eine Datenbank mit einer Vielzahl von Hörbeispielen, auf die verwiesen werden kann.) Die eingegebenen Klangbeispiele können etwas laut sein (Mikrofoneingang).
2) Ich gehe davon aus, dass der erste Schritt die Extraktion von Audio-Features ist. In diesem Artikel wird vorgeschlagen, MFCCs zu extrahieren und sie einem Algorithmus für maschinelles Lernen zuzuführen. Ist MFCC genug? Gibt es noch andere Funktionen, die normalerweise zur Klassifizierung des Klangs verwendet werden?
Vielen Dank für Ihre Zeit.
quelle
Nonverbales Audio (ganz zu schweigen von der Umwelt) scheint der kleine Bruder zu sein, der es versteht, Medientypen wie Bilder, Sprache und Text maschinell zu lernen.
Ist es möglich, ein Netzwerk zu trainieren, um einen bestimmten Sound zu identifizieren, um Ihre Frage zu beantworten? Ja ist es! Aber es ist aus den gleichen Gründen schwierig, maschinelles Lernen zu betreiben.
Was Audio jedoch wirklich zurückhält und warum ich es den kleinen Bruder für Bilder und Sprache nenne, ist das Fehlen eines großformatigen, beschrifteten Datensatzes für Audio. Für Sprache gibt es TIMIT, für Bilder gibt es mehrere ImagenNet, CIFAR, Caltech, für die Verarbeitung von Text und natürlicher Sprache gibt es große Mengen an Literatur usw.
Meines Wissens sind die zwei größten nonverbalen Audiodatensätze mit Human * Label die UrbanSounds- und ESC-100-Datensätze, die für wirklich vertiefte Lernansätze unerschwinglich klein sind. Es gibt einige veröffentlichte gemischte Ergebnisse zu diesen Datensätzen, die ConvNets mit zwei Ebenen verwenden.
MFCC-Funktionen sind eine etablierte Basisfunktion für die Spracherkennung und die Audioanalyse im Allgemeinen. Aber es gibt unzählige andere Darstellungen von Audiofunktionen! Dieses Papier gibt eine schöne Taxonomie von Audio-Feature - Typen.
Die aufregendste Arbeit mit der Soundklassifizierung, die ich kürzlich gesehen habe, wird von einigen Leuten bei DeepMind gemacht, die WaveNet heißen .
quelle
Hier ist eine Lösung für die Schallklassifizierung für 10 Klassen: Hundebellen, Autohupe, spielende Kinder usw. Sie basiert auf einer Tensorflow-Bibliothek unter Verwendung neuronaler Netze. Features werden durch Konvertieren von Soundclips in ein Spektrogramm extrahiert
quelle
Ja, es ist extrem machbar. Obwohl NNs für diese Art von Klassifizierungstraining hervorragend geeignet sind, sind sie möglicherweise nicht einmal erforderlich. Mit einer Reihe ausgewählter Funktionen wären wahrscheinlich auch nur die klassischen Clustering-Algorithmen wie ein Gaußsches Mischungsmodell oder eine Hauptkomponentenanalyse ausreichend . Moderne Bibliotheken können dieses Zeug in 95% der Fälle oder mehr richtig machen.
quelle