Cuprins:
- Pasul 1: Cum se realizează o AI partea 2
- Pasul 2: Proiectați-vă sistemul:
- Pasul 3: Funcții care sunt încorporate în limbajul de programare:
- Pasul 4: Combinați funcțiile încorporate pentru a vă crea propriile funcții
- Pasul 5: Ce fac modulele? „Procesor de intrare”
- Pasul 6: „Procesor AI”
- Pasul 7: Tabelul „ieșire și scoruri”
- Pasul 8: „Procesor de ieșire”
- Pasul 9: Continuați să lucrați la el
Video: Cum să faci un A.I. Partea 2: 9 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
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ă, un instrument de dezvoltare a programării și motorul TTS gratuit încorporat care vine cu Windows.
Cuvântul „Windows” aparține Microsoft.
Cuvântul „Dragon” aparține Nuance.
Pasul 1: Cum se realizează o AI partea 2
Alegeți un limbaj de programare și obțineți câteva instrumente
Există multe limbaje de programare. Unele sunt specializate pentru A. I. Preferatul meu este Visual Basic, deci asta am folosit. Lucrez și cu baze de date SQL server, așa că am folosit și asta.
Puteți descărca versiuni gratuite ale acestora de pe site-ul web Microsoft. Căutați doar „EXPRESS” pe site-ul web Microsoft. [Visual Studio Express și SQL Server Express]
Alte limbi pe care le-ați putea dori sunt: Python, C #, C ++, Java, Prolog, Lisp, IPL
și multe altele. AIML este un „limbaj de markup” foarte interesant.
Am vrut un program de „recunoaștere a vorbirii” mai bun decât cel care vine cu Windows, așa că am cumpărat software-ul DRAGON. Folosesc programul standard „Text-to-speech” furnizat cu Windows.
Pasul 2: Proiectați-vă sistemul:
Împărțiți proiectele dvs. mari într-o grămadă de proiecte mai mici. Mi-am împărțit codul de program în module.
Mi-am împărțit codul în diferite module, astfel încât o anumită funcție să fie mai ușor de găsit.
Am module numite „Process Input”, „Process AI”, „Process Output”, „User Interface” și câteva altele. Unele dintre funcțiile mele trebuie să fie accesibile tuturor celorlalte module de cod, așa că am pus aceste funcții într-un modul „comun” în care totul este partajat
Pasul 3: Funcții care sunt încorporate în limbajul de programare:
Limbi diferite pot avea nume diferite pentru acestea, dar toate limbile de nivel înalt au funcții similare.
LCase sau ToLower: convertește un șir cu majuscule. Convertesc totul în minuscule înainte de a efectua o căutare în baza de date - chiar dacă majoritatea lucrurilor nu fac „minuscule” - pentru orice eventualitate.
Înlocuiți: înlocuiți un șir din interiorul unui șir într-un alt șir. Puteți înlocui un șir cu un șir gol „” pentru a scăpa de el. Scap de puncte, semne de întrebare, virgule și alte semne de punctuație.
Împărțire: împarte un șir în bucăți individuale și le pune într-o matrice. Această funcție va împărți un șir pe orice caracter sau „Delimitator”. Am împărțit o propoziție pe un „caracter spațial” „„ pentru a face o serie de cuvinte. Aceasta este numită „Tokenizarea” de către AI Gurus.
Folosesc cuvintele individuale pentru a construi interogări folosite pentru a căuta în baza de date. (Mai multe despre acest lucru în următorul meu articol)
Pasul 4: Combinați funcțiile încorporate pentru a vă crea propriile funcții
Acesta este un exemplu „de bază vizual”. Folosiți limbajul de programare pentru a construi așa ceva.
Desigur, va trebui să scrieți mult cod și să construiți multe funcții, folosind limbajul de programare la alegere.
Pasul 5: Ce fac modulele? „Procesor de intrare”
S-ar putea să existe o sută de moduri diferite de a pune AI aceeași întrebare. De exemplu; „Ce oră este?”, „Ai timp?” „Știți ce oră este?”, „Îmi puteți spune ora curentă a zilei?” Deoarece utilizatorul cere doar ora, convertesc oricare dintre aceste intrări într-o singură ieșire numită „Query Time” folosind un tabel de „căutare în sus” a bazei de date.
Puteți scrie cod pentru a trece printr-un tabel până când găsește o potrivire sau, dacă utilizați o bază de date SQL, puteți scrie o interogare SQL, cum ar fi …
„Selectați ieșire din TableName unde Input =‘”oricare ar fi„”
… Și apoi trimit rezultatul, „Query Time”, la următorul modul de cod; „Proces AI”
În afară de întrebări, există multe modalități de a spune „Bună ziua”
Bună, Bună, ce se întâmplă, hei, hola, ce mai faci ?, salutări, bun venit, salutări, howdy …
Toate acestea sunt reduse la „Salut”
Când procesorul AI vede „Greeting”, acesta trimite „Greeting” procesorului de ieșire, care va alege un mesaj aleatoriu dintr-un tabel de baze de date și îl va rosti cu voce tare.
Pasul 6: „Procesor AI”
Procesul AI este cel mai mare modul de cod. Este atât de mare încât l-am împărțit și în secțiuni.
Intrarea este verificată pentru a vedea dacă utilizatorul a rostit o comandă sau a pus o întrebare. De asemenea, AI poate fi în oricare dintre mai multe „Moduri” ceea ce înseamnă că codul „Procesează AI” așteaptă ca utilizatorul să RĂSPUNSĂ o întrebare, în loc să ÎL PUNE pe o întrebare.
Dacă utilizatorul nu a rostit o comandă și AI nu se află într-un „mod” special, atunci construiește și execută o grămadă de interogări, din combinațiile de cuvinte din „matricea de cuvinte”. Toate rezultatele interogării sunt stocate într-un tabel și fiecărui rezultat al interogării i se acordă un „scor” în ceea ce privește cât de mult se potrivește rezultatul cu ceea ce vorbise utilizatorul. Tabelul este sortat după scor, iar rezultatul cu cel mai mare scor este trimis la ieșire, dacă depășește un anumit prag. Dacă toate scorurile sunt sub prag, AI poate răspunde cu „Nu știu” sau „Asta nu calculează”
Pasul 7: Tabelul „ieșire și scoruri”
Ieșirea AI din inputul meu „Ce a făcut puiul?”
Pasul 8: „Procesor de ieșire”
Acest lucru face mai multe lucruri care nu au legătură, dar toate au de-a face cu transmiterea textului de la procesorul AI către utilizator.
Iată o listă.
1. Textul din baza de date poate fi cu majuscule și să nu conțină punctuație.. Subrutinele vor scrie cu majusculă prima literă și vor pune un punct sau un semn de întrebare la final.
2. Un alt subrutină va pune apostrofele înapoi în contracții sau va converti contracțiile înapoi în cuvinte complete (adică „cant” se înlocuiește cu „nu se poate”)
3. Motorul text-to-speech nu pronunță unele cuvinte așa cum îmi place, așa că „Procesorul de ieșire” înlocuiește aceste cuvinte cu o ortografie fonetică. Am tabele „căutați” în baza de date pentru a le păstra, asemănătoare cu cea în „procesorul de intrare”
4. Dacă AI nu găsește un răspuns adecvat în baza de date, poate spune „Nu știu”, dar nu vreau să spună acest lucru de nenumărate ori. Oamenii adevărați își variază răspunsurile. Deci, există un tabel cu fraze „Ieșire comună” și o funcție care alege una la întâmplare (și nu o va alege niciodată pe aceeași de două ori la rând.)
5. Motorul gratuit „text-to-speech” (TTS) nu oferă unui programator o mulțime de opțiuni pentru modul în care sunt rostite propozițiile, dar aveți puțin control asupra tonului și a vitezei fonemelor. Termenul pentru aceasta este „Prosodie”. Am adăugat câteva coduri de „prozodie” în textul din baza mea de date și, atunci când „Procesorul de ieșire” le vede, ajustează tonul și viteza în motorul TTS pe măsură ce se vorbește fiecare cuvânt.
6. Uneori, TTS este greu de înțeles, așa că, pe lângă rostirea cuvintelor cu voce tare, le afișez și cu litere mari pe ecranul computerului. Această parte a „Interfeței cu utilizatorul” este o grilă care afișează ultimele 6 linii ale unei conversații (Intrare utilizator și ieșire AI) și derulează pe măsură ce se adaugă noi linii..
Pasul 9: Continuați să lucrați la el
Contribuția mea a fost „Nu spune nimănui”
Încă lucrez la sistemul meu de AI și probabil că nu va fi niciodată „terminat” cu adevărat. Pe măsură ce adaug mai multe funcții, voi scrie mai multe articole.
Poate că unele dintre ideile mele te vor inspira să construiești o IA mai bună decât a mea
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 4: 3 pași
Cum să faci un A.I. Partea 4: Zilele trecute vorbeam cu AI-ul meu și i-am spus: „Mă duc sus la cină, avem STEAK”. Cu toate acestea, software-ul de recunoaștere a vorbirii (SR) a interpretat acest lucru ca „… avem STAKE”Am dat peste o ureche similară (dar diferită)
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