Sisukord:
- Samm: kuidas teha tehisintellekti 2. osa
- Samm: kujundage oma süsteem:
- Samm 3: Programmeerimiskeele sisseehitatud funktsioonid:
- Samm: ühendage sisseehitatud funktsioonid oma funktsioonide loomiseks
- 5. samm: mida moodulid teevad? "Sisendprotsessor"
- Samm: „AI -protsessor”
- Samm 7: tabel "Väljund ja hinded"
- Samm: väljundprotsessor
- 9. samm: jätkake selle kallal töötamist
Video: Kuidas teha A.I. 2. osa: 9 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
See on 2. osa sammudest, mille tegin Windowsi arvutis AI loomiseks, kasutades tasuta andmebaasi, programmeerimise arendustööriista ja Windowsiga kaasasolevat tasuta sisseehitatud TTS -mootorit.
Sõna "Windows" kuulub Microsoftile.
Sõna "draakon" kuulub Nuance'ile.
Samm: kuidas teha tehisintellekti 2. osa
Valige programmeerimiskeel ja hankige tööriistad
Programmeerimiskeeli on palju. Mõned on spetsialiseerunud A. I. Minu lemmik on Visual Basic, nii et ma kasutasin seda. Töötan ka SQL serveri andmebaasidega, seega kasutasin ka seda.
Nende tasuta versioonid saate alla laadida Microsofti veebisaidilt. Lihtsalt otsige Microsofti veebisaidilt sõna „EXPRESS”. [Visual Studio Express ja SQL server Express]
Teised keeled, mida võiksite meile soovida, on järgmised: Python, C#, C ++, Java, Prolog, Lisp, IPL
ja paljud teised. AIML on märgistuskeel, mis on väga huvitav.
Tahtsin Windowsiga kaasasolevast programmist paremat kõnetuvastust, seega ostsin tarkvara DRAGON. Kasutan Windowsiga kaasasolevat standardset teksti kõneks muutmise programmi.
Samm: kujundage oma süsteem:
Jagage oma suured projektid hunnikuks väiksemateks projektideks. Jagasin oma programmi koodi mooduliteks.
Jagasin oma koodi erinevateks mooduliteks, et teatud funktsiooni oleks lihtsam leida.
Mul on mooduleid nimega „Protsessisisend”, „Protsessi AI”, „Protsessiväljund”, „Kasutajaliides” ja mõned teised. Mõned minu funktsioonid peavad olema kättesaadavad kõigile teistele koodimoodulitele, nii et ma panen need funktsioonid "ühisesse" moodulisse, kus kõik on jagatud
Samm 3: Programmeerimiskeele sisseehitatud funktsioonid:
Erinevatel keeltel võivad olla erinevad nimed, kuid kõigil kõrgetasemelistel keeltel on sarnased funktsioonid.
LCase või ToLower: teisendab stringi väiketähtedeks. Ma teisendan kõik enne andmebaasiotsingu tegemist väiketähtedeks-kuigi enamik asju on „tõstutundetu”-igaks juhuks.
Asenda: asendage stringi sees olev string teise stringina. Stringist vabanemiseks võite selle asendada tühja stringiga “”. Ma vabanen punktidest, küsimärkidest, komadest ja muudest kirjavahemärkidest.
Split: jagab stringi üksikuteks tükkideks ja paneb need massiivi. See funktsioon jagab stringi mis tahes tähemärgi või "eraldaja" järgi. Jagasin lause „tühikukujulisele tähemärgile” „“, et teha sõnamassiiv. AI -gurud nimetavad seda "tokeniseerimiseks".
Kasutan üksikuid sõnu andmebaasi otsimiseks kasutatavate päringute koostamiseks. (Lisateavet selle kohta minu järgmises artiklis)
Samm: ühendage sisseehitatud funktsioonid oma funktsioonide loomiseks
See on “visuaalne põhinäide”. Kasutage oma programmeerimiskeelt sellise asja loomiseks.
Loomulikult peate oma valitud programmeerimiskeelt kasutades kirjutama palju koodi ja looma palju funktsioone.
5. samm: mida moodulid teevad? "Sisendprotsessor"
AI -le sama küsimuse esitamiseks võib olla sada erinevat võimalust. Näiteks; "Mis kell on?", "Kas teil on aega?" "Kas sa tead, mis kell on?", "Kas sa oskad öelda praegust kellaaega?" Kuna kasutaja küsib lihtsalt aega, teisendan kõik need sisendid andmevälja otsingu tabeli abil üheks väljundiks nimega „Päringu aeg”.
Saate kirjutada koodi tabeli kaudu, kuni see leiab vaste, või kui kasutate SQL -andmebaasi, saate kirjutada SQL -päringu, näiteks…
"Valige tabeli Nimi väljund, kus sisend =" "mis iganes""
… Ja siis saadan väljundi „Päringu aeg” järgmisele koodimoodulile; "Töötle tehisintellekti"
Lisaks küsimustele on "Tere" ütlemiseks palju võimalusi
Tere, tere, mis lahti, hei, hola, kuidas läheb ?, tervitused, tere tulemast, tervitused, tere….
Kõik need on taandatud tervitusele
Kui tehisintellekti protsessor näeb tervitust, saadab see väljundprotsessorile tervituse, mis valib andmebaasi tabelist juhusliku tervituse ja ütleb selle valjusti.
Samm: „AI -protsessor”
Protsess AI on suurim koodimoodul. See on nii suur, et jagasin selle ka osadeks.
Sisendit kontrollitakse, et näha, kas kasutaja rääkis käsu või esitas küsimuse. Samuti võib tehisintellekt olla mitmes režiimis, mis tähendab, et kood „protsess AI“ootab kasutajalt küsimuse esitamise asemel küsimusele VASTAMIST.
Kui kasutaja ei rääkinud käsku ja tehisintellekt ei ole spetsiaalses režiimis, siis koostab ja täidab see hulga päringuid sõnade massiivi sõnade kombinatsioonidest. Kõik päringutulemused salvestatakse tabelisse ja igale päringutulemusele antakse „skoor” selle kohta, kui täpselt tulemus vastab kasutaja poolt öeldule. Tabel sorteeritakse punktisumma järgi ja kõrgeima skooriga tulemus saadetakse väljundisse, kui see ületab teatud läve. Kui kõik hinded jäävad allapoole künnist, võib tehisintellekt vastata sõnadega „ma ei tea” või „see ei arvuta”.
Samm 7: tabel "Väljund ja hinded"
AI väljund minu sisendist "Mida kana tegi?"
Samm: väljundprotsessor
See teeb mitmeid "sõltumatu" välimusega asju, kuid need kõik on seotud teksti edastamisega AI -protsessorilt kasutajale.
Siin on nimekiri.
1. Andmebaasi tekst võib olla väiketähtedega ja sellel ei tohi olla kirjavahemärke.. Alamprogrammid kirjutavad esimese tähe suurtähega ja panevad punkti või küsimärgi lõppu.
2. Teine alamprogramm muudab apostroofid kontraktsioonideks või teisendab kokkutõmbed täissõnadeks (st „ei saa” asendatakse sõnaga „ei saa”)
3. Tekst kõneks mootor ei häälda mõnda sõna nii, nagu mulle meeldib, nii et väljundprotsessor asendab need sõnad foneetilise õigekirjaga. Mul on andmebaasi otsimistabelid nende hoidmiseks, sarnaselt sellele "sisendprotsessoris"
4. Kui tehisintellekt ei leia andmebaasist sobivat vastust, võib ta öelda “ma ei tea”, kuid ma ei taha, et see seda ikka ja jälle ütleks. Reaalsed inimesed erinevad oma vastustest. Seega on olemas tabel, mis sisaldab fraase „Common Output” ja funktsioon, mis valib ühe juhuslikult (ja ei vali kunagi sama kaks korda järjest.)
5. Tasuta tekst-kõneks (TTS) mootor ei anna programmeerijale palju võimalusi lausete rääkimiseks, kuid teil on pisut kontrolli helikõrguse ja foneemide kiiruse üle. Selle mõiste on "Prosody". Lisasin oma andmebaasi teksti mõned „prosoodia” koodid ja kui „väljundprotsessor” neid näeb, reguleerib see iga sõna rääkimisel TTS -mootori helikõrgust ja kiirust.
6. Mõnikord on TTS -ist lihtsalt raske aru saada, nii et lisaks sõnade valjusti rääkimisele kuvan neid ka oma arvutiekraanil suurte tähtedega. See kasutajaliidese osa on ruudustik, mis näitab vestluse viimast 6 rida (kasutaja sisend ja tehisintellekti väljund) ning kerib uute ridade lisamisel üles.
9. samm: jätkake selle kallal töötamist
Minu sisend oli "Ära räägi kellelegi"
Töötan endiselt oma AI -süsteemi kallal ja tõenäoliselt ei tehta seda kunagi päriselt. Kui lisan rohkem funktsioone, kirjutan rohkem artikleid.
Võib -olla inspireerivad mõned minu ideed teid looma tehisintellekti, mis on parem kui minu oma
Soovitan:
Kuidas-E-INK E-PAPER DISPLAY MODUL-Osa 2 - Import Kohanda pilti: 4 sammu
Kuidas-E-INK E-PAPER DISPLAY MODUL-Osa 2 | Import Kohanda pilti: selles õpetuses, kuidas osa 2-E-Tindi E-PAPERI NÄITAMISMOODUL | Import Kohanda pilti, jagan teiega, kuidas teile meelepärane pilt importida ja seda E-Ink Display moodulis kuvada. See on mõne sekundi abiga väga lihtne
Kuidas teha A.I. 4. osa: 3 sammu
Kuidas teha A.I. Osa 4: Teisel päeval rääkisin oma tehisintellektiga ja ütlesin toit: "Ma lähen üles sööma õhtusöögile, meil on STEAK". Kõnetuvastustarkvara (SR) tõlgendas seda aga järgmiselt: "… meil on STAKE "Ma sattusin sarnase (kuid erineva) probleemkõrva
Kuidas teha A.I. Osa 1: 5 sammu
Kuidas teha A.I. Osa 1: Alustage arvutist, millel on kõnetuvastus ja ka tekst kõneks muundur. Peate suutma kirjutada arvutiprogramme, millel on juurdepääs kõnetuvastusele ja teksti kõneks muundurile. Mõned rakenduste arendamise tööriistad ja
Kuidas oma tuba Arduino abil automatiseerida? Osa 1: 5 sammu
Kuidas oma tuba Arduino abil automatiseerida? Osa 1: Olen alati tahtnud oma tuba kaugjuhtida, seega otsustasin luua süsteemi, mis võimaldab mul seda teha. Kui soovite õppida, kuidas? siis kutsun teid neid samme järgima
Kuidas teha vanavanemate kalendrit & Külalisteraamat (isegi kui te ei tea, kuidas külalisteraamatut teha): 8 sammu (piltidega)
Kuidas teha vanavanemate kalendrit & Külalisteraamat (isegi kui te ei tea, kuidas külalisteraamatut teha): see on väga ökonoomne (ja väga tänuväärne!) Puhkusekink vanavanematele. Ma tegin sel aastal 5 kalendrit hinnaga vähem kui 7 dollarit. Materjalid: 12 suurepärast fotot teie lapsest, lastest, õetütardest, vennapoegadest, koertest, kassidest või muudest sugulastest12 erinevat tükki