Mundarija:
- 1 -qadam: AIni qanday qilish kerak 2 -qism
- 2 -qadam: tizimni loyihalash:
- 3 -qadam: Dasturlash tiliga o'rnatilgan funktsiyalar:
- 4-qadam: O'z funksiyalaringizni yaratish uchun o'rnatilgan funktsiyalarni birlashtiring
- 5 -qadam: Modullar nima qiladi? "Kirish protsessori"
- 6 -qadam: "AI protsessori"
- 7 -qadam: "Chiqish va ballar" jadvali
- 8 -qadam: "Chiqish protsessori"
- 9 -qadam: Ishni davom ettiring
Video: A.I.ni qanday qilish kerak 2 -qism: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Bu Windows ma'lumotlar bazasi, dasturiy ta'minotni ishlab chiqish vositasi va Windows bilan birga kelgan bepul TTS dvigatelidan foydalanib, Windows kompyuterida sun'iy intellektni yaratish bo'yicha qadamlar haqida 2 -qism.
"Windows" so'zi Microsoft -ga tegishli.
"Ajdaho" so'zi Nuancega tegishli.
1 -qadam: AIni qanday qilish kerak 2 -qism
Dasturlash tilini tanlang va ba'zi vositalarni oling
Ko'p dasturlash tillari mavjud. Ba'zilar A. I.ga ixtisoslashgan. Men yoqtirgan Visual Basic, shuning uchun men buni ishlatganman. Men SQL server ma'lumotlar bazalari bilan ham ishlayman, shuning uchun men ham undan foydalanardim.
Siz Microsoft veb -saytidan ularning bepul versiyalarini yuklab olishingiz mumkin. Microsoft veb -saytida "EXPRESS" ni qidiring. [Visual Studio Express va SQL server Express]
Boshqa tillar: Python, C#, C ++, Java, Prolog, Lisp, IPL
va boshqalar. AIML - bu "belgilash tili", bu juda qiziq.
Men Windows bilan birga kelganidan yaxshiroq "nutqni aniqlash" dasturini xohlardim, shuning uchun men DRAGON dasturini sotib oldim. Men Windows bilan birga kelgan "Matndan nutqqa" standart dasturidan foydalanmoqdaman.
2 -qadam: tizimni loyihalash:
Katta loyihalaringizni bir nechta kichik loyihalarga bo'ling. Men dastur kodimni modullarga ajratdim.
Muayyan funktsiyani topish oson bo'lishi uchun kodimni turli modullarga ajratdim.
Menda "Process Input", "Process AI", "Process Output", "User Interface" va boshqa bir qancha modullar bor. Mening ba'zi funktsiyalarim boshqa barcha kodli modullar uchun ochiq bo'lishi kerak, shuning uchun men bu funktsiyalarni hamma narsa almashiladigan "umumiy" modulga qo'yaman.
3 -qadam: Dasturlash tiliga o'rnatilgan funktsiyalar:
Turli tillarda bularning nomlari turlicha bo'lishi mumkin, lekin hamma yuqori darajadagi tillarning vazifalari o'xshash.
LCase yoki ToLower: satrni hamma kichik harflarga o'zgartiradi. Ma'lumotlar bazasini qidirishdan oldin, men hamma narsani kichik harflarga aylantiraman, garchi ko'p narsa "katta-kichikligi sezilmaydigan" bo'lsa ham-Har holda.
O'zgartirish: satr ichidagi qatorni boshqa qatorga almashtiring. Siz mag'lubiyatdan qutulish uchun bo'sh simni "" bilan almashtirishingiz mumkin. Men nuqta, savol, vergul va boshqa tinish belgilaridan qutulaman.
Ajratish: satrni alohida qismlarga ajratadi va ularni qatorga joylashtiradi. Bu funktsiya har qanday belgiga yoki "Ajratuvchi" ga bo'linadi. Men so'zlarni bir qator qilish uchun "fazoviy belgi" ga "" jumlasini ajratdim. Bu AI Gurus tomonidan "Tokenizing" deb nomlangan.
Ma'lumotlar bazasini qidirish uchun so'rovlarni tuzish uchun alohida so'zlardan foydalanaman. (Bu haqida keyingi maqolamda)
4-qadam: O'z funksiyalaringizni yaratish uchun o'rnatilgan funktsiyalarni birlashtiring
Bu "vizual asosiy" misol. Bunga o'xshash narsalarni yaratish uchun dasturlash tilidan foydalaning.
Albatta, siz tanlagan dasturlash tilidan foydalanib, juda ko'p kod yozishingiz va ko'p funktsiyalarni bajarishingiz kerak bo'ladi.
5 -qadam: Modullar nima qiladi? "Kirish protsessori"
AIga bir xil savol berishning yuz xil usullari bo'lishi mumkin. Masalan; "Soat nechada?", "Vaqtingiz bormi?" "Bilasizmi, soat nechada?", "Hozirgi kunning vaqtini ayta olasizmi?" Foydalanuvchi shunchaki vaqt so'raganligi sababli, men ushbu kirishlar istalganini ma'lumotlar bazasini "qidirish" jadvali yordamida "So'rov vaqti" deb nomlangan bitta chiqishga aylantiraman.
Siz jadvalni mos kelguncha aylantirish uchun kod yozishingiz mumkin yoki agar siz SQL ma'lumotlar bazasidan foydalansangiz, SQL so'rovini yozishingiz mumkin, masalan …
"TableName -dan Chiqishni tanlang, bu erda Kirish =" "nima bo'lishidan qat'iy nazar""
… Keyin men "So'rov vaqti" chiqishini keyingi kod moduliga yuboraman; "AI jarayonlari"
Savollardan tashqari, "Salom" deb aytishning ko'plab usullari mavjud.
Salom, salom, nima bo'ldi, salom, salom, salomlar, salomlar, salomlar, salom ….
Bularning barchasi "Salomlashish" ga qisqartirilgan.
AI protsessori "Salomlashish" ni ko'rganida, u chiqish protsessoriga "Salom" ni yuboradi, u ma'lumotlar bazasi jadvalidan tasodifiy tabrikni tanlaydi va baland ovozda gapiradi.
6 -qadam: "AI protsessori"
Process AI - bu eng katta kodli modul. Bu juda katta, men uni qismlarga ajratdim.
Foydalanuvchi buyruq aytganmi yoki savol berganmi, kirish tekshiriladi. Bundan tashqari, AI bir nechta "rejim" da bo'lishi mumkin, ya'ni "jarayon AI" kodi foydalanuvchidan savol berish o'rniga savolga javob berishini kutadi.
Agar foydalanuvchi buyruqni aytmagan bo'lsa va AI maxsus "rejimda" bo'lmasa, u "so'zlar majmuasi" dagi so'zlarning kombinatsiyasidan iborat ko'plab so'rovlarni tuzadi va bajaradi. Barcha so'rov natijalari jadvalda saqlanadi va har bir so'rov natijasiga foydalanuvchi aytgan natija qanchalik mos kelishiga "ball" beriladi. Jadval ballar bo'yicha saralanadi va eng yuqori ball to'plagan natija, agar u ma'lum chegaradan oshsa, chiqishga yuboriladi. Agar barcha ballar chegaradan past bo'lsa, AI "Bilmayman" yoki "Bu hisoblamaydi" deb javob berishi mumkin.
7 -qadam: "Chiqish va ballar" jadvali
AIning "tovuq nima qildi?"
8 -qadam: "Chiqish protsessori"
Bu bir nechta "bog'liq bo'lmagan" ko'rinadigan narsalarni qiladi, lekin ularning barchasi AI protsessoridan foydalanuvchiga matnni olish bilan bog'liq.
Mana ro'yxat.
1. Ma'lumotlar bazasidagi matn hamma kichik harflar bilan yozilishi mumkin va tinish belgilariga ega emas. Subroutines birinchi harfni katta harf bilan yozadi va oxiriga nuqta yoki savol belgisini qo'yadi.
2. Boshqa kichik dastur apostroflarni qisqarishga qaytaradi yoki qisqarishni to'liq so'zlarga aylantiradi (ya'ni "cant" o'rniga "olmaydi" bilan almashtiriladi)
3. Matn-nutq dvigateli ba'zi so'zlarni o'zim xohlagan tarzda talaffuz qilmaydi, shuning uchun "Chiqish protsessori" bu so'zlarni fonetik imlo bilan almashtiradi. Menda ularni ushlab turish uchun "qidirish" jadvallari mavjud. "kirish protsessorida"
4. Agar AI ma'lumotlar bazasida munosib javob topmasa, u "bilmayman" deb ayta oladi, lekin men buni qayta -qayta aytishni xohlamayman. Haqiqiy odamlarning javoblari turlicha. Shunday qilib, "Umumiy chiqish" iboralari va tasodifiy tanlaydigan funktsiyasi bo'lgan jadval mavjud (va hech qachon ketma -ket ikki marta bir xilini tanlamaydi).
5. Bepul "matndan nutqqa" (TTS) dvigateli dasturchiga jumlalarni talaffuz qilish uchun ko'p variantlarni bermaydi, lekin siz ovoz balandligi va fonemalarning tezligini biroz nazorat qilasiz. Buning atamasi "Prosody". Men ma'lumotlar bazasidagi matnga bir nechta "prosody" kodlarini qo'shdim va "Chiqish protsessori" buni ko'rganida, har bir so'z aytilganda, TTS dvigatelidagi tezligi va tezligini moslashtiradi.
6. Ba'zida TTSni tushunish qiyin, shuning uchun men baland ovozda gapirishdan tashqari, ularni kompyuter displeyida katta harflar bilan ko'rsataman. "Foydalanuvchi interfeysi" ning bu qismi - suhbatning oxirgi 6 satrini (foydalanuvchi kiritish va AI chiqishi) ko'rsatadigan va yangi satrlar qo'shilganda yuqoriga siljiydigan tarmoq.
9 -qadam: Ishni davom ettiring
Mening fikrim "Hech kimga aytma"
Men hali ham AI tizimim ustida ishlayapman va, ehtimol, bu hech qachon "bajarilmaydi". Ko'proq xususiyatlar qo'shganim sayin, men ko'proq maqolalar yozaman.
Balki, mening ba'zi fikrlarim sizni menikidan yaxshiroq bo'lgan AIni yaratishga ilhomlantiradi
Tavsiya:
Jangovar robotni qanday qilish kerak (har qanday mahorat darajasi uchun): 8 qadam
Jangovar robotni qanday qilish kerak (har qanday mahorat darajasi uchun): jangovar robototexnika bilan shug'ullanishni boshlaganimda, "qadamma -qadam" yo'qligini topdim. jangovar robotni tuzish yo'llari, shuning uchun Internetda juda ko'p tadqiqotlar olib borganimdan so'ng, men uning bir qismini jangovar robotni yaratish bo'yicha qo'llanma yaratish uchun yig'ishga qaror qildim, shunda kimdir
13003 tranzistoridan foydalangan holda kuchlanish nazorat qilish sxemasini qanday qilish kerak: 6 qadam
13003 tranzistorli kuchlanish nazorat qilish sxemasini qanday qilish kerak: do'stim, bugun men o'zgaruvchan kuchlanishli elektr ta'minotini ta'minlaydigan kuchlanish nazorat qilish sxemasini yaratmoqchiman. Elektron loyihalarni ishlab chiqsak, kontaktlarning zanglashiga olib kelishi uchun bizga har xil kuchlanish kerak bo'ladi. Men buni qilmoqchiman
ARDUINO NANO/MINI QANDAY QILISH KERAK - Bootloader -ni qanday yoqish kerak: 5 qadam
ARDUINO NANO/MINI QANDAY QILISH KERAK | Bootloader -ni qanday yoqish kerak: Men sizga ko'rsatma beraman, Scratch -dan Arduino MINI -ni qanday yasashni ko'rsataman, bu ko'rsatmada yozilgan protsedura yordamida siz o'zingizning loyihangiz talablariga mos keladigan har qanday arduino taxtasini yasashingiz mumkin
Harorat, PH va erigan kislorod uchun ma'lumotlarni qayd qilish vositasini qanday qilish kerak: 11 qadam (rasmlar bilan)
Harorat, PH va erigan kislorod uchun ma'lumotlarni qayd qilish vositasini qanday qilish kerak: Maqsadlar: ≤ 500 dollarga ma'lumot yozuvchi yasang. U harorat, pH va DO ma'lumotlarini vaqt tamg'asi va I2C aloqasi yordamida saqlaydi. Nima uchun I2C (Inter-Integrated Circuit)? Bir nechta sensorlarni bir qatorga yig'ish mumkin, chunki ularning har birida
Tez yong'in rejimini qanday bepul qilish kerak (sizga faqat tornavida kerak): 10 qadam
Tez yong'in rejimini qanday bepul qilish kerak (sizga faqat tornavida kerak): Bugun men sizga xbox uskunasida tez o't o'chirish rejimini o'rgataman: xavfsizlik teshigiga ega bitta torx T8 tornavida YoKI kichik. tekis bosh. Bu safar men Titan Torx t8 -dan foydalanaman, xavfsizlik teshigiga ega, uni Autozone -da sotib olish mumkin.