Wir haben 600 geprüfte Stunden erreicht, 50% des ersten Ziels

Ich könnte mir vorstellen, dass es hier auch auf die Architektur des Netzes ankommt. Ich stecke nicht tief in der Materie, aber bei DeepSpeech z. B. gibt es ja einen Teil, der die Fourier-Transformierte des Audios in “Laute” übersetzt und einen Teil, der diese Laute nimmt und daraus Worte/Zeichenketten formt. Der erste Teil braucht zum Training vor allem viele verschiedene Stimmen, Dialekte und Stimmungslagen. Der zweite braucht viele einzigartige Sätze. Wenn man beide unabhängig voneinander trainieren könnte, müsste man Satzwiederholungen nur für den zweiten Teil skippen, was unseren bisherigen Datensatz aufwerten würde.

1 Like

Eine Idee, die ich schon eine Weile habe, ist die bereits angenommenen Sätze in der Datenbank mit 1x Nein und 2x Ja noch mal prüfen zu lassen. (und vielleicht auch die abgelehnten Sätze mit 2x Nein und 1x Ja). Damit könnte man viele von den Wackelkandidaten besser einschätzen. Das würde natürlich den Validierungsprozess deutlich verlangsamen, aber die Qualität sicher erhöhen.

EDIT: Die Anzahl der Jas und Neins sind ja auch im Datensatz, d.h. man kann, wenn man will auch ohne die Sätze trainieren, zu denen irgendwann mal jemand Nein gesagt hat.

Das wird viele kleinere Sprachen freuen. Wenn man nur eine Wikipedia mit einigen zehntausend oder hunderttausend Artikeln hat, ist es sehr schwer genug Sätze mit dem extractor Script zu bekommen. Einige hunderttausend Sätze kann man manuell aus gemeinfreien Quellen sammeln, Millionen sind dagegen extrem schwer.

Ich glaube nicht, das das je jemand bereinigt hat. Soweit ich weiss ist zwar die Meldeoption implmentiert, aber niemand schaut sich diese Sätze an und es gibt keinen Prozess dafür.

hallo @mkohler. das heißt aber, dass man anhand der mitgespeicherten “JAs” und “NEINs” schon selber gewichten oder filtern kann, welches Recording man nutzen möchte – oder?

Naja, ob WP immer die richtige Wahl ist… Umgangssprache (wie Reddit für Alexa) wäre vermutlich ziemlich wichtig. WP ist akademisch und m.E. auch daher nicht das nonplusultra.

Da hast du einen Punkt - das Acoustic Model zum einen und das Language Model zum anderen. Ob es vorteilhaft wäre, diese unabhängig zu trainieren, kann ich dir nicht sagen – vermutlich aber nicht bzw. hätte den gegenteiligen Effekt. Deep Learning kann von end-2-end oft profitieren (d.h. wenige Zwischenschritte oder “Encodings”) und zum anderen sind diese ja auch korreliert, was es schwierig machen dürfte.

Ich kann allen Interessierten (technisch) aber diesen Talk eines der Autoren des “Ur-DeepSpeech” empfehlen, da wird einiges erklärt: https://www.youtube.com/watch?v=g-sndkf7mCs

1 Like

Die 600 Stunden Marke und das Release im Juni/Juli ist vielleicht ein guter Zeitpunkt das mal zu machen. Ich erinnere mich entfernt, dass Jenny Zhang das schon mal für eine Sprache bereitgestellt hat, ich frage sie einfach mal, ob man das machen kann.

Das ist eine ganz eigene, große Diskussion. Es ist sehr schwer gute Sätze zu bekommen. Auch die 370 000 Sätze aus dem Europaparlament, die wir zuletzt importiert haben, sind nicht ideal. Aber auf Deutsch kann man aufgrund der Rechtschreibreform 96 nur sehr schwer gemeinfreie Texte finden, die man ohne viel Handarbeit einfach importieren kann. Zurzeit experimentiert @benekuehn mit einem WhatsApp Scrapper mit dem man seine privaten Chats spenden kann. Wenn da viele mitmachen, könnte das eine Chance sein.

Das kann ich nicht beantworten, ich habe keine Ahnung wie der Datensatz aufgebaut ist und welche Information darin verfügbar sind.

Verstehe. Ich hab schon eigene Sätze per Web Interface eingepflegt, aber das waren natürlich hunderte, nicht hunderttausende. Finde es wichtig, dass das auch weiterhin möglich bleibt!

Das mit Chats und WhatsApp klingt nach ner klassen Idee!! Vielleicht kann man auch mal mit Forenbetreibern reden?

1 Like

Ja das geht definitiv, die Anzahl der Jas und Neins sind pro Aufnahme in den Daten. Aber die Jas und Neins laufen unabhängig vom Sätze melden, ein Satz kann z.B. mit zwei Jas in der Datenbank sein, aber wegen Urheberrechtsprobleme oder beleidigender Sprache oder eines Rechtschreibfehlers gemeldet sein.

1 Like

Ich hatte mir das vorletzte Release mal angeguckt - da wird klar der “dismissed” vom “validated” getrennt, auf deutsch weiß ich das aber nicht genau… wäre aber ja blöd, wenn es nicht so wäre (also melden aber dann wird’s nicht notiert). Nur die Regel, wann ein Recording als “ungültig” gilt, steht glaube ich nirgends - war ja glaube ich “2 aus 3 reviewern mindestens bestätigen -> valide”

ach das meint ihr? das wusste ich gar nicht, dass es das gibt :smiley:

1 Like

Foren gehen natürlich auch. Wichtig ist, dass man nur die eigenen Beiträge/Chatnachrichten nimmt, nur an denen hat man die Rechte. Auch ein Forenbetreiber kann nicht einfach die Nachrichten seiner Nutzer verscherbeln, es sei denn er hat eine sehr fiese AGB geschrieben.

Hm, da bin ich gar nicht mal sicher (Nutzungsrechte kann man leider komplett abtreten…) - aber wieso nicht einen fragen? Kenne jetzt keinen spontan, der sowas vielleicht machen würde (“Datenspende”)

Habe die Nachricht oben noch angepasst, normalerweise machen Foren so etwas nicht.

Ich glaube, Spender würde es genügend geben, wenn es nicht viel Arbeit macht. Man braucht also erst mal eine gute technische Lösung um die Texte, die von einem Nutzer über ein Forum verstreut liegen zu sammeln. Niemand wird das freiwillig für uns zusammen kopieren.

Der Betreiber hat das doch i.A. in einer SQL oder MongoDB Datenbank… da ist so ein Export nicht so schwer. Der Betreiber muss halt die Nutzungs-Rechte oder Weiterverwertungsrechte haben (was er vermutlich in vielen Fällen hat).

EDIT: Z.B. ICQ hat so ne AGB :japanese_ogre:

Das Script ist bei mir auf GitHub. Funktioniert mit WhatsApp Web und spuckt ne txt aus. Derzeit ist allerdings kein automatisches cleaning implementiert. Nutze die Sätze eher als Anregung eigene zu schreiben, da die Sprachqualität, Rechtschreibung etc in meinen Chats doch stark verbesserungsfähig ist. Hat mir aber geholfen relativ schnell auf 700 Sätze zu kommen, die ich dann letzten Mal in den Sentence collector gecopy/pasted hab

2 Likes

Für die faulen, hier der Link zu dem Repo:

Vielleicht mache ich mal in den kommenden Tagen einen eigenen Thread für den Sentence-Collector auf in dem man Bescheid geben kann, wenn es mal wieder neue Sätze gibt. (die Sätze müssen ja immer von zwei Personen validiert werden) Dort kann man dann Tipps zum Sätze finden und verarbeiten sammeln.

1 Like

Ja finde ich ne gute Idee! Und danke für den Repo link. War nur am handy und hatte keine Lust den link zu suchen :smiley:

@repodiac @stergro Noch kurz zu den Duplikaten: Grundsätzlich wäre es natürlich besser, wenn Sätze nur einmal vorkämen. Aber entgegen den Jungs von Deepspeech drüben, habe ich mit Duplikaten im deutschen Datensatz gute Erfahrungen gemacht. Daher würde ich sagen, alles OK bisher, für die Zukunft gerne ohne Duplikate, aber das ist nicht superdringend. Wir brauchen einfach mehr Stunden :slight_smile:

1 Like