Azure Eğitimi: Azure Machine Learning Studio Kullanarak Gaz Fiyatlarını Tahmin Etme

Yayınlanan: 2022-03-11

Seçtiğiniz hisse senedinin önümüzdeki ay boyunca yükseleceğini veya düşeceğini tahmin edebilseydiniz ne olurdu? Ya da favori futbol takımınız bir sonraki maçını kazanır veya kaybederse? Nasıl böyle tahminler yapabilirsiniz? Belki de makine öğrenimi, cevabın bir kısmını sağlayabilir. Windows Phone 8.1 ile birlikte gelen Bing tarafından desteklenen yeni dijital kişisel asistan Cortana, 2014 FIFA Dünya Kupası'ndaki 16 maçın 15'ini doğru bir şekilde tahmin etti.

Bu Azure öğreticisinde, günlük hayatımızda karşılaştığımız sorunlardan birini çözerek Azure Machine Learning özelliklerini ve yeteneklerini keşfedeceğiz.

Azure Machine Learning öğreticisi

Makine öğrenimi geliştiricisinin bakış açısından, problemler iki gruba ayrılabilir - standart yöntemlerle çözülebilenler ve standart yöntemlerle çözülemeyenler. Ne yazık ki, çoğu gerçek yaşam problemi ikinci gruba aittir. İşte burada makine öğrenimi devreye giriyor. Temel fikir, geçmiş verilerde anlamlı örüntüler bulmak için makineleri kullanmak ve sorunu çözmek için kullanmaktır.

Sorun

Benzin fiyatları muhtemelen çoğu insanın bütçesindeki kalemlerden biridir. Sürekli artış veya düşüş, diğer yiyecek ve hizmetlerin fiyatlarını da etkileyebilir. Hava koşullarından siyasi kararlara ve idari ücretlere, doğal afetler veya savaşlar gibi tamamen öngörülemeyen faktörlere kadar gaz fiyatlarını etkileyebilecek birçok faktör vardır.

Bu Azure makine öğrenimi öğreticisinin planı, bazı erişilebilir verileri araştırmak ve bir tahmin modeli oluşturmak için kullanılabilecek bağıntıları bulmaktır.

Azure Machine Learning Studio

Azure Machine Learning Studio, veri deneyleri geliştirmeye yönelik web tabanlı tümleşik geliştirme ortamıdır (IDE). Azure'ın diğer bulut hizmetleriyle yakından bağlantılıdır ve makine öğrenimi modellerinin ve hizmetlerinin geliştirilmesini ve devreye alınmasını kolaylaştırır.

Deneyi Oluşturma

Bir makine öğrenimi örneği oluşturmanın beş temel adımı vardır. Gaz fiyatları için kendi tahmin modelimizi geliştirerek bu adımların her birini inceleyeceğiz.

Verilerin Elde Edilmesi

Veri toplama bu süreçteki en önemli adımlardan biridir. Verilerin uygunluğu ve netliği, iyi tahmin modelleri oluşturmanın temelidir. Azure Machine Learning Studio, bir dizi örnek veri kümesi sağlar. Bir başka harika veri kümesi koleksiyonu,archive.ics.uci.edu/ml/datasets.html adresinde bulunabilir.

Verileri topladıktan sonra, basit veri yükleme mekanizmaları aracılığıyla Studio'ya yüklememiz gerekiyor:

Azure Machine Learning Studio

Yüklendikten sonra verileri önizleyebiliriz. Aşağıdaki resim, yeni yüklediğimiz verilerimizin bir kısmını göstermektedir. Buradaki amacımız E95 yazan kolonun altındaki fiyatı tahmin etmektir.

Makine Öğrenimi Stüdyosu

Bir sonraki adımımız, modülleri soldaki panelden çalışma alanına sürükleyip bırakarak yeni bir deney oluşturmaktır.

Azure Meachine Learning

Verileri Ön İşleme

Mevcut verilerin ön işlenmesi, mevcut verilerin ihtiyaçlarınıza göre ayarlanmasını içerir. Burada kullanacağımız ilk modül “Betimleyici İstatistikler”dir. Mevcut verilerden istatistiksel verileri hesaplar. “Tanımlayıcı İstatistikler” modülünün yanı sıra yaygın olarak kullanılan modüllerden biri de “Eksik Verileri Temizle” modülüdür. Bu adımın amacı, eksik (boş) değerleri başka bir değerle değiştirerek veya tamamen kaldırarak anlam vermektir.

Özellikleri tanımlama

Eğitimimizde bu adımda uygulanan bir diğer modül ise “Filtre Bazlı Özellik Seçimi” modülüdür. Bu modül, tahmin etmek istediğimiz sonuçlarla en alakalı veri kümesi özelliklerini belirler. Bu durumda, aşağıdaki resimde de görebileceğiniz gibi, “E95” değerleri için en alakalı dört özellik “EDG BS”, “Oil”, “USD/HRK” ve “EUR/USD” dir.

filtre tabanlı özellik seçimi

“EDG BS”, tahmin yapmak için kullanılamayacak bir diğer “çıktı” değeri olduğundan, geri kalan önemli özelliklerden sadece ikisini seçeceğiz - USD/HRK sütunu altında petrol fiyatı ve döviz kuru.

İşlemden sonra veri kümesinin örneği aşağıda gösterilmiştir:

masmavi stüdyo veri kümesi

Algoritma Seçme ve Uygulama

Bir sonraki adımımız, mevcut verileri “Split” modülünü kullanarak bölmektir. Verilerin ilk kısmı (bizim durumumuzda %80) modeli eğitmek için, kalanı ise eğitilen modeli puanlamak için kullanılacaktır.

azure bölünmüş modül

Aşağıdaki adımlar, tüm Azure makine öğrenimi sürecindeki en önemli adımlardır. “Tren Modeli” modülü iki giriş parametresini kabul eder. Birincisi ham eğitim verileri, diğeri ise öğrenme algoritmasıdır. Burada “Linear Regresyon” algoritmasını kullanacağız. “Tren Modeli” modülünün çıkışı “Puan Modeli” modülünün giriş parametrelerinden biridir. Diğeri ise mevcut verilerin geri kalanıdır. Puan Modeli, veri kümemize yeni bir sütun ekler, Puanlanmış Etiketler. Uygulanan öğrenme algoritması mevcut verilerle iyi çalıştığında, “Puanlanmış Etiketler” sütununun altındaki değerler, karşılık gelen E95 değerlerinin değerlerine daha yakındır.

tren modeli modülü

Modeli Değerlendir modülü bize, istatistiksel değerlerle ifade edilen eğitilmiş modelin bir değerlendirmesini verir. “Belirleme Katsayısı”na bakarsak, bu modeli kullanarak doğru fiyatı tahmin etme şansının yaklaşık %80 olduğu sonucuna varabiliriz.

Şimdi, “Neural Network Regresyon” modülünü kullanmayı denemeye değer. Yeni “Tren Modeli” ve “Puan Modeli” modülleri eklememiz ve çıktıyı mevcut “Değerlendirme Modeli” modülüne bağlamamız gerekecek.

sinir ağı regresyon modülü

“Neural Network Regresyon” modülü biraz daha fazla konfigürasyon gerektirir. Bu, tüm deneyin en önemli modülü olduğundan, bir bütün olarak uygun öğrenme algoritmasının ayarları ve seçimi ile ince ayar yaparak ve deneyler yaparak çabalarımızı odaklamamız gereken yerdir.

Bu durumda, Evaluate modülü bize iki eğitilmiş modelimizin bir karşılaştırmasını verir. Yine, Belirleme Katsayısı'na dayanarak, Sinir Ağlarının biraz daha az doğru tahminler sağladığını görüyoruz.

masmavi değerlendirme modeli

Bu noktada, seçilen eğitilmiş modelleri ileride kullanmak üzere kaydedebiliriz.

azure eğitimli model

Eğitilmiş bir modelimiz olduğunda, “Puanlama Deneyi” oluşturmaya devam edebiliriz. Bu, sıfırdan yeni bir deneme oluşturarak veya Azure Machine Learning Studio yardımcısını kullanarak yapılabilir. Eğitilmiş modeli seçin ve “Puanlama Deneyi Oluştur”a tıklayın. Burada ihtiyacımız olan yeni modüller “Web servis girişi” ve “Web servis çıkışı”. Giriş ve çıkış değerlerimizi seçmek için bir “Proje Sütunları” modülü ekleyeceğiz. Girdi değerleri Petrol ve USD/HRK'dir ve çıktı, "Puan Modeli" çıktısının "Puanlı Etiketler" sütunundaki tahmini değerdir.

Aşağıdaki resim, bu birkaç ayardan sonra ve buna göre “Web servis girişi” ve “Web servis çıkışı” modüllerini bağladıktan sonra puanlama deneyimizi göstermektedir.

puanlama deneyi

Bir başka şık yardımcı özellik de bu noktada devreye giriyor. “Web Hizmeti Yayınla” ile Azure'un bulut altyapısında barındırılan basit bir web hizmeti oluşturabilirsiniz.

web hizmeti yayınla

Yeni Verileri Tahmin Etme

Son olarak, basit bir test formu kullanarak tahmin web hizmetimizi test edebiliriz.

masmavi test formu

makine öğrenimi test formu

Çözüm

Bu basit makine öğrenimi öğreticisi aracılığıyla, tamamen işlevsel bir tahmin web hizmetinin nasıl oluşturulacağını gösterdik. Azure platformuna entegre Azure Machine Learning Studio, veri deneyleri oluşturmak için çok güçlü bir araç olabilir. Machine Learning Studio'nun yanı sıra Orange ve Tiberious gibi başka makine öğrenimi çözümleri de var. Beğendiğiniz geliştirme ortamından bağımsız olarak, sizi makine öğrenimini keşfetmeye ve içinizdeki veri bilimcisini bulmaya teşvik ediyorum.