Python ng Pagkilala sa Pagsasalita: Paano Isalin ang Talumpati Sa Teksto?



Saklaw ng blog na ito ang konsepto ng pagkilala sa pagsasalita sa sawa ng isang sample na programa na isinalin ang pagsasalita sa teksto gamit ang pagkilala sa pagsasalita.

Ang pagsasalita ay ang pinaka-karaniwang paraan ng komunikasyon sa buong mundo. Karamihan sa populasyon sa mundo ay umaasa sa pagsasalita upang makipag-usap sa bawat isa. Ipagpalagay na nagtatayo kami ng isang modelo at sa halip na isang nakasulat na diskarte nais naming tumugon ang aming system sa pagsasalita, naging mahirap ito at nangangailangan ng maraming data upang maproseso. Tinatalo ng isang sistema ng pagkilala sa pagsasalita ang hadlang na ito sa pamamagitan ng pagsasalin ng pagsasalita sa teksto. Sa blog na ito, dadaan tayo sa pagkilala sa pagsasalita module sa sawa . Narito ang listahan ng pareho:

Paano gumagana ang Pagkilala sa pagsasalita?

Karaniwang isinasalin ng system ng pagkilala sa pagsasalita ang mga binibigkas na pagsasalita sa teksto. Mayroong iba't ibang mga halimbawa ng totoong buhay ng sistema ng pagkilala sa pagsasalita. Halimbawa- siri, na kumukuha ng pagsasalita bilang input at isinalin ito sa teksto.





Ang bentahe ng paggamit ng isang sistema ng pagkilala sa pagsasalita ay naigapi nito ang hadlang ng karunungang bumasa't sumulat. Ang isang modelo ng pagkilala sa pagsasalita ay maaaring maghatid ng parehong madla at hindi marunong bumasa at sumulat din, dahil nakatuon ito sa mga binibigkas na pagsasalita.

Maaari rin kaming gumawa ng imbentaryo ng lahat ng mga endangered na wika sa buong mundo gamit ang isang sistema ng pagkilala sa pagsasalita. Habang mukhang medyo nakakaintriga ito at hindi kumplikado sa lahat, ang isang sistema ng pagkilala sa pagsasalita ay nahaharap sa maraming mga hamon sa paggawa.



Mga Hamon na Nahaharap Ng Isang Pagkilala sa Pagsasalita Sistema

Ang isang sistema ng pagkilala sa pagsasalita ay naging mahirap gawin dahil marami tayong mapagkukunan ng pagkakaiba-iba pagdating sa pagsasalita.

kung paano i-set up ang php

Estilo ng pagsasalita

Ang bawat indibidwal na tao ay may iba't ibang istilo ng pagsasalita, kasama na rin ang mga impit. Tulad ng alam nating lahat, mayroon tayong iba't ibang mga accent para sa pagsasalita ng Ingles din. Mayroong american English, British English at marami pang ibang accent pagdating sa pagsasalita ng pinakakaraniwang wika sa buong mundo. Ang pagbigkas din ay nagpapahirap sa isang system ng pagkilala sa pagsasalita na isalin ang kabuuan ng pagsasalita.



Kapaligiran

Ang kapaligiran ay nagdaragdag ng maraming ingay sa background sa system din. Ang isang nakahiwalay na silid kumpara sa isang awditoryum ay magkakaroon ng maraming pagkakaiba-iba sa mga ingay sa background. Kahit na ang echo ay maaaring magdagdag ng maraming ingay sa system din.

Mga katangian ng tagapagsalita

Ang tinig ng isang matandang tao ay maaaring hindi katulad ng sa sanggol. Ang mga katangian ng pagsasalita ng isang tao ay nakasalalay sa maraming mga kadahilanan kabilang ang tigas at kalinawan din.

Mga hadlang sa wika

Ang ilang mga binigkas na pagsasalita ay maaaring walang mabuhay na kahulugan pagdating sa pagsasalin.

Matapos mapagtagumpayan ang mga hamong ito, medyo nakakamit para sa anumang sistema ng pagkilala sa pagsasalita upang isalin ang pagsasalita sa teksto. Ngayong alam na natin kung paano gumagana ang pagkilala sa pagsasalita, tingnan natin ang iba magagamit na iyon para sa pagkilala sa pagsasalita sa sawa.

Magagamit ang mga pakete para sa pagkilala sa pagsasalita sa sawa

  • apiai

  • Pagkilala sa pagsasalita

  • Google_speech_cloud

  • assembai

  • Pocketsphinx

  • Watson_developer_cloud

  • maputi

Dadalhin namin ang mga detalye ng package ng SpeechRecognition sa blog na ito, hinahanap din natin ang linya ng memorya upang maunawaan kung paano umunlad ang mga sistema ng pagkilala sa pagsasalita sa mga nakaraang taon.

Ang pinakaunang prototype ng pagkilala sa pagsasalita ay sa katunayan isang laruan, na pinangalanan radio rex na dumating noong mga 1920's. Mayroon itong isang aso na nakaupo sa isang bahay ng aso na lalabas sa sandaling may isang tao na nagbigkas ng salitang rex.

Ang nag-iisang problema sa modelo ay ang spring ay naka-attach sa isang electromagnet na sensitibo sa enerhiya na umaabot sa paligid ng 500hz. Ang pagiging pulos isang detektor ng dalas, maaari itong mai-term term bilang isang modelo ng pagkilala sa pagsasalita.

Noong 1962, ang IBM ay nakakuha ng isang shoebox modelo kung saan nakilala ang mga nakahiwalay na salita at nagsagawa rin ng ilang mga pagpapatakbo ng arithmetic din.

Pagkatapos ay dumating HARPY mula sa CMU, na nakilala ang konektadong pagsasalita mula sa isang 1000 salitang bokabularyo. Noong mga 1980s nagsimula ang mga tao sa paggamit ng mga modelong pang-istatistika at ang isa sa mga ginamit na paradigma sa pag-aaral ng makina ay ang nakatagong modelo ng markov.

Matapos ang pagpapakilala ng malalim na mga neural network, ang karamihan sa mga modelo ng pagkilala sa pagsasalita ay gumagana sa mga neural network. Ang mga posibilidad ay hindi maiisip sa mga neural network, ang bokabularyo ay maaaring umabot sa 10k na mga salita at higit pa.

Paano Mag-install ng SpeechRecognition Sa Python?

Upang mai-install ang SpeechRecognition package ay sawa, patakbuhin ang sumusunod na utos sa terminal at mai-install ito sa iyong system.

pag-install-pagsasalita pagkilala python-edureka

Ang isa pang diskarte dito, maaaring pagdaragdag ng pakete mula sa interpreter ng proyekto kung gumagamit ka

Ang package ay mayroong klase ng Recognizer na kung saan ay karaniwang nangyayari ang mahika. Karaniwan ito ay isang klase na ginagamit upang makilala ang pagsasalita. Ang sumusunod ay pitong pamamaraan na maaaring basahin ang iba't ibang mga mapagkukunan ng audio gamit ang iba't ibang mga API.

  • makilala_bing ()
  • pagkilala_google ()
  • pagkilala_google_cloud ()
  • pagkilala_houndify ()
  • pagkilala_ibm ()
  • makilala_wit ()
  • pagkilala_sphinx ()

Ngayon, ang pagkilala_sphinx ay maaaring magamit upang patakbuhin din ang sistema ng pagkilala sa pagsasalita nang offline din. Kinakailangan nito ang pag-install ng Pocketsphinx.

mag-import ng pagkilala sa pagsasalita bilang sr #instance ng kilalang kilalang r = sr.Recognizer ()

Pagkuha ng Input Mula sa Mga Mikropono

Upang magamit ang mga mikropono, mag-i-install din kami ng module ng pyaudio. Ginagamit namin ang klase ng mikropono upang makuha ang input na pagsasalita mula sa mikropono sa halip na anumang iba pang paraan ng pag-input tulad ng isang audio file.

Para sa karamihan ng mga proyekto, maaari naming gamitin ang mga default na mikropono. Ngunit kung hindi mo nais na gamitin ang default na mikropono,maaari kang makakuha ng listahan ng mga pangalan ng mikropono gamit ang list_microphone_names na pamamaraan.

Upang makuha ang input mula sa mikropono ginagamit namin ang paraan ng pakikinig.

import ng speechrecognition bilang sr r = sr.Recognizer () kasama ang sr.Microphone () bilang mapagkukunan: audio = sr.listen (source)

Paano Mag-install ng Pyaudio Sa Python?

Upang mai-install ang Pyaudio sa sawa, patakbuhin ang sumusunod na utos sa terminal o kung gumagamit ka ng pycharm idagdag ang pakete mula sa interpreter ng proyekto sa mga setting.

Gumamit ng Kaso

Gumagawa kami ng isang programa gamit ang module ng pagkilala sa pagsasalita sa sawa upang makilala ang pagsasalita at maisagawa ang sumusunod:

  1. i-convert ang pagsasalita sa teksto
  2. buksan ang isang URL gamit ang module ng webbrowser
  3. ipasa ang isang query gamit ang pagkilala sa pagsasalita upang maghanap sa url

Ang sumusunod ay ang programa para sa pahayag sa problema sa itaas:

i-import ang speech_recognition bilang sr import webbrowser bilang wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () kasama ang sr.Microphone () bilang mapagkukunan: print ('[search edureka: search youtube]') print ('speak now') audio = r3.listen (source) kung 'edureka' sa r2.recognize_google (audio): r2 = sr.Recognizer () url = 'https://www.edureka.co/' kasama ang sr .Microphone () bilang mapagkukunan: print ('search your query') audio = r2.listen (source) try: get = r2.recognize_google (audio) print (get) wb.get (). Open_new (url + get) maliban sr.UnknownValueError: print ('error') maliban sr.RequestError bilang e: print ('failed'.format (e)) kung' video 'sa r1.recognize_google (audio): r1 = sr.Recognizer () url =' https://www.youtube.com/results?search_query= 'kasama ang sr.Microphone () bilang mapagkukunan: i-print (' maghanap para sa isang video ') audio = r2.listen (source) subukan: get = r1.recognize_google (audio ) print (get) wb.get (). open_new (url + get) maliban sr.UnknownValueError: print ('hindi maintindihan') maliban sr.RequestError bilang e: print (nabigo upang makakuha ng mga resulta'.format (e) )

Makukuha mo ang output tulad ng ipinapakita sa imahe. Kung sasabihin mong edureka, hihimokin ka nitong sabihin ang query na nais mong hanapin sa edureka url na isinulat namin sa variable ng url. Kung sasabihin mong sawa makakakuha ka ng sumusunod na web page na binuksan sa browser.

Sa blog na ito, tinalakay namin kung paano namin magagamit ang pagkilala sa pagsasalita sa sawa upang isalin ang pagsasalita sa teksto gamit ang package ng pagkilala sa pagsasalita. ay naging pangangailangan ng oras para sa mga konsepto tulad ng pagkilala sa pagsasalita o pagkabagabag ng bagay, kasama ang na nagbibigay ng hindi maiisip na mga posibilidad sa mga system ng pagkilala sa pagsasalita kung saan maaari kaming sanayin at subukan ang napakalaking data ng pagsasalita upang bumuo ng isang system. Maaari kang magpatala sa para sa malalim na neural network upang makabisado ang iyong mga kasanayan at simulan ang iyong pag-aaral.

mayroon bang mga query? banggitin ang mga ito sa mga puna, babalikan ka namin sa iyo.