Herkes için Makine Öğrenmesi

Emrah Genç
alBarakaTech Global
6 min readDec 27, 2020

Bu yazı dizisinde genel düzeyde makine öğrenmesi ile ilgili bir bilgi düzeyi oluşturmak adına sizlerleyim. Biraz bilim kurgu ve fantastik anlatımla olayı daha canlı tutmaya çalıştım.

Öncelikle makine öğrenmesi artık bilim kurgu filmlerinden fırlamış bir kurgu, hayal ürünü veya ütopya değil. Günümüzde bir çok alanda kullanılan bir yapı haline geldi. Gelin birlikte bu yapıyı daha detaylı beraber inceleyelim.

Google Maps trafikte gecikmeleri nasıl hesaplıyor ? Amazon’ un yapay zeka robotu Alexa ne kadar akıllı ? AlphaZero’ satrançta insanları nasıl yeniyor ?

Öncelikle makine öğrenmesi , yapay zeka kavramının bir alt bileşenidir, Yani deyim yerindeyse baskıya gidecek yazılar, bu editörün olurunu alması gerekiyor:) Şaka bir yana yapay zeka, bir dizi araç bileşeni ile (tool) bilgisayarların daha akıllı davranmasını sağladı.

İşte tam burada makine öğrenmesi de yapay zekanın ham maddesi aslına bakarsanız veya nereden bakarsanız :) Bu, tıpkı Freidmann’ın bahsettiği çok basit bir varsayım olan “Uzayın neresinden bakarsanız bakın uzay şuan gözünüze gözüktüğü gibi görünecektir “ betimlemesi ile aynı olacaktır. Aslında bunun kabaca doğru olduğu ispatlandı. Yaklaşık olarak bu söylem doğruydu. Belki de yapay zeka ile çalışan kuantum bilgisayarlar bir gün bu betimlemenin böyle olup olmadığını daha detaylı ispatlayacaklardır. Görüntünün gözle görülebildiğinden daha farklı olduğunu ispatlayacaktır! Not: Şuanda uzay bilimlerinde fotoğraflama tekniklerinde yapay zeka çözümleri kullanılmaktadır. Örneğin bir karadeliği veya bir nötron ışımasını fotoğraflamak için benzer teknikler kullanılmaktadır. Bir karadeliği çıplak gözle görmek mümkün değildir. Eğer içine giren biz değilsek :) bütün kütlesel çekim, olay ufkunda cereyan ediyor. Olay ufkundan ışık bile dışarı çıkamadığından insan gözüyle yakınında olsak bile göremiyoruz ki yakından izleme fırsatı olacağı pek düşünülmüyor. Yani görüntü sadece gözün görebildiği 3 boyutlu kavramdan çıkıp, fiziki tepkime ve enerji çıkışları ile farklı boyutlandırma ve resmedilme yapılarına kavuşturulmaktadır. İnsan da yapay zeka ile bu fizik olaylarını daha kolay zihninde canlandırabilmektedir.

Modeller ile Oluşturulan Kara Delik Fotoğrafı

Makine öğrenmesinde kullanılacak olan araç seti bize okuduğu veri setinden çıkarımlar ve tahminler yapacaktır. Peki makine öğrenmesi ile ne yapabiliriz ?

  • Gelecekteki olayları tahmin etmek

Yarın yağmur yağacak mı ? Evet (Yüzde 70 olasılıkla)

  • Olayların ve davranışların nedenlerini anlamak

Neden yağmur yağar?(İlişkileri ortaya koymada yararlanılır)

Nem seviyesi, sıcaklık, konum, yılın hangi dönemi oldugu vb.

  • Kalıpları Çıkarma

Farklı hava koşulları nelerdir ?

Yağmur,güneşli, sisli vb.

Peki makine öğrenmesi nasıl çalışır?

İstatistik ve bilgisayar bilimlerinin disiplinlerarası karışımı sonucu oluşan makine öğrenmesi, var olan veriden çıkarımları yapıp, yeni gelen veride buna göre tahminleme yapar. Bu çıkarım yapma devamlı öğrenen bir süreçtir. Ayrıca çıkarım yapma, verinin kalitesi ile doğru orantılıdır. (Learn-to-learn süreçtir)

Veri Bilimi

Veri bilimi, verilerden bilgi elde etmek için, sistemleri, süreçleri, bilimsel yolları kullanarak, veri ile ilgili her türlü konuyu inceleyen bilim dalıdır. Makine öğrenimi, genellikle veri bilimi çalışmaları için önemli bir araçtır.

Makine Öğrenmesi Modeli

Makina öğrenme modeli, verilere dayalı günümüz yaşam süreçlerinin istatiksel olarak bir temsilidir.

Örnek vermek gerekirse bir tweet hesabının sahte olup olmadığı attığı tweet’lere göre bir model ile sınıflandırılabilir.

Makine Öğrenmesi Konseptleri

Üç çeşit makine öğrenmesi konsepti bulunmaktadır

  1. Pekiştirmeli Öğrenme (Reinforcement Learninig)
  2. Gözetimli Öğrenme (Supervised Learning)
  3. Gözetimsiz Öğrenme (Unsupervised Learning)

Bu yazımızda Gözetimli (Supervised) ve Gözetimsiz (Unsupervised) öğrenmeden bahsedeceğiz.

Gözetimli Öğrenme (Supervised Learning)

Öncelikle şu kavramlarla başlamalıyız. Veriyi eğitmeliyiz (Train). Veriyi eğitmek ne demek ? Aşağıdaki gibi örnek bir veri seti alalım.

Gözetimli Öğrenme -Veri Eğitimi (Supervised learning training data)

(Terimlerin türkçelerini kullanmaya özen göstereceğim. Ama literatürde geçen isimlerini de bilmekte önemli olduğundan yazıyorum.)

Bu veri setinde bireylere ait onların sağlıkları ile ilişkilendirebileceğimiz bilgiler bulunmaktadır. Bu sağlık bilgileri ışığında kalp hastalığı(heart disease) olup olmadığı ile ilgili bilgide bulunmaktadır. Burada amaç çeşitli parametrelere göre veriyi eğitmek, yani parametreler ışığında çıkarımları modele hazır olarak veriyoruz. Bizim hedef değişkenimiz (target variable) Heart disease gözükmektedir. Bu veri setinde veriyi etiketliyoruz (Labels).

Kalp hastalığını tahmin etmek için kullanacağımız parametreler bizim bu model için özelliklerimiz(features)’dir. Bu parametre seçimine, özellik seçimide (feature selection) denir.

Features

Veriyi bu özellikler (features) ve hedef değişkeni (target variable) vererek eğittiğimizde(train) artık modelden aşağıdaki özelliklere (features) göre hedef değişkeni tahmin etmesini isteyeceğiz.

Evet gözetimli öğrenme model tahminine göre bu özellikleri olan bir kişi için model “kalp hastalığı yoktur” şeklinde bir çıkarımda bulundu.

(Benzer bir kullanım alanı olarak ülkemizde e-nabız uygulamasına doğru bilgi girişi sağlanması durumunda kişilerin sağlık durumları ve riskleri takip edilebilir.)

Gözetimli (Supervised) ve Gözetimsiz(Unsupervised) Öğrenme Karşılaştırma

Gözetimli Öğrenme : Veri eğitiminde etiketleme yapılır.

Gözetimsiz Öğrenme : Veri eğitiminde etiketleme yapılmaz. Eğitim verisi sadece özelliklerden (Features) oluşur. Oluşturulacak model için hepsi birer parametredir. İlişkiler ve sınıflandırmalar model tarafından ortaya konur. Gözetimsiz öğrenme (Unsupervised Learning), Anomally Detection’lar, Clustering (Kümeleme), Guplara bölme işlemlerinde kullanılır.

En çok kullanılan gözetimli öğrenme (Supervised Learning) algoritmaları aşağıdaki gibidir. Bunları ilerleyen aşamalarda daha detaylı inceleyeceğiz.

  • En Yakın Komşuluk → k-Nearest Neighbors (KNN)
  • Yapay Sinir Ağları → Artificial Neural Network (ANN)
  • Destek Vektör Makineleri→ Support Vector Machine (SVM)
  • Karar Ağaçları → Decision Trees (DTs)
  • Doğrusal Regresyon → Linear Regression
  • Lojistik Regresyon → Logistic Regression

Gözetimsiz Öğrenme (Unsupervised Learninig)

Gerçekte , teoriden çıkarsak hiçbir zaman veri etiketli olarak gelmez. Dolayısıyla bu parametreler arasında anlamlı ilişkiyi bu makine öğrenmesi modeli ortaya kendi koyar. Gözetimsiz öğrenmedeki motivasyonumuz etiketlenmemiş (unlabeled) verilerdeki gizli örüntüleri bulmaktır.

Yukarıdaki şemada bulunan bir veri seti ile gözetimsiz öğrenme modeli veriyi kendi içinde ilişkilendirir.

Örneğin model, aşağıda 3 grup halinde veri setinde gruplama yaptı.

Bu veri gruplarına göre yeni gelecek veriler için karar vermek istediğinde en yakın grubun içine koyacaktır. Model kararını bu grup içindeki ilişkilere göre vermiş olacaktır. Örneğin yeni gelen veriyi 2.grup’a yakınsamış ve bu gruptaki veri kararlarıyla ilişkilendirmiş oldu.Fantastik kurgusal bir ürün olan Harry Potter’in filmlerini izlediyseniz orada takımlara seçilirken kullandıkları bir “Seçmen Şapka” vardı. En yakın olarak değerlendiği takıma ilgili kişiyi atıyordu. İşte bu gruplama o şapka diyebiliriz :)

Sonuç olarak gözetimsiz öğrenme (Unsupervised Learning ) ile ilgili olarak etiketlemenin olmadığını (unlabelled) ve modelin kendi parametrelerini belirlediğini öğrenmiş olduk.

En çok kullanılan gözetimsiz öğrenme(Unsupervised Learning) algoritmaları aşağıdaki gibidir.

  • Kümeleme → Clustering
  • Birliktelik Kuralları → Association Rules
  • Temel Bileşen Analizi → Principal Component Analysis (PCA)

Sonuç

Konu ile ilgili genel bir bilgi düzeyi oluşturmayı amaçlayan bu yazı dizisi ilerleyen yazılarımla devam edecektir. Gözetimli (Supervised) ve Gözetimsiz (Unsupervised) öğrenmenin daha detaylı analizi yapacağız. Kullanılan yöntemlerini ve nasıl çalıştığını daha detaylı bir şekilde sizlere aktarmayı planlıyorum.

Keyifli günler ve okumalar dilerim…

--

--