Један аспект сценарија је креирање модела машинског учења. Мора бити употребљив у стварном свету и доступан потрошачима и програмерима.
Најједноставнији и најпопуларнији начин за примену модела машинског учења је да их затворите у РЕСТ АПИ.
Са популарном библиотеком под називом ФастАПИ, то је управо оно што ћемо данас постићи.
Али, шта је ФастАПИ?
ФастАПИ Питхон веб оквир је креиран од темеља да би се искористиле предности савремених Питхон могућности.
За асинхрону, истовремену комуникацију са клијентима, придржава се АСГИ стандарда, а такође је способан да користи ВСГИ.
Крајње тачке и руте могу да користе асинхронизоване функције. Поред тога, ФастАПИ омогућава продуктивно креирање веб апликација у чистом, савременом Питхон коду са наговештеним типом.
Главни случај употребе ФастАПИ-ја је, као што име каже, креирање АПИ крајњих тачака.
Коришћење ОпенАПИ стандарда, који укључује интерактивни Сваггер УИ, или обезбеђивање података Питхон речника као ЈСОН су једноставна начина да се то постигне. Међутим, ФастАПИ није само за АПИ-је.
Може се користити за понуду стандардних веб страница користећи Јиња2 шаблонски механизам и за послуживање апликација које користе ВебСоцкетс, поред скоро свега осталог што веб оквир може да уради.
У овом чланку ћемо развити једноставан модел машинског учења, а затим ћемо користити ФастАПИ да га применимо. Почнимо.
Инсталација ФастАПИ-а и креирање првог АПИ-ја
Прво је потребна инсталација библиотеке и АСГИ сервера; или Увуицорн или Хиперцорн ће радити. Ради уношењем следеће команде у терминал:
Сада када је АПИ креиран, можете користити жељени уређивач кода и претраживати га. Направите Питхон скрипту под називом мл_модел.пи да бисте започели. Слободно можете да дате другачије име, али ради овог поста, ја ћу ову датотеку позвати као мл_модел.пи.
Да бисте креирали једноставан АПИ са две крајње тачке, морате да извршите следеће задатке:
- Увезите ФастАПИ и Увицорн библиотеке.
- Подесите инстанцу класе ФастАПИ.
- Декларисајте прву руту, која на индексној страници производи једноставан ЈСОН објекат.
- Декларисајте другу руту, која обезбеђује једноставан ЈСОН објекат са прилагођеном поруком. Параметар имена се узима директно из УРЛ-а (на пример, хттпс://127.0.0.1:8000/Јаи).
- Користите Увицорн за покретање АПИ-ја.
Имплементација ових пет фаза је приказана у следећем биту кода, тј. креирање једноставног АПИ-ја
Завршено! Хајде да одмах покренемо наш АПИ. Отворите прозор терминала поред датотеке мл модел.пи да бисте то постигли. Затим унесите следеће:
тастер Ентер. Пре него што кренемо даље, хајде да оповргнемо ову тврдњу. Прва апликација користи само име Питхон датотеке, без екстензије. Друга апликација мора имати исто име као ваша ФастАПИ инстанца.
Коришћењем -релоад, кажете АПИ-ју да желите да се аутоматски поново учитава када сачувате датотеку, а не да почне од нуле.
Сада покрените претраживач и идите на хттпс://127.0.0.1:8000; исход би требало да изгледа овако:
Сада разумете како да направите једноставан АПИ користећи ФастАПИ.
Изградња и обука модела машинског учења
Без прикупљања или анализе података, ми ћемо само обучити једноставан модел. Они нису повезани са применом модела и нису суштински за предметну тему.
Модел заснован на скупу података Ирис може се инсталирати користећи исти неуронска мрежа начин уградње.
И урадићемо управо то: преузмите Ирис датасет и обучити модел. То неће бити једноставно. За почетак направите датотеку под називом јаисмлмодел.пи.
У њему ћете урадити следеће:
- Увоз — Требаће вам панде, сцикит-РандомФорецастЦлассифиер, Леарн'с пидантиц'с БасеМодел (у следећем кораку ћете открити зашто) и јоблиб за чување и учитавање модела.
- Декларисајте класу ИрисСпециес која наслеђује основни модел. Ова класа садржи само поља потребна за предвиђање једне врсте цвећа (више о томе у следећем одељку)
- Направите класу. ИрисМодел је алат за обуку и предвиђање модела.
- Декларисајте метод под називом _траин модел унутар ИрисМодел-а. Користи се за обуку модела коришћењем технике Рандом Форестс. Обучени модел се враћа процедуром.
- Објавите предвиђену функцију врсте унутар ИрисМодел-а. Користи се за предвиђање на основу 4 улазна фактора (мерења цветова). Алгоритам враћа и прогнозу (врста цвећа) и вероватноћу предвиђања.
- Промените конструктор у ИрисМодел-у тако да учита Ирис скуп података и обучи модел ако недостаје у фасцикли. Ово решава проблем сталног обучавања нових модела. Јоблиб библиотека се користи за учитавање и чување модела.
Evo celog koda:
Надам се да су горња листа и коментари олакшали разумевање иако је ово била велика количина кода за креирање. Сада када је овај модел развијен, хајде да објавимо његове могућности предвиђања преко а РЕСТ АПИ.
Израда пуног РЕСТ АПИ-ја
Вратите се у датотеку мл_модел.пи и обришите све податке. Шаблон ће бити у суштини исти као што сте имали раније, али треба да почнемо испочетка са празним фајлом.
Овај пут ћете дефинисати само једну крајњу тачку, а то је она која се користи за одређивање врсте цвета. ИрисМодел.предицт специес(), који је декларисан у претходном одељку, позива ова крајња тачка да изврши предвиђање.
Тип захтева је друга велика промена. Да бисте пренели параметре у ЈСОН-у, а не у УРЛ-у, препоручује се да користите ПОСТ када користите Машина учење АПИ -ји.
Горња реченица је можда звучала као бесмислица ако сте а научник података, али то је у реду. Да бисте дизајнирали и применили моделе, не морате нужно бити стручњак за ХТТП захтеве и РЕСТ АПИ-је.
Задаци за мл модел.пи су мали и једноставни:
- Морате да увезете следеће из претходно креиране датотеке јаимлмодел.пи: увицорн, ФастАПИ, ИрисМодел и ИрисСпециес.
- Креирајте инстанце ФастАПИ-а и ИрисМодел-а.
- Декларисајте функцију на хттпс://127.0.0.1:8000/предицт да бисте направили предвиђања.
- Метода ИрисМодел.предицт специес() прима објекат типа ИрисСпециес, трансформише га у речник, а затим га враћа. Поврати су очекивана класа и предвиђена вероватноћа.
- Користите увицорн да извршите АПИ.
Још једном, ево целог кода датотеке заједно са коментарима:
То је све што треба да урадите. У следећем кораку, хајде да тестирамо АПИ.
Тестирање АПИ-ја
Поново унесите следећи ред у Терминал да бисте извршили АПИ: увицорн мл_модел:апп –релоад
Овако се појављује страница са документацијом:
То је то за данас. У делу после овога, да закључимо.
Zakljucak
Данас сте научили шта је ФастАПИ и како да га користите, користећи и једноставан пример АПИ-ја и једноставан пример машинског учења. Такође сте научили како да креирате и прегледате АПИ документацију, као и како да је тестирате.
То је много за један комад, па немојте бити изненађени ако је потребно неколико читања да бисте правилно разумели.
Срећно кодирање.
Ostavite komentar