Azure Machine Learning: makine öğrenimi hizmetlerinin geliştirilmesi ve bunların mobil uygulamada kullanımı. Aptallar için makine öğrenimi Veri analizi ve makine öğrenimi hizmetleri

Azure Machine Learning hizmeti şu anda genel önizleme aşamasındadır ve Azure hesabı (veya en azından deneme erişimi) olan herkesin kullanımına açıktır. Bu teknoloji konusunda neden bu kadar heyecanlandığımı merak ediyorsanız, bir ay önce yazdığım yazıya göz atın veya size her şeyi anlatacağım bu yazının devamını okuyun.

Kısacası Azure Machine Learning kullanarak tahmine dayalı analiz görevlerini gerçekleştirmek için şu adımları uygulamanız yeterlidir:

  1. Mevcut veya birikmiş herhangi bir şeyi çevrimiçi olarak indirin veya içe aktarın veri(örneğin, müşterinizin demografik bilgileri ve toplam harcamaları)
  2. Oluşturun ve doğrulayın modeli(örneğin maliyetleri demografiye dayalı olarak tahmin etmek)
  3. Hızlı performans sergilemek için modellerinizi kullanan bir web hizmeti oluşturun tahminler gerçek zamanlı olarak (yeni bir müşteriye demografisine göre hangi tekliflerin sunulacağına karar verin)

Azure ML Hizmeti (ayrıca Passau projesi) iki kavramsal bileşenle temsil edilir: Deneyler Ve Ağ hizmetleri ve adı verilen bir geliştirme aracı ML Stüdyosu. sahip olan diğer kişileri davet edebilirsiniz. hesap Microsoft (Live ID), işbirliğiçalışma ortamınızda ( çalışma alanları) ML Studio'yu kullanıyorlar ve sizinle çalışmak için Azure aboneliği için ödeme yapmalarına bile gerek kalmıyor.

Deneyler akış yapılandırmaları olarak temsil edilebilir ( veri akışı) bilgileriniz ve modellerinizle ne yapmak istediğinizi belirtin. Bir Azure ML veri bilimcisi olarak odak noktanız deneylerdir ve ML Studio'da tüm zamanınızı deneyleri yeniden oluşturmak, parametreleri değiştirmek, algoritmaları değiştirmek, kriterleri doğrulamak, verilerde düzenli aralıklarla değişiklik yapmak vb. dışında hiçbir şey yapmadan geçirebilirsiniz. ML Studio bir web uygulamasıdır ve Azure yönetim portalına benzer (bu yazının yazıldığı sırada, 2014 ortası). Arayüz temiz, hoş görünüyor ve yalnızca IE'de değil, aynı zamanda Firefox ve Chrome'da da iyi çalışıyor, ancak bazı çekincelerle birlikte, ancak bu yalnızca ilk önizleme sürümü.

ML Studio, hangi veri kaynaklarını kullanmak istediğinize karar vererek çalışmanıza başladığınız yerdir: indirdiğiniz veri kümeleri veya motor aracılığıyla sunulan canlı veriler Okuyucu bir web sayfasından, OData, SQL Azure, Microsoft Azure, Hive veya Azure bloblarından. O zaman biraz yapmanız gerekebilir Veri Dönüşümleriörneğin, sütunları gruplama, yeniden adlandırma, birleştirme, kopyaları ortadan kaldırma veya çok yararlı gruplama/ayrıklaştırma işlemi. Ek olarak, sonlu ve sonsuz girdi yanıtı filtreleri gibi daha ilginç dönüşümleri de kullanabilirsiniz ( Sonlu Ve Sonsuz Giriş Yanıtı), sinyal işlemede kullanılır. Ayrıca karmaşık dalgalar şeklinde görülebilen ekonomiyle ilgili verilere daha geniş bir şekilde uygulanabilirler (örneğin, özellikle Zaman serisi). Bu işin bir parçası mevsimselliğin belirlenmesi ve genellikle bu mevsimlerdeki müzikal frekanslara benzer frekansların aranmasıyla ilişkilendirilir. Ayrıca, projenize yeni başlıyorsanız ve hangi veri sütunlarını ekleyeceğinizden tam olarak emin değilseniz, otomatik özellik seçimi filtreleri ( Öznitelik Seçimi) size iyi bir korelasyon göstergeleri seçkisi sunarak faydalı olabilir. Ancak pratikte sonraki adımlarda maksimum doğruluk için sütun ayarını manuel olarak belirlemek isteyeceksiniz.

Şimdi beklediğimiz şeye geçeceğiz: gerçek Makine Öğrenimi yapmak - bu, bir modeli başlatmak (tanımlamak), Eğitim ( Tren) bazı verileri içeren model, Doğrulama ( Değerlendirmek) model performansı ve geçerliliği ve her şey yolundaysa Puan ( Gol) modeli (buna dayanarak tahminlerde bulunmak). Azure ML, aşağıdakiler için birçok algoritma sunar: Sınıflandırmalar dahil olmak üzere görevler Çok sınıflı Ve İki Sınıflı Karar Ormanları, Karar Ormanları(Microsoft Araştırma tarafından geliştirilmiştir) Lojistik Regresyon, Sinir Ağları, Ve İki Sınıflı Ortalamalar Algılayıcılar, Bayes Nokta Makinesi, Güçlendirilmiş Karar Ağaçları Ve Vektör Makinelerini (SVM) Destekleyin. Kümeleme standart K-Means yaklaşımının bir varyasyonunu kullanır. Regresyonlar katmak Bayesian Doğrusal, Artırılmış Karar Ağaçları, Karar Ormanları, Kesinlikle Doğrusal Regresyon, Sinir Ağı Regresyon, Sıralı Ve Poisson Regresyon. Ve bu sadece sürüm 1'de.

Faydalı kullanabilirsiniz İstatistiksel sapmaların hesaplanması gibi yaygın temel deneyler de dahil olmak üzere deneylerindeki işlevler. Kendiniz deneyin; görevi belirterek başlayın Tanımlayıcı istatistikler verileriniz ve Visualize ( Görselleştir) sonuçlar (görevlerde bağlantı noktalarını kullanın). Elementlerin tadını çıkarın kutu grafikleri ortaya çıkan görselleştirmelerde - tüm Microsoft BI araçlarında, hatta Excel'de bile uzun süredir eksik olan bir şey...

Azure ML'nin deneylerinize harici keşifleri nasıl getirdiğine dair harika bir örneği zorluklar bölümünde bulabilirsiniz Metin Analizi. Görev Adlandırılmış Varlık Tanıma giriş metnini (adlandırılan) işlemenize olanak tanır hikayelerörneğin posta adresleri, durumların yazılı açıklamaları veya tweet'ler) ve bunlardan adlandırılmış terimleri çıkararak bunları otomatik olarak şu şekilde sınıflandırın: İnsanlar, Yerler veya Organizasyonlar. Yahoo ve Microsoft Research tarafından desteklenen Vowpal Wabbit projesine de destek var. Talep üzerine varlıklar için karmalar elde etmek için bunu kullanabilirsiniz. Microsoft'un Bing'de depolanan bilgi zenginliğine sahip olduğu açık olduğundan, gelecekte bu alanda daha fazla araç ve yetenek görmeyi bekliyorum.

Derin R dil desteği

Üstelik Azure ML'yi dahili olarak kullanabilirsiniz. Bana göre Azure ML şu anda R 3.1.0'ın üzerine önceden yüklenmiş yaklaşık 410 paketle birlikte geliyor (şaşırtıcı bir şekilde, En son sürüm). Paketler arasında var ggplot2(Evet!), kat Ve dplyr, araba, veri kümeleri, HMisc, MASS ve en sık kullanılan diğer tüm veri madenciliği paketleri. beğenmek rpart, nnet, hayatta kalma, önyükleme ve benzeri.

Azure ML'ye dahil edilen paketlerin bir listesini bulmak istiyorsanız, burada gösterdiğim gibi küçük bir deneme oluşturmanız, biraz R kodu çalıştırmanız ve ortaya çıkan CSV'yi bilgisayarınıza kaydetmeniz yeterlidir. Sütun 1, dahil olan tüm paketleri gösterecektir.

En sevdiğiniz R paketiniz (örn. ROCR veya nleqslv) listede eksik mi? Aslında belgeler kafa karıştırıcı olabilir. Şu anda kendi paketlerinizi kurmanın bir yolu olmadığı söyleniyor, ancak belgelerde zip dosyası kullanarak kendi paketinizi eklemenize yardımcı olacak bir geçici çözüm açıklanıyor. Bu yaklaşımın nasıl uygulanacağını gösteren bir açıklamayı bu bağlantının alt kısmında bulabilirsiniz. install.packages() bir göreve aktarılan dosyanın bağlantısını kullanırken R Komut Dosyasını yürütün.

Bana göre, R'nin Azure ML'nin bir parçası olmasının önemini anlamanın anahtarı, platformun yalnızca fiili istatistik ve analitik diline (lingua-franca) erişim sağlaması değil, aynı zamanda ne kadar hızlı ve ağrısız olduğudur. verilerinizin işlenmesi süreci. R'nin verileri işlemek için o kadar da uygun bir araç olmadığı gerçeği göz önüne alındığında, bu özellikle dikkat çekicidir. Yani saygı duyulanı kullanmak yerine RODBC(etkin) R betiğinizde, tüm ağır veri işleme görevleriniz için Azure ML'yi kullanmayı düşünebilirsiniz (üzgünüm hayranlar) kat) ve verileri R betiğine Azure ML Veri Kümesi olarak aktarın Veri tablosu, yerel bir R veri çerçevesi olarak kullanılabilir hale gelir. Veriler, betiğinizin içinde sihirli bir şekilde adı verilen bir nesne olarak görünecektir. veri kümesi. Birden fazla veri kaynağı ekleyebilirsiniz.

Performans testlerimi henüz bitirmedim, ancak büyük miktarda veriyi işlerken R'nin performansını bir şekilde artırabilecek her şey memnuniyetle karşılanacaktır. Ayrıca bu özellikler, geleneksel kutulu çözüme kıyasla bir bulut sağlayıcının bariz bir avantajı gibi görünüyor. Şu anda 10 GB sınırını göz önünde bulundurarak, Azure'daki veri kümeleri Azure ML hizmetine bağlandığında Microsoft'un performansı artırmak için bir dizi hile kullandığını hayal edebiliyorum.

R olsun veya olmasın, web tabanlı uygulamanızda çalışan bir yapı taşı olarak kullanabileceğiniz bir çalışma denemesine sahip olabilirsiniz. Bir öneri sistemi oluşturduğunuzu hayal edin. Azure ML koşullarında Puanlama görevi kullanan bir denemeniz var. Giriş bağlantı noktalarından hangisinin kullanılması gerektiğini tanımlarsınız. Girişi Yayınla web hizmetiniz için ve buna göre nelere dikkat edilmesi gerektiği Çıktıyı Yayınla. Sorunun ana hatlarında küçük yeşil ve mavi maddeler halinde sunulacaklar. Denemenizi yeniden çalıştırırsınız ve şu şekilde yayınlamak için Studio ML'yi kullanırsınız: Azure ML Web Hizmeti. Artık sonuçları şu şekilde tüketebilirsiniz: Azure ML REST API'si basit bir web hizmeti olarak veya OData uç noktası. Bu API şunları sunar: İstek Yanıt Hizmeti (RRS) tahminleri gerçekleştirmek için düşük gecikme süresiyle eşzamanlı erişim ve eşzamansız yürütme için Toplu Yürütme Hizmeti (BES) modeli gelecekteki yeni verilerinizle yeniden eğitmek için. Bu API, Python, R veya C# uygulamasında veya başka herhangi bir yerde kullanmak üzere kolayca kopyalayıp yapıştırabileceğiniz, otomatik olarak oluşturulmuş örnek kod sunar; çünkü tamamı REST ve JSON tabanlıdır.

Yeni bir hizmet için gerekli değerleri girmenize ve bir test tahmini yapmanıza olanak sağlayacak harika bir küçük test sayfası var.

Hizmet var Ek fonksyonlar pratik kullanıma yöneliktir; örneğin, Microsoft'un denemenizin herhangi bir bileşenini (görevleri vb.) otomatik olarak güncellemesini engellemek, hangilerinin çalışmanızı değiştirebileceğini, hatta bozabileceğini değiştirmek. Doğru çözüm Microsoft, web sistemlerini destekleyen herhangi bir BT uzmanının uğraşmaktan nefret ettiği bir şeydir. Hizmet güncellemelerini hazırlamada test edebilir ve bir API erişim anahtarı aracılığıyla güvenliği yapılandırabilirsiniz.

Fiyat

Bütün bunların maliyeti ne kadar? Önizleme sürümünün fiyatlandırması göz önüne alındığında bu oldukça cazip görünüyor. İki tür maliyet vardır; saatlik hesaplama ücretleri ( saat başına etkin işlem) ve web hizmeti API çağrıları için ödeme ( web hizmeti başına API çağrısı), her iki maliyet türü de orantılıdır. Saatlik ücret, ML Studio'yu kullanırken daha düşük (0,38 ABD doları/saat) ve ML API Hizmeti aracılığıyla üretim kullanımında biraz daha yüksektir (0,75 ABD doları/saat). API çağrı maliyetleri, ML Studio'da çalışırken hesaba katılmaz ve üretim kullanımı sırasında 1000 tahmin başına 0,18 ABD dolarına mal olur. Aksine, bu, Microsoft'un kullandığı diğerlerinden farklı olarak ilginç ve son derece basit bir fiyatlandırma modelidir. Geliştirici müşterilerimin, Azure ML'yi kendi web uygulamanızın bir parçası olarak minimum destek çabasıyla, tüm sistemi kendiniz oluşturmanıza gerek kalmadan etkili bir şekilde yeniden satmaya yönelik harika fırsat hakkında ne düşündüğünü duymak beni son derece ilgilendiriyor.

Nereden başlamalı?

Nereden başlamalı? azure.microsoft.com adresini ziyaret edin, abone olun ve şu adreste bir çalışma alanı oluşturun: Yeni/Veri Hizmetleri/Makine Öğrenimi. Daha sonra panele gidin Gösterge Paneli ve bağlantıya tıklayın ML Studio'da oturum açın. Deneyi tanımlayacak görevleri inceledikten sonra, birçok örnekten birini seçmenizi, bir kopyasını oluşturmanızı ve çalıştırmanızı tavsiye edeceğim. Çalışıyorsa ilk web tahmin hizmetiniz olarak yayınlamak için yukarıdaki adımları izleyin.

Elbette bu konuyla ilgili gelecek videolarımızı ve makalelerimizi kaçırmadığınızdan emin olun: Zengin bilgiler içeren bir bülten almak için siteye üye olun. Hızlı bir şekilde başlamak istiyorsanız Veri Madenciliği Eğitimimize, özellikle de veri hazırlama modüllerine bir göz atın, çünkü bu kavramlar özellikle durumlar, giriş Ve çıkış sütunları Azure ML ile çalışırken kesinlikle kullanışlı olacaktır.

Makine öğrenimini öğrenmenin tadını çıkarmanızı dilerim!

Büyük olasılıkla "makine öğrenimi" terimiyle birden fazla kez karşılaşmışsınızdır. Her ne kadar sıklıkla eşanlamlı olarak kullanılsa da yapay zeka Aslında makine öğrenimi bunun unsurlarından biridir. Üstelik her iki kavram da Massachusetts'te doğdu Teknoloji Enstitüsü 1950'lerin sonlarında.

Bugün farkında olmasanız da her gün makine öğrenmesiyle karşılaşıyorsunuz. Sesli asistanlar Siri ve Google, Facebook ve Windows 10'da yüz tanıma, Amazon'da öneriler, robot arabaların engellere çarpmasını engelleyen teknolojiler, makine öğreniminin ilerlemesi sayesinde oluşturuldu.

Makine öğrenimi sistemleri hâlâ insan beyninden çok uzakta, ancak halihazırda etkileyici başarılara sahipler; örneğin insanları satrançta yenmek, masa oyunu Git ve poker.

Makine öğreniminin gelişimi, bir dizi teknolojik atılım, mevcut bilgi işlem gücündeki artışlar ve çok sayıda eğitim verisinin etkisiyle son birkaç yılda çarpıcı bir artış kaydetti.

Kendi kendine öğrenen yazılım

Peki makine öğrenmesi nedir? Ne olmadığıyla başlayalım. Bunlar sıradan değil bilgisayar programları elle yazılmıştır.

Talimatları yürütmede harika olan ancak doğaçlama yapma yeteneğinden yoksun olan geleneksel yazılımların aksine, makine öğrenimi sistemleri esasen kendilerini programlar ve bilinen bilgileri özetleyerek kendi başlarına talimatlar geliştirir.

Klasik bir örnek, örüntü tanımadır. Makine öğrenimi sistemini göster yeterli miktar“köpek” olarak işaretlenen köpeklerin resimlerinin yanı sıra “köpek değil” olarak işaretlenen kedi, ağaç ve diğer nesnelerin resimleri de zamanla köpekleri iyi bir şekilde ayırt etmeye başlayacaktır. Ve bunun için tam olarak neye benzediklerini açıklamasına gerek kalmayacak.

E-posta programınızdaki spam filtresi, makine öğreniminin uygulanmasına iyi bir örnektir. Yüz milyonlarca istenmeyen ve gerekli mesaj örneğini işledikten sonra sistem, spam mesajlarının tipik belirtilerini tespit edecek şekilde eğitilir. Bunu mükemmel bir şekilde halledemiyor ama oldukça etkili bir şekilde yapıyor.

Öğretmenli ve öğretmensiz eğitim

Bahsedilen makine öğrenimi türüne denetimli öğrenme denir. Bu, birisinin algoritmayı büyük miktarda eğitim verisine tanıttığı, sonuçları görüntülediği ve sistemin henüz "görmediği" verileri sınıflandırmada istenen doğruluk elde edilene kadar ayarları yaptığı anlamına gelir. Bu, filtrenin yanlışlıkla istediğiniz mesajı ele geçirmesi durumunda e-posta programınızdaki "spam değil" düğmesine tıklamanızla aynıdır. Bunu ne kadar sık ​​yaparsanız filtre o kadar doğru olur.

Tipik denetimli öğrenme görevleri sınıflandırma ve tahmindir (veya regresyon analizi). Spam ve örüntü tanıma sınıflandırma sorunlarıdır; hisse senedi fiyatı tahmini ise regresyonun klasik bir örneğidir.

Denetimsiz öğrenmede sistem devasa miktarda veriyi inceleyerek "normal" verilerin neye benzediğini öğrenerek anormallikleri ve gizli kalıpları tanıyabilir. Denetimsiz öğrenme, tam olarak ne aradığınızı bilmediğinizde faydalıdır; bu durumda sistemi size yardım etmeye zorlayabilirsiniz.

Denetimsiz öğrenme sistemleri, büyük miktarda verideki kalıpları insanlardan çok daha hızlı keşfedebilir. Bu nedenle bankalar bunları dolandırıcılık işlemlerini tespit etmek için, pazarlamacılar benzer özelliklere sahip müşterileri tespit etmek için ve güvenlik yazılımlarını çevrimiçi kötü amaçlı etkinlikleri tespit etmek için kullanıyor.

Denetimsiz öğrenme problemlerine örnek olarak kümeleme ve birliktelik kurallarının bulunması verilebilir. Birincisi özellikle müşteri segmentasyonu için kullanılır ve tavsiye verme mekanizmaları birliktelik kurallarının araştırılmasına dayanır.

Terimler Sözlüğü

Makine öğrenimi, yapay zeka buzdağının sadece görünen kısmıdır. Bununla yakından ilgili diğer terimler arasında sinir ağları, derin öğrenme ve bilişsel hesaplama yer alır.

Sinir ağı.Bu, beyindeki nöronların yapısını taklit eden bir bilgisayar mimarisidir; her yapay nöron diğerlerine bağlanır. Sinir ağları katmanlar halinde inşa edilmiştir; Bir katmandaki nöronlar, bir sonraki katmandaki birçok nörona veri iletir ve çıkış katmanına ulaşılıncaya kadar bu şekilde devam eder. Ağ, tahminlerini (mesela köpek şeklindeki nesnenin neye benzediğini) bu son katmanda ve yanıt için bir güven derecesi ile birlikte açıklıyor.

Çözülmesi gereken farklı türde sinir ağları vardır farklı şekiller görevler. Ağlar Büyük bir sayı katmanlara derin denir. Sinir ağları en önemli makine öğrenimi araçlarından biridir ancak tek araç değildir.

Derin öğrenme.Bu aslında yanlış veya eksik bilgilere dayanarak kararlar almak için çok katmanlı (derin veya derin) ağların kullanıldığı steroidler üzerinde makine öğrenimidir. Derin öğrenme sistemi DeepStack, her bahis turundan sonra stratejiyi yeniden hesaplayarak geçen Aralık ayında 11 profesyonel poker oyuncusunu yendi.

Bilişsel hesaplama.Bu, IBM'de Watson süper bilgisayarının yaratıcıları tarafından türetilen bir terimdir. IBM, bilişsel bilgi işlem ile yapay zeka arasındaki farkı, birincisinin insan zihninin yerini almaması, onu tamamlaması gerçeğinde görüyor: örneğin, doktorların daha doğru teşhisler koymasına, mali danışmanların daha bilinçli önerilerde bulunmasına, avukatların uygun emsalleri daha hızlı bulmasına yardımcı oluyorlar , vb.

Makine Öğreniminin Sınırlamaları

Her makine öğrenimi sistemi, bir tür kara kutuyu temsil eden kendi bağlantı modelini oluşturur. Sınıflandırmanın nasıl yapıldığını mühendislik analizi yoluyla tam olarak çözemezsiniz, ancak işe yaradığı sürece bunun bir önemi yoktur.

Ancak bir makine öğrenimi sistemi yalnızca eğitim verileri kadar iyidir: Eğer onu girdi olarak "çöp" olarak beslerseniz sonuç uygun olacaktır. Yanlış eğitilirse veya eğitim örneklemi boyutu çok küçükse algoritma yanlış sonuçlar üretebilir.

HP, 2009 yılında bir HP MediaSmart dizüstü bilgisayardaki web kamerasının yüz tanıma sisteminin Afrikalı Amerikalıların yüzlerini tanıyamaması nedeniyle sorun yaşadı. Ve Haziran 2015'te düşük kaliteli bir algoritma Google hizmeti Fotoğraflar iki siyah Amerikalıya "goril" adını verdi.

Diğer bir örnek ise 2016'da denenen kötü şöhretli Microsoft Tay Twitter botu: Daha sonra insanlardan gelen gerçek mesajlardan öğrenerek yapay zekanın insan gibi "rol yapıp yapamayacağını" bulmaya çalıştılar. Twitter trolleri, bir günden kısa bir süre içinde Tay'i tam bir yabancı düşmanına dönüştürdü; bu, bozulmuş eğitim verilerinin tipik bir örneğidir.

***

Dolayısıyla, yapay zeka etrafındaki tüm gürültüye rağmen, makine öğrenimi ve ilgili teknolojilerin gerçekten de etrafımızdaki dünyayı değiştirdiğini ve o kadar hızlı bir şekilde makinelerin tam zamanında, tamamen kendinin farkına varacağını söylemek abartı olmaz.

-Dan Tynan. Makine öğrenimi nedir? Verilerden türetilen yazılım. Bilgi Dünyası. 9 Ağustos 2017

Gazprom Neft, Yandex'in yapay zekasını kullanacak

Gazprom Neft ve Yandex, Büyük Veri teknolojilerini, makine öğrenimini ve yapay zekayı kullanarak kuyu açmayı, petrol rafine etme süreçlerini modellemeyi ve diğer üretim süreçlerini optimize etmeyi planlıyor.

Şirketler arasında imzalanan anlaşma, Yandex uzmanlarının Veri Fabrikası mevcut teknolojik çözümlerin bağımsız olarak incelenmesi, araştırma ve teknolojik projelerin ortak geliştirilmesi ve uygulanması, bilimsel ve teknik bilgi alışverişi, bilgi ve çalışanların eğitimi.

Petrol ve gaz endüstrisi, büyük miktarda veri biriktirdiği için yeni teknolojilerin kullanımı açısından en umut verici sektörlerden biridir ve basit çözümlerÜretimi ve işi optimize etmek uzun süredir uygulanmaktadır. Bu, makine öğrenimi ve yapay zekaya dayalı çözümlerin uygulanmasından somut bir etki elde etmek için iyi fırsatlar yaratır.

Azure'da hokey analizi

Rus şirketi Iceberg Sports Analytics, Microsoft Azure platformunda uygulanan iceberg.hockey çözümünü sundu. Hokey kulüplerinin yönetimini daha verimli hale getirmenize, kazanma şansınızı artırmanıza ve takım bütçesinin kullanımını optimize etmenize olanak tanır.

iceberg.hockey, gelişmiş analitik, makine öğrenimi ve bilgisayarlı görme teknolojilerine dayalı olarak hokey için özel olarak oluşturulmuş kendi algoritmalarını kullanır. Sistem hokey kulüplerinin yöneticileri ve antrenörleri için tasarlanmıştır. Çözüm, her oyun için, sahada olup biten her şeyi saniyenin onda biri kadar kaydetmek üzere üç video kamera kullanarak yaklaşık bir milyon veri satırı oluşturuyor: bu, her oyuncu için yaklaşık 500 parametre anlamına geliyor. Geliştiriciler, veri analizinde yüksek doğruluk elde etmeyi başardılar: hata% 4'ten fazla değil. Analiz, optimum oyuncu kombinasyonu, belirli sporcuların, takımların ve bir bütün olarak takımın oyun tekniği hakkında bilgi edinmeye yardımcı olur.

Şirketin müşterileri arasında halihazırda New York Islanders ve HC Sochi'nin yanı sıra Avusturya hokey akademisi RedBull da yer alıyor.

Khlynov ATM hizmetini optimize etti

Bank Khlynov, Microsoft Azure bulutundaki makine öğrenimi hizmetlerini kullanarak ATM hizmetini değiştirdi. Sonuç olarak, banka daha önce "dondurulmuş" olan 250 milyon rubleyi kullanabildi.

Bankanın müşteri ağı sürekli olarak geliştiğinden, müşterilerin fonlarını depolamak ve onlarla çalışmak için yeni yaklaşımlar gerekmektedir. Projenin başlangıcında Khlynov kartlarındaki ortalama aylık bakiye yaklaşık 800 milyon ruble idi. Bu paranın üçte biri kart sahiplerinin çekebilmesi için ATM'lerde rezerve edildi.

Microsoft Azure bulutundan makine öğrenimi hizmetlerinin kullanılması, bankanın ATM'lerde ayrılan fon miktarını ortalama aylık kart bakiyesinin% 16-20'sine düşürmesine olanak tanıdı: 1,2 milyar rubleye yükseldi ve ayrılan tutar 200- 230 milyon ruble. Banka, serbest bırakılan fonları diğer operasyonel görevler için, özellikle de müşterilerine kredi vermek için kullanabildi.

Entegratör Rubicon ile ortaklaşa oluşturulan ve makine öğrenimi yöntemlerini kullanan bir algoritma, bankanın aylık tahsilat ziyaretlerinin sayısını 1,5 kattan fazla azaltmasına olanak sağladı. Bu yolculukların her birinin maliyeti 3 bin ruble olup, taşınan her bin ruble %0,026 komisyona tabidir.

Yakın gelecekte Khlynov Bank, Microsoft Azure bulutundan ek tahmine dayalı analiz araçlarını sunmayı planlıyor. verimli kullanım Müşterilerle 25 yılı aşkın çalışma sonucunda biriken bilgiler.

MoneyCare, kredi onaylarını tahmin etmek için makine öğrenimini kullanıyor

Bağımsız kredi komisyoncusu MoneyCare, Microsoft Azure Machine Learning bulut hizmetini temel alan bir tahmin modeli oluşturdu. Çözüm, bankanın bir kredi talebine olumlu yanıt verme olasılığını tahmin etmenizi sağlar.

Kredi başvurularının daha iyi dönüştürülmesi için şirket, kişisel veri miktarını gereken minimum seviyeye indirmeye ve ayrıca bankadan olumlu yanıt alma olasılığını tahmin eden bir model oluşturmaya karar verdi. MoneyCare, minimum veri setinin belirlenmesi ve prototipin oluşturulması işini Columbus uzmanlarına emanet etti.

MoneyCare uzmanları, bir makine öğrenimi platformu seçerken, analiz çözümleri olarak tam işlevsel tahmin modellerini hızlı bir şekilde oluşturmanıza ve dağıtmanıza olanak tanıyan Azure Machine Learning bulut hizmetini seçti.

Projenin ilk aşamasında, Azure Machine Learning'de görevi kredi başvurularının %60'ından fazlasını %80'in üzerinde onay olasılığıyla seçmek olan bir prototip sınıflandırıcı oluşturuldu. Diskriminant analizi, regresyon analizi, kümeleme, ayrılabilirliğe dayalı sınıflandırma gibi yöntemlerin yanı sıra boyut azaltma algoritmaları kullanıldı.

Projenin ikinci aşaması, MoneyCare çalışanlarına çalışma prensipleri konusunda eğitim verilmesini ve prototipin geliştirilmesi için ortak bir çalıştayı içeriyordu. Modellerin kurulumu konusunda danışmanlık verildi, tipik görevler makine öğrenmesi ve prototipi geliştirmek için sonraki adımlar belirlendi.

Murmansk bölgesi hükümeti belge yönetiminde makine öğrenimini kullanacak

St. Petersburg Devlet Üniversitesi Programlama Teknolojisi Bölümü, Dijital Tasarım şirketi ile birlikte, elektronik belge yönetim sistemlerinde makine öğrenimi algoritmalarının kullanılma olasılığını araştırdı. Çalışmanın amacı Murmansk bölgesi Hükümetinin EDMS'siydi. 250 binin üzerinde anonimleştirilmiş resmi yazışma belgesi veri tabanı olarak kullanıldı.

EDMS'de prensipleri tekrarlayan akıllı algoritmaların kullanılma olasılığı test edildi sinir ağı. Böyle bir ağın ana görevleri, belgenin kategorisini belirlemek, ana niteliklerini otomatik olarak doldurmak, ekli dosyanın metninin analizine göre en olası uygulayıcıları belirlemek ve onlar için taslak talimatlar oluşturmaktır.

Akıllı algoritmalar kullanarak, belgelerin ekli dosyaların içeriğine göre sıralanmasını otomatikleştirmenin ve her kategori için anlamsal bir çekirdek oluşturmanın, benzer veya aynı belgeleri aramanın, bazı belge niteliklerinin diğerlerine bağımlılığını belirlemenin mümkün olduğu belirlendi. ve hatta nitelik değerlerini tahmin etmek için olasılıksal bir modelin oluşturulmasını otomatikleştirin. Çalışma sırasında metnin içeriğine göre bir belgenin kategorisinin belirlenmesinde yüzde 95 doğruluk elde etmek mümkün oldu. Bir sonraki aşamada, Murmansk Bölgesi Hükümetinin EDMS'sinin büyük hacimli belgeleri işleyen dar bir grup kilit kullanıcısı üzerinde testler gerçekleştirilecek.


Makine öğrenimi Bilgisayar Bilimlerinin en popüler alanlarından biridir, ancak aynı zamanda geliştiriciler arasında en çok kaçınılan alanlardan biridir. Bunun temel nedeni, makine öğreniminin teorik kısmının derin matematik eğitimi gerektirmesi ve birçok kişinin üniversite eğitimini tamamladıktan hemen sonra unutmayı tercih etmesidir. Ancak şunu da anlamak gerekir: teorik temeller Ayrıca günlük olarak öğrenilmesi ve kullanılması çok daha kolay olan pratik bir tarafı da var. Bu çalışmanın amacı programcılar ile veri bilimcileri arasındaki boşluğu doldurmak ve uygulamalarınızda makine öğrenimini kullanmanın oldukça basit olabileceğini göstermektir. Makale, bir arabanın fiyatını, özelliklerine bağlı olarak tahmin etmeye yönelik bir model oluşturmak ve ardından bunu Windows 10 Mobile'daki bir mobil uygulamada kullanmak için gerekli adımların tamamını özetlemektedir.

Azure ML nedir?

Kısaca Azure Machine Learning:

  • karmaşık makine öğrenimi modellerinin basit ve görsel bir biçimde oluşturulmasına ve kullanılmasına olanak tanıyan bir bulut çözümü;
  • hazır algoritmaların dağıtımı ve para kazanması için tasarlanmış bir ekosistem.
Azure ML hakkında daha fazla bilgiyi bu makalenin ilerleyen kısımlarında ve bağlantıyı takip ederek bulabilirsiniz.

Neden Azure ML?
Çünkü Azure Machine Learning, makine öğrenimini kullanmaya yönelik en basit araçlardan biri olduğundan, bunu kendi ihtiyaçları doğrultusunda kullanmaya karar veren herkes için giriş engelini ortadan kaldırır. Azure ML ile artık matematikçi olmanıza gerek yok.

Makine Öğrenimi Algoritması Oluşturmanın Mantıksal Süreci

  1. Hedefin belirlenmesi. Tüm makine öğrenimi algoritmaları, bir deney yürütmek için açıkça tanımlanmış bir amaç olmadan işe yaramaz. Bunda laboratuvar işi amaç, son kullanıcı tarafından sağlanan bir dizi özelliğe dayanarak bir arabanın fiyatını tahmin etmektir.
  2. Veri toplama. Bu aşamada gerekli veri örneği ileri eğitim modeller. İÇİNDE bu durumda Kaliforniya Üniversitesi Makine Öğrenimi Havuzundan alınan veriler kullanılacaktır.
    archive.ics.uci.edu/ml/datasets/Automobile
  3. Veri Hazırlama. Bu aşamada veriler, karakteristiklerin oluşturulması, aykırı değerlerin çıkarılması ve örneklemin eğitim ve test olarak bölünmesiyle hazırlanır.
  4. Model geliştirme. Bir model geliştirme sürecinde, geliştiricinin görüşüne göre gerekli sonucu vermesi gereken bir veya daha fazla veri modeli ve bunlara karşılık gelen öğrenme algoritmaları seçilir. Genellikle bu süreç, herhangi bir model bulmak için çeşitli modellerin etkinliğinin paralel bir çalışması ve verilerin görsel analizi ile birleştirilir.
  5. Model eğitimi. Eğitim sırasında öğrenme algoritması, tahminde bulunmanın bir yolunu bulmak için veri örneğindeki gizli kalıpları arar. Arama sürecinin kendisi seçilen model ve öğrenme algoritması tarafından belirlenir.
  6. Model değerlendirmesi. Model eğitildikten sonra tahmin özelliklerinin incelenmesi gerekir. Çoğu zaman bunu yapmak için bir test örneği üzerinde çalıştırılır ve ortaya çıkan hata düzeyi değerlendirilir. Buna ve doğruluk gereksinimlerine bağlı olarak model ya son model olarak kabul edilebilir ya da yeni giriş özellikleri eklenerek, hatta öğrenme algoritması değiştirilerek yeniden eğitilebilir.
  7. Modeli kullanma. Eğitilen model başarılı bir şekilde test edilirse kullanım aşamasına geçilir. Algoritmaların yayınlanması, izlenmesi ve paraya çevrilmesi için gerekli tüm araçları sağlayan Azure ML vazgeçilmez hale geldiğinde bu durum ortaya çıkar.

Tahmine dayalı bir model oluşturma

Açılan sayfada Şimdi Başlayın seçeneğine tıklayın.

Azure ML'yi kullanmak için etkin bir Microsoft Azure aboneliğinizin olması gerekir. Zaten bir hesabınız varsa Azure Yönetim Portalında oturum açmanız yeterlidir; aksi takdirde bağlantıya tıklayarak ücretsiz deneme hesabına ön kayıt yaptırın.

Öncelikle eğitim setini yüklemeniz gerekiyor. Bunu yapmak için bağlantıyı takip edin ve arabalarla ilgili çeşitli verileri içeren imports-85.data dosyasını bilgisayarınıza indirin.
Bu dosyayı Azure ML Studio’ya yüklemek için sayfanın alt kısmındaki Yeni seçeneğine tıklayın ve açılan panelde Veri Kümesi ve Yerel Dosyadan seçeneğini seçin. İndirme menüsünde indirilen dosyanın yolunu, adını belirtin ve tür olarak Başlıksız Genel CSV Dosyası'nı (.hn.csv) seçin.

Yeni bir deneme oluşturma

Yaratmak için yeni deney ve Yeni -> Deney -> Boş Deney'i seçin. Bu, sağda bir araç çubuğu bulunan yeni bir deneme çalışma alanı oluşturacaktır.

Veri örneğini tanımlama

Daha önce indirilen veriler soldaki Kaydedilen Veri Kümeleri bölümüne yansıtılmalıdır. Onu seçin ve çalışma alanında herhangi bir yere, örneğin Öğeleri Buraya Sürükle okunun işaret ettiği yere sürükleyin.

Veri kaynağının, kendisini diğer bileşenlere bağlamak için kullanılan daire şeklinde bir bağlantı noktasına sahip olduğunu unutmayın.

Veri Hazırlama

Makine öğrenimi modelleri geliştirirken her değişiklikten sonra ön deneysel sonuçları kontrol etmek iyi bir uygulamadır. Bağlantı noktasına sağ tıklayın ve Görselleştir'i seçin. Sonuç olarak, aşağıdakileri veren bir pencere görünecektir: Genel fikir Veriler ve dağıtımı hakkında.

Gördüğünüz gibi örnekte bir sorun var; ikinci sütunda eksik değerler var. Bu, eğitim süreci sırasında istenmeyen bir etki yaratabilir ve modelin kalitesini önemli ölçüde düşürebilir. Ancak, neyse ki, bu değerler sigorta maliyetlerini karakterize ediyor ve arabanın fiyatıyla zayıf bir şekilde ilişkili ve bu nedenle kaldırılabilirler. Diğer şeylerin yanı sıra, sütunların isimleri yoktur, bu da onlarla çalışmayı çok daha zorlaştırır.

Veri Dönüştürme/Manipülasyon grubundaki adlarla ilgili sorunu düzeltmek için Meta Veri Düzenleyicisi çalışma yüzeyine aktarın.

Veri örneğinin çıkışını (altta), bağlamak için yeni bileşenin girişine (üstte) sürükleyin. Şimdi sağdaki ayarlar penceresini açmak için üzerine tıklayın. Meta Veri Düzenleyicisi, tür veya ad da dahil olmak üzere bir veya daha fazla sütunun meta bilgilerini değiştirmenize olanak tanır. Sütun seçiciyi başlat öğesine tıklayarak sütun seçme sihirbazını açın. Tüm sütunları seçmek için Şununla Başla alanında Tüm sütunlar seçeneğini seçin, sağdaki “-“ işaretine tıklayarak seçim iyileştirme satırını silin ve onay işaretine tıklayarak onaylayın.

Ayarlar panelinin Yeni sütun adları alanına, daha önce verilen bağlantıdaki import-85.names dosyasında bulunabilecek yeni sütun adlarını virgüllerle ayırarak girin. Alan değeri aşağıdaki gibi olmalıdır:

semboller,normalleştirilmiş kayıplar,üretim,yakıt tipi,aspirasyon,kapı sayısı,gövde stili,tahrik tekerlekleri,motor konumu,dingil mesafesi,uzunluk,genişlik,yükseklik,boş ağırlık,motor tipi, silindir sayısı,motor boyutu,yakıt sistemi,delik,strok,sıkıştırma oranı,beygir gücü,en yüksek devir,şehir-mpg,otoyol-mpg,fiyat

Bileşenin çalışmasının sonucunu görmek için alttaki Çalıştır'a tıklayın ve Meta Veri Düzenleyicisi çıktısını daha önce anlatıldığı şekilde görselleştirin.

Şimdi normalize edilmiş kayıpları kaldıralım. Bunu yapmak için aynı gruptan Proje Sütunlarını çalışma alanına sürükleyin, Meta Veri Düzenleyicisine bağlayın ve ayarlarına gidin. Satır Seçiciyi tekrar seçin ve bu sefer normalleştirilmiş kayıplar dışındaki tüm satırları seçerek aşağıdaki resimde gösterilenlere benzer ayarlar yapın.

Deneyi çalıştırın ve ikinci sütunun örnekte eksik olduğunu doğrulamak için sonucu görselleştirin.

Ne yazık ki hala değerleri eksik olan sütunlar var. Ancak bunların çoğu yok ve bu nedenle kendinizi yalnızca eksik satırları atmakla sınırlayabilirsiniz. Bunu yapmak için Eksik Değer Scrubber'ı seçin ve onu Proje Sütunlarına bağlayın. Eksik değerler için alanında değeri Tüm satırı kaldır olarak değiştirin. Çalıştırın, render edin ve boş değerlerin bulunduğu satırların kaybolduğundan emin olun.

Hazırlık aşamasında cevaplanması gereken son bir soru daha var: Tüm özellikler arabanın fiyatını etkiler mi? Bu aşamada kendimizi aşağıda listesi verilen az sayıda göstergeyle sınırlayabiliriz. Gelecekte her zaman yenilerini ekleyebilir ve ortaya çıkan modellerin doğruluğunu karşılaştırarak bunların yeterliliğine ilişkin hipotezi test edebilirsiniz.

marka,gövde stili,dingil mesafesi,motor boyutu,beygir gücü,en yüksek devir,otoyol mpg,silindir sayısı,fiyat

Yeni bir Proje Sütunları ekleyin ve yukarıdaki sütunları seçin.

Son olarak denemeyi çalıştırıp sonucu görselleştirerek veri hazırlığınızın başarılı olduğundan emin olun.

Örnek döküm

Veriler artık eğitim sürecinde kullanılmaya hazırdır. Ama içinde makine öğrenme"Yeniden eğitim" adı verilen bir etki mümkündür; model, verileri genelleme olmadan öğrenir. Bu davranış, herhangi bir farklı veri üzerinde yeterli tahminin imkansız olmasına yol açmaktadır. Bu durumu ele almak için numuneyi 3:1'e yakın bir oranda eğitim ve test olarak bölmek gelenekseldir. Bunlardan sonuncusu öğrenme sürecine hiçbir şekilde katılmaz ve tamamlandıktan sonra tahmin hatasını tahmin etmek için kullanılır. Bu hatanın eğitim setindeki hatadan önemli ölçüde farklı olması durumunda yukarıda açıklanan etki gözlemlenir.

Bir test örneği oluşturmak için Verileri Böl bileşenini Veri Dönüştürme/Örnek ve Böl grubundan son Proje Sütunlarına sürükleyin. İlk çıktının satır kesirini 0,75'e ayarlayın ve Rastgele Bölme bayrağının ayarlandığından emin olun.

Model eğitimi doğrusal regresyon

Öncelikle Doğrusal Regresyon, Modeli Eğit, Puan Modeli ve Modeli Değerlendir bileşenlerini araç çubuğundan sürükleyin. Train Model, herhangi bir modelin herhangi bir eğitim setinde eğitilmesine olanak tanıyan evrensel bir bileşendir. Özel durumumuzu ayarlamak için, ilk (sol) Bölünmüş Veri çıkışını ve Doğrusal Regresyon çıkışını karşılık gelen Eğitim Modeli girişlerine bağlayın. Modeli Eğitme ayarlarında, hedef değer (sonuç sütunu) olarak fiyatı belirtin. Model artık eğitime hazırdır.

Ancak eğitimin kendisine ek olarak eğitimin sonucunu bilmek de önemlidir. Puan Modeli bileşeni, eğitilmiş bir modelin çıktısını rastgele bir örnek üzerinde hesaplamanıza ve tahmin sonucunu hesaplamanıza olanak tanır. Eğitilen modeli içeren Model Eğitimi çıkışını karşılık gelen Puan Modeli girişine bağlayın ve ikinci Bölünmüş Veri çıkışından bir test örneğini veri örneği olarak başka bir girişe besleyin. Eğitim kalitesinin sayısal özelliklerini hesaplamak için Puan Modeli çıkışını Değerlendirme Modeli girişlerinden herhangi birine bağlayın. Sonuç, şekilde gösterilene benzer bir süreç olmalıdır.

Modeli çalıştırın ve Değerlendirme Modeli çıktısını görselleştirin.

Belirleme katsayısı, regresyon çizgisinin orijinal verileri ne kadar iyi tanımladığını gösterir. Kabul ettiği değerler 0 ile 1 arasında değişir; burada bir mutlak doğruluğa karşılık gelir. Bizim durumumuzda katsayı %82'dir. Bunun iyi bir sonuç olup olmadığı doğrudan problemin formülasyonuna ve belirli bir hata toleransına bağlıdır. Bir arabanın fiyatını tahmin etme durumunda %82 mükemmel bir sonuçtur. Eğer geliştirmek istiyorsanız Proje Sütunlarına başka sütunlar eklemeyi deneyin veya tamamen farklı bir algoritma deneyin. Örneğin Poisson Regresyon. İkincisi, doğrusal regresyon bileşeninin Poisson bileşeniyle değiştirilmesiyle elde edilebilir. Ancak daha ilginç bir yaklaşım, unsurlardan paralel eğitimi bir araya getirmek ve sonucu, Değerlendirme Modelinin ikinci çıktısına bağlamaktır; uygun form Her iki modelin eğitim sonuçlarını karşılaştırın.

Modeli çalıştırın ve sonucu görselleştirin. Sonuçtan da görülebileceği gibi, veriler doğrusal regresyon modeliyle çok daha iyi tanımlanır ve bu nedenle onu son model olarak seçmek için her türlü neden vardır.

Doğrusal regresyona karşılık gelen Modeli Eğit bileşenine sağ tıklayın ve Eğitimli Model Olarak Kaydet'i seçin. Bu, ortaya çıkan modeli yeniden eğitime gerek kalmadan başka deneylerde kullanmanıza olanak tanır.

Bir web hizmeti yayınlama

Hizmeti yayınlamak için doğrusal regresyona karşılık gelen Modeli Eğit bileşenini seçin ve Web Hizmetini Kur'a tıklayın. Açılan menüde Tahmine Dayalı Web Hizmeti'ni seçin ve Azure ML'nin hizmetin ihtiyaçlarına göre optimize edilmiş yeni bir deneme oluşturmasını bekleyin. Otomatik olarak oluşturulan Web Hizmeti Girişi ve Web Hizmeti Çıkışı bileşenlerini silin; bunları daha sonra küçük bir hazırlıktan sonra oluşturacağız.

Açık şu an Puan Modeli öğesi tüm giriş sütunlarını çıktı olarak tekrarlar ve tahmin edilen değere Puan Etiketleri adını verir. Bunun düzeltilmesi gerekiyor.

Bunu yapmak için, zaten tanıdık olan iki bileşeni araç çubuğundan çalışma yüzeyine taşıyın: Proje Sütunları ve Meta Veri Düzenleyici. Ve bunları aşağıdaki şekilde gösterilen sıraya göre bağlayın. Proje Sütunları ayarlarında yalnızca bir sütun olan Puan Etiketleri'ni seçin ve Meta Veri Düzenleyicisi'ni kullanarak bu sütunu fiyat olarak yeniden adlandırın.

Son olarak, oluşturulan hizmetin giriş ve çıkışını eklemeniz gerekir. Bunu yapmak için deneye Web Hizmeti Girişi ve Web Hizmeti Çıkışı ekleyin. Birincisini Skor Modeli girişine, ikincisini ise Meta Veri Düzenleyici çıkışına bağlayın. Her iki öğenin ayarlarında adı sırasıyla "giriş" ve "tahmin" olarak değiştirin.

Çalıştır'a tıklayarak modeli tekrar çalıştırın ve doğrulama tamamlandıktan sonra Web Hizmetini Dağıt'a tıklayarak hizmeti yayınlayın.

Servis testi

Web Hizmetini Dağıt'a tıkladıktan sonra, yeni oluşturulan hizmetle ilgili bilgilerin bulunduğu bir sayfaya yönlendirileceksiniz. API YARDIM SAYFASI altındaki bağlantılar yeterli miktarda içeriyor Detaylı Açıklama gelen ve giden JSON paketlerinin içerikleri hakkında bilgilerin yanı sıra, nasıl kullanılacağına dair fikir veren bir konsol uygulamasına ait örnek kod içerir.

Etkileşimli test için Test'e tıklayın ve açılan pencerede her giriş parametresi için değerleri girin. Örneğin aşağıdakilere ve test isteği göndermek için onay kutusuna tıklayın.

Audi sedan 99.8 dört 109 102 5500 30 13950

Uygulama geliştirme

Sonuç olarak Azure ML’yi arka uç hizmeti olarak kullanarak mobil uygulama geliştirme sürecine bakalım. İlk oluştur yeni proje evrensel Windows uygulaması. Bunu yapmak için Visual Studio 2015 açıkken Dosya -> Yeni -> Proje... seçeneğini seçin. Açılan pencerede sol menüdeki Windows sekmesine gidin ve Boş Uygulama (Evrensel Windows) seçeneğini seçin. Başlık alanına AzureMLDemo'yu girin ve Tamam'a tıklayın. Eğer gerekliyse bitmiş proje GitHub'da bulunabilir.

Biraz hazırlık yaptıktan sonra Visual Studio yeni bir Evrensel Uygulama projesi açacak. Debug'un sağındaki işlemci mimarisi alanının x86 olarak ayarlandığından emin olun ve sağdaki mobil sanal makinelerden birini başlatma ortamı olarak seçin. Örneğin, Mobile Emulator 10.0.10240.0 720p 5 inç 1GB.

Artık uygulamanın kendisini yazmaya geçebilirsiniz. Solution Explorer menüsünde MainPage.xaml'i açmak için çift tıklayın. GUI XAML işaretleme dilini açıklamak bu çalışmanın kapsamı dışındadır; bu nedenle açılış ve kapanış etiketlerini değiştirmeniz yeterlidir. aşağıdaki koda.