Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

Ndikudziwa asayansi ambiri a Data - ndipo mwina ndine m'modzi wa iwo - omwe amagwira ntchito pamakina a GPU, am'deralo kapena enieni, omwe ali mumtambo, mwina kudzera mu Jupyter Notebook kapena kudzera pamtundu wina wa chitukuko cha Python. Kugwira ntchito kwa zaka 2 monga katswiri wokonza AI / ML, ndinachita izi, ndikukonzekera deta pa seva yanthawi zonse kapena malo ogwirira ntchito, ndikuyendetsa maphunziro pamakina omwe ali ndi GPU ku Azure.

Zoonadi, tonse tinamvapo Kuphunzira Makina Azure - nsanja yapadera yamtambo yophunzirira makina. Komabe, atangoyang'ana koyamba nkhani zoyambira, zikuwoneka kuti Azure ML ikubweretserani mavuto ambiri kuposa momwe ingathetsere. Mwachitsanzo, mu chitsanzo chamaphunziro chomwe tatchula pamwambapa, maphunziro a Azure ML amayambitsidwa kuchokera ku Jupyter Notebook, pomwe zolemba zophunzitsirazo zimaganiziridwa kuti zipangidwe ndikusinthidwa ngati fayilo mu imodzi mwama cell - osagwiritsa ntchito kumalizitsa, kuwunikira mawu ndi zina. ubwino wa chilengedwe chikhalidwe chitukuko. Pachifukwa ichi, sitinagwiritse ntchito Azure ML mozama pantchito yathu kwa nthawi yayitali.

Komabe, posachedwapa ndapeza njira yoyambira kugwiritsa ntchito Azure ML bwino pantchito yanga! Kodi mukufuna kudziwa zambiri?

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

Chinsinsi chachikulu ndi Kukula kwa Visual Studio Code kwa Azure ML. Zimakupatsani mwayi wopanga zolemba zophunzitsira mwachindunji mu VS Code, kugwiritsa ntchito bwino chilengedwe - ndipo mutha kuyendetsa zolemba kwanuko, ndikungotumiza kuti mukaphunzitse gulu la Azure ML ndikudina pang'ono. Zosavuta, sichoncho?

Pochita izi, mumapeza zotsatirazi pogwiritsa ntchito Azure ML:

  • Mutha kugwira ntchito nthawi zambiri kwanuko pamakina anu mu IDE yabwino, ndi gwiritsani ntchito GPU pophunzitsira zachitsanzo. Panthawi imodzimodziyo, dziwe lazinthu zophunzitsira likhoza kusintha mosavuta ku katundu wofunikira, ndipo poika chiwerengero chochepa cha node ku 0, mukhoza kuyambitsa makina enieni "pakufunika" ngati pali ntchito zophunzitsira.
  • Mutha kutero sungani zotsatira zonse zamaphunziro pamalo amodzi, kuphatikizapo ma metric omwe apindula ndi zitsanzo zotsatila - palibe chifukwa chokhalira ndi mtundu wina wa dongosolo kapena dongosolo losungiramo zotsatira zonse.
  • Motero Anthu angapo akhoza kugwira ntchito imodzi - atha kugwiritsa ntchito gulu lomwelo la makompyuta, zoyeserera zonse zidzayikidwa pamzere, komanso amatha kuwona zotsatira za zoyeserera za wina ndi mnzake. Chitsanzo chimodzi chotere ndi kugwiritsa ntchito Azure ML pophunzitsa Kuphunzira Mwakuya, komwe m'malo mopatsa wophunzira aliyense makina enieni okhala ndi GPU, mutha kupanga gulu limodzi lomwe lidzagwiritsidwe ntchito pakati ndi aliyense. Kuphatikiza apo, tebulo lazotsatira lomwe lili ndi kulondola kwachitsanzo limatha kukhala chinthu chabwino champikisano.
  • Pogwiritsa ntchito Azure ML, mutha kuyendetsa mosavuta zoyeserera zingapo, mwachitsanzo. kukhathamiritsa kwa hyperparameter - izi zitha kuchitika ndi mizere ingapo yamakhodi; palibe chifukwa choyesera zingapo pamanja.

Ndikukhulupirira kuti ndakutsimikizirani kuti muyese Azure ML! Nayi momwe mungayambire:

Azure ML Workspace ndi Azure ML Portal

Azure ML idapangidwa mozungulira lingalirolo malo ogwira ntchito - Malo ogwirira ntchito. Deta ikhoza kusungidwa pamalo ogwirira ntchito, zoyeserera zophunzitsira zitha kutumizidwa kwa iyo, ndipo zotsatira zamaphunziro-zotsatira zoyeserera ndi zitsanzo-zimasungidwanso pamenepo. Mutha kuwona zomwe zili mkati mwa malo ogwiritsa ntchito Azure ML portal - ndipo kuchokera kumeneko mutha kuchita ntchito zambiri, kuyambira pakukweza deta mpaka kuyang'anira zoyeserera ndi kutumiza zitsanzo.

Mutha kupanga malo ogwirira ntchito kudzera pa intaneti Azure Portal (onani malangizo a sitepe ndi sitepe), kapena kugwiritsa ntchito mzere wamalamulo wa Azure CLI (malangizo):

az extension add -n azure-cli-ml
az group create -n myazml -l northeurope
az ml workspace create -w myworkspace -g myazml

Palinso zina zomwe zimagwirizana ndi malo ogwira ntchito zipangizo zamakompyuta (Lembani). Mukapanga script kuti muphunzitse chitsanzocho, mukhoza tumizani kuyesa kuti muphedwe ku malo ogwirira ntchito, ndipo tchulani werengerani chandamale - pankhaniyi, zolembazo zidzasungidwa, kukhazikitsidwa mu malo omwe akufunidwa, ndiyeno zotsatira zonse za kuyesera zidzasungidwa kumalo ogwirira ntchito kuti mufufuze ndikugwiritsanso ntchito.

Zolemba zophunzitsira za MNIST

Tiyeni tione vuto lachikale kuzindikira manambala olembedwa pamanja pogwiritsa ntchito deta ya MNIST. Momwemonso, mtsogolomu mudzatha kugwiritsa ntchito zolemba zanu zilizonse.

Pali script munkhokwe yathu train_local.py, yomwe imaphunzitsa njira yosavuta yosinthira mizere pogwiritsa ntchito laibulale ya SkLearn. Inde, ndikumvetsa kuti iyi si njira yabwino yothetsera vutoli - timagwiritsa ntchito monga chitsanzo, monga chophweka.

Cholembacho chimatsitsa koyamba data ya MNIST kuchokera ku OpenML kenako ndikugwiritsa ntchito kalasi LogisticRegression kuphunzitsa chitsanzo, ndiyeno kusindikiza kulondola kwake:

mnist = fetch_openml('mnist_784')
mnist['target'] = np.array([int(x) for x in mnist['target']])

shuffle_index = np.random.permutation(len(mist['data']))
X, y = mnist['data'][shuffle_index], mnist['target'][shuffle_index]

X_train, X_test, y_train, y_test = 
  train_test_split(X, y, test_size = 0.3, random_state = 42)

lr = LogisticRegression()
lr.fit(X_train, y_train)
y_hat = lr.predict(X_test)
acc = np.average(np.int32(y_hat == y_test))

print('Overall accuracy:', acc)

Mutha kuyendetsa script pa kompyuta yanu ndipo mumasekondi angapo mupeza zotsatira.

Kuyendetsa script mu Azure ML

Ngati tiyendetsa zolemba zophunzitsira kudzera pa Azure ML, tidzakhala ndi zabwino ziwiri:

  • Kuyendetsa maphunziro pamakompyuta osasintha, omwe nthawi zambiri amakhala opindulitsa kuposa makompyuta amderalo. Pamenepa, Azure ML yokha idzasamalira kulongedza zolemba zathu ndi mafayilo onse kuchokera m'ndandanda wamakono kupita ku chidebe cha docker, kuyika zofunikira, ndikuzitumiza kuti zichitike.
  • Lembani zotsatira ku registry imodzi mkati mwa Azure ML workspace. Kuti titengere mwayi pankhaniyi, tifunika kuwonjezera mizere ingapo palemba lathu kuti tilembe zolondola:

from azureml.core.run import Run
...
try:    
    run = Run.get_submitted_run()
    run.log('accuracy', acc)
except:
    pass

Mtundu wofananira wa script umatchedwa train_universal.py (ndizopangidwa mochenjera kwambiri kuposa momwe tafotokozera pamwambapa, koma osati zambiri). Zolemba izi zitha kuyendetsedwa kwanuko komanso pakompyuta yakutali.

Kuti muyendetse mu Azure ML kuchokera ku VS Code, muyenera kuchita izi:

  1. Onetsetsani kuti Azure Extension ilumikizidwa ndikulembetsa kwanu. Sankhani chithunzi cha Azure kuchokera kumanzere kumanzere. Ngati simunalumikizidwe, chidziwitso chidzawonekera pakona yakumanja yakumanja (ngati chonchi), podina pomwe mutha kulowa kudzera pa msakatuli. Mukhozanso dinani Ctrl-Shift-P kuti mutsegule mzere wolamula wa VS Code, ndikulemba Azure Lowani.

  2. Pambuyo pake, mu gawo la Azure (chithunzi kumanzere), pezani gawolo KUPHUNZIRA MACHINA:

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning
Apa muyenera kuwona magulu osiyanasiyana azinthu mkati mwa malo ogwirira ntchito: zida zamakompyuta, zoyeserera, ndi zina.

  1. Pitani ku mndandanda wa mafayilo, dinani pomwepa pa script train_universal.py ndi kusankha Azure ML: Thamangani ngati kuyesa ku Azure.

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

  1. Izi zidzatsatiridwa ndi zokambirana zingapo m'dera la mzere wa VS Code: tsimikizirani kulembetsa kwanu ndi malo ogwirira ntchito a Azure ML, ndikusankha. Pangani zoyeserera zatsopano:

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning
Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning
Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

  1. Sankhani kuti mupange chida chatsopano chakompyuta Pangani Makompyuta Atsopano:

    • Lembani imatsimikizira zida zamakompyuta zomwe maphunziro azichitika. Mutha kusankha kompyuta yakwanuko, kapena gulu lamtambo la AmlCompute. Ndikupangira kupanga gulu la makina owopsa STANDARD_DS3_v2, ndi chiwerengero chochepa cha makina 0 (ndipo kuchuluka kwake kungakhale 1 kapena kuposerapo, malingana ndi zilakolako zanu). Izi zitha kuchitika kudzera mu mawonekedwe a VS Code, kapena m'mbuyomu ML Portal.

    Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

  2. Kenako muyenera kusankha kasinthidwe Kuwerengera Kukonzekera, yomwe imatanthawuza magawo a chidebe chopangidwa kuti aphunzitse, makamaka, malaibulale onse ofunikira. Kwa ife, popeza tikugwiritsa ntchito Scikit Learn, timasankha SkLearn, ndiyeno ingotsimikizirani mndandanda wamalaibulale omwe akufunsidwa pokanikiza Enter. Ngati mugwiritsa ntchito malaibulale ena owonjezera, ayenera kufotokozedwa apa.

    Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning
    Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

  3. Pambuyo pake, zenera lidzatsegulidwa ndi fayilo ya JSON yofotokoza za kuyesa. Mukhoza kukonza magawo ena mmenemo, mwachitsanzo, dzina la kuyesa. Pambuyo pake dinani ulalo Tumizani Kuyesa mkati mwa fayilo iyi:

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

  1. Pambuyo popereka kuyesa kudzera mu VS Code, m'dera lazidziwitso kumanja mudzawona ulalo Azure ML Portal, komwe mungayang'anire zomwe zikuchitika komanso zotsatira za kuyesako.

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning
Pambuyo pake, mutha kuzipeza nthawi zonse m'gawoli Zoyeserera Azure ML Portal, kapena mu gawo Kuphunzira Makina Azure pamndandanda wazoyeserera:

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning

  1. Ngati pambuyo pake munakonza zosintha pama code kapena kusintha magawo, kuyesanso kudzakhala kofulumira komanso kosavuta. Mukadina kumanja pa fayilo, muwona chinthu chatsopano cha menyu Bwerezani kuthamanga komaliza - ingosankhani ndipo kuyesako kuyambika nthawi yomweyo:

Momwe mungagonjetsere mantha ndikuyamba kugwiritsa ntchito Azure Machine Learning
Mutha kupeza zotsatira zama metrics kuchokera pamayendedwe onse pa Azure ML Portal; palibe chifukwa chowajambulira.

Tsopano mukudziwa kuti kuyesa kuyesa pogwiritsa ntchito Azure ML ndikosavuta, sikupweteka, ndipo kumabwera ndi zabwino zina zosangalatsa.

Koma mwina mwaonapo kuipa kwake. Mwachitsanzo, zinatenga nthawi yaitali kuti script iyambe. Zachidziwikire, kuyika zolembazo mu chidebe ndikuzitumiza ku seva kumatenga nthawi. Ngati gululo lidachepetsedwa mpaka kukula kwa node 0, zidzatenga nthawi yochulukirapo kuti muyambe makina enieni, ndipo zonsezi zimawonekera kwambiri tikamayesa mavuto osavuta monga MNIST, omwe amathetsedwa mumasekondi pang'ono. Komabe, m'moyo weniweni, pamene maphunziro amatenga maola angapo, kapena masiku kapena masabata, nthawi yowonjezerayi imakhala yochepa, makamaka motsutsana ndi zochitika zapamwamba kwambiri zomwe gulu la computing lingapereke.

Kodi yotsatira?

Ndikukhulupirira kuti mutatha kuwerenga nkhaniyi, mutha kugwiritsa ntchito Azure ML pantchito yanu kuyendetsa zolemba, kuyang'anira zinthu zowerengera, ndi zotsatira zosungira pakati. Komabe, Azure ML ikhoza kukupatsani zabwino zambiri!

Mutha kusunga deta mkati mwa malo ogwirira ntchito, potero ndikupanga chosungira chapakati cha ntchito zanu zonse zomwe ndi zosavuta kuzipeza. Kuphatikiza apo, mutha kuyendetsa zoyeserera pogwiritsa ntchito API m'malo mwa Visual Studio Code - izi zitha kukhala zothandiza makamaka ngati mukufuna kuchita kukhathamiritsa kwa hyperparameter ndikufunika kuyendetsa script nthawi zambiri ndi magawo osiyanasiyana. Kuphatikiza apo, ukadaulo wapadera umapangidwa mu Azure ML hyper drive, yomwe imalola kusaka mwaukadaulo kwambiri komanso kukhathamiritsa kwa ma hyperparameter. Ndilankhula za zotheka izi mu positi yanga yotsatira.

Zothandiza

Kuti mudziwe zambiri za Azure ML, mutha kupeza maphunziro awa a Microsoft Phunzirani othandiza:

Source: www.habr.com

Kuwonjezera ndemanga