Azure Machine Learning: mašīnmācīšanās pakalpojumu izstrāde un to izmantošana mobilajā lietojumprogrammā. Mašīnmācīšanās manekeniem Datu analīzes un mašīnmācīšanās pakalpojumi

Pakalpojums Azure Machine Learning pašlaik ir pieejams publiskajā priekšskatījumā un ir pieejams ikvienam, kam ir Azure konts (vai vismaz izmēģinājuma piekļuve). Ja jums rodas jautājums, kāpēc es vienmēr esmu bijis tik sajūsmā par šo tehnoloģiju, apskatiet manu ierakstu, ko uzrakstīju pirms mēneša, vai lasiet tālāk par šo ziņu, kurā es jums visu pastāstīšu.

Īsāk sakot, lai veiktu prognozēšanas analītikas uzdevumus, izmantojot Azure Machine Learning, jums vienkārši jāveic šīs darbības:

  1. Lejupielādējiet vai importējiet tiešsaistē jebkuru pašreizējo vai uzkrāto datus(piemēram, jūsu klienta demogrāfiskie dati un viņa kopējie izdevumi)
  2. Veidojiet un apstipriniet modelis(piemēram, prognozējiet izmaksas, pamatojoties uz demogrāfiskajiem datiem)
  3. Izveidojiet tīmekļa pakalpojumu, kas izmanto jūsu modeļus ātrai darbībai prognozes reāllaikā (izlemiet, kādus piedāvājumus sniegt jaunam klientam, pamatojoties uz viņa demogrāfiskajiem datiem)

Azure ML pakalpojums (pazīstams arī kā Pasavas projekts) attēlo divi konceptuāli komponenti: Eksperimenti Un Tīmekļa pakalpojumi un viens izstrādes rīks ar nosaukumu ML studija. Jūs varat uzaicināt citus cilvēkus, kuriem ir konts Microsoft (Live ID), paredzēta sadarbību savā darba vidē ( darba vietas), izmantojot ML Studio, un viņiem pat nav jāmaksā par Azure abonementu, lai strādātu ar jums.

Eksperimenti var attēlot kā straumēšanas konfigurācijas ( datu plūsma) ko jūs vēlētos darīt ar savu informāciju un modeļiem. Kā Azure ML datu zinātnieks jūs koncentrējaties uz eksperimentiem, un jūs varat pavadīt visu savu laiku programmā ML Studio, veicot tikai eksperimentu pārbūvi, parametru mainīšanu, algoritmu maiņu, kritēriju apstiprināšanu, periodisku datu izmaiņu veikšanu un tā tālāk. ML Studio ir tīmekļa lietojumprogramma, un tās izskats ir līdzīgs Azure pārvaldības portālam (raksta tapšanas laikā, 2014. gada vidū). Interfeiss izskatās tīrs, jauks un labi darbojas ne tikai IE, bet arī Firefox un Chrome, lai gan ar dažām atrunām, bet šī ir tikai pirmā priekšskatījuma versija.

ML Studio ir vieta, kur sākt darbu, izlemjot, kādus datu avotus vēlaties izmantot: lejupielādētās datu kopas vai dzinējā pieejamos reāllaika datus. Lasītājs no tīmekļa lapas, OData, SQL Azure, Microsoft Azure, Hive vai Azure blobiem. Pēc tam jums, iespējams, būs jāveic dažas darbības Datu transformācijas, piemēram, grupēšana, kolonnu pārdēvēšana, sapludināšana, dublikātu likvidēšana vai ļoti noderīga binning/diskretizācijas darbība. Turklāt jūs varat izmantot citas, interesantākas transformācijas, piemēram, ierobežotus un bezgalīgus ievades atbildes filtrus ( Ierobežots un Bezgalīga ievades atbilde), kuras izmanto signālu apstrādē. Tos var arī plašāk attiecināt uz ekonomiku būtiskiem datiem, kurus var aplūkot sarežģītu viļņu veidā (piemēram, īpaši laika rindas). Tā ir daļa no darba sezonalitātes noteikšana un bieži vien ir saistīta ar mūzikas frekvencēm līdzīgu frekvenču meklēšanu šajos gadalaikos. Turklāt, ja jūs tikko sākat savu projektu un neesat īsti pārliecināts, kuras datu kolonnas iekļaut, automātiskās funkciju atlases filtri ( Funkciju izvēle) var jums noderēt, piedāvājot labu korelācijas rādītāju izlasi. Tomēr praksē turpmākajās darbībās kolonnu kopu vēlaties norādīt manuāli, lai nodrošinātu maksimālu precizitāti.

Tagad mēs pāriesim uz to, ko mēs gaidījām: reālas mašīnmācības veikšana, kas nozīmē modeļa inicializēšanu (definēšanu), apmācību ( Vilciens) modelis ar dažiem datiem, Verifikācija ( Novērtēt) modeļa veiktspēju un derīgumu un, ja viss ir kārtībā, punktu skaitu ( Rezultāts) modelis (balstoties uz to, izdarot prognozes). Azure ML piedāvā daudzus algoritmus Klasifikācijas uzdevumus, tostarp Daudzklase Un Divu šķiru lēmumu meži, lēmumu džungļi(izstrādājis Microsoft Research) Loģistiskā regresija, neironu tīkli, un Divu klašu vidējie perceptroni, Bayes Point Machine, pastiprināti lēmumu koki Un Atbalstiet vektora mašīnas (SVM). Klasterizācija izmanto standarta K-Means pieejas variantu. Regresijas ietver Bajesa lineārie, palielināti lēmumu koki, lēmumu meži, Noteikti Lineārā regresija, Neironu tīkla regresija, kārtas Un Puasona regresija. Un tas ir tikai 1. versijā.

Jūs varat izmantot noderīgu Statistikas funkcijas savos eksperimentos, tostarp parastās elementārās, piemēram, noviržu aprēķināšana. Izmēģiniet to pats, sāciet, vienkārši norādot uzdevumu Aprakstošā statistika savus datus un vizualizēt ( Vizualizēt) rezultātus (uzdevumos izmantojiet savienojuma punktus). Izbaudiet elementus boxplots iegūtajās vizualizācijās - kaut kas, kas jau sen trūkst visos Microsoft BI rīkos, pat Excel...

Viens lielisks piemērs tam, kā Azure ML jūsu eksperimentos nodrošina ārēju izpēti, ir atrodams izaicinājumu sadaļā Teksta analīze. Uzdevums Nosaukta entītijas atpazīšanaļaus apstrādāt ievadīto tekstu (sauc stāsti, piemēram, pasta adreses, drukāti situāciju apraksti vai tvīti) un izvelciet no tiem nosaukumus, automātiski klasificējot tos kā Cilvēki, vietas vai Organizācijas. Ir arī atbalsts Vowpal Wabbit projektam, ko atbalsta Yahoo un Microsoft Research. Varat to izmantot, lai pēc pieprasījuma iegūtu entītiju jaucējus. Es ceru, ka nākotnē šajā jomā redzēsim vairāk rīku un iespēju, jo ir skaidrs, ka Microsoft ir glabājis daudz zināšanu Bing.

Deep R valodas atbalsts

Turklāt jūs varat izmantot Azure ML iekšēji. Manuprāt, Azure ML pašlaik ir aprīkots ar aptuveni 410 pakotnēm, kas ir iepriekš instalētas papildus R 3.1.0 (pārsteidzoši, jaunākā versija). Starp iepakojumiem ir ggplot2(Jā!), plyr Un dplyr, automašīna, datu kopas, HMisc, MASS un visas pārējās visbiežāk izmantotās datu ieguves pakotnes. patīk rpart, nnet, izdzīvošana, boot un tā tālāk.

Ja vēlaties atrast Azure ML iekļauto pakotņu sarakstu, vienkārši izveidojiet nelielu eksperimentu, piemēram, šeit parādīto, palaidiet R kodu un saglabājiet iegūto CSV savā datorā. 1. slejā tiks parādīti visi iekļautie iepakojumi.

Ko darīt, ja jūsu iecienītākā R pakete (piem. ROCR vai nleqslv) trūkst sarakstā? Faktiski dokumentācija var būt mulsinoša. Tajā teikts, ka pašlaik nav iespējams instalēt savas pakotnes, taču dokumentācijā ir aprakstīts risinājums, kas palīdz iekļaut savu pakotni, izmantojot zip failu. Šīs saites apakšā varat atrast šīs pieejas aprakstu, kurā parādīts, kā pieteikties install.packages() izmantojot saiti uz failu, kas pārsūtīts uz uzdevumu Izpildiet R skriptu.

Manuprāt, galvenais, lai saprastu, cik svarīgi ir, lai R ir daļa no Azure ML, ir ne tikai tas, ka platforma nodrošina piekļuvi de facto statistikas un analītikas valodai (lingua-franca), bet arī tas, cik ātri un nesāpīgi tā darbojas. jūsu datu apstrādes process. Tas ir īpaši pamanāms, ņemot vērā faktu, ka pats R nav tik ērts rīks datu manipulēšanai. Tāpēc tā vietā, lai izmantotu ievērotas RODBC(iespējots) savā R skriptā, iespējams, vēlēsities apsvērt iespēju izmantot Azure ML visiem smagajiem datu apstrādes uzdevumiem (atvainojiet, fani plyr) un pārsūtiet datus uz R skriptu kā Azure ML datu kopu Datu tabula, kas kļūst pieejams kā vietējais R datu rāmis. Dati maģiski parādīsies jūsu skriptā kā objekts, ko sauc datu kopa. Varat pievienot vairākus datu avotus.

Es vēl neesmu pabeidzis veiktspējas testus, taču viss, kas var kaut kā uzlabot R veiktspēju, apstrādājot lielu datu apjomu, ir ļoti apsveicams. Turklāt šīs funkcijas izskatās kā acīmredzama mākoņdatošanas pakalpojumu sniedzēja priekšrocība salīdzinājumā ar parasto kastes risinājumu. Un es varu iedomāties, ka Microsoft izmanto vairākus trikus, lai uzlabotu veiktspēju, kad datu kopas no Azure ir saistītas ar Azure ML pakalpojumu, pat paturot prātā pašreizējo 10 GB ierobežojumu.

Izmantojot vai bez R, varat veikt darba eksperimentu, ko varat izmantot kā darba elementu savā tīmekļa lietojumprogrammā. Iedomājieties, ka tikko esat izveidojis ieteikumu sistēmu. Runājot par Azure ML noteikumiem, jums ir eksperiments, kurā tiek izmantots vērtēšanas uzdevums. Jūs definējat, kurš no ievades portiem ir jāizmanto Publicēt ievadi par jūsu tīmekļa pakalpojumu un attiecīgi to, kas būtu jāņem vērā Publicēt izvadi. Tās tiks attēlotas kā mazas zaļas un zilas lodes problēmas kontūrā. Jūs atkārtoti palaižat eksperimentu un izmantojat Studio ML, lai to publicētu kā Azure ML tīmekļa pakalpojums. Tagad varat patērēt rezultātus, izmantojot Azure ML REST API kā vienkāršu tīmekļa pakalpojumu vai OData galapunkts. Šis API piedāvā Request Response Service (RRS) sinhronai piekļuvei ar zemu latentumu prognožu veikšanai un asinhronai izpildei Pakešu izpildes pakalpojums (BES) lai pārkvalificētu modeli ar, piemēram, jūsu nākotnes svaigajiem datiem. Šis API piedāvā automātiski ģenerētu paraugkodu, ko varat vienkārši kopēt un ielīmēt izmantošanai Python, R vai C# lietojumprogrammā vai jebkur citur, jo tas viss ir balstīts uz REST un JSON.

Ir forša maza testēšanas lapa, kas ļaus ievadīt vajadzīgās vērtības jaunam pakalpojumam un veikt testa prognozi.

Pakalpojumā ir papildu funkcijas paredzēts praktiskai lietošanai, piemēram, neļaujot Microsoft automātiski atjaunināt kādu no jūsu eksperimenta komponentiem (uzdevumiem utt.), kuru mainīšana var mainīt vai pat izjaukt jūsu darbu. Pareizs risinājums Microsoft ir kaut kas tāds, ar ko nepatīk saskarties jebkuram IT speciālistam, kas atbalsta tīmekļa sistēmas. Varat pārbaudīt pakalpojuma atjauninājumus iestudējot un konfigurēt drošību, izmantojot API piekļuves atslēgu.

Cena

Cik tas viss maksā? Ņemot vērā priekšskatījuma versijas cenu, tā izskatās ļoti pievilcīga. Ir divu veidu izmaksas, stundas aprēķinu maksas ( aktīvais aprēķins stundā) un samaksa par tīmekļa pakalpojumu API zvaniem ( per-web-service API izsaukums), abi izmaksu veidi ir proporcionāli. Stundas likme ir zemāka, ja izmantojat ML Studio (0,38 ASV dolāri stundā), un nedaudz augstāka ražošanas lietošanā, izmantojot ML API pakalpojumu (0,75 ASV dolāri stundā). API zvanu izmaksas netiek ņemtas vērā, kamēr strādājat programmā ML Studio, un ražošanas laikā tās maksā 0,18 USD par 1000 prognozēm. Ja kas, tas ir interesants un ārkārtīgi vienkāršs cenu noteikšanas modelis, atšķirībā no citiem, ko Microsoft ir izmantojis. Man ir ļoti interesanti uzzināt, ko mani izstrādātāju klienti domā par lielisko iespēju efektīvi tālākpārdot Azure ML kā daļu no savas tīmekļa lietojumprogrammas ar minimālu atbalsta piepūli, pašam neveidojot visu sistēmu.

Kur sākt?

Kur sākt? Apmeklējiet vietni azure.microsoft.com, abonējiet un izveidojiet darbvietu vietnē Jaunums/Datu pakalpojumi/mašīnmācība. Pēc tam dodieties uz paneli Mērinstrumentu panelis un noklikšķiniet uz saites Pierakstieties ML Studio. Pārskatot uzdevumus, kas definēs eksperimentu, es aicinu jūs atlasīt vienu no daudzajiem piemēriem, izveidot tā kopiju un palaist to. Ja tas darbojas, veiciet iepriekš norādītās darbības, lai publicētu to kā savu pirmo tīmekļa prognožu pakalpojumu.

Protams, nepalaidiet garām mūsu gaidāmos videoklipus un rakstus par šo tēmu: kļūstiet par vietnes dalībnieku, lai saņemtu biļetenu ar daudz informācijas. Ja vēlaties ātri sākt darbu, apskatiet mūsu datu ieguves apmācību, jo īpaši moduļus par datu sagatavošanu, jo šie jēdzieni ir īpaši gadījumi, ievade Un izvades kolonnas noteikti noderēs, strādājot ar Azure ML.

Lai jums patīk mācīties mašīnmācībā!

Jūs, visticamāk, esat saskāries ar terminu “mašīnmācība” vairāk nekā vienu reizi. Lai gan to bieži izmanto kā sinonīmu mākslīgais intelekts, patiesībā mašīnmācīšanās ir viens no tās elementiem. Turklāt abi jēdzieni ir dzimuši Masačūsetsā Tehnoloģiju institūts 50. gadu beigās.

Šodien jūs katru dienu saskaraties ar mašīnmācīšanos, lai gan jūs to nezināt. Pateicoties mašīnmācības progresam, tika radīti balss asistenti Siri un Google, sejas atpazīšana Facebook un Windows 10, ieteikumi pakalpojumā Amazon, tehnoloģijas, kas neļauj robotu automašīnām ietriekties šķēršļos.

Mašīnmācīšanās sistēmas vēl ir tālu no cilvēka smadzenēm, taču tām jau ir iespaidīgi sasniegumi, piemēram, cilvēku uzvešana šahā, galda spēle Ej un poker.

Mašīnmācības attīstība pēdējos gados ir saņēmusi dramatisku stimulu, ko veicinājuši vairāki tehnoloģiski sasniegumi, pieejamās skaitļošanas jaudas pieaugums un apmācības datu pārpilnība.

Pašmācības programmatūra

Tātad, kas ir mašīnmācība? Sāksim ar to, kas tas nav. Šie nav parasti datorprogrammas, rakstīts ar roku.

Atšķirībā no tradicionālās programmatūras, kas lieliski izpilda instrukcijas, bet tai nav improvizācijas spējas, mašīnmācīšanās sistēmas būtībā programmējas pašas, izstrādājot instrukcijas pašas, apkopojot zināmo informāciju.

Klasisks piemērs ir modeļa atpazīšana. Parādiet to mašīnmācīšanās sistēmai pietiekamā daudzumā suņu attēlus ar atzīmi “suns”, kā arī kaķus, kokus un citus objektus ar atzīmi “nav suns”, un ar laiku tas sāks labi atšķirt suņus. Un šim nolūkam viņai nebūs precīzi jāpaskaidro, kā viņi izskatās.

Surogātpasta filtrs jūsu e-pasta programmā ir labs piemērs mašīnmācībai darbībā. Pēc simtiem miljonu nevēlamu un nepieciešamo ziņojumu paraugu apstrādes sistēma ir apmācīta identificēt tipiskas surogātpasta ziņojumu pazīmes. Viņa ar to netiek galā perfekti, taču dara to diezgan efektīvi.

Apmācība ar un bez skolotāja

Minēto mašīnmācības veidu sauc par uzraudzīto mācīšanos. Tas nozīmē, ka kāds algoritmu iepazīstināja ar milzīgu apmācību datu apjomu, apskatot rezultātus un pielāgojot iestatījumus, līdz tika sasniegta vēlamā precizitāte, klasificējot datus, kurus sistēma vēl nebija “redzējusi”. Tas ir tas pats, kas e-pasta programmā noklikšķināt uz pogas “nav surogātpasts”, kad filtrs nejauši pārtver vajadzīgo ziņojumu. Jo biežāk to darāt, jo precīzāks kļūst filtrs.

Tipiski uzraudzīti mācību uzdevumi ir klasifikācija un prognozēšana (vai regresijas analīze). Surogātpasts un modeļu atpazīšana ir klasifikācijas problēmas, savukārt akciju cenu prognozēšana ir klasisks regresijas piemērs.

Neuzraudzītas mācīšanās laikā sistēma izsijā milzīgus datu apjomus, uzzinot, kā izskatās “parastie” dati, lai varētu atpazīt anomālijas un slēptos modeļus. Nepārraudzīta mācīšanās ir noderīga, ja nezināt, ko tieši meklējat, un tādā gadījumā varat piespiest sistēmu jums palīdzēt.

Nepārraudzītas mācību sistēmas var atklāt modeļus milzīgos datu apjomos daudz ātrāk nekā cilvēki. Tāpēc bankas tos izmanto, lai identificētu krāpnieciskus darījumus, mārketinga speciālisti, lai identificētu klientus ar līdzīgiem atribūtiem, un drošības programmatūru, lai atpazītu ļaunprātīgas darbības tiešsaistē.

Nepārraudzītu mācību problēmu piemēri ir klasteru veidošana un asociācijas noteikumu atrašana. Pirmais tiek izmantots, jo īpaši klientu segmentēšanai, un ieteikumu izdošanas mehānismi ir balstīti uz asociācijas noteikumu meklēšanu.

Terminu vārdnīca

Mašīnmācība ir tikai mākslīgā intelekta aisberga gals. Citi ar to cieši saistīti termini ir neironu tīkli, dziļa mācīšanās un kognitīvā skaitļošana.

Neironu tīkls.Šī ir datora arhitektūra, kas imitē smadzeņu neironu struktūru; katrs mākslīgais neirons savienojas ar citiem. Neironu tīkli ir veidoti slāņos; neironi vienā slānī pārraida datus daudziem neironiem nākamajā un tā tālāk, līdz tiek sasniegts izvades slānis. Tieši šajā pēdējā slānī tīkls izsaka savus minējumus — teiksim, kāds ir šis suņa formas objekts — kopā ar atbildes ticamības novērtējumu.

Ir dažādi neironu tīklu veidi, kas jāatrisina dažādi veidi uzdevumus. Tīkli ar liels skaits slāņus sauc par dziļajiem. Neironu tīkli ir viens no svarīgākajiem mašīnmācības rīkiem, taču ne vienīgais.

Dziļa mācīšanās.Tas būtībā ir mašīnmācīšanās uz steroīdiem — izmantojot daudzslāņu (dziļus vai dziļus) tīklus, lai pieņemtu lēmumus, pamatojoties uz neprecīzu vai nepilnīgu informāciju. Deep apmācības sistēma DeepStack pagājušā gada decembrī pārspēja 11 profesionālus pokera spēlētājus, pārrēķinot stratēģiju pēc katras likmju kārtas.

Kognitīvā skaitļošana.Šo terminu uzņēmumā IBM ieviesa Watson superdatora veidotāji. IBM saskata atšķirību starp kognitīvo skaitļošanu un mākslīgo intelektu apstāklī, ka pirmie nevis aizstāj cilvēka prātu, bet gan papildina to: piemēram, tie palīdz ārstiem noteikt precīzākas diagnozes, finanšu konsultanti sniedz precīzākus ieteikumus, juristi ātrāk atrod piemērotus precedentus. utt. P.

Mašīnmācīšanās ierobežojumi

Katra mašīnmācīšanās sistēma izveido savu savienojumu modeli, kas attēlo melno kasti. Izmantojot inženiertehnisko analīzi, jūs nevarēsit precīzi noskaidrot, kā tiek veikta klasifikācija, taču tam nav nozīmes, ja vien tā darbojas.

Tomēr mašīnmācīšanās sistēma ir tikai tik laba, cik labi ir apmācības dati: ja ievadīsiet to ar “atkritumiem”, rezultāts būs atbilstošs. Ja tiek apmācīts nepareizi vai apmācības izlases lielums ir pārāk mazs, algoritms var radīt nepareizus rezultātus.

HP nokļuva nepatikšanās 2009. gadā, kad HP MediaSmart klēpjdatora tīmekļa kameras sejas atpazīšanas sistēma nespēja atpazīt afroamerikāņu sejas. Un 2015. gada jūnijā sliktas kvalitātes algoritms Google pakalpojums Fotogrāfijās divi melnādainie amerikāņi nosaukti par "gorillām".

Vēl viens piemērs ir bēdīgi slavenais Microsoft Tay Twitter robots, ar kuru tika eksperimentēts 2016. gadā: tad viņi mēģināja noskaidrot, vai mākslīgais intelekts var “izlikties” par cilvēku, mācoties no reāliem cilvēku ziņojumiem. Nepilnas dienas laikā Twitter troļļi Taju pārvērta par ārprātīgu ksenofobi – tipisku piemēru sabojātiem izglītības datiem.

***

Tāpēc, neskatoties uz visu mākslīgā intelekta radīto troksni, nav pārspīlēts teikt, ka mašīnmācība un ar to saistītās tehnoloģijas patiešām maina pasauli ap mums un tik ātri, ka tieši laikā mašīnas pilnībā apzinās sevi.

− Dens Tainans. Kas ir mašīnmācība? Programmatūra, kas iegūta no datiem. InfoWorld. 2017. gada 9. augusts

Gazprom Neft izmantos Yandex mākslīgo intelektu

Izmantojot Big Data tehnoloģijas, mašīnmācīšanos un mākslīgo intelektu, Gazprom Neft un Yandex plāno urbt akas, modelēt naftas pārstrādes procesus un optimizēt citus ražošanas procesus.

Uzņēmumu noslēgtajā līgumā ir iesaistīti Yandex speciālisti, kas veic Datu rūpnīca neatkarīga esošo tehnoloģisko risinājumu pārbaude, kopīga pētniecības un tehnoloģisko projektu izstrāde un īstenošana, zinātniskās un tehniskās informācijas, zināšanu apmaiņa un darbinieku apmācība.

Naftas un gāzes nozare ir viena no perspektīvākajām jauno tehnoloģiju izmantošanas ziņā, jo tajā ir uzkrāts liels datu apjoms un vienkāršus risinājumus optimizēt ražošanu un uzņēmējdarbību jau sen ir piemērotas. Tas rada labas iespējas gūt taustāmu efektu, ieviešot risinājumus, kuru pamatā ir mašīnmācība un mākslīgais intelekts.

Hokeja analīze pakalpojumā Azure

Krievijas uzņēmums Iceberg Sports Analytics prezentēja iceberg.hockey risinājumu, kas ieviests Microsoft Azure platformā. Tas ļauj padarīt hokeja klubu vadību efektīvāku, palielināt izredzes uzvarēt un optimizēt komandas budžeta izlietojumu.

iceberg.hockey izmanto savus algoritmus, kas īpaši izveidoti hokejam, pamatojoties uz progresīvu analīzi, mašīnmācīšanos un datorredzes tehnoloģijām. Sistēma paredzēta hokeja klubu vadītājiem un treneriem. Katrai spēlei risinājums izveido aptuveni miljonu datu rindu, izmantojot trīs videokameras, lai ik pēc sekundes desmitdaļas ierakstītu visu, kas notiek laukumā: tas ir aptuveni 500 parametri katram spēlētājam. Izstrādātājiem izdevās sasniegt augstu datu analīzes precizitāti: kļūda nav lielāka par 4%. Analīze palīdz iegūt informāciju par optimālo spēlētāju kombināciju, konkrētu sportistu, komandu un komandas spēles tehniku ​​kopumā.

Uzņēmuma klientu vidū jau ir Ņujorkas Islanders un HC Sochi, kā arī Austrijas hokeja akadēmija RedBull.

Hļinova optimizētais bankomātu pakalpojums

Banka Khlynov ir mainījusi savu bankomātu pakalpojumu, izmantojot mašīnmācīšanās pakalpojumus no Microsoft Azure mākoņa. Rezultātā banka varēja izmantot iepriekš “iesaldētos” 250 miljonus rubļu.

Tā kā bankas klientu tīkls nepārtraukti attīstās, ir nepieciešamas jaunas pieejas klientu līdzekļu uzglabāšanā un darbā ar tiem. Projekta sākumā vidējais mēneša atlikums Khlynov kartēs bija aptuveni 800 miljoni rubļu. Trešdaļa šīs naudas tika rezervēta bankomātos karšu īpašnieku izņemšanai.

Mašīnmācīšanās pakalpojumu izmantošana no Microsoft Azure mākoņa ļāva bankai samazināt rezervēto līdzekļu apjomu bankomātos līdz 16-20% no vidējā mēneša kartes atlikuma: tas palielinājās līdz 1,2 miljardiem rubļu, un rezervētā summa sasniedza 200- 230 miljoni rubļu. Atbrīvotos līdzekļus banka varēja izmantot citiem darbības uzdevumiem, jo ​​īpaši klientu kreditēšanai.

Kopīgi ar integratoru Rubicon izveidots algoritms, izmantojot mašīnmācīšanās metodes, ļāva bankai samazināt ikmēneša iekasēšanas apmeklējumu skaitu vairāk nekā 1,5 reizes. Katrs no šiem braucieniem maksā 3 tūkstošus rubļu, un par katru tūkstoti transportēto rubļu tiek piemērota komisijas maksa 0,026% apmērā.

Tuvākajā nākotnē Khlynov Bank plāno ieviest papildu prognozējošās analīzes rīkus no Microsoft Azure mākoņa produktīvu izmantošanu informācija, kas uzkrāta vairāk nekā 25 gadu laikā, strādājot ar klientiem.

MoneyCare izmanto mašīnmācīšanos, lai paredzētu aizdevumu apstiprinājumu

Neatkarīgs kredīta brokeris MoneyCare izveidoja prognozēšanas modeli, pamatojoties uz Microsoft Azure Machine Learning mākoņpakalpojumu. Risinājums ļauj novērtēt pozitīvas atbildes iespējamību no bankas uz aizdevuma pieprasījumu.

Kredīta pieteikumu labākai konvertēšanai uzņēmums nolēma samazināt personas datu apjomu līdz nepieciešamajam minimumam, kā arī izveidot modeli, kas prognozē pozitīvas bankas atbildes iespējamību. Minimālās datu kopas noteikšanu un prototipa uzbūvi MoneyCare uzticēja Columbus ekspertiem.

Izvēloties mašīnmācīšanās platformu, MoneyCare speciālisti izvēlējās mākoņpakalpojumu Azure Machine Learning, kas ļauj ātri izveidot un izvietot pilnībā funkcionējošus prognozēšanas modeļus kā analītikas risinājumus.

Projekta pirmajā posmā Azure Machine Learning tika izveidots prototipu klasifikators, kura uzdevums ir atlasīt vairāk nekā 60% aizdevuma pieteikumu ar apstiprināšanas varbūtību virs 80%. Tika izmantotas tādas metodes kā diskriminantu analīze, regresijas analīze, klasterizācija, klasifikācija, pamatojoties uz separējamību, kā arī dimensiju samazināšanas algoritmi.

Projekta otrajā posmā notika MoneyCare darbinieku apmācības darbības principi un kopīgs prototipa pilnveidošanas seminārs. Tika sniegtas konsultācijas par modeļu uzstādīšanu, tipiski uzdevumi mašīnmācība, kā arī noteica nākamās darbības, lai uzlabotu prototipu.

Murmanskas apgabala valdība dokumentu pārvaldībā izmantos mašīnmācīšanos

Sanktpēterburgas Valsts universitātes Programmēšanas tehnoloģiju katedra kopā ar uzņēmumu Digital Design pētīja iespēju izmantot mašīnmācīšanās algoritmus elektroniskajās dokumentu pārvaldības sistēmās. Pētījuma objekts bija Murmanskas apgabala valdības EDMS. Kā datubāze tika izmantoti vairāk nekā 250 tūkstoši anonimizētu oficiālās sarakstes dokumentu.

Tika pārbaudīta iespēja EDMS izmantot viedos algoritmus, kas atkārto principus neironu tīkls. Šāda tīkla galvenie uzdevumi ir noteikt dokumenta kategoriju, automātiski aizpildīt tā galvenos atribūtus, noteikt visticamākos izpildītājus, pamatojoties uz pievienotā faila teksta analīzi, un izveidot tiem instrukciju projektu.

Konstatēts, ka, izmantojot viedos algoritmus, iespējams automatizēt dokumentu šķirošanu pēc pievienoto failu satura un izveidot katrai kategorijai semantisko kodolu, meklēt līdzīgus vai identiskus dokumentus, noteikt atsevišķu dokumentu atribūtu atkarības no citiem, un pat automatizēt varbūtības modeļa izveidi atribūtu vērtību prognozēšanai. Pētījuma laikā bija iespējams sasniegt 95 procentu precizitāti dokumenta kategorijas noteikšanā pēc teksta satura. Nākamajā posmā testēšana tiks veikta šaurai Murmanskas apgabala valdības EDMS galveno lietotāju grupai, apstrādājot lielus dokumentu apjomus.


Mašīnmācība ir viena no populārākajām datorzinātņu jomām, lai gan tajā pašā laikā viena no visvairāk izvairāmajām jomām izstrādātāju vidū. Galvenais iemesls tam ir tas, ka mašīnmācības teorētiskā daļa prasa dziļu matemātisko apmācību, ko daudzi cilvēki labprātāk aizmirst uzreiz pēc universitātes studiju pabeigšanas. Bet ir jāsaprot, ka papildus teorētiskie pamati, ir arī praktiskā puse, kuru, izrādās, ir daudz vieglāk apgūt un lietot ikdienā. Šī darba mērķis ir pārvarēt plaisu starp programmētājiem un datu zinātniekiem un parādīt, ka mašīnmācības izmantošana jūsu lietojumprogrammās var būt diezgan vienkārša. Rakstā ir izklāstīta visa darbību secība, kas nepieciešama, lai izveidotu modeli automašīnas cenas prognozēšanai atkarībā no tā īpašību kopas un pēc tam izmantotu to mobilajā lietojumprogrammā operētājsistēmā Windows 10 Mobile.

Kas ir Azure ML?

Īsāk sakot, Azure Machine Learning ir:

  • mākoņrisinājums, kas ļauj konstruēt un izmantot sarežģītus mašīnmācīšanās modeļus vienkāršā un vizuālā formā;
  • ekosistēma, kas paredzēta gatavu algoritmu izplatīšanai un monetizācijai.
Plašāku informāciju par Azure ML varat atrast tālāk šajā rakstā, kā arī sekojot saitei

Kāpēc Azure ML?
Tā kā Azure Machine Learning ir viens no vienkāršākajiem mašīnmācības izmantošanas rīkiem, tādējādi novēršot šķēršļus iekļūšanai ikvienam, kurš nolemj to izmantot savām vajadzībām. Izmantojot Azure ML, jums vairs nav jābūt matemātiķim.

Mašīnmācīšanās algoritma izveides loģisks process

  1. Mērķa noteikšana. Visi mašīnmācīšanās algoritmi ir bezjēdzīgi, ja eksperimenta veikšanai nav skaidri definēts mērķis. Šajā laboratorijas darbi mērķis ir prognozēt automašīnas cenu, pamatojoties uz galalietotāja sniegto īpašību kopumu.
  2. Datu vākšana.Šajā posmā datu paraugs, kas nepieciešams tālākizglītība modeļiem. IN šajā gadījumā Tiks izmantoti dati no Kalifornijas Universitātes Mašīnmācības repozitorija.
    archive.ics.uci.edu/ml/datasets/Automobile
  3. Datu sagatavošana.Šajā posmā dati tiek sagatavoti, veidojot raksturlielumus, noņemot novirzes un sadalot paraugu apmācībā un testēšanā.
  4. Modeļa izstrāde. Modeļa izstrādes procesā tiek izvēlēts viens vai vairāki datu modeļi un atbilstošie mācīšanās algoritmi, kuriem, pēc izstrādātāja domām, jādod nepieciešamais rezultāts. Bieži vien šis process tiek apvienots ar paralēlu vairāku modeļu efektivitātes izpēti un datu vizuālu analīzi, lai atrastu jebkādus modeļus.
  5. Modeļu apmācība. Apmācības laikā mācību algoritms datu paraugā meklē slēptos modeļus, lai atrastu veidu, kā veikt prognozi. Pašu meklēšanas procesu nosaka izvēlētais modelis un mācīšanās algoritms.
  6. Modeļa novērtēšana. Pēc modeļa apmācības ir jāpārbauda tā paredzamās īpašības. Visbiežāk, lai to izdarītu, tas tiek palaists testa paraugā un tiek novērtēts iegūtais kļūdu līmenis. Atkarībā no tā un precizitātes prasībām modeli var pieņemt kā galīgo vai atkārtoti apmācīt pēc jaunu ievades raksturlielumu pievienošanas vai pat mācīšanās algoritma maiņas.
  7. Izmantojot modeli. Ja apmācītais modelis ir veiksmīgi pārbaudīts, sākas tā izmantošanas posms. Un tas ir gadījumā, kad Azure ML kļūst neaizstājams, nodrošinot visus nepieciešamos rīkus algoritmu publicēšanai, uzraudzībai un monetizācijai

Prognozējošā modeļa izveide

Atvērtajā lapā noklikšķiniet uz Sākt tūlīt.

Lai izmantotu Azure ML, ir nepieciešams aktīvs Microsoft Azure abonements. Ja jums tāds jau ir, vienkārši piesakieties Azure pārvaldības portālā, pretējā gadījumā iepriekš reģistrējiet bezmaksas izmēģinājuma kontu, noklikšķinot uz saites.

Pirmkārt, jāielādē treniņu komplekts. Lai to izdarītu, sekojiet saitei un lejupielādējiet savā datorā failu imports-85.data, kurā ir informācija par automašīnām.
Lai augšupielādētu šo failu pakalpojumā Azure ML Studio, lapas apakšā noklikšķiniet uz Jauns un atvērtajā panelī atlasiet Datu kopa un No vietējā faila. Lejupielādes izvēlnē norādiet ceļu uz lejupielādēto failu, nosaukumu un kā veidu atlasiet Vispārējs CSV fails bez galvenes (.hn.csv).

Jauna eksperimenta izveide

Lai radītu jauns eksperiments un atlasiet Jauns -> Eksperiments -> Tukšs eksperiments. Tādējādi tiks izveidota jauna eksperimenta darbvieta ar rīkjoslu labajā pusē.

Datu parauga noteikšana

Iepriekš lejupielādētajiem datiem ir jāatspoguļo kreisajā pusē esošajā sadaļā Saglabātās datu kopas. Atlasiet to un velciet to jebkurā darbvietas vietā, piemēram, tur, kur norāda bultiņa Velciet vienumus šeit.

Ņemiet vērā, ka datu avotam ir apļa formas savienojuma punkts, ko izmanto, lai to savienotu ar citiem komponentiem.

Datu sagatavošana

Izstrādājot mašīnmācīšanās modeļus, laba prakse ir pārbaudīt provizoriskos eksperimentālos rezultātus pēc katras izmaiņas. Tāpēc ar peles labo pogu noklikšķiniet uz savienojuma punkta un atlasiet Vizualizēt. Tā rezultātā parādīsies logs, kas sniedz vispārēja ideja par datiem un to izplatīšanu.

Kā redzat, paraugā ir problēma - otrajā kolonnā trūkst vērtību. Tas var radīt nevēlamu efektu apmācības procesā un būtiski pasliktināt modeļa kvalitāti. Bet, par laimi, šīs vērtības raksturo apdrošināšanas izmaksas un ir vāji saistītas ar automašīnas cenu, tāpēc tās var noņemt. Cita starpā kolonnām nav nosaukumu, kas ievērojami apgrūtina darbu ar tām.

Lai novērstu problēmu ar nosaukumiem no grupas Datu transformācija/manipulācija, pārsūtiet uz metadatu redaktora darba virsmu.

Velciet datu parauga izvadi (apakšā) uz jaunā komponenta ievadi (augšpusē), lai tos savienotu. Tagad noklikšķiniet uz tā, lai labajā pusē atvērtu iestatījumu logu. Metadatu redaktors ļauj mainīt vienas vai vairāku kolonnu metainformāciju, tostarp veidu vai nosaukumu. Atveriet kolonnu atlasītāja vedni, noklikšķinot uz Palaist kolonnu atlasītāju. Lai atlasītu visas kolonnas, laukā Begin With atlasiet Visas kolonnas, izdzēsiet atlases precizēšanas rindiņu, noklikšķinot uz "-" zīmes labajā pusē, un apstipriniet, noklikšķinot uz atzīmes.

Iestatījumu paneļa laukā Jauni kolonnu nosaukumi ievadiet jaunus kolonnu nosaukumus, atdalot tos ar komatiem, kurus var atrast failā import-85.names iepriekš norādītajā saitē. Lauka vērtībai jābūt šādai:

simbolizēšana,normalizētie zudumi,marka,degvielas veids,aspirācija,durvju skaits,virsbūves veids,piedziņas riteņi,dzinēja atrašanās vieta,riteņu bāze,garums,platums,augstums,pašmasa,dzinēja tips, cilindru skaits, dzinēja izmērs, degvielas sistēma, urbums, gājiens, kompresijas pakāpe, zirgspēki, maksimālais apgriezienu skaits, pilsētas mpg, lielceļa mpg, cena

Lai redzētu komponenta darbības rezultātu, apakšā noklikšķiniet uz Palaist un vizualizējiet metadatu redaktora izvadi iepriekš aprakstītajā veidā.

Tagad noņemsim normalizētos zaudējumus. Lai to izdarītu, velciet Project Columns no tās pašas grupas uz darbvietu, savienojiet to ar metadatu redaktoru un atveriet tās iestatījumus. Vēlreiz atlasiet rindu atlasītāju un šoreiz atlasiet visas rindas, izņemot normalizētos zudumus, padarot iestatījumus līdzīgus tiem, kas parādīti zemāk esošajā attēlā.

Palaidiet eksperimentu un vizualizējiet rezultātu, lai apstiprinātu, ka paraugā trūkst otrās kolonnas.

Diemžēl joprojām ir kolonnas, kurās trūkst vērtību. Bet to nav daudz, un tāpēc jūs varat aprobežoties tikai ar nepilnīgu līniju izmešanu. Lai to izdarītu, atlasiet Missing Value Scrubber un pievienojiet to Project Columns. Laukā Trūkstošām vērtībām mainiet vērtību uz Noņemt visu rindu. Palaidiet to, atveidojiet to un pārliecinieties, vai rindas ar tukšām vērtībām ir pazudušas.

Ir pēdējais jautājums, uz kuru jāatbild sagatavošanās posmā: vai visas īpašības ietekmē automašīnas cenu? Šajā posmā mēs varam aprobežoties ar šādu nelielu rādītāju skaitu, kuru saraksts ir sniegts zemāk. Nākotnē jūs vienmēr varat pievienot jaunus un pārbaudīt hipotēzi par to pietiekamību, salīdzinot iegūto modeļu precizitāti.

marka, virsbūves tips, riteņu bāze, dzinēja izmērs, zirgspēki, maksimālais apgriezienu skaits, lielceļa mpg, cilindru skaits, cena

Pievienojiet jaunas projekta kolonnas un atlasiet iepriekš minētās kolonnas.

Visbeidzot, nodrošiniet, lai datu sagatavošana būtu veiksmīga, veicot eksperimentu un vizualizējot rezultātu.

Sadalījuma paraugs

Tagad dati ir gatavi izmantošanai apmācības procesā. Bet iekšā mašīnmācība iespējams efekts, ko sauc par “pārkvalificēšanos” – modelis apgūst datus bez vispārināšanas. Šāda rīcība noved pie tā, ka nav iespējams adekvāti prognozēt dažādus datus. Lai risinātu šo situāciju, ir ierasts sadalīt paraugu apmācībā un pārbaudē proporcijā, kas ir tuvu 3:1. Pēdējais no tiem nekādā veidā nepiedalās mācību procesā un pēc pabeigšanas tiek izmantots, lai novērtētu prognozēšanas kļūdu. Ja šī kļūda būtiski atšķiras no kļūdas treniņu komplektā, tad tiek novērots iepriekš aprakstītais efekts.

Lai izveidotu testa paraugu, velciet Datu sadalīšanas komponentu no grupas Datu transformācija/paraugs un sadalīšana uz pēdējām projekta kolonnām. Iestatiet pirmās izvades rindas daļu uz 0,75 un pārliecinieties, vai ir iestatīts karogs Randomize Split.

Modeļu apmācība lineārā regresija

Vispirms no rīkjoslas velciet komponentus Lineārā regresija, Apmācības modelis, Vērtējuma modelis un Novērtēt modeli. Vilciena modelis ir universāla sastāvdaļa, kas ļauj apmācīt jebkuru modeli uz jebkura treniņa komplekta. Lai iestatītu mūsu īpašo gadījumu, pievienojiet pirmo (kreiso) sadalīto datu izvadi un lineārās regresijas izvadi ar atbilstošajām vilciena modeļa ieejām. Vilciena modeļa iestatījumos kā mērķa vērtību (rezultāta kolonna) norādiet cenu. Modelis tagad ir gatavs apmācībai.

Bet, papildus pašai apmācībai, ir svarīgi zināt apmācības rezultātu. Komponents Score Model ļauj aprēķināt apmācīta modeļa izvadi pēc nejaušas izlases un aprēķināt prognozēšanas rezultātu. Savienojiet Train Model izvadi, kurā ir apmācīts modelis, ar atbilstošo Score Model ievadi un ievadiet testa paraugu no otrās sadalīto datu izejas kā datu paraugu citai ievadei. Savienojiet Score Model izvadi ar jebkuru no novērtēšanas modeļa ieejām, lai aprēķinātu apmācības kvalitātes skaitliskos raksturlielumus. Rezultātā vajadzētu būt procesam, kas ir līdzīgs attēlā redzamajam.

Palaidiet modeli un vizualizējiet modeļa novērtēšanas rezultātu.

Determinācijas koeficients norāda, cik labi regresijas līnija apraksta sākotnējos datus. Vērtības, ko tas pieņem, svārstās no 0 līdz 1, kur viens atbilst absolūtai precizitātei. Mūsu gadījumā koeficients ir 82%. Tas, vai tas ir labs rezultāts, ir tieši atkarīgs no problēmas formulējuma un noteiktas kļūdas pielaides. Automašīnas cenas prognozēšanas gadījumā 82% ir lielisks rezultāts. Ja vēlaties to uzlabot, mēģiniet projekta kolonnām pievienot citas kolonnas vai izmēģiniet pavisam citu algoritmu. Piemēram, Puasona regresija. Pēdējo var panākt, vienkārši aizstājot lineārās regresijas komponentu ar Puasona komponentu. Bet interesantāka pieeja ir samontēt paralēlo apmācību no elementiem un savienot rezultātu ar otro Novērtēšanas modeļa izvadi, kas ļaus ērta forma salīdziniet abu modeļu treniņu rezultātus.

Palaidiet modeli un vizualizējiet rezultātu. Kā redzams no rezultāta, datus daudz labāk apraksta lineārās regresijas modelis, un tāpēc ir pamats to izvēlēties kā galīgo.

Ar peles labo pogu noklikšķiniet uz komponenta Train Model, kas atbilst lineārajai regresijai, un atlasiet Saglabāt kā apmācītu modeli. Tas ļaus izmantot iegūto modeli jebkuros citos eksperimentos bez nepieciešamības atkārtoti apmācīt.

Tīmekļa pakalpojuma publicēšana

Lai publicētu pakalpojumu, atlasiet komponentu Vilciena modelis, kas atbilst lineārajai regresijai, un noklikšķiniet uz Iestatīt tīmekļa pakalpojumu. Atvērtajā izvēlnē atlasiet Predictive Web Service un pagaidiet, kamēr Azure ML izveido jaunu eksperimentu, kas optimizēts pakalpojuma vajadzībām. Izdzēsiet automātiski izveidotos Web Service Input un Web Service Output komponentus — mēs tos izveidosim vēlāk pēc nelielas sagatavošanās.

Ieslēgts Šis brīdis Score Model elements atkārto visas ievades kolonnas kā izvadi un piešķir paredzamajai vērtībai nosaukumu Score Labels. Tas ir jānovērš.

Lai to izdarītu, pārvietojiet divus jau pazīstamus komponentus no rīkjoslas uz darba virsmu: Project Columns un Metadata Editor. Un savienojiet tos secībā, kas parādīta attēlā zemāk. Projekta kolonnu iestatījumos atlasiet tikai vienu kolonnu — Score Labels un, izmantojot metadatu redaktoru, pārdēvējiet to par cenu.

Visbeidzot, jums jāpievieno izveidojamā pakalpojuma ievade un izvade. Lai to izdarītu, eksperimentam pievienojiet tīmekļa pakalpojuma ievadi un tīmekļa pakalpojuma izvadi. Savienojiet pirmo ar Score Model ieeju, bet otro ar metadatu redaktora izvadi. Abu elementu iestatījumos mainiet nosaukumu attiecīgi uz “ievade” un “prognoze”.

Palaidiet modeli vēlreiz, noklikšķinot uz Palaist, un pēc validācijas pabeigšanas publicējiet pakalpojumu, noklikšķinot uz Izvietot tīmekļa pakalpojumu.

Servisa pārbaude

Pēc noklikšķināšanas uz Deploy Web Service, jūs tiksit novirzīts uz lapu ar informāciju par jaunizveidoto pakalpojumu. Saites API PALĪDZĪBAS LAPĀ satur pietiekami daudz Detalizēts apraksts ar informāciju par ienākošo un izejošo JSON pakešu saturu, kā arī konsoles lietojumprogrammas koda piemēru, kas sniedz priekšstatu par to, kā to izmantot.

Lai veiktu interaktīvu testēšanu, noklikšķiniet uz Pārbaudīt un atvērtajā logā ievadiet katra ievades parametra vērtības. Piemēram, tālāk norādītās un noklikšķiniet uz izvēles rūtiņas, lai iesniegtu pārbaudes pieprasījumu.

Audi sedans 99.8 četri 109 102 5500 30 13950

Lietojumprogrammu izstrāde

Noslēgumā apskatīsim mobilās lietojumprogrammas izstrādes procesu, izmantojot Azure ML kā aizmugures pakalpojumu. Vispirms izveidojiet jauns projekts universāla Windows lietojumprogramma. Lai to izdarītu, ar atvērtu Visual Studio 2015 atlasiet File -> New -> Project... Atvērtajā logā atveriet cilni Windows kreisajā izvēlnē un atlasiet Blank App (Universal Windows). Virsraksta laukā ievadiet AzureMLDemo un noklikšķiniet uz Labi. Ja nepieciešams pabeigts projekts var atrast vietnē GitHub.

Pēc nelielas sagatavošanās Visual Studio atvērs jaunu Universal App projektu. Pārliecinieties, vai procesora arhitektūras lauks pa labi no atkļūdošanas ir iestatīts uz x86, un labajā pusē atlasiet vienu no mobilajām virtuālajām mašīnām kā palaišanas vidi. Piemēram, Mobile Emulator 10.0.10240.0 720p 5 collas 1GB.

Tagad varat pāriet uz pašas pieteikuma rakstīšanu. Izvēlnē Solution Explorer veiciet dubultklikšķi, lai atvērtu MainPage.xaml. GUI XAML iezīmēšanas valodas aprakstīšana ir ārpus šī darba jomas, tāpēc vienkārši nomainiet sākuma un aizvēršanas tagus uz zemāk esošo kodu.