
Spracherkennungsspezialisten hatten lange Zeit kein großes offenes Korpus mündlicher russischer Sprache, so dass sich nur große Unternehmen diese Aufgabe leisten konnten, aber sie hatten es nicht eilig, ihre Best Practices auszutauschen.
Wir haben es eilig, dieses anhaltende Missverständnis über Jahre hinweg zu beheben.
Wir machen Sie daher auf einen Datensatz mit 4000 Stunden kommentierter mündlicher Rede aufmerksam, der aus verschiedenen Internetquellen stammt.
Details unter dem Schnitt.
Hier sind die Daten für die aktuelle Version 0.3:
Und hier ist ein
Link zur Website unseres Gebäudes .
Werden wir das Projekt weiterentwickeln?
Unsere Arbeit daran ist noch nicht abgeschlossen, wir möchten mindestens 10.000 Stunden kommentierte Rede erhalten.
Und dann werden wir mit diesem Datensatz offene und kommerzielle Modelle für die Spracherkennung erstellen. Und wir empfehlen Ihnen, sich anzumelden: Helfen Sie uns, den Datensatz zu verbessern, und verwenden Sie ihn für unsere Aufgaben.
Warum ist unser Ziel 10 Tausend Stunden?
Es gibt verschiedene Studien zur Verallgemeinerung neuronaler Netze bei der Spracherkennung, aber es ist bekannt, dass eine gute Verallgemeinerung bei Datensätzen von weniger als 1000 Stunden nicht funktioniert. Eine Zahl in der Größenordnung von zehntausend Stunden wird in den meisten Fällen bereits als akzeptabel angesehen und hängt dann von der jeweiligen Aufgabe ab.
Was kann noch getan werden, um die Erkennungsqualität zu verbessern, wenn die Daten immer noch nicht ausreichen?
Oft können Sie das neuronale Netzwerk durch eine Erzählung von Textansagern an Ihre Lautsprecher anpassen.
Sie können das neuronale Netzwerk auch an ein Wörterbuch aus Ihrem Fachgebiet (Sprachmodell) anpassen.
Wie haben wir diesen Datensatz erstellt?
- Auf YouTube Kanäle mit hochwertigen Untertiteln gefunden, Audio und Untertitel heruntergeladen
- Hat Audio zur Erkennung an andere Spracherkennungssysteme abgegeben
- Wir lesen Adressen mit Roboterstimmen
- Wir haben Hörbücher und Buchtexte im Internet gefunden, sie dann durch Pausen in Fragmente zerlegt und miteinander verglichen (die sogenannte „Alignment“ -Aufgabe).
- Im Internet wurden kleine russische Datensätze hinzugefügt.
- Danach wurden die Dateien in ein einziges Format konvertiert (16-Bit-WAV, 16 kHz, Mono, hierarchische Anordnung der Dateien auf der Festplatte).
- Die Metadaten wurden in einer separaten Datei manifest.csv gespeichert.
Wie man es benutzt:
Datei db
Der Speicherort von Dateien wird durch ihre Hashes wie folgt bestimmt:
target_format = 'wav' wavb = wav.tobytes() f_hash = hashlib.sha1(wavb).hexdigest() store_path = Path(root_folder, f_hash[0], f_hash[1:3], f_hash[3:15]+'.'+target_format)
Dateien lesen
from utils.open_stt_utils import read_manifest from scipy.io import wavfile from pathlib import Path manifest_df = read_manifest('path/to/manifest.csv') for info in manifest_df.itertuples(): sample_rate, sound = wavfile.read(info.wav_path) text = Path(info.text_path).read_text() duration = info.duration
Die Manifestdateien enthalten drei Elemente: den Namen der Audiodatei, den Namen der Datei mit der Textbeschreibung und die Dauer der Phrase in Sekunden.
Filtern Sie Dateien nur einer bestimmten Länge
from utils.open_stt_utils import (plain_merge_manifests, check_files, save_manifest) train_manifests = [ 'path/to/manifest1.csv', 'path/to/manifest2.csv', ] train_manifest = plain_merge_manifests(train_manifests, MIN_DURATION=0.1, MAX_DURATION=100) check_files(train_manifest) save_manifest(train_manifest, 'my_manifest.csv')
Was kann man auf Russisch lesen oder suchen, um sich besser mit der Aufgabe der Spracherkennung vertraut zu machen?
Kürzlich haben wir im Rahmen des
Deep Learning- Kurses
über Finger einen Vortrag über das Problem der Spracherkennung (und ein wenig über Synthese) aufgenommen. Vielleicht wird sie dir nützlich sein!
Lizenzprobleme
- Wir veröffentlichen den Datensatz unter einer Doppellizenz: Für nichtkommerzielle Zwecke bieten wir eine cc-by-nc 4.0-Lizenz für kommerzielle Zwecke an - Verwendung nach Vereinbarung mit uns.
- Wie in solchen Fällen üblich, verbleiben alle Rechte zur Nutzung der im Datensatz enthaltenen Daten bei ihren Eigentümern. Unsere Rechte gelten für den Datensatz selbst. Für wissenschaftliche und pädagogische Zwecke gelten gesonderte Regeln, siehe die Gesetzgebung Ihres Landes.
Wieder einmal
die Projektseite für diejenigen, die den obigen Link nicht gesehen haben .