Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

Na san masana kimiyyar bayanai da yawa - kuma ni mai yiwuwa ni kaina ɗaya ne - waɗanda ke aiki akan injin GPU, na gida ko kama-da-wane, waɗanda ke cikin gajimare, ko dai ta hanyar Littafin Rubutun Jupyter ko ta wani nau'in yanayin ci gaban Python. Yin aiki na shekaru 2 a matsayin ƙwararren mai haɓaka AI / ML, na yi daidai wannan, yayin da nake shirya bayanai akan uwar garken yau da kullun ko wurin aiki, da kuma gudanar da horo akan na'ura mai mahimmanci tare da GPU a Azure.

Tabbas, duk mun ji labarin Koyon Injin Azure - wani dandamali na girgije na musamman don koyon inji. Koyaya, bayan kallon farko a abubuwan gabatarwa, Da alama Azure ML zai haifar muku da ƙarin matsaloli fiye da yadda yake warwarewa. Misali, a cikin koyawan da aka ambata a sama, an ƙaddamar da horarwa akan Azure ML daga Jupyter Notebook, yayin da rubutun horon da kansa aka ba da shawarar ƙirƙira da gyara shi azaman fayil ɗin rubutu a ɗayan sel - alhalin ba amfani da kammalawa ta atomatik ba, syntax. haskakawa, da sauran fa'idodin yanayin ci gaba na yau da kullun. Saboda wannan dalili, ba mu daɗe da amfani da Azure ML a cikin aikinmu ba.

Koyaya, kwanan nan na gano hanyar fara amfani da Azure ML yadda ya kamata a cikin aikina! Kuna sha'awar cikakkun bayanai?

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

Babban sirrin shine Kayayyakin Code kari don Azure ML. Yana ba ku damar haɓaka rubutun horo daidai a cikin VS Code, yin cikakken amfani da yanayin - kuma kuna iya gudanar da rubutun a cikin gida sannan kawai aika shi zuwa horo a cikin gungu na Azure ML tare da dannawa kaɗan. Dace, ko ba haka ba?

Yin haka, kuna samun fa'idodi masu zuwa ta amfani da Azure ML:

  • Kuna iya aiki mafi yawan lokaci a gida akan injin ku a cikin IDE mai dacewa, kuma yi amfani da GPU kawai don horar da samfuri. A lokaci guda, tafkin albarkatun horarwa na iya daidaitawa ta atomatik zuwa nauyin da ake buƙata, kuma ta saita mafi ƙarancin adadin nodes zuwa 0, zaku iya fara injin kama-da-wane ta atomatik "a kan buƙata" a gaban ayyukan horo.
  • ka may adana duk sakamakon koyo wuri guda, ciki har da ma'aunin da aka samu da kuma samfurori da aka samo - babu buƙatar samar da wani nau'i na tsarin ko tsari don adana duk sakamakon.
  • Kamar wancan Mutane da yawa za su iya aiki a kan wannan aikin - za su iya amfani da gungu na kwamfuta iri ɗaya, duk gwaje-gwajen za a yi layi, kuma za su iya ganin sakamakon gwajin juna. Ɗayan irin wannan yanayin shine amfani da Azure ML wajen koyar da zurfafa koyolokacin da maimakon baiwa kowane ɗalibi injin kama-da-wane tare da GPU, zaku iya ƙirƙirar tari ɗaya wanda kowa zai yi amfani da shi a tsakiya. Bugu da kari, babban tebur na sakamako tare da daidaiton ƙira na iya aiki azaman babban abin gasa.
  • Tare da Azure ML, zaku iya gudanar da jerin gwaje-gwaje cikin sauƙi, misali, don hyperparameter ingantawa - ana iya yin wannan tare da ƴan layin code, babu buƙatar gudanar da jerin gwaje-gwaje da hannu.

Ina fatan na shawo ku gwada Azure ML! Ga yadda ake farawa:

  • Tabbatar kun shigar Kayayyakin aikin hurumin kallo, da kari Shigar Azure и AzureML
  • Rufe ma'ajiyar https://github.com/CloudAdvocacy/AzureMLStarter - yana ƙunshe da wasu lambar demo don horar da ƙirar ƙira da lambobi da hannu akan saitin bayanai na MNIST.
  • Bude ma'ajiyar cloned a cikin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kaya) a cikin Kayayyakin Kayayyakin Kayayyakin Kaya.
  • Ci gaba da karatu!

Azure ML Workspace da Azure ML Portal

An tsara Azure ML a kusa da ra'ayi yankin aiki - filin aiki. Ana iya adana bayanai a cikin filin aiki, ana aika gwaje-gwaje zuwa gare shi don horarwa, ana kuma adana sakamakon horo a can - ma'auni da samfurori da suka haifar. Kuna iya ganin abin da ke cikin filin aiki ta hanyar Azure ML portal - kuma daga can za ku iya aiwatar da ayyuka da yawa, kama daga loda bayanai zuwa sa ido kan gwaje-gwaje da tura samfura.

Kuna iya ƙirƙirar wurin aiki ta hanyar haɗin yanar gizo Azure Portal (duba.) umarnin mataki-mataki), ko amfani da layin umarni na Azure CLI (umarnin):

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

Hakanan an haɗa su da filin aiki wasu albarkatun kwamfuta (Ƙidaya). Da zarar kun ƙirƙiri rubutun don horar da ƙirar, zaku iya aika gwaji don kisa zuwa wurin aiki, kuma ƙayyade lissafta manufa - a wannan yanayin, za a tattara rubutun, a gudanar da shi a cikin yanayin da ake so, sannan kuma za a adana duk sakamakon gwajin a cikin wurin aiki don ƙarin bincike da amfani.

Rubutun koyo don MNIST

Yi la'akari da matsalar gargajiya Gane lambar lambobi da hannu ta amfani da saitin bayanan MNIST. Hakanan, a nan gaba, zaku iya gudanar da kowane rubutun horonku.

Akwai rubutun a ma'ajiyar mu train_local.py, wanda muke horar da mafi sauƙin tsarin koma baya na layi ta amfani da ɗakin karatu na SkLearn. Tabbas, na fahimci cewa wannan ba shine hanya mafi kyau don magance matsalar ba - muna amfani da shi a matsayin misali, a matsayin mafi sauƙi.

Rubutun ya fara zazzage bayanan MNIST daga OpenML sannan yayi amfani da aji LogisticRegression don horar da samfurin, sannan buga daidaiton sakamakon:

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)

Kuna iya gudanar da rubutun akan kwamfutarka kuma ku sami sakamakon cikin daƙiƙa biyu.

Gudanar da rubutun a cikin Azure ML

Idan muka gudanar da rubutun horo ta hanyar Azure ML, za mu sami manyan fa'idodi guda biyu:

  • Gudanar da horo a kan albarkatun kwamfuta na sabani, wanda, a matsayin mai mulkin, ya fi amfani fiye da kwamfutar gida. A lokaci guda, Azure ML da kanta za ta kula da tattara rubutun mu tare da duk fayiloli daga kundin adireshi na yanzu a cikin kwandon docker, shigar da abubuwan dogaro da ake buƙata, da aika shi don aiwatarwa.
  • Rubuta sakamako zuwa rajista guda ɗaya a cikin sararin aikin Azure ML. Don cin gajiyar wannan fasalin, muna buƙatar ƙara layin lamba biyu zuwa rubutun mu don yin rikodin daidaitattun sakamakon:

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

Ana kiran daidai sigar rubutun train_universal.py (yana da ɗan wayo fiye da yadda aka rubuta a sama, amma ba yawa). Ana iya gudanar da wannan rubutun a cikin gida da kuma a kan albarkatun kwamfuta mai nisa.

Don gudanar da shi a cikin Azure ML daga lambar VS, kuna buƙatar yin haka:

  1. Tabbatar cewa an haɗa Extension na Azure zuwa biyan kuɗin ku. Zaɓi gunkin Azure daga menu na hagu. Idan ba a haɗa ku ba, sanarwa za ta bayyana a kusurwar dama ta ƙasa (kamar wannan), ta danna abin da za ka iya shiga ta browser. Hakanan zaka iya danna Ctrl-Shift-P don kiran layin umarni na Code VS, kuma buga Shigar Azure.

  2. Bayan haka, a cikin sashin Azure (alama a hagu), nemo sashin KOYA KOYA:

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure
Anan ya kamata ku ga ƙungiyoyin abubuwa daban-daban a cikin filin aiki: albarkatun kwamfuta, gwaje-gwaje, da sauransu.

  1. Je zuwa jerin fayiloli, danna dama akan rubutun train_universal.py kuma zaɓi Azure ML: Gudu azaman gwaji a cikin Azure.

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

  1. Wannan zai biyo bayan jerin maganganu a cikin layin layin umarni na Code VS: tabbatar da biyan kuɗi da filin aikin Azure ML da kuke amfani da su, kuma zaɓi. Ƙirƙiri sabon gwaji:

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure
Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure
Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

  1. Zaɓi don ƙirƙirar sabon kayan lissafi Ƙirƙiri Sabon Lissafi:

    • Ƙidaya yana ƙayyade albarkatun lissafin abin da horo zai gudana. Kuna iya zaɓar kwamfutar gida, ko gunkin girgije na AmlCompute. Ina ba da shawarar ƙirƙirar gungu na injuna masu daidaitawa STANDARD_DS3_v2, tare da mafi ƙarancin adadin injuna na 0 (kuma mafi girman 1 ko fiye, dangane da abubuwan sha'awar ku). Ana iya yin wannan ta hanyar haɗin VS Code, ko a baya ta hanyar ML Portal.

    Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

  2. Na gaba, kuna buƙatar zaɓar tsari Ƙirƙiri Kanfigareshan, wanda ke bayyana ma'auni na kwandon da aka yi don horarwa, musamman, duk ɗakunan karatu masu mahimmanci. A cikin yanayinmu, tunda muna amfani da Scikit Learn, mun zaɓi SkLearn, sannan kawai tabbatar da lissafin dakunan karatu da aka tsara ta latsa Shigar. Idan kuna amfani da kowane ƙarin ɗakunan karatu, dole ne a ƙayyade su anan.

    Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure
    Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

  3. Wannan zai buɗe taga tare da fayil ɗin JSON da ke kwatanta gwajin. A ciki, zaku iya gyara wasu sigogi - alal misali, sunan gwajin. Bayan haka danna mahadar Gabatar da Gwaji dama cikin wannan fayil:

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

  1. Bayan nasarar ƙaddamar da gwaji ta hanyar VS Code, a gefen dama na yankin sanarwar, za ku ga hanyar haɗi zuwa Azure ML Portal, inda za ku iya bin matsayi da sakamakon gwajin.

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure
Bayan haka, koyaushe kuna iya samunsa a cikin sashin Gwaje-gwajen Azure ML Portal, ko a cikin sashe Koyon Injin Azure a cikin jerin gwaje-gwaje:

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure

  1. Idan bayan haka kun yi wasu gyare-gyare zuwa lambar ko canza sigogi, sake kunna gwajin zai zama da sauri da sauƙi. Ta danna dama akan fayil, zaku ga sabon abun menu Maimaita gudu na ƙarshe - kawai zaɓi shi, kuma gwajin zai fara nan da nan:

Yadda ake shawo kan tsoro kuma fara amfani da Koyon Injin Azure
Kullum kuna iya samun sakamakon awo daga duk ƙaddamarwa akan tashar Azure ML, babu buƙatar rubuta su.

Yanzu kun san cewa gudanar da gwaje-gwaje tare da Azure ML mai sauƙi ne kuma mara zafi, kuma kuna samun fa'idodi da yawa a cikin yin hakan.

Amma kuma kuna iya ganin rashin amfani. Misali, an ɗauki lokaci mai tsawo don gudanar da rubutun. Tabbas, tattara rubutun a cikin akwati da tura shi akan uwar garken yana ɗaukar lokaci. Idan a lokaci guda gungu ya yanke zuwa girman nodes 0, zai ɗauki ƙarin lokaci don fara injin kama-da-wane, kuma duk wannan yana da kyau sosai idan muka gwada ayyuka masu sauƙi kamar MNIST, waɗanda aka warware a cikin ƴan daƙiƙa kaɗan. . Koyaya, a rayuwa ta gaske, lokacin da horo ya ɗauki awoyi da yawa, ko ma kwanaki ko makonni, wannan ƙarin lokacin ya zama maras muhimmanci, musamman a kan tushen mafi girman aikin da gungu na kwamfuta zai iya bayarwa.

Abin da ke gaba?

Ina fatan cewa bayan karanta wannan labarin, za ku iya kuma za ku yi amfani da Azure ML a cikin aikinku don gudanar da rubutun, sarrafa albarkatun kwamfuta, da kuma adana sakamakon tsakiya. Koyaya, Azure ML na iya ba ku ƙarin fa'idodi!

A cikin filin aiki, za ku iya adana bayanai, ta haka ne za ku ƙirƙiri ma'auni mai mahimmanci don duk ayyukanku, wanda ke da sauƙin shiga. Bugu da kari, zaku iya gudanar da gwaje-gwaje ba daga Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kaya ba, amma ta amfani da API - wannan na iya zama da amfani musamman idan kuna buƙatar aiwatar da haɓaka hyperparameter kuma kuna buƙatar gudanar da rubutun sau da yawa tare da sigogi daban-daban. Bugu da ƙari, an gina fasaha ta musamman a cikin Azure ML hyper drive, wanda ke ba ka damar yin bincike mai zurfi da haɓaka hyperparameters. Zan yi magana game da waɗannan yuwuwar a cikin rubutu na gaba.

Albarkatu masu Amfani

Don ƙarin koyo game da Azure ML, kuna iya samun waɗannan darussan Microsoft Koyi masu taimako:

source: www.habr.com

Add a comment