• Posted on

    Қазақ тілі үшін ерікті / ашық бастапқы кодты сөйлеу тану жүйесіне қарай

    English version is here.

    Бұл мақала — мұндағы ағылшынша мақаланың аудармасы. Қателер көрсеңіз contact@taruen.com мекенжайына жазуыңызды өтінеміз.


    Google Assistant немесе Yandex Alisa қазақ тілінде де сөйлесе, керемет болмас па еді?

    Мұндай сөйлесетін ассистенттердің қажетті компоненті болып сөйлеуді тану (ағылшыншасы “speech recognition”) немесе сөйлеуді мәтінге (ағылшыншасы “speech-to-text”) деп аталатын жүйе табылады.

    Машина оқыту методтарымен бір тіл үшін жақсы сапалы сөйлеу тану жүйесін болдыру үшін, ол тілде даустық деректердің аса үлкен көлемі (мыңдаған сағат, төменде қараңыз) болуы қажет. Бұдан басқа, ол деректер әртүрлі адамдар тарапынан жазылған болуы және транскрипцияланған болуы керек. Осы уақытқа дейін, тиісті лицензиялі аудиодеректердің болмауы себепті, көпшілік тілдер үшін ерікті / ашық бастапқы кодты сөйлеуді тану жүйесі қол жетімсіз болып қала береді.

    Бақытымызға орай, бұл жағдайды жақсы жаққа өзгертуге болады. 2018 жылы Mozilla, Firefox веб-браузері және көптеген басқа бағдарламалардың артындағы компания, Common Voice (“Халық дауысы”) жобасын іске қосты.

    Міне, ол жобаның FAQ бетінен бір үзінді:

    Common Voice деген не?

    Дауысты тану технологиясы машиналармен өзара әрекеттесу жолын өзгертеді, бірақ қазіргі уақытта қол жетімді жүйелер қымбат және меншікті. Common Voice — Mozilla компаниясының дауыс тану технологияларын жақсарту және барлық адамдар үшін қол жетімді ету жөніндегі бастамасының бөлігі. Common Voice — кез келген тілдегі ықпалды дыбыстық бағдарламаларды тез және оңай үйретуге мүмкіндік беретін қайырымды дауыс беретін жаппай ғаламдық дерекқор.

    Біз тек кеңінен сөйлейтін тілдерде дауыс үлгілерін жинап қана қоймай, сонымен бірге сөйлеушілердің кішігірім тұрғындарын да жинаймыз. Дауыстардың әртүрлі деректер жиынтығын шығарушылар әзірлеушілерге, кәсіпкерлерге және қауымдастықтарға осы бос орынды өздері шешуге мүмкіндік береді. Common Voice деректер жиынтығына қоса, біз Deep Speech деп аталатын ашық бастапқы мәтінді тану механизмін жасаймыз.

    Сіз қалай көмектесе аласыз?

    Біз «taruen.com» қазақ тіліндегі «Common Voice»-ты іске қосқымыз келеді, және бұл мақсатқа қарай алғашқы қадамдарды өттік. Бірақ Common Voice-та қазақ тілі де іске қосылсын үшін, қазақ тілін жақсы білушілердің көмегі керек. Егер қазақ тілі ана тіліңіз болса, мына қалай көмектесе аласыз:

    1. Common Voice сайты Pontoon атты Mozilla-дың локализация құралында дұрыс аударылған ма жоқ па екенін тексеріңіз. Аудармалардың шамамен үштен бірін біз — яғни қазақ тілі ана тілі болмаған адамдар, үстедік — сондықтан олар қателі болуға мүмкін.

    2. Біз Common Voice-тың сөйлем жинау құралына жіберген сөйлемдерді тексеріңіз. Бір тіл Common Voice-та іске қосылсын үшін, ол тілде ең азы 5000 сөйлем болу қажет.

    Бұл сөйлемдерді біз М.Әуезов атындағы Әдебиет және өнер институты жариялаған “Бабалар сөзі” деп аталатын, қазақ халық шығармашылығы тыундыларын өз ішіне алған мықты 100 томдықтың 65 және 68 томдарынан алдық (65-68 томдарда мақалдар жиналған). Қазақстан Республикасының Авторлық құқық туралы заңының 8 нші бабына сәйкес, фольклор шығармалары авторлық құқықтан азат және осылайша қоғамдық байлық (public domain) болып тұр. Демек, оларды Common Voice-та қолдануға болады. Сонымен, 65-68 нші томдар ішіндегі мақал-мәтелдер Common Voice жобасының басқа критерийлеріне де сәйкес келеді — оларда сандар, шетелдік әріптер және рұқсат етілмеген басқа белгілер жоқ, олар әдетте қысқа, педагогикалық міндетті / қызықты және осылайша оқу үшін көңілді.

    Common Voice үйреткенше орфография мен грамматиканың дұрыстығын тексеруден басқа, біз сізден ол сөйлемдер кімді де болса ренжітпей екенін тексеруіңізді өтінеміз. Басқаша айтқанда, ол сөйлемдерде ерлерге, әйелдерге, ата-аналарға, балаларға, діни адамдарға, діни емес адамдарға, Оңтүстік Қазақстандықтарға, Солтүстік Қазақстандықтарға, Батыс Қазақстанстықтарға, Шығыс Қазақстандықтарға, Қытайдың қазақтарына… түсінесіз шығар тіл тігізетін заттардың болмауы қайырлы. Ол сөйлемдерден көз жүгірткенде ондайларын көрмедік, бірақ бұл сұраққа да қазақша жақсы білетін адамдар ғана жауап бере алады.

    Бірге, қалаған әр адам да қазақ тілін түсінуші сөйлеу тану жүйесін болдыра аларлық көлемде, аудиодеректер жинай аламыз деген үміттеміз. Жобадың жиі қойылатын сұрақтар бетінде мозиллашылар жақсы сапалы сөйлеу тану жүйесін үйрету үшін шамамен 10000 сағат тексерілген аудиожазбалар қажет деп жазады. Демек бұл — мақсат. 10000 сағат қолжетпеслік көп сияқты, бірақ 10 мың сағатты қазақша білушілердің ең консерватив санына бөлсек те, кісі басына шамашен 4 секунд аудио тура келеді. Ал 4 секунд ол әлдеқайда азрақ қорқынышты сан ;)

  • Posted on

    Towards a free/libre/open-source speech-to-text system for Kazakh

    Wouldn’t it be great, if Google Assistant or Yandex Alisa spoke Kazakh?

    One necessary component of such speech-enabled digital assistants is a so-called speech recognition or speech-to-text system.

    Large amounts of audio data (thousands of hours, see below), from many different people, along with transcriptions, are needed to train a good speech-to-text system using machine learning methods. So far, due to lack of appropriately licensed, freely available audio data in them, building a high-accuracy free/libre/open-source (FLOSS) speech recognition system is out of reach for most languages.

    Fortunately, there is a way to change this for the better. In 2018, Mozilla, the company behind the Firefox web-browser and many other programs, had launched the Common Voice project.

    Here is a snippet from its FAQ page:

    What is Common Voice?

    Voice recognition technology is revolutionizing the way we interact with machines, but the currently available systems are expensive and proprietary. Common Voice is part of Mozilla’s initiative to make voice recognition technologies better and more accessible for everyone. Common Voice is a massive global database of donated voices that lets anyone quickly and easily train voice-enabled apps in potentially every language.

    We’re not only collecting voice samples in widely spoken languages but also in those with a smaller population of speakers. Publishing a diverse dataset of voices will empower developers, entrepreneurs, and communities to address this gap themselves. In addition to the Common Voice dataset, we’re also building an open source speech recognition engine called Deep Speech.

    How you can help

    We at taruen.com want to launch Common Voice in Kazakh, and started taking first steps towards that goal. But for that to happen, we need help from native speakers of Kazakh. If you are one, here is how you can help:

    1. Review whether Common Voice website has been correctly translated into Kazakh on Pontoon, Mozilla’s localisation tool. About one-third of the translations were authored by us — non-native Kazakh speakers — and thus might be incorrect.

    2. Review Kazakh sentences we’ve submitted to the Common Voice Sentence Collector tool. At least 5000 reviewed sentences are needed to “launch” a language on Common Voice.

    These sentences were taken from the Volumes 65 and 68 of the mighty 100-volume set with works of Kazakh folklore, called “Бабалар сөзі” and published by M. Auezov Institute of Literature and Art. By Article 8 of Kazakhstani Copyright Law, works of folklore are exempt from copyright and are thus in the public domain and suitable for submitting to Common Voice. Moreover, proverbs from volumes 65 and 68 match other criteria of the Common Voice project as well — they don’t contain digits, foreign letters and other symbols not allowed in the dataset, they are mostly short, arguably pedagogical/entertaining and thus fun to read.

    Besides usual checks for correct spelling and grammaticality required by Common Voice, when reviewing sentences, we also ask you to make sure that none of the sentences are remotely offensive to men, women, parents, children, religious people, non-religious people, Southern Kazakhstanis, Northern Kazakhstanis, Western Kazakhstanis, Eastern Kazakhstanis, Kazakhs of China, Kazakhs of … You get the idea. A glimpse over the sentences did not suggest that they would contain anything like that, but again, that’s something for native speakers to judge.

    We hope that together we can assemble enough data so that anyone who wishes to do so can train a speech-to-text system for Kazakh. On the FAQ page of the project, Mozillians mention 10000 hours as an approximate number of validated hours needed to train a production speech-to-text system, so that’s something to strive for. It does sound like a lot, but when divided among even a conservative number of Kazakh speakers, it requires each person to record sentences for about 4 seconds. That is a much less scary number ;)

subscribe via RSS