Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Baidu introduceert via ai werkende transcriptie-app SwiftScribe

Door , 30 reacties

De Chinese internetgigant Baidu heeft SwiftScribe ge´ntroduceerd. Dit is een spraakherkenningsprogramma dat via kunstmatige intelligentie in staat is om spraak om te zetten in tekst en daarbij leert van eventuele tekstuele aanpassingen.

Het programma is met name bedoeld om bijvoorbeeld interviewers te helpen sneller spraakopnames in tekst om te zetten. Volgens Baidu zal de transcriptie gemiddeld 40 procent sneller gaan in vergelijking met het handmatig omzetten van spraak naar tekst. Het Chinese bedrijf nodigt dertig tot vijftig mensen uit om de bètaversie te testen. Dit heeft Baidu bekendgemaakt.

SwiftScribe maakt gebruik van Deep Speech 2, een spraakherkenningssysteem van Baidu. Het programma heeft geleerd om geluiden met bepaalde woorden en zinnen te associëren. Het neurale netwerk is zo 'getraind' met duizenden uren aan audio-opnames, waardoor het relatief accuraat moet kunnen transcriberen. Daarbij is SwiftScribe in staat om te leren van handmatige transcripties en door gebruiker aangebrachte tekstuele wijzigingen.

In het programma kan een bestand in het wav- of mp3-formaat worden geüpload. Volgens Venturebeat, die een projectmanager van Baidu heeft geïnterviewd, duurt het transcriberen van een bestand van 30 seconden in totaal slechts 10 seconden; een audio-opname van een minuut duurt minder dan dertig seconden. SwiftScribe kan audiobestanden van maximaal een uur transcriberen. Gebruikers moeten dan nog wel hoofdletters en interpunctie doorvoeren en de spelling van bepaalde woorden corrigeren.

Vorig jaar bleek al dat de spraakherkenning Deep Speech 2 in staat is om zeer accuraat gesproken woorden te herkennen. Onderzoekers merkten dat de technologie in sommige gevallen het Standaardmandarijn, de officiële spreektaal in China, beter kon transcriberen dan een persoon.

Reacties (30)

Wijzig sortering
Heel interessant, vooral voor China omdat hier de services van Google geblokkeerd worden.
Of het ook zo goed werkt en bruikbaar is in luidruchtige ruimtes en met sprekers met een accent, is de vraag. Nette spraak, die goed opgenomen is, komt er ook goed uit.

Andrew Ng is een grote man, wat betreft machine learning en stel Baidu met Deep Speech 2 in staat om handige webapps uit te rollen. Perfect is het natuurlijk niet en wil je een 100% accurate transcriptie, moet je nog steeds zelf door de audio en tekst heen banjeren om zeker te weten dat er staat wat er gezegd wordt.

Wat betreft Deep Speech 2: het is een algoritme die zowel spraak in Engels als Mandarijn om kan zetten naar tekst. Dit is al erg bijzonder, omdat de twee talen erg van elkaar verschillen. Het is een end-to-end oplossing, wat in dit geval betekent dat ze als input de audio data gebruiken (en geen vorm van preprocessing gebruiken op deze data, maar dus de hele spectrogram, met wellicht wat normalisatie) en als output direct de tekst genereren.

Voorheen werd voor Automatic Speech Recognition (ASR) taken vaak gebruik gemaakt van veel domeinkennis en werd dit gebruikt om een pipeline te bouwen. Daar stappen ze bij Deep Speech 2 (en bij vele andere huidige implementaties van ASR) van af. Deze handcrafted modules uit de pipeline worden vervangen voor ÚÚn groot deep learning model. Dit maakt het makkelijker om de input/output relatie te trainen.

Om het model aan te passen voor een nieuwe taal (ze zijn begonnen met Engels en hebben het later aangepast voor Mandarijn), is het enige wat ze hoeven toe te voegen aan de architectuur van het model de extra karakterset van de nieuwe taal. Natuurlijk komt er wel nieuwe data bij kijken om het model opnieuw te trainen voor deze nieuwe taal.

Het model bestaat uit tientallen miljoenen parameters, waardoor het trainen van het model erg intensief is. Hiervoor hebben ze een systeem geoptimaliseerd door gebruik te maken van synchronous stochastic gradient descent, waarbij de verwerking van data natuurlijk gedistribueerd wordt over verschillende GPU's. Elk werkt aan hun deelprobleem van de data, maar ze moeten elkaar wel op de hoogte houden van de veranderingen in het model. Ze hebben veel aandacht geschonken aan deze communicatie, zodat dit zo snel mogelijk verloopt (onder andere door handmatige memory allocation).

Zoals genoemd is het model erg groot (deep learning), dit betekent dat er ook veel trainingdata aanwezig moet zijn om de parameters goed in te kunnen schatten. Voor het Engels is er 11.940 uur aan gelabelde (!) data gebruikt. En voor het Mandarijn 9.400 uur.

In de resultaten doet het model het goed, afgezet tegen handmatig getranscribeerde resultaten verkregen via "Mechanical Turk". De handmatige transcriptie doet het wel een stuk beter in "noisy environments" en bij het gebruik van accenten. Schone, nette audio met een goede spreker worden beter getranscribeerd door het model (aan de hand van de Word Error Rate).

Het uitbreidbare karakter en het generieke van deze aanpak staat mij erg aan. Ik ben benieuwd hoe de gebruikerservaring zal zijn van de app en of het ook echt een plek weet te vinden in de maatschappij. Ik blijf het altijd gek vinden om tegen een apparaat te praten, maar in China is dat misschien anders.
Voor de ge´nteresseerde, Mozilla heeft een open source implementatie gebaseerd op Baidu's DeepSpeech paper onder de noemer Project DeepSpeech (https://github.com/mozilla/DeepSpeech) ge´mplementeerd in TensorFlow. Vooralsnog geen pretrained models beschikbaar, maar volgens issue #435 komen die er binnenkort aan.

Voor degene die wel graag speech recognition willen, maar niet alles naar bijvoorbeeld Google door willen sturen is dit wellicht interessant. Wanneer ik tijd heb wil ik er in ieder geval gebruik van maken voor home automation.
Dit is nog wel het oude Deep Speech model.

Inmiddels is Baidu verder gegaan met ontwikkelen en is SwiftScribe gebaseerd op Deep Speech 2. Dit model doet het een stuk beter dan Deep Speech 1, vooral in het geval van "noisy" en "accented" speech.

In dit paper vind je de vergelijking tussen DS1 en DS2 in termen van word error rate.
Dank voor de link naar het paper! De master branch is inderdaad DS1, echter is er ook een DS2 branch die het nieuwe model implementeert. Heb me er nog niet in verdiept, maar het lijkt alsof deze implementatie nog in de kinderschoenen staat.
Ik heb werkelijk nog nooit gehoord van de taal "Standaardmandarijn" 8)7

En ik woon nota bene in China!

on-topic: onderschat de Chinezen niet. Wat ze tekortkomen in creatieve beroepen maken ze meer dan goed als programmeurs.
Het ziet er misschien niet uit in het Nederlands maar het bestaat toch echt.
Zie > https://en.wikipedia.org/wiki/Standard_Chinese
Standard Chinese, also known as Modern Standard Mandarin, Standard Mandarin, or simply Mandarin
Ik wel, en ik woon niet in China...

Met standaard Mandarijn wordt gewoon standaard Chinees bedoeld, het is een samenvoegsel van Mandarijn en standaard Chinees, zoals dat wel vaker gebeurd in het Nederlands.
Wat denk je dat putong betekent in putonghua?
普通话 ofwel 'putonghua' (pinyin) betekent de *algemene spraak* in China, ofwel het Mandarijn Han Chinees, ook wel bekend als 汉语 'han yu' (academische benaming voor hetzelfde).

"Standaardmandarijn" bestaat in mijn optiek nog steeds niet, heeft daadwerkelijk niemand die spatie gemist??
普通话 putonghua = normal spoken language... Hetzelfde als ABN... Maar dan voor Chinees...
Een ongelukkige vertaling van "Simplified Chinese"
Simplified Chinese slaat op de geschreven taal, niet de gesproken.
In China is Simplified Chinese de standaard schrijfwijze en Mandarijn de standaard spreektaal.
In Taiwan is Traditional Chinese de standaard schrijfwijze en Mandarijn de standaard spreektaal.
In Hong Kong is Traditional Chinese de standaard schrijfwijze en Kantonees de standaard spreektaal.
Precies.

Je bent de enige die het snapt.
En ik woon nota bene in China!
Misschien is dat juist het probleem ;)
ABC? Algemeen Beschaafd Chinees?

Ik kom er regelmatig, maar de taal en de cultuur blijven me verrassen.

[edit:Licht ontvlambare taal]

[Reactie gewijzigd door McBrown op 14 maart 2017 13:45]

Vlieg je in de fik door de taal en de cultuur?
:')

Ja, zo blijft mijn taal me telkens in m'n edele delen trappen.

[Reactie gewijzigd door McBrown op 14 maart 2017 13:47]

Je kan beter door het eten in de fik vliegen ;)
Abc = American born Chinese... Xp
Ik moest voor mijn onderzoek ook vele uren aan interviews omzetten naar tekst. Ik heb toentertijd geprobeerd om dat met Google voice te doen door via de microfoon uitgang tekst over te nemen, helaas met gemixte resultaten.

Dit soort technologieŰn zal zeker een uitkomst zijn mits er niet teveel fouten optreden.
Deze technology heeft uiteindelijk o.a te maken met cpu kracht en het aanleren van herkenning.

Als 30 seconden nu in 10 seconden gedaan kan worden is het realtime c.q sneller dan realtime.
Des te meer tekst er wordt aangeleverd en verbeterd des te beter het gaat werken.
De grootste bottleneck van dit soort modellen is de data, niet zozeer de cpu kracht. Het parallel trainen op meerdere GPU's tegelijk, geeft voortaan voldoende snelheid om de architectuur van het model snel te kunnen beoordelen en opnieuw te kunnen trainen.

Inmiddels is de architectuur voor de hardware zo gemaakt dat het trainen van dit model (10.000 uur aan audio materiaal) in 100 uur gedaan kan worden op 8 GPU's. Dit klinkt misschien lang, maar is erg snel.

Bij een deep learning model met end-to-end learning wordt het model zo groot, dat je ook steeds meer data nodig hebt om deze parameters goed te kunnen schatten, anders zal je model overfitten. Het verkrijgen van goede gelabelde data is het grootste probleem, ook om bijvoorbeeld dit model uit te breiden naar andere talen zoals het Nederlands.

Data is dus de grootste uitdaging voor dit soort applicaties.
Het is erg afhankelijk van wat je taak precies is. Als je een 100% accurate transcriptie moet hebben, dan ontkom je er (de komende tijd) nog niet aan om zelf de tekst+audio nog een keer te luisteren, te lezen en aan te passen. De WER (word error rate) is daarvoor te hoog, maar dit heb je ook als je het zelf transcribeert, soms moet je bepaalde delen wel een aantal keer terug luisteren om het helemaal goed te hebben.

Toch heb je met dit soort apps wel meteen een basis waarmee je kan werken en kan dat wellicht tijd schelen. Zeker als het voor de taak niet zo van belang is dat de tekst 100% correct is.
Berichten als deze doen me altijd denken aan Lernout & Hauspie. :'(

Zouden de Chinezen of Amerikanen als eerste het Nederlands ondersteunen?
Toen ik iets meer dan een jaar geleden begon aan mijn afstudeeropdracht m.b.t. spraakherkenning, waren er eigenlijk (publieke) betrouwbare voice-to-text services.

En toen kwamen de Google Speech Recognition API en de Bing Speech API beide als beta beschikbaar.

Sindsdien zijn er nog een aantal service bijgekomen en nu dus SwiftScribe. Vrijwel alle diensten maken gebruik van Deep Learning waarmee in de laatste jaren enorme stappen zijn gezet. In de tientallen jaren hiervoor verbeterde de kwaliteit slechts een klein beetje per jaar.

Erg handig voor het omzetten van opgenomen interviews naar tekst. Waar het hierbij nog steeds heel vaak mis gaat: de opname kwaliteit. Voornamelijk studenten nemen interviews op met hun telefoon. Prima als je zelf alles uit wilt typen. Maar als je gebruik wilt maken van een Transcriptie service dan raad ik echt aan om elke deelnemer gebruik te laten maken van een lavalier microfoon. Vermindert het aantal fouten aanzienlijk!
Dat is een hele goede tip! Hoe netter je opname, hoe beter je resultaat. Ook als de spreker met een accent spreekt, be´nvloed dit de resultaten.

Deep Speech 2 probeert het probleem van Noisy environments (en ook slechte opnames) aan te pakken, maar in de resultaten zie je dat luidruchtige omgevingen de word error rate drastisch verhoogd in vergelijking met nette spraak.

Het blijft een probleem, maar deze tweede versie van Deep Speech doet het al een stuk beter dan zijn voorganger in noisy environments.
Helemaal met je eens. Ik heb zelf onderzoek gedaan naar het gebruiken van een smartwatch voor spraak-naar-tekst. En daar gaat het voornamelijk fout bij de kwaliteit van de opname.

Zoals je noemt heb je dan ruis op ruis. Eerst bij de opname, daarna nog eens door foute transcripties. Met het uiteindelijke resultaat kon ik dan ook vrij weinig.

Dus: probeer een zo zuiver mogelijke opname te maken als je het door een machine wil laten verwerken!
Betekent dit dat Dragon Speech Recognition straks compleet van de baan is?
Waarom zou dat het geval zijn?

Volgens mij is Dragon Speech Recognition van Nuance (een ander bedrijf dan Baidu).

Nuance research gebruikt op het gebied van ASR geen end-to-end learning en gebruikt meer domeinkennis gekoppeld met machine learning. Gezien hun laatste publicaties zijn ze bezig met het minimaliseren van ruis/noise en het detecteren wanneer iemand echt iets zegt (tegenover random geluiden).
Nuance zal vast en zeker ook flink aan het ontwikkelen zijn om hun applicatie te verbeteren.

Deze zet van Baidu zet weer wat druk op de ketel voor de concurrentie.

Op dit item kan niet meer gereageerd worden.


Nintendo Switch Google Pixel XL 2 LG W7 Samsung Galaxy S8 Google Pixel 2 Sony Bravia A1 OLED Microsoft Xbox One X Apple iPhone 8

© 1998 - 2017 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Hardware.Info de Persgroep Online Services B.V. Hosting door True

*