Мазмуну:

Кантип A.I. 2 -бөлүк: 9 кадам
Кантип A.I. 2 -бөлүк: 9 кадам

Video: Кантип A.I. 2 -бөлүк: 9 кадам

Video: Кантип A.I. 2 -бөлүк: 9 кадам
Video: Гостиницага келдик бир берейин эми 2024, Июль
Anonim
Кантип A. I. 2 бөлүк
Кантип A. I. 2 бөлүк

Бул 2 -бөлүк, мен акысыз маалымат базасын, программалык камсыздоону иштеп чыгуу куралын жана Windows менен кошо келген TTS кыймылдаткычын акысыз колдонуп, Windows компьютерине AI жасоого жасаган кадамдарым жөнүндө.

"Windows" сөзү Microsoftко таандык.

"Ажыдаар" сөзү Нюанска таандык.

1 -кадам: AIди кантип жасоо керек 2 -бөлүк

AIди кантип жасоо керек 2 -бөлүк
AIди кантип жасоо керек 2 -бөлүк

Программалоо тилин тандап, кээ бир куралдарды алыңыз

Көптөгөн программалоо тилдери бар. Кээ бирлери А. И. Менин сүйүктүүм Visual Basic, ошондуктан мен колдонгон нерсе. Мен ошондой эле SQL серверинин маалымат базалары менен иштейм, ошондуктан мен аны да колдондум.

Сиз булардын акысыз версияларын Microsoft веб -сайтынан жүктөп алсаңыз болот. Microsoft веб -сайтынан "EXPRESS" издеңиз. [Visual Studio Express жана SQL Server Express]

Бизге каалаган башка тилдер: Python, C#, C ++, Java, Prolog, Lisp, IPL

жана башкалар. AIML - бул "Белгилөө тили", ал абдан кызыктуу.

Мен Windows менен келгенге караганда жакшыраак "сүйлөөнү таануу" программасын кааладым, ошондуктан мен DRAGON программасын сатып алдым. Мен Windows менен келген стандарттык "Тексттен сүйлөөгө" программасын колдонуп жатам.

2 -кадам: системаңызды долбоорлоо:

Сиздин системаны долбоорлоо
Сиздин системаны долбоорлоо

Чоң долбоорлоруңузду кичинекей долбоорлорго бөлүңүз. Мен программанын кодун модулдарга бөлдүм.

Белгилүү бир функцияны табуу үчүн кодумду ар кандай модулдарга бөлдүм.

Менде "Process Input", "Process AI", "Process Output", "User Interface" жана башка бир нече модулдар бар. Менин кээ бир функцияларым башка бардык код модулдары үчүн жеткиликтүү болушу керек, ошондуктан мен бул функцияларды баары бөлүшүлгөн "жалпы" модулга киргизем

3 -кадам: Программалоо тилине курулган функциялар:

Программалоо тилине курулган функциялар
Программалоо тилине курулган функциялар

Бул үчүн ар кандай тилдерде ар кандай аталыштар болушу мүмкүн, бирок бардык жогорку деңгээлдеги тилдердин функциялары окшош.

LCase же ToLower: Сапты бардык кичине тамгаларга айландырат. Маалыматтар базасын издөө алдында баарын кичине тамгага айландырам-көпчүлүк нерселер "регистрге сезгич эмес" болсо да-Кандай болгон күндө да.

Алмаштыруу: Саптын ичиндеги сапты башка сапка алмаштыруу. Сапты бош "" менен алмаштырсаңыз болот. Мен чекиттерден, суроо белгилеринен, үтүрдөрдөн жана башка тыныш белгилеринен кутулам.

Бөлүү: сапты бөлүктөргө бөлүп, массивге киргизет. Бул функция сапты каалаган белгиге же "Бөлүүчүгө" бөлөт. Мен сөздөрдүн массивин түзүү үчүн сүйлөмдү "космостук каарманга" бөлдүм. Бул AI Gurus тарабынан "Tokenizing" деп аталат.

Мен жеке сөздөрдү маалымат базасын издөө үчүн колдонулган суроолорду түзүү үчүн колдоном. (Бул тууралуу кененирээк кийинки макалада)

4-кадам: Жеке функцияларыңызды түзүү үчүн Киргизилген Функцияларды Бириктириңиз

Бул "визуалдык негизги" мисал. Ушул сыяктуу нерсени куруу үчүн программалоо тилин колдонуңуз.

Албетте, сиз тандаган программалоо тилин колдонуп, көп код жазышыңыз жана көптөгөн функцияларды түзүшүңүз керек болот.

5 -кадам: Модулдар эмне кылат? "Киргизүү процессору"

Модулдар эмне кылат? "Киргизүү процессору"
Модулдар эмне кылат? "Киргизүү процессору"

КИге бир эле суроону берүүнүн жүз түрдүү жолдору болушу мүмкүн. Мисалы; "Саат канча болду?", "Убактың барбы?" "Саат канча экенин билесизби?", "Мага күндүн учурдагы убактысын айта аласызбы?" Колдонуучу жөн эле убакыт сурап жаткандыктан, мен бул Киргизимдердин бирин "Издөө" таблицасынын жардамы менен "Суроо убактысы" деп аталган бир Чыгууга айландырам.

Сиз таблицада дал келгенге чейин цикл үчүн код жаза аласыз, же эгер сиз SQL маалымат базасын колдонуп жатсаңыз, SQL сурамын жазсаңыз болот, мисалы …

"TableNameден Чыгууну тандаңыз, анда Киргизүү =" "кандай болбосун""

… Анан мен "Query Time" чыгарылышын кийинки код модулуна жөнөтөм; "Процесс AI"

Суроолордон тышкары, "Салам" деп айтуунун көптөгөн жолдору бар

Саламатсызбы, кандайсыз, эй, хола, кандайсың ?, салам, салам, салам, салам …

Мунун баары "Саламдашууга" чейин кыскарган

AI процессору "Саламдашууну" көргөндө, ал "Саламдашууну" чыгаруу процессоруна жөнөтөт, ал маалымат базасынын столунан туш келди куттуктоону тандап алат жана аны катуу сүйлөйт.

6 -кадам: "AI процессору"

"AI процессору"
"AI процессору"

Process AI эң чоң код модулу. Ал ушунчалык чоң болгондуктан, мен аны бөлүктөргө бөлдүм.

Колдонуучу буйрукту сүйлөдүбү же суроо бердиби, текшерилет. Ошондой эле, AI бир нече "режимде" болушу мүмкүн, демек "Process AI" коду колдонуучудан суроо берүүнүн ордуна суроого ЖООП берүүнү күтөт.

Эгерде колдонуучу буйрукту айтпаса жана AI атайын "Режимде" болбосо, анда ал "сөздөр массивиндеги" сөздөрдүн айкалышынан туруп, бир топ суроолорду куруп, аткарат. Суроолордун бардык жыйынтыктары таблицада сакталат жана ар бир суроонун жыйынтыгына колдонуучу айткан нерсеге канчалык дал келери боюнча "упай" берилет. Таблица балл боюнча иргелет жана эң жогорку баллга ээ болгон жыйынтык белгилүү бир босогодон ашса, өндүрүшкө жөнөтүлөт. Эгерде бардык упайлар босогодон төмөн болсо, AI "мен билбейм" же "бул эсептебейт" деп жооп бериши мүмкүн.

7 -кадам: "Чыгаруу жана упайлар" таблицасы

The
The

Киргизилген AIдин чыгарылышы "Тоок эмне кылды?"

8 -кадам: "Чыгаруу процессору"

"Чыгаруу процессору"
"Чыгаруу процессору"

Бул бир нече "байланышы жок" нерселерди кылат, бирок алардын баары AI процессорунан текстти колдонуучуга алуу менен байланыштуу.

Бул жерде тизме.

1. Маалыматтар базасындагы текст баардык кичине тамгалар менен жазылышы мүмкүн жана пунктуацияга ээ эмес.. Көмөкчү программалар биринчи тамганы баш тамга менен жазышат жана аягына чекит же суроо белгисин коюшат.

2. Башка подпрограмма апострофторду кайра жыйрылууга коет же жыйрылууну кайра толук сөздөргө айлантат (б.а. "cant" "болбойт" менен алмаштырылат)

3. Тексттен сүйлөөгө кыймылдаткыч кээ бир сөздөрдү мен каалагандай айтпайт, андыктан "Чыгаруу процессору" ал сөздөрдү фонетикалык орфография менен алмаштырат.. Менде буларды кармоо үчүн "кароо" таблицалары бар. "киргизүү процессорунда"

4. Эгерде AI маалымат базасынан ылайыктуу жооп таппаса, анда "билбейм" деп айтса болот, бирок мен муну кайра -кайра айткым келбейт. Чыныгы адамдар ар кандай жооп беришет. Ошентип, "Жалпы чыгаруу" фразалары бар таблица жана функцияны туш келди тандап алган функция бар (жана эч качан бир эле сапты эки жолу тандай албайт.)

5. Бекер "Тексттен сүйлөөгө" (TTS) кыймылдаткычы программистке сүйлөмдөрдүн айтылышынын көптөгөн варианттарын бербейт, бирок сиз үндүн бийиктигин жана фонемалардын ылдамдыгын бир аз көзөмөлдөйсүз. Бул термин "Prosody" болуп саналат. Мен маалымат базамдагы текстке кээ бир "прозодикалык" коддорду коштум, жана "Чыгаруу процессору" муну көргөндө, ар бир сөз айтылып жатканда TTS кыймылдаткычынын үнүн жана ылдамдыгын жөнгө салат.

6. Кээде ТТСти түшүнүү кыйын, ошондуктан катуу сүйлөөдөн тышкары, мен аларды компьютердин дисплейинде чоң тамгалар менен көрсөтөм. "Колдонуучу интерфейсинин" бул бөлүгү - бул баарлашуунун акыркы 6 сабын (Колдонуучунун кириши жана AI чыгышы) көрсөтүүчү жана жаңы саптар кошулган сайын өйдө жылчу сетка.

9 -кадам: Анын үстүндө иштөөнү улантыңыз

Анын үстүндө иштөөнү улантыңыз
Анын үстүндө иштөөнү улантыңыз

Менин киришим "Эч кимге айтпа"

Мен дагы деле AI тутумумдун үстүндө иштеп жатам жана ал эч качан чындап "аткарылбайт". Мен көбүрөөк мүмкүнчүлүктөрдү кошкондо, мен дагы макалаларды жазам.

Балким, менин кээ бир ойлорум сизге меникинен жакшыраак AIди курууга шыктандырат

Сунушталууда: