1959 yılında IBM araştırmacısı Arthur Samuel'in dile getirmesiyle birlikte hayatımıza giren makine öğrenmesi (machine learning) kavramını, temelde bazı istatistiksel işlemler yardımıyla elimizdeki veriden anlamlı çıkarımlar yaparak tahminde bulunan bir tür modelleme olarak düşünebiliriz. Bugün otonom araçlar, robot teknolojileri, resim tanıma, ses tanıma ve tıbbi teşhis gibi birçok alanda makine öğrenmesi modellerinden yararlanılmakta. Bu alanlarda kullanıldığı gibi günlük yaşantınızda da muhtemelen farkında olmadan defalarca kez kullanıyorsunuzdur. Netflix ve Spotify gibi uygulamaların daha önceki seçimlerinize benzer öneride bulunması, bazı e-ticaret sitelerinin göz atma ve satın alma geçmişinize dayanarak kişiselleştirilmiş ürünleri size önermesi ve spam olarak işaretlediğiniz e-postalara benzer e-postaların gelecekte spam klasörüne düşmesi makine öğreniminin günlük yaşantınızdaki kullanım alanlarına güzel birer örnek.
Makine öğreniminin giderek yaygınlaşmasıyla birlikte, iş dünyasında bu kavramla karşılaşmanız muhtemeldir ve bu alan hakkında biraz çalışma bilgisine ihtiyacınız olacaktır. Peki makine öğrenmesini bu kadar önemli ve popüler yapan şey nedir?
Büyük ölçekli veriler söz konusu olduğunda veriye dayalı bir karar alma sürecindeki kritik faktörleri takip etmek ve verileri bazı problemlere uyarlayabilmek kimi zaman oldukça güç ve bu açıdan insanlar yetersiz kalabiliyor. Makine öğreniminin veri içerisindeki ilişki ve davranışları tanımlayabilmesi veya karar vermeyi otomatikleştirebilmesi makine öğrenimi kullanımını değerli kılıyor. Makine öğreniminin farklı sektörlerde çalışmaların daha hızlı ve verimli bir şekilde yapılmasına olanak sağlayarak zaman ve paradan tasarruf sağlamaya yardımcı olduğunu da görebiliyoruz.
Makine öğrenmesi çalışmaları kapsamında karşılacağınız değişkenlere ve temel makine öğrenmesi türlerine dair belli başlı tanımlara aşina olmak, çalışmaların doğasını anlayabilmek açısından önemli. Değişkenlere ilişkin bilinmesi gereken bazı kavramlar ise şu şekilde:
Makine öğrenmesi türlerini ise temelde üç başlık altında inceleriz:
Denetimli öğrenme kapsamında algoritmaların geliştirici tarafından denetimi gerekir. Geliştirici, eğitilecek veriyi etiketler ve böylece veri setinin ne olduğunu ve bu verilerden istenen çıktının ne olması gerektiğini bilir. Denetimli öğrenme algoritmaları, etiketli verileri kullanarak olaylar arasındaki ilişkiyi ve kuralları öğrenerek bağımlı değişkenin alacağı değeri tahmin etmek için öğrendiklerini yeni verilere uygular.
Denetimli öğrenme problemleri regresyon (veya bağlanım) ve sınıflandırma olarak ikiye ayrılmaktadır. Bir regresyon probleminde, bağımlı değişken ile bağımsız değişken arasındaki ilişkiyi tahmin etmeye çalışırız. Daha spesifik olarak regresyon, bağımsız değişkenlerde yaşanan değişikliklerden bağımlı değişkenin nasıl etkilendiğine odaklanır. Kısaca iki değişken arasındaki ilişkiyi göstermeye çalışan istatistiksel bir yöntem olan regresyon analizi sonucunda sürekli bir değişken tahmin edilmeye çalışılır. Örnek olarak bir şirketin reklam harcamalarının satışlarını nasıl etkilediğini tahmin etmek üzere kurulabilecek bir model düşünülebilir.
Bir sınıflandırma probleminde ise, sonuçları ikili çıktılarda tahmin etmeye çalışırız. Örnek olarak gelen e-postaları spam veya spam değil şeklinde sınıflandırmak üzere kurulabilecek bir model düşünebiliriz. Aşağıdaki grafikte ikili sınıflandırma probleminin temsili bir örneği görülmektedir.
Denetimsiz (veya gözetimsiz) öğrenme ise verilerimizden istenen çıktının nasıl görüneceği hakkında çok az fikrimiz olduğunda veya hiçbir fikrimiz olmadığında kullandığımız yaklaşımdır. Bu öğrenmede kullanıcının modeli denetlemesine ihtiyaç yoktur. Değişkenlerin etkisini bilmediğimiz ve kalıpların keşfedilmediği verilerden model oluşturabiliriz. Gözetimsiz öğrenmede sadece veriler vardır, bunlar hakkında bilgi verilmez. Yani bu öğrenme türünde etiketli veri mevcut değildir. Değişkenler arasındaki ilişkilere dayalı olarak verileri kümeleyerek çeşitli modeller ve yapılar oluşturulur. Denetimsiz öğrenme daha çok kümeleme problemlerinde kullanılmaktadır.
Takviyeli öğrenme olarak da bilinen pekiştirmeli öğrenme, hedefe ulaşmak için yapılması gerekenlerin öğrenildiği bir makine öğrenmesi yaklaşımıdır. Pekiştirmeli öğrenmede, aracı olarak adlandırılan öğrenme makinemiz, karşılaştığı durumlara tepki verir ve karşılığında sayısal bir ödül veya ceza sinyali alır. Aracı aldığı ödül puanlarını maksimize etmeye çalışır. Bu şekilde deneme yanılma yöntemi ile en iyi eylemler öğrenilir. Robotik alanında yaygınca kullanılmaktadır. Pekiştirmeli öğrenme yaklaşımında, robotlar deneme yanılma yöntemiyle hedefe ulaşırlar. Robot, engele çarpması durumunda negatif bir geri bildirim alır ve aldığı bildirimler sonucunda engellerden kaçmayı öğrenir.
Kısaca bu yazıda makine öğrenmesine kavramına giriş yaparken makine öğrenmesi türlerine ve makine öğrenmesinde karşılaşacağınız değişkenlere dair bazı bilgiler aktarmaya çalıştım. Konu hakkında detaylı bilgi edinmek isterseniz Miuul'un Makine Öğrenmesi eğitimini inceleyebilirsiniz. Kariyerinize veri bilimci olarak devam ederek makine öğrenmesini günlük çalışmalarınızın bir parçası haline getirmek isterseniz Data Scientist Path kariyer yolculuğuna göz atabilirsiniz.
Kaynaklar