Cuprins:
Video: Cum să faci un A.I. Partea 4: 3 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Zilele trecute vorbeam cu A. I.-ul meu și i-am spus
„Mă duc sus la cină, luăm STEAK”.
Cu toate acestea, software-ul de recunoaștere a vorbirii (SR) a interpretat acest lucru ca „… avem MIZĂ”
Am întâmpinat o problemă similară (dar diferită) mai devreme când vorbeam despre o fotografie și am spus cuvântul „IMAGINE”. Software-ul SR a interpretat acest lucru ca „PITCHER”
Soluția pentru acest lucru a fost o simplă recalificare a software-ului SR. (Sau poate pronunția mea)
Dar când spun cuvintele STEAK sau STAKE, le pronunț exact la fel, iar recalificarea software-ului SR nu va ajuta în astfel de cazuri.
Pasul 1:
O idee pentru a rezolva „Problema omonimă”.
Trebuie să mă uit la cuvântul „în context” pentru a determina ce ortografie să folosesc. Creierul uman face asta destul de ușor și nici măcar nu știi că o faci.
Aceasta înseamnă că alte cuvinte dintr-o propoziție sunt examinate, iar creierul tău decide care ortografie arată cel mai bine. Acum, cum fac asta în cod?
A. I. programul analizează o propoziție într-o serie de cuvinte individuale utilizând funcția „Split” a Visual Basic (VB). [MyArray = Split (InputSentence, „„)]
Fiecare cuvânt din matrice poate fi verificat pentru a vedea dacă este un omonim posibil, căutând într-un tabel de baze de date care conține o listă de omonime.
Desigur, crearea unui alt tabel înseamnă că va trebui să îl completăm cu date și, de asemenea, va trebui să putem păstra și datele din tabel.
Un subrutin de autoînvățare poate fi construit mai târziu pentru a scana o grămadă de text, căutând cuvinte în tabelul meu omonim și să capteze alte cuvinte de „context”. Hmmmmm, poate sunt necesare mai multe tabele …
Scrierea acestor „Instructabile” mă ajută să „argumentez” o soluție la o provocare de programare.
Pasul 2:
Structura tabelului HomonymContext
Prima mea idee a fost un tabel care conține cuvinte, ortografii alternative și cuvinte „Context”. Ideea a fost căutarea unei propoziții care conține un omonim, pentru alte cuvinte care dau „contextul”, astfel încât programul să poată stabili ce ortografie să utilizeze. Tabelul conține, de asemenea, o coloană numită „WordDef” pentru a menține definiția cuvântului, care este mai mult pentru omul care întreține tabelul decât A. I. cod.
Pentru a căuta fiecare cuvânt, pot folosi codul VB și codul SQL ca …
Pentru fiecare Cuvânt din MyArray
Interogare = "Selectați Word din tblHomonynContext unde word = '" & word & "'"
dacă această interogare returnează un rezultat, atunci cuvântul este un omonim
Următorul
Acesta este doar pseudo cod în acest moment - încă nu am scris codul exact sau nu am aflat toate detaliile. Dar nu ezitați să luați ideea mea și să o implementați folosind propriul limbaj de programare preferat.
Pasul 3:
Dacă propoziția de intrare conține un omonim, acum puteți
executați cod VB care va verifica celelalte cuvinte din propoziția dvs., cu cuvintele de context din rezultatele interogării.
De asemenea, puteți face acest lucru într-o procedură stocată SQL, care se poate executa mai repede.
Funcția VB „InStr ()” va returna un număr mai mare decât zero, dacă un șir este conținut într-un alt șir sau va întoarce zero, șirul NU este conținut în celălalt.
Instr () returnează de fapt poziția șirului conținut. Dacă doriți doar să știți dacă String1 conține String2, puteți utiliza codul cum ar fi „If InStr (String1, String2)> 0 …”
Va trebui să construiți acest cod în limbajul de programare preferat.
Tabelul HomonymContext nu este un design foarte bun. Are o mulțime de date repetate, iar acest lucru este considerat a fi „Non-Normalizat” de către proiectanții de baze de date. O modalitate mai bună de a implementa această funcționalitate ar fi utilizarea a două tabele, într-o relație părinte-copil. Un tabel (The Parent) ar conține o listă de omonime, definițiile acestora, precum și un ID de rând. Acest ID de rând este folosit ca cheie pentru „tabelul copil” care ar conține cuvintele și cuvintele de context ale acestora.
Acest lucru ar fi mai ușor de interogat (și de întreținut) decât designul meu original.
Recomandat:
Cum să faci 4G LTE dublă antenă BiQuade Pași simpli: 3 pași
Cum să fac 4G LTE Double BiQuade Antenna Pași simpli: De cele mai multe ori mă confrunt, nu am o putere de semnal bună pentru lucrările mele de zi cu zi. Asa de. Căut și încerc diferite tipuri de antenă, dar nu funcționează. După un timp pierdut, am găsit o antenă pe care sper să o fac și să o testez, pentru că nu se bazează pe principiul
Cum să faci un contor de pași ?: 3 pași (cu imagini)
Cum să fac un contor de pași ?: obișnuiam să performez bine la multe sporturi: mersul pe jos, alergatul, mersul pe bicicletă, jocul de badminton etc. Îmi place să călăresc să călătoresc în preajmă. Ei bine, uită-te la burtica mea ostilă …… Ei bine, oricum, decid să reîncep să fac mișcare. Ce echipament ar trebui să pregătesc?
Cum să faci un A.I. Partea 2: 9 pași
Cum să faci un A.I. Partea 2: Aceasta este partea 2 despre pașii pe care i-am făcut pentru a construi un AI pe un computer Windows, folosind o bază de date gratuită, instrument de dezvoltare a programării și motorul TTS gratuit încorporat care vine cu Windows. Cuvântul „Windows” aparține Microsoft.Cuvântul „Dra
Cum să faci un A.I. Partea 1: 5 pași
Cum să faci un A.I. Partea 1: Începeți cu un computer care are Recunoaștere vorbire și, de asemenea, un convertor Text-To-Speech. Va trebui să puteți scrie programe de computer care pot accesa Recunoașterea vorbirii și Convertorul Text-To-Speech. și
Cum să faci un calendar al bunicilor & Scrapbook (chiar dacă nu știi cum să scrapbook): 8 pași (cu imagini)
Cum să faci un calendar al bunicilor & Scrapbook (chiar dacă nu știi cum să scrapbook): Acesta este un cadou de vacanță foarte economic (și mult apreciat!) Pentru bunicii. Anul acesta am realizat 5 calendare pentru mai puțin de 7 USD fiecare