Einführung
Der Autor hat keine Kenntnisse über die Verarbeitung von Sprachsignalen und die Spracherkennung.
Dieser Artikel wird nicht für Profis auf der Straße empfohlen (; ´ ・ ω ・)
Übrigens habe ich vor, Anfänger, Fortgeschrittene und Fortgeschrittene zu werden.
Motivation
Bei der Arbeit kam eine Geschichte wie "Songs empfehlen!" Heraus.
Wird Musikempfehlung als Spracherkennung eingestuft?
Die Antwort ist nein. Spracherkennung ist der Prozess, bei dem eine Maschine eine von Menschen gesprochene Stimme in Zeichen umwandelt, sodass Musikempfehlungen nicht als Spracherkennung bezeichnet werden. (Diese Seite war sehr leicht zu verstehen.)
Musikempfehlung scheint ein Forschungsgebiet namens MIR zu sein, und die Verarbeitung von Sprachsignalen scheint der Kern zu sein.
Was ist MIR?
Abkürzung für MusicInformatioRetrieval.
Textdaten werden als Eingabe für die Liedsuche nach Künstlernamen oder Liednamen verwendet, was normalerweise verwendet wird, aber MIR verwendet die Sprachwellenform selbst als Eingabe.
Unten finden Sie ein spezielles Beispiel für MIR
- Empfehlen Sie Musik, die zum Hörer passt
- Instrumententrennung und Instrumentenerkennung
--Automatische Transkription (brauchen Sie keine Ohrkopie?)
--Automatische Klassifizierung (Genrekennzeichnung usw.)
- Musikgeneration, etc ...
Praktische Tools und Bibliotheken für die Sprachsignalverarbeitung
- SPTK
- Befehle für die Sprachanalyse wie Resampling und Fourier-Transformation werden bereitgestellt. Es scheint auf dem Gebiet der Sprachsignalverarbeitung und Spracherkennung ziemlich berühmt zu sein.
- librosa
- Python-Paket für die Musikanalyse. Veröffentlicht im Jahr 2015.
- SOX
- Software zur Konvertierung von Audio-Dateiformaten
- lame
- Software zur Konvertierung von Audio-Dateiformaten
Ich habe die obigen drei berührt, aber für mich, einen Anfänger der Sprachsignalverarbeitung, war librosa besser als SPTK. (SPTK war mühsam beim Aufbau der Umgebung ...)
Es wird auch Personen empfohlen, die die Sprachsignalverarbeitung während des maschinellen Lernens mit Python studieren möchten. (Obwohl es natürlich möglich ist, SPTK aus Python zu schreiben)
Deshalb ist die Einführung lang geworden, aber dieses Mal werde ich librosa einführen.
(Der Artikel über den Aufbau eines ähnlichen Musiksystems mit SPTK war übrigens zu gut. Http://aidiary.hatenablog.com/entry/20121014/1350211413)
Installieren Sie librosa
Ich war ziemlich ungeduldig, weil das "Jupyter-Notizbuch" während der Umgebungskonstruktion nicht bestanden hat, deshalb werde ich das Verfahren zusammenfassen.
- Der Autor ist ein Windows-Benutzer. Außerdem möchte ich dies in der Anaconda-Umgebung tun. Wenn Sie also eine rohe Python-Person sind, 2. Ich denke es ist okay.
- Die Pip-Installation hat nicht funktioniert (wahrscheinlich, weil es keinen C ++ - Compiler gibt)
Verfahren
-
- Neuinstallation von Anaconda (wird wahrscheinlich nicht unter Mac oder Linux benötigt, ich denke, es wird unter Windows nicht benötigt, wenn die neuesten Versionen von Anaconda und Python)
-
DL von resampy
-
- DL von librosa
-
Installieren von Microsoft Visual C ++ - Compiler für Python 2.7
-
Öffnen Sie die 64-Bit-Eingabeaufforderung von Visual C ++ 2008 und führen Sie die folgenden Befehle in den Verzeichnissen reampy und librosa aus.
python setup.py build
python setup.py install
In Python
library(librosa)
Wenn es vorbei ist, ist es in Ordnung
Alte Umgebung: Python2.7.11: Anaconda2-4.0.7
Neue Umgebung: Python2.7.12: Anaconda2-4.2.0
Vor dem Berühren von Librosa
Hier ist eine Zusammenfassung dessen, was ich getan habe, als ich mit der Verarbeitung von Audiosignalen begonnen habe.
- Drei Klangelemente
- Klangvolumen: Entspricht der Wellenamplitude. Je lauter der Klang, desto größer die Amplitude.
--Pitch: Entspricht der Wellenfrequenz und -periode. Je höher der Klang, desto höher die Frequenz und desto kürzer der Zyklus.
--Tone: Entspricht der Form einer Welle.
- Abtastfrequenz (Einheit: Hz)
- Häufigkeit der Probenahme pro Zeiteinheit
- Die für Musik-CDs verwendete Abtastfrequenz beträgt 44,1 kHz
- Anzahl der Frames (≒ Datenmenge)
- Anzahl der Kanäle: Die Anzahl der Toninformationen, wenn verschiedene Daten gleichzeitig ausgegeben werden. 1 für Mono, 2 für Stereo.
- Anzahl der Quantisierungsbits
――Wie viele Bits analoger Daten gleichzeitig in digitale Daten konvertiert werden sollen
―― Je größer die Anzahl, desto größer die Datenmenge
――Es scheint, dass 16 Bit oder mehr häufig für Audio, 8 Bit für Telefonsprache und 8-10 Bit für Videosignale verwendet werden.
Endlich das Hauptthema
librosa ist ein Python-Paket für die Musikanalyse.
Module für MIR werden bereitgestellt.
Was ich getan habe, als ich mich auf das [librosa-Tutorial] bezogen habe (http://librosa.github.io/librosa/tutorial.html)
- Visualisieren Sie die Wellenform
--Hinweis: Ich habe es mit librosa versucht, aber ich verwende endlich die Python-Standardbibliothekswelle. ..
--Beat Tracker
- Stimme spielen
- Teilen Sie den Originalton in Schlaginstrumente / Höhen / Akkorde auf
- Ich werde dir später ipynb geben
von jetzt an
- Sammeln Sie "Lerndaten (Musik), die so unvoreingenommen wie möglich sind".
- Referenz-URL: https://kodack64.gitbooks.io/toho_mir_ml/content/1-0.html
--Studieren Sie etwas mehr über die Sprachanalyse (Fourier-Transformation, Fenstertransformation, Vorverbesserungsfilter usw.)
- Zwischenplan: Erwerben Sie Kenntnisse über Musikfunktionen und Extraktionsmethoden
- Code-Fortschritt, HVL, BPM, MBL, MSL, ASL, mfcc, lokale Merkmale (sogenannter Rost) usw.
- Zeitplan für die erweiterte Ausgabe: Finden Sie die beste Funktion für die Suche nach ähnlichen Songs
――Versuchen Sie zu lernen, indem Sie Feature-Mengen kombinieren
- Aufbau und Bewertung eines ähnlichen Musiksystems. (Sie müssen über die Bewertungsmethode nachdenken.)
Impressionen
――Ich habe versucht, in die Welt der Sprachsignalverarbeitung einzutauchen, um eine Waffe namens maschinelles Lernen zu verwenden, aber ich werde mehr lernen, weil ich nicht genug Wissen habe.
――Personal stellte sich heraus, dass die Motivation zum Lernen erheblich gesteigert wurde, als die Eingabedaten des maschinellen Lernens in Sprache umgewandelt wurden. Eigentlich war es diesmal die größte Entdeckung.
Referenz-URL-Zusammenfassung
- http://recognition.web.fc2.com/
- http://hhsprings.pinoko.jp/site-hhs/2015/02/microsoft-visual-c-compiler-for-python-2-7%E3%81%AF%E3%81%B2%E3%81%A8%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AA%E3%82%89%E3%81%9A/
- http://np2lkoo.hatenablog.com/entry/2016/09/22/052354
Vielen Dank. Bitte freuen Sie sich auf das nächste Mal!