wiki.ziemers.de

ziemer's informatik Wiki

Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:software:beuthbot:berichte:ws2020:zwischen:aktueller-stand

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
wiki:software:beuthbot:berichte:ws2020:zwischen:aktueller-stand [22.11.2020 18:42]
Robert Xaver Halwaß
wiki:software:beuthbot:berichte:ws2020:zwischen:aktueller-stand [24.11.2020 14:16] (aktuell)
Robert Xaver Halwaß [DokuWiki Plugins]
Zeile 31: Zeile 31:
  
  
-==== Text Speech Recherche ====+==== Text To Speech Recherche ====
   * Say.js   * Say.js
     * https://www.npmjs.com/package/say     * https://www.npmjs.com/package/say
Zeile 43: Zeile 43:
  
 In diesem Projekt soll es ermöglicht werden, dass Nutzer ebenfalls Sprachnachrichten an den BeuthBot schicken können um mit diesem zu interagieren. Um dieses umzusetzen ist eine sogenanntes Speech-To-Text-Programm erforderlich, welche Sprachnachrichten in Text umwandelt. Diese umgewandelten Nachrichten können dann wie normale Textnachrichten vom BeuthBot weiterverabeitet werden. Da es sich hierbei um ein äußerst kompliziertes technisches Problem handelt, bei dem Ansätze mit statischen Algorithmen nicht anwendbar sind, werden ausschließlich Ansätze des DeepLearning angewendet. Neben vielen Cloud-Lösungen von namenhaften Anbietern wie Amazon und Google gibt es ebenfalls eine Reihe von OpenSource-Lösungen, welche privat gehostet werden. Dieses bietet mehrere Vorteile. Zum einen, fallen keine Gebühren für die Nutzung an, da alle Berechnungen lokal auf dem BeuthBot-Server ausgeführt werden. Zum anderen ist Datenschutz leichter umzusetzen, da alles lokal verarbeitet wird und keine Daten an externe Services weitergegeben werden. In diesem Projekt soll es ermöglicht werden, dass Nutzer ebenfalls Sprachnachrichten an den BeuthBot schicken können um mit diesem zu interagieren. Um dieses umzusetzen ist eine sogenanntes Speech-To-Text-Programm erforderlich, welche Sprachnachrichten in Text umwandelt. Diese umgewandelten Nachrichten können dann wie normale Textnachrichten vom BeuthBot weiterverabeitet werden. Da es sich hierbei um ein äußerst kompliziertes technisches Problem handelt, bei dem Ansätze mit statischen Algorithmen nicht anwendbar sind, werden ausschließlich Ansätze des DeepLearning angewendet. Neben vielen Cloud-Lösungen von namenhaften Anbietern wie Amazon und Google gibt es ebenfalls eine Reihe von OpenSource-Lösungen, welche privat gehostet werden. Dieses bietet mehrere Vorteile. Zum einen, fallen keine Gebühren für die Nutzung an, da alle Berechnungen lokal auf dem BeuthBot-Server ausgeführt werden. Zum anderen ist Datenschutz leichter umzusetzen, da alles lokal verarbeitet wird und keine Daten an externe Services weitergegeben werden.
-Der Recherche ergab eine Vielzahl an Lösungen, jedoch sind nur drei dieser für das Projekt geeignet, da nur für diese ein vortrainiertes Modell für die Deutschen Sprache verfügbar sind. Diese sind:+Der Recherche ergab eine Vielzahl an Lösungen, jedoch sind nur drei für das Projekt geeignet, da nur für diese ein vortrainiertes Modell für die deutschen Sprache verfügbar ist. Diese sind:
  
 === Mozilla Voice STT (DeepSpeech) === === Mozilla Voice STT (DeepSpeech) ===
- +  * https://github.com/mozilla/DeepSpeech 
-https://github.com/mozilla/DeepSpeech +  https://github.com/AASHISHAG/deepspeech-german
-https://github.com/AASHISHAG/deepspeech-german+
   * Entwickler: Mozilla   * Entwickler: Mozilla
   * Opensource   * Opensource
Zeile 58: Zeile 57:
  
 === Kaldi === === Kaldi ===
-https://github.com/kaldi-asr/kaldi +  * https://github.com/kaldi-asr/kaldi 
-http://kaldi-asr.org/doc/about.html +  http://kaldi-asr.org/doc/about.html 
-http://zamia-speech.org/asr/+  http://zamia-speech.org/asr/
   * Entwickler: Kaldi   * Entwickler: Kaldi
   * Opensource   * Opensource
Zeile 68: Zeile 67:
  
 === Wav2Letter === === Wav2Letter ===
-https://github.com/facebookresearch/wav2letter +  * https://github.com/facebookresearch/wav2letter 
-http://zamia-speech.org/asr/+  http://zamia-speech.org/asr/
   * Entwickler: Facebook Research   * Entwickler: Facebook Research
   * Opensource   * Opensource
Zeile 81: Zeile 80:
  
 === Espresso === === Espresso ===
-https://github.com/freewym/espresso+  * https://github.com/freewym/espresso
   * Entwickler: Freewym   * Entwickler: Freewym
   * Opensource   * Opensource
Zeile 88: Zeile 87:
  
 === OpenSeq2Seq === === OpenSeq2Seq ===
-https://github.com/NVIDIA/OpenSeq2Seq+  * https://github.com/NVIDIA/OpenSeq2Seq
   * Entwickler: NVIDIA   * Entwickler: NVIDIA
   * Opensource   * Opensource
Zeile 97: Zeile 96:
 === Word Error Rate (WER) === === Word Error Rate (WER) ===
  
-Um die Qualität eines STT-Modells zu messen, wird der sogenannte Word Error Rate (WER) Wert verwendet. Dieser Wert gibt an, basierend auf dem Testdatensatz, wie viele Wörter prozentual falsch erkannt werden. Zum Beispiel, wenn bei einem Satz, welcher 100 Wörter enthält, 10 Wörter falsch erkannt werden, dannbeträgt der WER-Wert 10%. +Um die Qualität eines STT-Modells zu messen, wird der sogenannte Word Error Rate (WER) Wert verwendet. Dieser Wert gibt an, basierend auf dem Testdatensatz, wie viele Wörter prozentual falsch erkannt werden. Zum Beispiel, wenn bei einem Satz, welcher 100 Wörter enthält, 10 Wörter falsch erkannt werden, dann beträgt der WER-Wert 10%. 
  
-Hier ist eine Auflistung von WER-Werten von kommerziellen STT-Diensten für die englische Sprache von 2017 und den recherchierten OpenSoruce-Lösungen. Da alle Dienste unterschiedliche Datensätze zum Training und Test verwenden, sind diese Ergebnisse nicht komplett vergleichbar, aber sie bieten eine grundsätzliche Übersicht über die Performance der Opensource-Lösungen.+Unten befindet sich eine Auflistung von WER-Werten von kommerziellen STT-Diensten für die englische Sprache aus dem Jahre 2017. Darunter befindet sich ebenfalls die WER-Werte der recherchierten OpenSoruce-Lösungen. Da alle Dienste unterschiedliche Datensätze zum Training und Test verwenden, sind diese Ergebnisse nicht komplett vergleichbar, aber sie bieten eine grundsätzliche Übersicht über die Performance der OpenSource-Lösungen.
   * Google (8%)   * Google (8%)
   * Microsoft (5.9%)   * Microsoft (5.9%)
Zeile 113: Zeile 112:
 Quelle: Quelle:
 https://askwonder.com/research/current-voice-recognition-word-error-rates-google-amazon-microsoft-ibm-apple-5b88trj0t https://askwonder.com/research/current-voice-recognition-word-error-rates-google-amazon-microsoft-ibm-apple-5b88trj0t
 +
 +
 +==== DokuWiki Plugins ====
 +
 +=== edittable ===
 +Standartmäßig werden im Ziemer's-Wiki alle Tabellen mittels MarkDown angelegt. Da dieses jedoch besonders bei großen Tabellen sehr fehleranfällig ist, wurde das edittable-Plugin installiert. Dieses erlaubt es mittels einer grafischen Benutzeroberfläche Tabellen anzulegen und zu bearbeiten. So entstandene Tabellen werden dann als normale MarkDown-Tabellen im Wiki abgelegt. Dieses erleichterte das Arbeiten mit Tabellen ungemein. https://www.dokuwiki.org/plugin:edittable
 +
 +=== PageBreak ===
 +Die finale Abgabe des Zwischenberichtes sollte in Form eines PDFs abgeben werden. Das Ziemer's-Wiki hatte bereits das DW2PDF-Plugin installiert, welches es auf einfache Weise ermöglicht jede beliebige Wiki-Seite als PDF zu exportieren. Hierbei ergab sich jedoch das Problem, dass alle Kapital ohne große Abstände hintereinander in das PDF geschrieben wurden, welches die Übersichtlichkeit stark beeinträchtigt hat. Um dieses Problem zu lösen, wurde das PageBreak-Plugin im Ziemers-Wiki installiert. Dieses erlaubt es, mittels des pagebreak-Tags, dem DW2PDF-Plugin 
 +mitzuteilen wann ein Seitenumbruch passieren. Damit konnten wir nach jedem Kapitel und Feature-Tabelle einen Seitenumbruch hinzufügen. Dies hat die Übersichtlichkeit des Zwischenberichtes deutlich erhöht. https://www.dokuwiki.org/plugin:pagebreak
 +
  
wiki/software/beuthbot/berichte/ws2020/zwischen/aktueller-stand.1606066921.txt.gz · Zuletzt geändert: 22.11.2020 18:42 von Robert Xaver Halwaß