You are on page 1of 67

Makine Öğrenimi Rehberi

akademi40.org 1
Makine Öğrenimi Rehberi

Giriş
Makine öğrenimini çok geniş perspektiften ele alan ve yeni başlayanlar için yol gösterici bir
rehber niteliğinde hazırladığımız e-kitabımız, akademi40.org web sitesinde
yayımladığımız içeriklerin bir araya getirilmesiyle oluşturulmuştur.

Bu rehberde, yapay zekâ ve makine öğrenimi kavramlarını, makine öğreniminin tarihi


gelişimini, eğlenceli makine öğrenimi projeleri ve günlük hayatımızda kullanılan makine
öğrenimi uygulamalarına kadar pek çok bilgiyi bulabileceksiniz.

Bizi sosyal medya hesaplarımızdan takip etmeyi unutmayın.

@akademi40org

Keyifli okumalar! - Akademi 40 Ekibi

akademi40.org 2
Makine Öğrenimi Rehberi

İçindekiler

Giriş .........................................................................................................................................2
Yapay Zekâ, Makine Öğrenimi ve Derin Öğrenme Arasındaki Farklar Nelerdir? .....................4
Makine Öğrenimi ve Derin Öğrenmenin Tarihi ........................................................................9
İnsan Öğrenmesi ve Makine Öğrenimi ..................................................................................18
Makine Öğreniminin Önemi ..................................................................................................20
Makine Öğreniminde En Çok Kullanılan 6 Terim ...................................................................23
Makine Öğrenimi Zihin Haritası ............................................................................................26
Makine Öğrenimi: Test Edilebilirse Öğretilebilir ....................................................................32
Otomatik Makine Öğrenimi (AutoML) nedir? .......................................................................35
Yeni Başlayanlar için Makine Öğrenimi Modelleri Nasıl Yapılır? ...........................................37
DevOps için Makine Öğrenimi (ML/AI) .................................................................................42
Edge Cihazlarda Makine Öğrenimi .......................................................................................44
Makine Öğrenimi Modellerinin Artan Eğitimi için Veri Tankları .............................................47
Yapay Zekâ ve Makine Öğrenimi İçin En İyi 20 Python Kütüphanesi ...................................49
Eğlenceli Yapay Zekâ ve Makine Öğrenimi Projeleri .............................................................52
Google'ın Desteklediği En İyi Makine Öğrenimi Projeleri ......................................................54
Çocuklar İçin Yapay Zekâ ve Makine Öğrenimi ....................................................................56
Sosyal Dünyada Makine Öğrenimi........................................................................................59
Bankacılıkta Makine Öğrenimi – İmkanlar, Riskler, Kullanım Alanları ...................................62

akademi40.org 3
Makine Öğrenimi Rehberi

Yapay Zekâ, Makine Öğrenimi ve Derin Öğrenme


Arasındaki Farklar Nelerdir?

Geçtiğimiz birkaç sene boyunca yapay zekâ en gözde konulardan biri olmaya devam etti.
En parlak zihinler AI araştırmalarına katılıyor, en büyük kurumlar bu alanda yeterlilik
sağlayabilmek için astronomik rakamlar tahsis ediyor ve AI girişimleri yıllık milyarlarca dolar
yatırım topluyor.

Eğer iş süreçlerini geliştirmekle ilgileniyorsanız ya da işiniz için yeni fikirler arıyorsanız büyük
ihtimalle AI’a denk gelmişsinizdir. Bu konuda etkili bir şekilde çalışabilmek için temel
unsurlarını anlamanız gerekiyor.

Yapay Zekâ
Öncelikle yapay zekânın ne demek olduğuna bir bakalım. François Chollet, Python’la Derin
Öğrenme kitabında kısa ve öz bir tanım veriyor: “Normalde insanlar tarafından
gerçekleştirilen düşünsel görevleri otomatize etme çabası. Bu bakımdan, AI, makine
öğrenimini ve derin öğrenimi kapsayan genel bir alan oluyor ama aynı zamanda
öğrenmeyle alakası olmayan birçok yaklaşımı da içeriyor.”

Örneğin, MIT Yapay Zekâ Laboratuvarı’nda yaratılan, günümüz sohbet botlarının öncüsü
ELIZA. Bu program bir bireyle uzun bir diyaloğu sürdürebiliyor ancak yeni kelimeler
öğrenemiyor ya da diyalog sırasındaki davranışlarını düzeltemiyor. ELIZA’nın davranışları
özel bir programlama dili kullanarak açıkça nitelendirilmek içindi.

Modern anlamdaki yapay zekânın tarihi 1950lerde, Alan Turing ve alanın ilk meraklılarını bir
araya getiren Dartmouth atölyesinde, AI biliminin temel prensiplerinin formüle edilişiyle
başladı. Sonrasında, bu endüstri günümüz bilim dünyasının kilit alanlarından biri olana dek
birçok kez ilgi dalgası ve ardından gelen durgunluk (“AI kışları” olarak da bilinir) döngüleri
yaşadı.

Güçlü ve zayıf yapay zekâ hipotezi de bahsetmeye değer bir konu. Güçlü bir AI, düşünebilir
ve kendinin ayrı bir birey olarak farkında olabilir. Zayıf AI böyle yetilerden mahrumdur ve
basitçe ona verilen çeşitli görevleri yerine getirir (satranç oynamak, görsellerde kedileri
bulmak ya da 432,500 dolara resim çizmek gibi). Merak etmeyin, günümüzde var olan
bütün yapay zekâlar zayıf.

akademi40.org 4
Makine Öğrenimi Rehberi

Bugünlerde AI’ın kullanılmadığı herhangi bir aktivite hayal etmek zor. Araba da sürseniz,
selfie de çekseniz, internetten kendinize spor ayakkabı siparişi verseniz ya da tatil
planlasanız, her yerde küçük, zayıf ama şimdiden çok kullanışlı yapay zekâ
uygulamalarından destek alıyorsunuz.

Makine Öğrenimi
Zekânın (yapay olsun ya da olmasın) ana özelliklerinden biri öğrenebilme yetisidir. AI için,
bu yetiden bir makine öğrenimi ailesi sorumlu. Özünde basittir; gelen veriyi sonuca çeviren
net bir talimatlar seti olan klasik algoritmaların aksine, makine öğrenimi, örnek veriler ve
onlara karşılık gelen sonuçlardaki örüntüleri bularak, gelişigüzel verileri istenen sonuçlara
dönüştürecek bir algoritma üretiyor.

Makine öğreniminin üç ana kategorisi var:

Gözetimli öğrenme: Her bir örnek için önceden bilinen sonuçları olan veri örnekleri
temelinde eğitilir. Makine öğrenimi için çok popüler iki görev vardır; regresyon ve
sınıflandırma görevi. Regresyon, devamlı bir neticenin tahminidir, bir evin fiyatı ya da üretim
emisyonları seviyesi gibi. Sınıflandırma ise bir kategori (sınıf) tahminidir, örneğin bir e-
postanın spam olup olmadığı ya da bir kitabın polisiye mi yoksa ansiklopedi mi olduğunun
tahmin edilmesi.

Gözetimsiz öğrenme: Sistem, veriler arası ilişkiler ve örüntüler bulur. Bu takdirde her bir
örnek için sonuç belirsizdir.

Takviyeli öğrenme: Sistemin, doğru eylemler için ödüllendirip yanlış olanlar için
cezalandırıldığı bir yaklaşımdır. Sonuç olarak, sistem en yüksek ödülü ve en az cezayı aldığı
bir algoritma geliştirmeyi öğrenir.

İdeal bir makine öğrenimi modeli herhangi bir veriyi analiz edebilir, tüm örüntüleri bulabilir ve
istenen herhangi bir sonucu elde etmek için bir algoritma oluşturabilir. Ama bu ideal model
henüz yaratılmadı. Bunun yaratımına giden yolu Pedro Domingos’un “The Master
Algorithm” kitabında okuyabilirsiniz.

akademi40.org 5
Makine Öğrenimi Rehberi

Günümüzün makine öğrenimi modelleri belli görevlerde özelleşmiş durumdalar, her birinin
kendi güçlü ve zayıf yanları var. Bu modeller şöyle:

Lineer regresyon, istatistikten türetilmiş klasik bir model. Adından da anlaşılacağı üzere,
regresyon görevleri için tasarlanmış, yani sürekli değerlerin tahmini için. Örneğin, hava
durumuna bakarak ne kadar limonata satılacağı gibi.

Lojistik regresyon, sınıflandırma görevleri için kullanılıyor. Verilen örneğin bahsi geçen sınıfa
ait olma ihtimalini öngörüyor.

Karar ağacı, sıklıkla sınıflandırma görevleri için kullanılıyor. Bu yöntemde verilen nesnenin
sınıfı, her birinin genelde evet/hayır cevabı olan bir dizi soru üzerinden tanımlanıyor.

K-En yakın Komşular, çoğunlukla sınıflandırma için kullanılan basit ve hızlı bir yöntem. Bu
yöntemde, veri göstergesi sınıfı, veri göstergesi örneklerine en benzer “k” tarafından (k
herhangi bir sayı olabilir) belirleniyor.

Naive Bayes, belirli bir olayın (e-posta bir spam) verilen koşullar altında olabilirliğini, olasılık
teorisinden ve Bayes teoreminden yararlanarak belirleyen popüler bir sınıflandırma
yöntemidir.

SVM, genellikle sınıflandırma görevleri için kullanılan bir gözetimli makine öğrenimi
(supervised machine learning) algoritmasıdır. Farklı sınıflardaki nesneleri, her bir nesnenin
birbirleriyle alakalı özellikleri olsa bile, etkili bir biçimde ayırabilir.

Topluluklar (ensembles), birçok makine öğrenimi modelini birleştirir ve bir nesnenin sınıfını,
her bir modeldeki yanıtın ortalaması ya da oylamasını temel alarak belirler.

akademi40.org 6
Makine Öğrenimi Rehberi

Sinir ağları, insan beyninin prensiplerini temel alır. Bir sinir ağı, birçok nöron ve o nöronlar
arası bağlantı içerir. Bir nöron, birçok girdisi ve tek bir çıktısı olan bir fonksiyon olarak temsil
edilebilir. Her bir nöron, girdilerin (her bir girdinin ağırlığı farklı olabilir ki bu da önemini
belirler) parametrelerini alır, üzerinde spesifik bir fonksiyon gerçekleştirir ve sonucu çıktıya
verir. Bir nöronun çıktısı başka bir nöronun girdisi olabilir. Böylece, derin öğrenmenin konusu
olan çok katmanlı sinir ağları biçimlenmiş olur. Bunu daha detaylı konuşacağız.

Nöron yapısı diyagramı:

akademi40.org 7
Makine Öğrenimi Rehberi

İki gizli katmanlı yapay sinir ağı:

Verilen örnekleri inceleyerek, sinir ağı nöronlar arasındaki ağırlıkları ayarlar ki istenen sonucu
vermekte etkisi en büyük olan nöronların ağırlığı en fazla olsun. Örneğin bir hayvan
çizgiliyse, tüylüyse ve miyavlıyorsa, o zaman büyük ihtimalle kedidir. Bu sırada en yüksek
ağırlığı miyavlama parametresine atarız. Yani hayvan çizgili değilse ve tüylü değilse ama
miyavlıyorsa hâlâ büyük ihtimalle kedidir.

Derin Öğrenme
Derin öğrenme, derin sinir ağlarıyla uğraşır; derinliğe dair görüşler ise çeşitlidir. Bazı
uzmanlara göre eğer bir ağın birden fazla gizli katmanı varsa o derin sayılabilir, diğerlerine
göreyse sadece birçok gizli katmanı varsa o ağ derin olabilir. Şu an aktif olarak kullanılan
birkaç tip sinir ağı var. En popüler olanları ise şöyle:

Uzun Kısa-Süreli Bellek (LSTM): Metin sınıflandırması ve üretimi, ses tanıma, müzikal
beste üretimi ve zaman serileri tahmini.

Evrişimsel Sinir Ağları (CNN): Resim tanıma, video analizi ve doğal dil işleme görevleri.

Son olarak; umarız, bu makaleyi okumuş biri olarak yapay zekâ, makine öğrenimi ve derin
öğrenme kavramları arasında ne fark olduğunu artık biliyorsunuzdur. Yine de son bir özet
yapmak gerekirse; yapay zekâ, düşünsel görevlerin (okumak, go oynamak, resim tanımak
ve sürücüsüz arabalar yaratmak gibi) otomasyonuyla ilgili genel bir alan. Makine öğrenimi,
bir AI’ın öğrenme yetisinden sorumlu yapay zekâ yöntemleri seti. Derin öğrenme ise makine
öğrenimi yöntemlerinin çok katmanlı sinir ağlarını inceleyen bir alt koludur.

akademi40.org 8
Makine Öğrenimi Rehberi

Makine Öğrenimi ve Derin Öğrenmenin Tarihi

Bugünlerde makine öğrenimi (ML) ve yapay zekâ (AI) hakkında kaynağınıza bağlı olarak iyi
ya da kötü çok şey duymuşsunuzdur.

Çoğumuz konu yapay zekâya gelince anında 2001: Bir Uzay Macerası’ndaki HAL’ı,
Terminatör robotları, C-3PO'yu, Star Trek’teki Data’yı ya da (ülkemizde Aşk adıyla
gösterime giren) Her’deki Samantha'yı canlandırıyoruz zihnimizde. Pek çok kişi de ayrı bir
konu olarak makine öğrenimine aşina bile değil.

Bu tabirler sık sık birbirlerinin yerine kullanılabilecek şekilde ortaya atılıyorlar ancak aynı
oldukları pek söylenemez. En genel anlamıyla, makine öğrenimi yapay zekâdan evrildi
diyebiliriz.

Google Trend grafiklerinde, yapay zekâ Eylül 2015 civarında makine öğrenimi tarafından
geçilene kadar daha popüler bir aramaydı. Makine öğrenimi, yapay zekânın -tek olmasa
bile- ana uygulamalarından biri oldu. Makine öğrenimini bir alt dal ya da yapay zekâyı elde
etmenin yolu olarak tanımlayanlar da mevcut.

Eğer hâlâ gelecekten gönderilmiş katil robotlar hayal ediyorsanız şimdi vazgeçmenin tam
zamanı. Yapay zekâ da makine öğrenimi de “sadece” insanlığın kaderiyle ilgili olmaktan çok
daha büyük şeyler.

Derin Öğrenme
Eğer makine öğrenimi yapay zekânın bir alt dalıysa, derin öğrenme de makine öğreniminin
bir alt dalı olarak görülebilir. Konunun evrimi yapay zekâ > makine öğrenimi > derin
öğrenme şeklinde ilerledi.

“Derin öğrenme” tabiri ilk kez 2000’lerde, Igor Aizenberg ve meslektaşları tarafından
Yapay Sinir Ağları (ANNs) hakkında konuşurken kullanıldı.

O zamandan beri, terim gerçekten de tüm yapay zekâ sohbetlerini ele geçirmeye başladı,
hem de çalışmanın yer aldığı Doğal Dil İşleme (ya da NLP) gibi başka dallar da olmasına
rağmen.

Özetlemek gerekirse derin öğrenme, makine öğrenimini sağlamak için bir yol. Yapay Sinir
Ağları daha güçlü ve karmaşık hale geldikçe -birçok katman ve nöronla kelimenin tam
manasıyla derinleştikçe- derin öğrenmenin sağlam makine öğrenimini kolaylaştırma ve
yapay zekâ üretme kabiliyeti de arttı. 2017’de bu katmanların derinliği 1000 olabiliyordu.

akademi40.org 9
Makine Öğrenimi Rehberi

Derin Öğrenme “gözetimli öğrenme” denen –sinir ağının etiketlenmiş verileri kullanarak
alıştırma yaptığı- ya da “gözetimsiz öğrenme” denen -ağın etiketlenmemiş verileri
kullandığı ve tekrar eden desenlere baktığı- yöntemleri kullanıyor. Her seviyedeki nöronlar
“tahmin” yapıyor ve en olası görülerini belirliyor, ardından da bu bilgiyi bir sonraki seviyeye
geçiriyorlar, nihai sonuca kadar.

Kafanız karıştı mı? Yalnız değilsiniz.

Evet, biraz kafa karıştırıcı bir konu. Yapay zekâ dünyasında şu zamana kadarki en heyecan
verici gelişme bu. Ama alanın çetrefilini kavramaya çalışmak yerine –ki bu başlı başına konu
üzerine sürekli ve kapsamlı bir makale dizisi olurdu- makine öğreniminin tarihindeki büyük
gelişmelerden ve konunun uzantısı olarak, derin öğrenme ve yapay zekâya şöyle bir
bakalım. Görece kısa zaman içinde uzun bir yol kat etti.

1943 – Sinir Ağının İlk Matematiksel Modeli

Walter Pitts ve Warren McCulloch


Makine öğrenimi ve derin öğrenmenin çalışabilmesi için, tabii ki insan beynindeki sinir
ağlarına dair bir anlayış geliştirmiş olmamız gerekiyordu.

Bir mantıkçı olan Walter Pitts ve nörobilimci Warren McCulloch, 1943’te sinir ağının ilk
matematiksel modelini yarattıklarında bize yapbozun o parçasını vermiş oldular. Çığır açıcı
çalışmaları “Sinirsel Aktivitelere İçsel Fikirlerin Mantıksal Bir Hesaplaması (A Logical
Calculus of Ideas Immanent in Nervous Activity)”, insanın düşünsel sürecini taklit etmeyi
amaçlayan matematik algoritmaları sunar.

Modelleri -genelde McCulloch-Pitts nöronları diye bilinir- yıllar içinde evrilmiş olsa da
bugün hâlâ standart kabul edilir.

1950 – Makine Öğrenimi Öngörüsü

Alan Turing
İngiliz matematikçi Turing, belki de en çok II. Dünya Savaşı’ndaki şifre kırıcılığıyla tanınıyor.

Ama matematiğe ve bilime yaptığı katkılar bununla sınırlı değil. 1947’de makine öğrenimi
gelişimini öngörmekle kalmayıp meslekler üzerindeki etkisini tarif etmeye kadar gitti.

1950’de kaleme aldığı makalesi “Makinelerin İşleyişi ve Zekâ”da da tam böyle bir makine
tarif ediyor bize, hatta genetik algoritmalara dair ipuçları veriyor. Burada Turing Testi olarak
bilinen -oysa kendisinin Taklit Oyunu diye adlandırdığı-, bir bilgisayarı “düşünüp
düşünemeyeceğini” anlamaya yarayan testi ortaya atıyor.

akademi40.org 10
Makine Öğrenimi Rehberi

En basit haliyle bu test bir makinenin bir insanla metin yoluyla bir sohbet sürdürmesini
gerektiriyor. Eğer beş dakika sonra insan başka bir insanla konuştuğuna ikna olursa, makine
testi geçmiş oluyor. Sonuçların geçerliliği hala birçok kişi tarafından tartışılsa da testin
geçilmesi 60 yıl aldı.

1952 - İlk Makine Öğrenimi Programları

Arthur Samuel
Arthur Samuel 1952'de makine öğrenimi icat etti ve "makine öğrenimi" tabirini adlandırdı.
Makine öğreniminin babası olarak anılıyor. IBM’deki Poughkeepsie Laboratuvarına
katılmasının üzerine Arthur Samuel ilk bilgisayar öğrenimi programlarını yarattı. Programlar
dama oynamaları için tasarlanmıştı. Arthur Samuel’in programı, her dama oynayışında daha
iyiye gitmesi, hatalarını düzeltmesi ve o verilerle kazanmanın daha iyi yollarını bulmasıyla
diğerlerinden ayrılıyordu. Bu otomatik öğrenme, makine öğreniminin ilk örneklerinden biri
olacaktı.

1957 – Derin Sinir Ağlarının Temellerini Atmak

Frank Rosenblatt
Bir psikolog olan Rosenblatt, Cornell Havacılık Laboratuvarı için 1957’de “Perceptron:
Algılayan ve Tanıyan bir Otomaton (The Perceptron: A Perceiving and Recognizing
Automaton)” başlıklı yazısını yayınladı. Burada “optik bir beynin algısal süreçlerine yakın bir
şekilde, optik, elektriksel veya sese dair bilgi kalıpları arasındaki benzerlikleri veya kimlikleri
tanımayı öğrenecek elektronik veya elektromekanik bir sistem inşa edeceğini” belirtiyordu.
Fikri, yazılım ya da algoritmadan ziyade donanımdı ama bu şekilde sıfırdan öğrenmenin
tohumlarını ekmiş oldu ve geniş çevrelerce derin sinir ağlarının (DNN) kurucusu olarak
tanındı.

1959 – Yalın Hücrelerin ve Karmaşık Hücrelerin Keşfi

David H. Hubel ve Torsten Wiesel


1959’da Nörofizyolojist ve Nobel ödüllü David H. Hubel ve Torsten Wiesel birincil görme
korteksinde iki tip hücre olduğunu keşfetti; yalın hücreler ve karmaşık hücreler.

Birçok yapay sinir ağları (ANNs) o veya bu şekilde bu biyolojik gözlemlerden ilham almıştır.
Derin öğrenmeye özgü bir dönüm noktası olmasa da alan üzerinde çok büyük etkisi olduğu
kesindi.

akademi40.org 11
Makine Öğrenimi Rehberi

1960 – Kontrol Kuramı


Henry J. Kelley, Virginia Teknik Enstitüsü’nde hava-uzay ve okyanus mühendisliği
profesörüydü. 1960’ta alanında herkesçe tanınan, büyük “Optimal Uçuş Rotaları için İrtifa
Kuramı” makalesini yayınladı. Kontrol Kuramı konusundaki birçok fikri -girdili sistemlerin
davranışları ve o davranışların geri bildirim ile nasıl değiştirilebileceği- yıllar içinde doğrudan
AI ve ANNs alanlarında uygulanır oldu. Bunlar sinir ağlarını eğitmede kullanılan sürekli geri
yayılım modellerinin (ya da diğer adıyla hataların geriye doğru yayılımının) temellerini
geliştirmede kullanıldılar.

1965 – Çalışan İlk Derin Öğrenme Ağları

Alexey Ivakhnenko ve V.G. Lapa


Matematikçi Ivakhnenko ve Lapa’nın da dahil olduğu ortakları,1965’te o zamana dek
sadece teoride ve fikirde kalmış olan ilk çalışan derin öğrenme ağlarını yarattılar.
Ivakhnenko, “modellerin tam otomatik yapısal ve parametrik optimizasyonunu içeren çok-
parametrik veri kümelerinin bilgisayar tabanlı matematiksel modelleri için tümevarım
algoritmaları ailesi” olarak tanımlanan Veri İşlemede Grup Metodu’nu (GMDH) geliştirdi ve
bunu sinir ağlarına uyguladı. Sırf bu sebepten bile, birçokları Ivakhnenko’yu modern derin
öğrenmenin babası olarak görür.

Öğrenme algoritmaları, en iyi nitelikleri bulup onları sistem içinde öne çıkartmak için her
katmanda istatistiksel yöntemler kullanan derin ileri beslemeli çok katmanlı algılayıcılar
kullanır. Ivakhnenko, 1971’de GMDH’yi kullanarak 8 katmanlı bir derin ağ yaratabilmiş ve
Alpha denen bilgisayar tanımlama sistemindeki öğrenme sürecini başarılı bir şekilde
gösterebilmişti.

1979-80 - Bir ANN Görsel Örüntüleri Nasıl Tanıyacağını


Öğreniyor

Kunihiko Fukushima
Sinir ağları konusunda tanınan bir mucit olan Fukushima belki de en çok görsel kalıpları
nasıl tanıyacağını öğrenen yapay sinir ağı Neocognitron’u yaratışıyla biliniyor.

El yazısı karakterleri ve diğer örüntü tanıma görevlerinde, öneri sistemlerinde ve hatta doğal
dil işlemede kullanıldı. Yaptığı iş -büyük oranda Hubel ve Wiesel’den etkilenmişti-
hayvanlarda bulunan görsel korteks düzenlemesine dayanan evrişimli sinir ağlarının
gelişimine yol açtı. Bunlar en az miktarda önişlem kullanmak üzere tasarlanmış çok katmanlı
algılayıcı varyasyonlarıydı.

akademi40.org 12
Makine Öğrenimi Rehberi

1982 – Hopfield Ağlarının Yaratılışı

John Hopfield
1982’de Hopfield, artık onun adını taşıyan bir sistemi yarattı ve yaydı. Hopfield Ağları,
ilişkilendirilebilir bellek sistemleri olarak çalışan tekrarlayan sinir ağlarıdır ve 21. yüzyılda
hala derin öğrenme için popüler bir uygulama gerecidir.

1985 – Bir Program İngilizce Kelimeleri Telaffuz Etmeyi


Öğreniyor

Terry Sejnowski
Hesaplamalı nörobilimci Terry Sejnowski öğrenme sürecine dair bildiklerini 1985’te
NETtalk’ı yaratmak için kullandı. Program İngilizce kelimeleri hemen hemen bir çocuğun
yapacağı şekilde öğrendi ve metni konuşmaya çevirme süreci boyunca kendini geliştirmeye
devam etti.

1986 – Şekil Tanıma ve Kelime Tahmininde İlerlemeler

David Rumelhart, Geoffrey Hinton ve Ronald J. Williams


1986 tarihli “Geri-Yayılımlı Hatalarla Öğrenme Temsilleri (Learning Representations by
Back-propagating Errors)” makalesinde Rumelhart, Hinton ve Williams geri yayılım sürecini
ince detaylarına kadar tarif ettiler. Bunun şekil tanıma, kelime tahmin etme ve bunun gibi
birçok görevde, var olan sinir ağlarını ne kadar çok geliştirebileceğini gösterdiler. İlk
başarının ardından gelen birkaç talihsizliğe rağmen, Hinton yeni başarılara ve övgülere
ulaşmak için araştırmalarına devam etti. Alandaki birçok insan tarafından derin öğrenmenin
manevi babası kabul edilir.

1989 – El Yazısı Rakamları Okuyan Makineler

Yann LeCun
LeCun -AI ve DL evrenindeki bir başka rock yıldızı- elle yazılmış rakamları okuyabilmek için
1989’da evrişimli sinir ağlarını (geliştirilmelerinde kendisi de aracıydı) yakın zamandaki geri
yayılım kuramlarıyla birleştirdi. Yarattığı sistem sonunda elle yazılmış çekleri ve NCR ya da
diğer şirketler tarafından yazılmış posta kodlarını okumak için kullanıldı, 90’ların sonları ve
2000’lerin başında Amerika Birleşik Devletleri’nde kesilmiş çeklerin %10-20 kadarı bu
işlemden geçiyordu.

akademi40.org 13
Makine Öğrenimi Rehberi

1989 – Q Öğrenme

Christopher Watkins
Watkins doktora tezini –“Geciken Ödüllerden Öğrenmek (Learning from Delayed
Rewards)”- 1989 yılında yayınladı. Tezinde, makinelerdeki takviyeli öğrenmenin hem
pratikliğini hem de fizibilitesini artıran Q-Öğrenme kavramını tanıttı. Bu yeni algoritma,
Markov Karar Süreci’nin geçiş olasılıklarını veya beklenen ödüllerini modellemeden, optimal
kontrolü doğrudan öğrenmenin mümkün olduğunu ileri sürüyordu.

1993 - Bir “Çok Derin Öğrenme” Görevi Çözüldü

Jürgen Schmidhuber
Alman bilgisayar bilimci Schmidhuber 1993’te, tekrarlayan sinir ağında 1000’den fazla
katman gerektiren bir “çok derin öğrenme” görevini tamamladı. Bu sinir ağlarının
karmaşıklığı ve yetenekleri konusunda kocaman bir adımdı.

1995 – Destek Vektör Makineleri

Corinna Cortes ve Vladimir Vapnik


Destek Vektör Makineleri (Support Vector Machines) -ya da SVMs- 1960’lardan beri vardı
ve onyıllar içinde ince ayarlar yapılıp düzeltildi. Günümüzdeki standart model Cortes ve
Vapnik tarafından 1993 yılında tasarlandı ve 1995’te de sunuldu. Bir SVM temel olarak
benzer verileri tanıyıp haritalamak için kullanılan bir sistemdir ve makine öğrenimi ve derin
öğrenmeyle bağlantılı olduğu sürece metin sınıflandırması, el yazısı tanıma ve görsel
sınıflandırma gibi alanlarda kullanılabilir.

1997 – Uzun Kısa-Süreli Hafıza Öne Sürüldü

Jürgen Schmidhuber ve Sepp Hochreiter


Bir tekrarlayan sinir ağı yapısı olan uzun kısa-süreli hafıza (LSTM) Schmidhuber ve
Hochreiter tarafından 1997 yılında ortaya atıldı. Gereken bilginin RNN’de uzağa, çok
“arkalara” bir yere konumlanıp “kaybolduğu” uzun-süreli bağımlılık problemini çözerek
tekrarlayan sinir ağlarının verimliliğini ve pratikliğini artırdılar. Zamanla geliştirilerek LSTM
ağları DL halkalarında sık kullanılır oldu ve Google yakın zamanda bunu Android destekli
akıllı telefonları için konuşma-tanıma yazılımına entegre etti.

akademi40.org 14
Makine Öğrenimi Rehberi

1998 – Gradyan Tabanlı Öğrenim

Yann LeCun
LeCun, 1998’de “Gradyan Tabanlı Öğrenimin Belge Tanımaya Uygulanması (Gradient-
based Learning Applied to Document Recognition)” başlıklı yazısını yayınladığında derin
öğrenme alanındaki bir başka gelişmenin daha önemli ismi olmuştu. Stokastik gradyan iniş
algoritmasının (gradyan tabanlı öğrenim olarak da bilinir) geri yayılım algoritmasıyla
birleştirilmesi derin öğrenmeye dair tercih edilen ve giderek daha başarılı olan bir
yaklaşımdır.

2009 – Launch of ImageNet

Fei-Fei Li
Stanford Üniversitesindeki yapay zekâ Laboratuvarının başı ve profesörü olan Fei-Fei Li,
2009’da ImageNet’i başlattı. 2019 itibariyle, 14 milyondan fazla (son sayıma göre
14,197,122) etiketli görselin araştırmacılar, eğitimciler ve öğrencilerin erişimine açık olduğu
çok büyük ve ücretsiz bir veri tabanı. Etiketli veri -bu görseller gibi- gözetimli öğrenmede
sinir ağlarına “alıştırma yaptırmak” için gerekli. Görseller, İngilizce kelimelerin -isimlerin,
yüklemlerin, zarfların ve sıfatların- eş küme denen eş anlamlı gruplara göre sıralandığı
sözcüksel bir veri tabanı olan Wordnet’e göre etiketleniyor ve düzenleniyor.

2011 – AlexNet’in yaratılışı

Alex Krizhevsky
2011 ve 2012 yılları arasında Alex Krixhevsky, kendi yaratımı olan evrişimli sinir ağı AlexNet
ile birçok makine öğrenimi ve derin öğrenme yarışması kazandı. AlexNet yıllar önce Yann
LeCun tarafından yapılan LeNet5’ın üzerine kurulmuş ve geliştirilmişti. Başta yalnızca sekiz
katmanı vardı -üç tane tamamen bağlı katman tarafından takip edilen beş evrişimli katman-
ve düzeltilmiş doğrusal birimler kullanarak hızı ve düşmeyi güçlendirdi. Getirdiği başarı,
derin öğrenme topluluğu içinde bir evrişimli sinir ağı Rönesansını tetikledi.

2012 – Kedi Deneyi


Kulağa şirin ve önemsiz gelebilir ama “Kedi Deneyi” denen şey çok büyük bir adımdı.
Binlerce bilgisayara yayılmış sinir ağını kullanarak, takım sisteme -YouTube’dan rastgele
alınmış- 10,000,000 etiketlenmemiş görsel sundu ve veriler üzerinde analiz yapmasına izin
verdi. Bu gözetimsiz öğrenme seansı tamamlandığında program kendine kedileri
belirlemeyi ve tanımayı öğretmişti, hem de o zamana kadar yapılmış tüm gözetimsiz
öğrenmelerden %70 oranında daha iyi bir performans göstererek. Ağ, sunulan objelerden

akademi40.org 15
Makine Öğrenimi Rehberi

yalnızca %15’ini tanıdı. Yine de bu çalışma yapay zekâya doğru atılmış bir başka ufak
adımdı.

2014 – DeepFace
Devasa platformlar sıklıkla sınırların dışındaki ilk düşünmelerdir ve bunlardan hiçbiri de
Facebook’tan büyük değildir. Bu sosyal medya yaratığının 2014 yılında geliştirip dünyaya
sunduğu derin öğrenme sistemi -bilinen adıyla DeepFace- yüzleri %97.35 isabetle tanımak
için sinir ağlarını kullanıyor. Bu önceki çabaların %27 daha fazlasına tekabül ediyor ve %97.5
olduğu söylenen insan becerisine de rakip bir figür olmuş oluyor.

2014 – Üretken Çekişmeli Ağlar (Generative Adversarial


Networks) GAN
Ian Goodfellow’un liderlik ettiği bir araştırma ekibi tarafından 2014 yılında tanıtıldığında
Yann LeCun’dan aşağı kalır yanı olmayan bir otorite GANlar hakkında şunu söyledi: Bu epey
büyük bir mesele. Üretken çekişmeli ağlar, modellerin gözetimsiz eğitimle mücadele
edebilmesini sağlıyor ki bu da aşağı yukarı yapay zekâ topluluğunun nihai hedefi diyebiliriz.

Özünde, bir GAN iki rakip ağ kullanır; ilki veriyi alır ve ayırt edilemez örnekler yaratmaya
çalışırken ikincisi ise veriyi de yaratılan örnekleri de alır ve her bir verinin hakiki mi yoksa
üretilmiş mi olduğuna karar verir. Simultane olarak öğrenerek, ağlar birbirlerine karşı yarışır
ve birbirlerini daha hızlı “akıllanmaya” iterler.

2016 – Güçlü Makine Öğrenimi Ürünleri


Cray Inc. ve onun gibi daha başka birçok şirket artık güçlü makine öğrenimi ve derin
öğrenme ürünleri ve çözümleri sunabiliyorlar. Microsoft’un sinir ağı yazılımını kendi XC50
süper bilgisayarında 1000 tane Nvidia Tesla P100 grafik işleme birimiyle kullanarak verilere
öncekine kıyasla çok küçük bir zamanda derin öğrenme uygulayabiliyorlar.

Eğlence ve Oyun
Dünyayı kurtaracak olmayabilir ama yıllar içinde oyunlara ve insanlara karşı yarışmalara dair
elde edilen başarılardan bahsedilmeyen bir makine öğrenimi ve derin öğrenme tarihçesi
kesinlikle eksik kalır:

● 1992: Gerald Tesauro, tavla oynamayı öğrenmek için yapay sinir ağı kullanan bir
bilgisayar programı olan TD-Gammon’ı geliştirdi.

● 1997: IBM tarafından tasarlanan Deep Blue satranç büyük ustası Garry Kasparov’u
altı maçlık seride yendi.

akademi40.org 16
Makine Öğrenimi Rehberi

● 2011: IBM tarafından geliştirilen bir soru cevaplama sistemi olan Watson, Jeopardy!
Adlı yarışma programında Ken Jennings ve Brad Rutter’a karşı yarıştı. Makine
öğrenimi, doğal dil işleme ve bilgi çekme tekniklerinin bir kombinasyonunu
kullanarak Watson üç maç boyunca yarışmayı kazandı.

● 2016: Google’ın AlphaGo programı en iyi uluslararası Go oyuncularından biri olan


Koreli Lee Sedol’u yendi. DeepMind tarafından geliştirilen AlphaGo makine
öğrenimi ve ağaç araması tekniklerini kullanıyor. Mayıs 2017’de ise dünya birincisi
Çinli oyuncu Ke Jie’yi üç maçtan ikisini kazanarak yendi.

Kabaca Bir Zaman Çizelgesi


Geçtiğimiz 60 yıl içinde AI, ML ve DL alanlarında pek çok gelişme ve ilerleme oldu. Her birini
tek tek tartışmak bir blog yazısından ziyade koca bir kitap gerektirirdi. Kısa bir zaman
cetveline sıkıştıracak olursak derin öğrenme şöyle görünürdü:

● 1960’lar: Yüzeysel sinir ağları

● 1960-70’ler: Geri yayılımın ortaya çıkışı

● 1974-80: İlk AI Kışı

● 1980’ler: Evrişimin ortaya çıkışı

● 1987-93: İkinci AI Kışı

● 1990’lar: Gözetimsiz derin öğrenme

● 1990’lar-2000’ler: Gözetimli derin öğrenme yeniden moda

● 2006’dan Günümüze: Modern derin öğrenme

Bugün, derin öğrenme farkında bile olmadığımız kadar hayatlarımızın içinde: Google’ın ses
ve yüz tanıması, Netflix ve Amazon’un öneri mekanizmaları, Apple’ın Siri’si, otomatik e-
posta ve mesaj cevapları, sohbet botları ve daha bir sürü şey. Her yanımızı saran veriyle, bu
programların analiz edip gelişim göstereceği daha da çok bilgi var. Derin öğrenme buradan
nereye gidecek? Bizi nereye götürecek? Söylemesi zor. Yapay zekâ evrilmeye devam ediyor
ve bir sonraki büyük atılım biraz zaman alabilir.

akademi40.org 17
Makine Öğrenimi Rehberi

İnsan Öğrenmesi ve Makine Öğrenimi

İnsanların öğrenme süreci kişiden kişiye değişir. Bir öğrenme sürecini insanların zihnine
yerleştirdiğimizde, alışkanlık haline geleceği için bunu değiştirmek zordur. İnsanların zihnine
öğrenme sürecinden farklı bir yöntemle girildiğinde ise kalıplaşmış sistemi değiştirmek daha
da zordur. Ancak, makine öğreniminde (ML), farklı bir algoritma seçerek öğrenme
yöntemini değiştirmek kolaydır. Makine öğreniminde, öğrenmedeki doğruluğu anlamak ve
tahmin etmek için iyi tanımlanmış süreçler vardır. İnsan öğrenmesinin kontrolü genellikle
sınavlarla yapılır ve maalesef ki bu uygulama zekanın bir ölçüsü olarak düşünülemez.
İnsanlar, doğrudan ya da başkaları tarafından paylaşılan deneyimler yoluyla bilgi edinirler.
Makineler ise, geçmiş verilerin ve paylaşılan deneyimlerin yoluyla bilgi edinir.

Zekâyı tanımlamak için bilgi, beceri ve bellek terimlerini sıklıkla kullanırız. Sadece iyi bir
belleğe sahip olmanız, zeki olduğunuz anlamına gelmez ve zeki olmanız, iyi bir hafızaya
sahip olmanız gerektiği anlamına da gelmez. Ancak bu kuralların istisnaları vardır. İnsanlar
ezberleyerek öğrenmeye başlarlar. Fakat birkaç yıl sonra, ezberleme yeteneğinin zekâ
olmadığını fark ederler. Daha sonra bellekte depolanan verileri bilgiye dönüştürmeye
çalışırlar bu bilgileri de gerçek hayatta karşılaşılan sorunları çözme becerilerini geliştirmek
için kullanırlar.

İyi bir hafızaya sahip fakat gerekli becerilere sahip olmayan bir kişi akıllı olarak kabul
edilemez. Yavaş yavaş arama motorları insan hafızasının yerini alıyor ve bu günlerde
webdeki verileri kullanarak yeni veri elde etmeye odaklanmış durumdalar. İnsanlarda
öğrenme hızı kişilere, makinelerde öğrenme hızı ise seçilen algoritmaya ve bu durumda
kullanılan örneklerin hacmine bağlıdır.

Beceri, insanların sahip olduğu zekânın bir oluşumudur. Zekâ ise bilgiyi uygulama
yeteneğidir. İnsan zekâsı sürekli gelişir fakat yeni teknolojiler ortaya çıktıkça da eski bilgiler
kaybolur.

Makinelerin Zekâsı
Belirli konularda bilgisi olmayan insanlar, yeni karşılaştıkları bir problemi çözmek için
zekâlarını kullanabilirler. Ancak makinelerin zekâsı değişen senaryolardan ve elde edilen
veriler üzerine yeniden yorumlanarak güncellendiğinden yeni sorunları çözme biçimi
insanlarınkinden farklıdır. Bu da insan zekâsı ile makine zekâsı arasındaki temel farktır. Hem
insanlar hem de makineler, zekâlarını problem çözmede uygularken hata yapabilirler.

akademi40.org 18
Makine Öğrenimi Rehberi

Makine öğreniminde uyum gösteren tüm örnekler ezberletilir, daha önce görülmemiş
örnekler ise genelleme yapılamadığından dolayı çalışmaz. Asya ülkelerinin çoğunda eğitim
sistemi, teknik konularda öğrencilere daha fazla koçluk yaparak sadece örnek problemleri
çözmelerini sağlar. Bu örnek problemler herhangi bir zekâ uygulanmasına gerek kalmadan
öğrenciler tarafından kolaylıkla sınavlarda cevaplanmaktadır. Bu öğrenciler daha önce
gördükleri soruları çözebilirler. Zekâları genelleştirilmediğinden genel problemleri doğru bir
şekilde ele alamayabilirler. Üniversite çalışanları arasında beceri seviyelerinin eksik
olmasının ana nedeni de budur. Makine öğreniminde bilgi aktarımı modeli, makine öğrenimi
uzmanları tarafından oluşturulan ve büyük bir veri kümesi üzerinde eğitilmiş bir modeli
yeniden kullanmaktır. Bilgi aktarımında ise; bir dağıtım grubundan çıkarılan bilgiler kullanır.
İnsanlarda ise, bilginin öğrencilere aktarılması genellikle öğretmenler ve eğitmenler
tarafından yapılır ve bu da öğrencileri zeki yapmaz. Ancak makine öğrenimi durumunda,
bilgi aktarımını devralan kişiyi devir aldığı bilgi kadar akıllı yapar.

İnsanlar söz konusu olduğunda, bilgi aktarımı sadece aktarılır ve problem çözme becerilerini
geliştirmek bilgiyi devralanın zekâsına bağlıdır.

Özet Olarak
Makine zekâsı, eğitildikleri alanlarla sınırlıdır. Ancak insan zekâsı eğitim alanından
bağımsızdır. Akıllı bir insan öngörülemeyen alanlarla ilgili sorunları çözebilirken, bir makine
bunu henüz yapamayacaktır.

akademi40.org 19
Makine Öğrenimi Rehberi

Makine Öğreniminin Önemi

Makalenin başlığı için, JPL'den Kiri Wagstaff tarafından yazılan ve 2012 yılında yayınlanan
“Önemli Makine Öğrenimi”nden esinlendik. Kiri Wagstaff’ın tezi, makine öğrenimi araştırma
topluluğunun kendi yolunu kaybettiği üzerinedir. İleri sürdüğü konu; birçok makine
öğreniminin, makine öğrenimi adına yapıldığıdır. Kiri Wagstaff bu konuda 3 ana probleme
dikkat çekmektedir.

Deney Verilerine Odaklanma


UCI veri havuzundaki veri kümelerine odaklanın, ancak bunlardan çok azı ele alınan alanda
(domain) bir etki yaratır.

Kiri Wagstaff, standart veri kümelerinin kullanımını, regresyon ve sınıflandırma


problemlerine yönelik eğriliği geçersiz kılan deney tekrarlanabilirliği için standartların
eksikliğine ve yetersizliğine işaret etmektedir. Ayrıca yazar burada UCI veri havuzunu
kullanmanın, sentetik veri kullanmaktan daha kötü olduğunu söylemektedir çünkü verilerin
nasıl oluşturulduğu üzerinde kontrolümüz bile yoktur.

Soyut Metriklere Odaklanmak


Algoritma yarışlarına veya fırlamalara güçlü bir odaklanma ve etki alanında doğrudan bir
anlamı olmayan RMSE ve F-ölçü gibi genel metriklerin kullanımı.

Tamamlamama eksikliği
Weka'da veri setlerini indirmek ve algoritmaları çalıştırmak gerçekten çok kolaydır. Sonuçları
yorumlamak ve alanla ilişkilendirmek çok zordur, ancak etki yaratmak için gereken budur.
Sorunun temel noktası, makine öğrenimini üç aktivite sınıfı olarak tanımlaması ve algoritma
seçimi ve problem tanımını ve sonuç yorumunu göz ardı eden deneylere odaklayan
“makine öğrenimi katkısı”dır.

Zihniyetteki Değişim
Kiri Wagstaffve araştırma topluluğunun makine öğrenimi araştırma projelerini formüle etme,
saldırı ve değerlendirme şeklini değiştirilmesi gerektiğini önermektedir. Kiri Wagstaffele
alınacak üç alan hakkında yorumda bulunur:

akademi40.org 20
Makine Öğrenimi Rehberi

Anlamlı Değerlendirme Yöntemleri


Makine öğrenim sisteminin etki alanındaki doğrudan etkisini ölçün. Örneğin, tasarruf
edilenler, korunan hayatlar, korunan zamanlar ya da çabalar azaldı. Doğrudan bir etki
ölçümünün seçilmesi, deneyin tasarımı ve verilerin seçimi üzerinde bir akış etkisine sahip
olacaktır.

Dış Dünyanın Katılımı


Alan adı uzmanlarını sorunu ve verileri tanımlamaya dahil edin ve daha da önemlisi bunları
alan adındaki sonuçların önemini yorumlamak için kullanın. Bu, önemsiz sorunların
çözülmesini durdurmak ve pratikte benimsenecek kadar güvenilir ve kullanışlı sistemler
geliştirmektir.

Ödül
Etkileri için araştırma problemlerini seçin. Sorunlu alandaki statükoyu ele alın ve sonuçları
bu statükonun üzerinde bir gelişme ve ilerleme seviyesi olarak tanımlayın. Topluluğa katılın
ve adapte olmak için motive edin.

Açık Zorluklar
Makine öğrenmesinin fark yaratabileceği araştırma projelerine örnek olarak 6 problemin
çözümü;

• Makine öğrenimi analizinin sonucuna dayanan bir yasa kabul edildi veya yasal karar
verildi.
• Bir makine öğrenim sistemi tarafından sağlanan geliştirilmiş karar verme yolu
sayesinde 100 milyon dolar tasarruf sağladı.
• Bir makine öğrenim sistemi tarafından sağlanan yüksek kaliteli çeviri sayesinde
uluslar arasındaki çatışma önlendi.
• Makine öğrenim savunmaları yoluyla siber güvenlik kırılmalarında %50 azalma.
• Bir makine öğrenim sistemi tarafından önerilen bir tanı veya müdahale ile kurtarılan
insan hayatı.
• Bir ülkenin bir makine öğrenim sistemine atfedilebilen İnsani Gelişme Endeksinde
(İGE) %10'luk iyileşme ve gelişme.

Bunlar üzerinde çalışılacak kapsamlı ve öncelikli bir sorun listesi yerine ilham vermeyi
amaçlayan örneklerdir.

Son olarak, Kiri Wagstaff’ın önemli araştırma problemlerini etkili bir şekilde ele almanın
önündeki engeller hakkında bir yorumu daha var.

akademi40.org 21
Makine Öğrenimi Rehberi

Mesleki Dil
Sahada faydalı bir steno olan ama temelde alanın dışından anlaşılamayan makine öğrenimi
terminolojisinin aşırı kullanımı. Daha geniş bir kitleyi hedeflerken daha genel bir dile ihtiyaç
vardır.

Risk
Bir makine öğrenme sistemi sonuç kararları verirken, hata yaptığında kim suçlanabilir?
Sistemin ilerleyişini kim sürdürüyor?

Karmaşıklık
Makine öğrenim yöntemleri için hâlâ, “ateşle ve unut” prensibine uygun olduğu
söylenemez; yöntemleri anlamak ve kullanmak için bilgi gerekmektedir. Bu yüzden de daha
iyi araçlara ihtiyacımız var.

akademi40.org 22
Makine Öğrenimi Rehberi

Makine Öğreniminde En Çok Kullanılan 6 Terim

Makine öğrenimine başlarken, bu alanda sıklıkla kullanılan terimlerin ne anlama geldiğini ve


nerelerde kullanıldığını bilmek oldukça önemlidir. Makine öğrenimi için en çok kullanılan 6
terimi sizin için sıraladık:

1. Algoritma
Algoritmalar, makine öğrenimi alanında temel unsurdur. Algoritma; bir problemin nasıl
çözüleceğini adım adım açıklayan mantıksal bir talimat dizisidir ve genellikle basit if → then
ifadeleri dizisi olarak çalışır. Makine öğrenimine başlarken hangi algoritmanın
kullanılacağına karar vermek zor olabilmektedir.

Makine öğreniminde kullanılan popüler algoritma aileleri; kümeleme, regresyon veya


öneri algoritmalarıdır.

Farklı algoritmaların kullanılmasının nedeni; veri kümesinin boyut, kalite ve yapı bakımından
büyük ölçüde değişiklik gösterebilmesidir. Bir algoritma seçmek aynı zamanda hesaplama
gücüne erişiminiz, görevinizin aciliyeti ve nihai hedeflerle alakalıdır. Bu algoritmaları
derinlemesine araştırarak, deneyerek ve çözerek kendiniz için doğru algoritma dizisini
yaratabilirsiniz.

2. Derin Öğrenme
Derin öğrenme, yeni başlayanlar için göz korkutan bir kavramdır. Kısaca derin öğrenme;
insan beyniyle aynı sonuçları yeniden üretmeye çalışan bir dizi algoritmadır.

Algoritmalar aslında beynimizin yapısına çok benzer olarak çalışır. Beynimizde bulunan
nöronlar, derin öğrenmede katmanlar olarak adlandırılmaktadır.

Derin öğrenme algoritmaları tıpkı beynimiz gibi çalışmaktadır. Yeni bir şey öğrenmek,
konuşmak, araba sürmek gibi bizlerin çok kolay yaptığı eylemler gibi, derin öğrenme
algoritmaları da beynimizi örnek alarak bu davranışları taklit edebilir.

3. Sinir Ağları
Sinir ağları, çoklu katmanlara sahip olan insan beyni gibi karmaşık bir yapıya sahip olan,
makine öğrenimi algoritmalarıdır. Aynı beynimizde olduğu gibi; girdiler sinir ağı tarafından
algılanır, daha sonra da gizli nöron katmanından geçirilir. Geçirilen girdi birçok katmanı
dolaşarak, sonucunda bir tahmin üretir.

akademi40.org 23
Makine Öğrenimi Rehberi

Sinir ağları, gradyan inişi gibi optimizasyon teknikleri kullanılarak yinelemeli şekilde eğitilir.
Her eğitim döngüsünden sonra, tahmin ve hedef arasındaki farka dayalı olarak bir hata
ölçüsü hesaplanır.

Hata ölçüsünün türevleri de hesaplanarak, geri yayılım adı verilen teknik kullanılır ve ağ
üzerine yayılır. Her bir sinirin ağırlıkları, toplamı hataya ne kadar sıklıkla katkıda
bulunduklarına göre ayarlanır. Bu işlem yinelenir ve hata kabul edilebilir eşiğin altına düşene
kadar tekrarlanır.

4. Veri Kümeleri
Makine öğreniminin en önemli parçalarından biri verilerdir. Makine öğrenimi projesi
oluşturmak istiyorsanız, öncelikli olarak veri toplamanız ya da açık kaynaklı verilerden
yararlanmanız gerekmektedir.

Veri bilimcileri, veri kümelerini 3 ayrı gruba ayırmaktadır:

Eğitim Verileri:
Oluşturduğunuz makine öğrenimi modelini eğitmek için kullanılırlar. Eğitim verileri; makine
öğrenimi modelinin hangi verileri gördüğünü, tahmin sırasında ortaya çıkacak kalıpları ya da
hangi özelliklerin önemli olduğunu belirlemeye de yardımcı olur.

Doğrulama Verileri:
Doğrulama verileri, model parametrelerini ayarlamak ve en iyilerini belirlemek için farklı
modelleri karşılaştırır. Doğrulama verileri eğitim aşamasında kullanılacağı için, eğitim
verilerinden farklı olmalıdır. Eğer doğrulama verileri farklı olmazsa, oluşturulan makine
öğrenimi modelinde çok fazla uyumluluk görülecek ve yeni ortaya çıkan veriler yetersiz
olacaktır. Bu durum, modelin doğruluğunun sorgulanmasına neden olabilmektedir.

Test Verileri:
Modelin daha önce karşılaşmadığı veriler üzerindeki davranışını ölçümlemek için kullanılır.

5. Regresyon
Regresyon, iki ya da daha çok değişken arasındaki ilişkiyi ölçmek için kullanılır. Problemleri
çözmek için, bir değişkenin davranışını kantitatif veya nitel olabilen değişkenlere dayalı
olarak modellemeye çalışır ve olası tahminler yapar. Bu esnada doğrusal regresyon, karar
ağaçları, rastgele orman ve gradient-boosted regresyon ağaçları kullanılabilir.

akademi40.org 24
Makine Öğrenimi Rehberi

6. Doğal Dil İşleme (NLP)


Doğal dil işleme ya da bilinen adıyla NLP (Natural Language Processing), insan iletişiminin
makineler tarafından taklit edilmesi olarak açıklanabilir. NLP, hem yazılı hem de sözlü olarak
insan iletişimini kapsar.

NLP'nin, oldukça fazla pratik uygulaması bulunmaktadır ve makine öğrenimindeki


gelişmeler sayesinde, bu pratik uygulamaların sayısı günden güne artmaktadır.

Bu uygulamalara metin çevirisi, sesli metin okuma, sesi metne çevirme, sınıflandırma
ve duygu ifadelerini örnek verebiliriz. Telefonlarımızda ve bilgisayarlarımızda kullandığımız
Alexa ve Siri gibi sanal asistanlar doğal dil işlemenin güncel ve sık kullanılan örnekleridir.

akademi40.org 25
Makine Öğrenimi Rehberi

Makine Öğrenimi Zihin Haritası

Makine öğrenimi (ML) son zamanlarda gündemde olan bir konudur. Herkes yeni
programlama paradigmasından bahsetmekte ve modeller çok farklı alanlarda
uygulanmaktadır, giderek daha fazla girişim ise esas olarak makine öğrenimine
güvenmektedir. Aynı zamanda, makine öğrenimi birkaç farklı boyuta sahip karmaşık bir
alandır. Bazen deneyimli teknik uzmanlar bile tüm makine öğrenim alanını ve onların bu
evrendeki yerlerini hayal edememektedir. Birçok insan sadece makine öğrenimini merak
etmekte ve konuya derinlemesine girmemektedir. Bu insanlar için, makine öğrenmesinin
yapısını anlamak da önemlidir.

Kavramların görselleştirilmesi, belirli alan adlarının doğru anlaşılmasını ve ezberlenmesini


sağlamanın en iyi yollarından biridir. Bu da tam olarak zihin haritalarının neye yardımcı
olduğunu rahatça kavranmasını sağlar. Sizin için faydalı olacağını umduğumuz makine
öğrenimi zihin haritasını hazırladık. Makine öğreniminin veri biliminin bir alt alanı olduğunu
ve daha geniş bir alan olduğunu unutmayın. Makine Öğrenimi zihin haritamızı oluştururken
aşağıdaki yaklaşımı kullandık. Makine öğrenimine 3 farklı bakış açısıyla baktık bunlar
sırasıyla: görev türleri, uygulamalar ve yaklaşımlar.

akademi40.org 26
Makine Öğrenimi Rehberi

Görev Dalı Türleri


Makine öğreniminde çeşitli görev türleri vardır. En yaygın olanları denetimli ve denetimsiz
öğrenmedir. Diğer türler arasında yarı denetimli öğrenme ve pekiştirici öğrenmede
gösterilebilir.

Denetimli öğrenme, verilerin girdilerle ve doğru cevap çıktılarıyla tanımlandığı bir görevdir.
Makine öğrenim modelinize yeni verilerdeki giriş özelliklerine dayalı olarak doğru çıktı
cevaplarını tahmin etmeyi öğretmek istersiniz.

akademi40.org 27
Makine Öğrenimi Rehberi

Denetimli öğrenme görevlerine örnek olarak sınıflandırma (sınıf / kategori tahmini) ve


regresyon (değer / sayı tahmini) verilebilir. Ayrıca görüntü segmentasyonu, eğitim sırasında
bir modelin doğru bölümlere ayrılmış görüntülere bakması gerektiği için denetimli
öğrenmeye bir örnektir. Sınıflandırma veya regresyonun örnekleri olmayan bazı görevlerin
aslında bu türlerden birine ait olduğunu unutmayın. Örneğin, nesne tespiti bir sınıflandırma
görevi olarak düşünülebilir veya ele alınabilir, çünkü görüntüye veya görüntünün ayrı bir
bölümüne bakarız ve “Bir nesne var mı yok mu?” sorusunu cevaplamaya çalışırız. Bu soru
ikili bir sınıflandırmadır.

Denetimsiz öğrenme, yalnızca veri girdiğiniz ve doğru yanıt (çıktı) almadığınız bir
durumdur. Kümeleme, anomali tespiti veya boyutsallık azalması, denetimsiz öğrenmenin
tipik örnekleridir. Kümelenmeyi düşünün: verilerimiz var ve içindeki kümeleri tespit etmemiz
gerekiyor. Verileri önceden etiketlemezsek, bu nedenle hangi veri noktasının hangi kümeye
ait olduğunu bilemeyebiliriz. Makine öğrenim modeli, ön bilgi sahibi olmadan kümelerin
nasıl tespit edileceğini öğrenmelidir. Bu denetimsiz öğrenme anlamına gelir.

Yarı denetimli öğrenme, denetimli ve denetimsiz öğrenmenin özellikleri birleştirir. Bir öneri
sistemi oluşturduğunuzda, genellikle etiketlenmiş verilerin bir kısmına ve etiketlenmemiş
verilerin bir kısmına sahip olursunuz. Doğal dil üretme modelleri, bir sonraki kelimeyi
oluşturmak için cümlelerin önceki içeriğini kullanır. Ancak tahminleri, onları yarı denetimli
öğrenme türüne dahil etmemize sebebiyet veren bir olasılık doğasına sahiptir. Görüntü
oluşturma, eğitimin bir parçası olarak denetimli kayıpları kullanan gözetimsiz veya
denetimsiz öğrenme algoritmaları olan Generatif Düşman Ağları’na dayalı bir görevdir.

Pekiştirici öğrenme, modelin doğru şeyleri kendi başına nasıl yapacağını öğrenmek için
çevreden gelen geri bildirim kullanması gereken özel bir görev türüdür. Örneğin, oyun
oynamak için ortam kurabilirsiniz. Model kötü çalışırsa herhangi bir ödül puanı alamaz.
Ancak modelin amacı ödülü en üst düzeye çıkarmaktır. Böylece, model oyunun bir sonraki
turunda davranışını değiştirecek ve eğer bu davranış öncekinden daha fazla ödül
oluşturacak ise, model bu modele kayacaktır. Bir sonraki turda model, kazancını daha da
artırmak için başka bir şeyi değiştirmeye çalışacak gibi açıklayabiliriz. Pekiştirici öğrenme
makine öğreniminin ilginç ama bir o kadarda karmaşık bir alt alandır.

Yaklaşım Dalı
Şimdi de zihin haritasının yeşil dalını keşfedelim; “yaklaşımlar” bu alanda farklı görevleri
çözmek için kullanılan yöntemleri inceleyeceğiz. Tüm yöntemler tek-model tabanlı ve çok-
model tabanlı olarak ayrılmıştır. Tek modeller, yalnızca bir model kullanan yöntemlerdir.

İstatistiksel modellere, geleneksel makine öğrenme modellerine ve sinir ağlarına


ayrılabilirler. İstatistiksel yöntemler, makine öğrenmesine benzer şekilde görevleri çözmenin
ilk yolları arasındadır. Boyutsallık azaltma yöntemleri, regresyon tahmini yöntemleri, verileri
analiz etme yöntemleri vb. için metotlar içermektedirler. Örneğin, Temel Bileşen Analizi

akademi40.org 28
Makine Öğrenimi Rehberi

(PCA) boyutsallığı azaltmak için iyi bilinen bir yöntemdir. Çarpanlara ayırma matrisleri yapı
ve inşa öneri sistemlerinde yaygın olarak kullanılmaktadır. Gizli Dirichlet tahsisi (LDA), konu
modelleme için bir algoritmadır. Hareketli bir ortalama hem önceki zaman serisi verilerini
analiz etmek hem de gelecek için tahminler yapmak için kullanılabilir.

Geleneksel makine öğrenme yöntemleri muhtemelen makine öğrenimine yeni


başlayanların çoğunluğunun zihinlerine gelen algoritmalardır hem sınıflandırma hem de
regresyon için birçok yöntem kullanılabilir (örneğin, destek vektör makineleri (SVM), karar
ağacı, k-en yakın komşular (KNN). Bununla birlikte, bazıları belirli veya özel bir görev
türünü çözmek için daha uygundur. Örneğin, K-araçları, yalnızca kümelenme görevini
çözmek için bir algoritmadır ve lojistik regresyonu ise, saf bir sınıflandırma algoritmasıdır.

Sinir ağları, makine öğrenim uzmanlarının (ML hype) en çok yoğunlaştığı alandır. Aynı
şekilde bir sinir ağı, belirli bir yapıya sahip olan matematiksel algoritmadan başka bir şey
değildir. Basit sinir ağları (bazen algılayıcı olarak adlandırılır) ve derin sinir ağları vardır. Derin
sinir ağları günümüzde makine öğrenim gelişmelerinin kenarındadır. Bilgisayarla görme ve
doğal dil işlemlerindeki tüm bu harika şeyler öncelikle derin sinir ağları yardımıyla yapılır. En
popüler derin sinir ağları, evrişimli sinir ağları, tekrarlayan sinir ağları ve üretken çekişmeli
ağlardır.

Çok modelli yaklaşım, bir görevi çözmek için birkaç tek kullanımlı modelin kullanılmasını
gerektirir. İstifleme, birkaç farklı makine öğrenimi modeli (örneğin, geleneksel modeller
kategorisinden) kullandığımız ve daha sonra cevaplarını (çıktılarını) başka bir modelin/
modellerin girişi olarak kullandığımız zamandır. Birkaç model katmanları olabilir. Böyle bir
strateji genellikle harika sonuçlar üretir. Bununla birlikte, tüm sistem karmaşık hale gelir ve
onu üretimde kullanmak zor olabilir.

Torbalama, birkaç model almak ve tahminlerini ortalamak anlamına gelir. Örneğin, rastgele
bir orman seçimi karar ağaçlarının bir topluluğu ve bütünlüğüdür. Bu, sapmayı sabit bir
seviyede tutarken değişikliği azaltmaya izin verir.

Arttırma, genel sonucu iyileştirmek için birçok temel model kullanan bir birleştirme
modelidir. Torbalamadan farkı, artırmanın algoritmaların yönlendirilmiş bir bileşimi olmasıdır.
Bu, sonraki her modelin, daha önce oluşturulan temel modellerin kompozisyonunun
hatasını azaltacak şekilde oluşturulduğu anlamına gelir. Eğim artırmanın en popüler
uygulamaları XGBoost ve lightGBM.0'dır.

akademi40.org 29
Makine Öğrenimi Rehberi

Uygulamalar Dalı
Şimdi zihin haritamızın son kolu olan uygulamalara geçeceğiz. Yapay zekânın kullanıldığı
alanlardan bahsediyoruz. Yapay zekânın yararlı olabileceği endüstrilerle ilgili değil, daha çok
yapay zekâ uygulama türleri ile ilgilidir. Genel olarak, yapay zekâ uygulama türleri şunlardır:
boyutsallık azaltma, doğal dil işleme (NLP), bilgisayar görüşü (CV), anomali tespiti, zaman
serileri, analitik ve öneri sistemleri.

Boyut küçültme, en alakalı bilgileri tutarken verilerin azaltılmasına izin verir. Görüntü ve ses
sıkıştırmada kullanılır ve aynı zamanda bu özellik mühendisler için makine öğrenimi
modelleri oluşturma hattında kullanılır.

Doğal dil işleme (NLP), diğer makine öğrenimi uygulamalarından giderek daha fazla
ayrılan geniş bir alandır. Birçok uzman NLP'yi bağımsız bir konu olarak görmektedir. Makine
öğreniminin NLP'deki uygulamaları şunlardır; konu modelleme, metin sınıflandırma,
duyarlılık analizi, makine çevirisi, doğal dil üretimi, konuşma tanıma, metin-konuşma, metin
analizi, özetleme, varlık tanıma, anahtar kelime çıkarma.

Bilgisayar görüşü (CV), NLP gibi, çok büyük bir konu haline gelmektedir. En iyi bilinen CV
uygulamaları; görüntü sınıflandırması, görüntü segmentasyonu ve nesne algılamadır.
Anomali tespiti, hedefin verilerde beklenmedik, tipik olmayan bir şeyi tanıma uygulamasıdır.
Anomali tespiti yenilik tespiti, aykırı tespiti ve sahtekarlık tespiti olarak ayrılmaktadır. Ayrıca,
yenilik veya aykırı olmayabilir ama verilerde belirli tuhaf bir şekil olabilir. Bu durumu zihin
haritasına dahil etmiyoruz, ama eğer dahil etmek gerekirse, bunu basit bir “anomali tespiti”
olarak adlandırabiliriz.

Zaman serisi, zamana dayalı verilerle çalıştığımız alandır. Örneğin, borsa fiyatları, hava
durumu verileri, IoT sensörleri verileri vb. zaman serilerini analiz edebilir veya gelecekteki
olası değerleri tahmin edebiliriz.

Analitik, verinin doğasını ve şekillerini keşfetmenin klasik alanıdır. Çeşit olarak; öngörücü
analitikler (gelecekte veya görünmeyen verilerde neler olabileceğini tahmin edin), mevcut
durum analizi (tahmin modelleri oluşturmadan mevcut verilerden ne tür görüşler elde
edebiliriz), ve optimizasyon sorunları (örneğin, farklı kaynaklardan en az tüketimle A
noktasından B noktasına nasıl gidileceğini araştırmak için) mevcuttur.

Öneri sistemler, bir dizi kullanıcılara ve içeriğe sahip olduğunuz uygulamalardır ve siz
kullanıcılar için alakalı içeriği önerebilecek bir sistem oluşturmak isterseniz bu uygulamayı
kullanmanız gereklidir. Bu tür sistemler, kullanıcılar ve içerik öğeleri hakkında bilinen verileri
kullanmak için özel makine öğrenim yöntemlerini (faktorizasyon makineleri gibi) kullanırlar.

akademi40.org 30
Makine Öğrenimi Rehberi

Sonuç
Geliştirdiğimiz zihin haritası, bu alanda derinlemesine dahil olmayan insanlar için makine
öğrenmesinin yapısını açıklamak ve anlatmak içindi. Makine öğrenmesinin üç farklı açıdan
ele alınabileceğini gösterdik; görev türleri, yaklaşımlar (yöntemler) ve uygulama türleri.

Zihin haritamızın makine öğrenimi gibi karmaşık bir alan hakkındaki tüm bilgileri
kapsayamayacağı açıktır. Şemaya dahil edilmeyen bazı görev türleri, uygulamalar ve
özellikle algoritmalar vardır. Ayrıca, bazı noktalar hakkında tartışmak için yeterli alan
olduğunu düşünmekteyiz.

akademi40.org 31
Makine Öğrenimi Rehberi

Makine Öğrenimi: Test Edilebilirse Öğretilebilir

Hiç 5 dakikalık bir video izlemek için YouTube'a nasıl gittiğinizi ve burada 3 saat boyunca
kaldığınızı fark ettiniz mi? Ya da tam satın almayı planladığınız bir ürünün reklamını 15
gündür dolaştığınız sitelerde gördüğünüz ve en sonunda onu aldığınız oldu mu?

Bilgisayarınızın ne istediğinizi bilmesi ne kadar iyi değil mi? Bu sizin bilgisayarınızdan değil,
sizi sürekli izleyen algoritmalardan kaynaklıdır. Şimdi bile! Evet, bu kesinlikle doğru. Yani
soru şu, bu botların nasıl yapıldığı ve yazılım test kavramlarının burada nasıl devreye
girdiğidir.

İnsanların gerçek yapay zekâ gibi davranan algoritmik bloglar oluşturması çok uzun
zaman önceye dayanmıyor. Basitçe söylemek gerekirse basit ve uzun bir kod ile
yapabilirsiniz. Bir süre mükemmel çalışacaktır ve birçok günlük aktivitede de çalışmaya
devam edecektir. Bununla birlikte, giderek daha fazla insan daha büyük veri setleri
oluşturduğundan, bu basit yaklaşım her yerde işe yaramamaktadır. Çünkü bazı problemler
insanlar tarafından çözülebilecek kadar karmaşıktır.

Haydi birinin köpek resmi ve diğerinin 5 numara olduğu iki örneği inceleyelim ve burada
sorunun ne olduğunu düşünelim.

Bir insan olarak biliyorsunuz ki evet, bu bir köpek ve bu da 5 numara ama makine ya da
botlar bunu nasıl bilecek? Görüntü pikselini, piksel olarak taramasını ve bu resimde
genellikle bilinen köpek görüntülerinde bulunan piksel desenleriyle eşleşen desenleri
bulmasını ve tahmini bir öneri vermesini söyleyecek karmaşık bir algoritma oluşturmalıyız.
İnsan beyni, her saniye öğrenen karmaşık bir nöron yapısına sahiptir. İnsan beynine benzer
şekilde makinelerde, öğrenmeye devam ettikçe zaman içinde geliştirdikleri, gelişen örüntü
tanıma zekâsı ile karmaşık botlar yaratmamızı sağlayabileceklerdir.

Nasıl Öğrenilir?
İnsan programcılar, daha basit beyinleri olan bir öğretmen botu ve bir geliştirici botu yaratır.
Kurucu bot, öğrenci botları oluşturur ve test notlarına göre saklar ve ayırır. Öğretmen botun
kendisi bir köpek ve 5 arasında ayrım yapamaz, ancak öğrenci botlarını tanımlamakta haklı
olup olmadıklarını test edebilir.

Artık otomatik testin neden bu kadar önemli olduğunu anlıyorsunuz. Öğretmen botlarına
köpeklerin ve 5'lerin bir demet fotoğrafını veriyoruz ve neyin ne olduğunun cevabını ona
bırakıyoruz. Buna dayanarak öğretmen botunu da öğrenci botlarını test ederek ve notlarını
verecek şekilde modelliyoruz.

akademi40.org 32
Makine Öğrenimi Rehberi

Test verilerine dayanarak, oluşturulan bot, öğrenci botları algoritması mekaniğinin farklı
permütasyonlarını ve kombinasyonlarını ayarlayarak farklı öğrenci botları üzerine inşa
etmeye devam eder, bazen rastgele bile neyin doğru neyin yanlış olduğunu görebilir. Bu
süreçte öğretmen botu testlerine devam eder ve notları vermeye başlar. Döngü bu şekilde
devam eder.

Öğretmen botu teste devam eder ve öğrenci botlarının notlarına dayanarak, geliştirici botu
en iyi performans gösteren botları tutar ve gerisine acımasızca atar. Test, derleme ve test
döngüsü bir döngüde tekrarlamaya devam eder ve dereceleri değerlendirilir. Yaklaşık
%99.9 doğrulukla bot oluşturulduktan sonra döngü durdurulur.

Şimdi aklımıza gelen soru “Otomatik test, inşa ve test döngüsü kaç kez tekrarlanıyor?” En
iyi derecelere sahip bot inşa edilene kadar gerekli olduğu şekilde tekrar eder. En iyi bot, bir
köpek ve 5'i ayırt eden en iyi algoritmadır.

Peki Sorun Nedir?


Şimdi bir köpek ve 5 sayısını ayırt etmek için en iyi algoritmayı seçtik, sonra ortaya
çıkabilecek sorun nedir? Bota, 5 yerine 'S' harfi verirsek bunu anlayabilecek mi? Cevap:
Hayır.

Bunu Nasıl Çözeriz?


Bunu çözmek için insanlar, yanlış ve doğru senaryolar da dahil olmak üzere, öğrenci
botlarının geçmesi için daha fazla sayıda soru içeren daha uzun otomatik test senaryoları
oluşturmak zorundadırlar, böylece en kötü vakalara da hazırlanırlar. Uzun testler daha iyi
botlar ortaya çıkana kadar devam eder.

Test - İnşa - Test Döngüsü Nasıl Tekrarlanır?


Bu durumda işlemi otomatikleştirmeli ve aynı testi yapmaya devam etmelisiniz. Son bir bot
inşa edildiğinde, çalışır ve hepsi arasında hayatta kalan tek bir bot elde edilir. Tıpkı
algoritması diğer bottan %0.01 daha iyi olduğundaki gibi. Öğrenci botunun oluşturduğu
algoritma, öğretmen botu tarafından bilinmez. İnsan gözetmeni tarafından değil, öğrenci
botunun kendisi tarafından bile bilinmez! O sadece çalışır. Botun nasıl düşündüğü veya
çalıştığı gerçekten bilinemez.

Hadi ilk başta tartıştığımız YouTube örneğine geri dönelim. Bunu şimdi daha iyi anlayabiliriz.
Buradaki öğrenci botlarına verilen görev, bir kullanıcıyı meşgul tutarken izlenme süresini
kaydetmek ve kullanıcıyı en uzun süre için meşgul eden öğrenci botunun en yüksek
dereceyi almasıdır.

akademi40.org 33
Makine Öğrenimi Rehberi

Öğretmen botları tüm öğrenci botlarını değerlendirir ve öğrenci botları kullanıcılara


tavsiyede bulunmaya devam eder, böylece kullanıcı meşgul kalır. En iyi önerileri veren ve
kullanıcıyı meşgul eden kişi en iyi algoritmaya sahip olanıdır. Öğretmen botunun sadece
öğrenci botlarını test ettiğini ve testlerden öğrendiklerini gördük. Yani sonuç olarak makine
öğreniminin, test edilebilirse öğretilebilir olduğunu söyleyebiliriz.

akademi40.org 34
Makine Öğrenimi Rehberi

Otomatik Makine Öğrenimi (AutoML) nedir?

Oldukça basit bir şekilde, işletmenizin kaynakları optimize etmesi, iş birliğini teşvik etmesi
ve verileri şirket genelinde hızlı ve güvenilir bir şekilde dağıtması ve bu verileri gelir
hedeflerini tahmin etmek, planlamak ve elde etmek için seçilen araçların kullanılmasıdır.

Doğru araçlarla, günümüzün ortalama bir çalışanı; öğrenmek, teorileri test etmek ve kararlar
vermek için çeşitli kaynaklardan entegre edilmiş verileri kullanarak veri bilimcisi olabilir.
Sonuçları tahmin etmek ve verileri analiz etmek için makine öğrenimi yetenekleri ile
tasarlanan sistemleri ve çözümleri kullandıkça ortaya çıkan sonuç da Otomatik Makine
Öğrenimidir.

Örneğin, tahmini analiz yapma görevini ele alalım. Çalışanlar, en iyi uyumu elde etmek ve
analiz etmek istedikleri verilerde en uygun algoritmayı kullandıklarından emin olmak için
makine öğrenimi ve destekli tahmin modellemesinden yararlanabilir. Verilerdeki kalıpları
keşfetmek, IT ekibine veya veri bilimcilerine bağımlı olmadan bilgi edinmelerine yardımcı
olacak öneriler almak için AutoML araçlarından yararlanabilir.

Bu öngörülü modelleme özelliği, kullanımı basitleştirmek için otomatik tavsiye ve önerilerle


birleştirilmiştir; böylece çalışanlar, sezgisel ve kullanımı kolay bir ortamda sofistike tahmin
algoritmalarıyla çalışabilir ve öngörme, regresyon, kümeleme kullanarak, vaka kullanmak
için gelişmiş analitik uygulayabilir. Böylelikle müşteri verilerini değerlendirmek, müşterileri
satın alma için hedeflemek, çapraz satış fırsatlarını belirlemek, fiyatlandırma ve promosyon
hedeflerini optimize etmek ve müşteri tercihlerini, satın alma davranışlarını analiz etmek ve
tahmin etmek için kullanılabilir.

AutoML
AutoML, oldukça basit bir şekilde planlamayı destekleyen ve kullanıcıların ince ayar
yapmasına ya da tekrar modelleme yapmasına gerek duymadığı makine öğrenme
modellerinin uygulanmasına ve gelişmesine olanak tanıyan otomatik özellik, algoritma
seçim ve uygulama sürecidir.

31 Ekim 2018'de yayınlanan “Artırılmış Analitik Verilerin ve Analizin Geleceği” başlıklı


raporda, Gartner stratejik planlama varsayımlarını sıralamıştır: “2020'ye kadar, artırılmış
analitik, yeni analitik ve iş zekasının, veri bilimi ve makine öğrenimi platformları ayrıca
yerleşik analitik baskın itici gücü olacak.”

akademi40.org 35
Makine Öğrenimi Rehberi

Akıllı Makine Öğrenimi


Makine öğrenimi, çalışanların yükünü hafifletmeyi sağlar. Ayrıca “akıllı” bir çözüm rehberi
olarak çalışanlara yardım sunarken; makine öğrenmesinin esnekliğine ve karmaşıklığına
rağmen, öngörücü analitik yapmak için temel iş bilgilerini ve becerilerini kullanmalarına
olanak tanır.

Sistem veri kümesini yorumlar, önemli sütunları seçer, kategorileri, türleri ve diğer
parametreleri analiz eder en iyi algoritmayı ve analitik tekniği otomatik olarak uygulamak ve
veri bilgileri sağlamak için akıllı makine öğrenimini kullanır.

Makine öğrenimi algoritmaları, sistemin verileri anlamasına olanak tanır ve kullanıcının analiz
etmek istediği verilere dayanarak korelasyon, sınıflandırma, regresyon, tahmin veya
hangi teknikle alakalı olursa olsun uygular. Sonuçlar, verilere en uygun görselleştirme türleri
kullanılarak görüntülenir ve yorumlanarak basit doğal bir dilde sunulur. Bu kesintisiz
tahminleme süreci, ticari kullanıcıların verileri tahmin veya gelişmiş beceriler olmadan hızlı
ve kolay bir şekilde seçmesini, analiz etmesini sağlar.

Geçmişte bu tür gelişmiş analizler tam zamanlı, eğitimli bir veri bilimcisinin gerçekleştirdiği
işlerden biriydi. Günümüzde artırılmış veri bilimi ve makine öğrenimi, veri bilimi, tahmine
dayalı analitik ve makine öğreniminin kilit yönlerini otomatikleştirmekte ve
demokratikleştirmektedir. Gelişmiş analitik modeller kullanarak analistlerin ve veri
bilimcilerin veri üretilmesi, yönetilmesi ve iş birliği yapılması ihtiyacını azaltmaktadır.
AutoML ve destekli öngörülü modelleme geliştikçe, çalışanlar ve destekledikleri kuruluşlar,
artan üretkenlik, gelişmiş bilgi yönetimi ve daha rafine planlama, tahminler ve sonuçlardan
faydalanacaktır.

akademi40.org 36
Makine Öğrenimi Rehberi

Yeni Başlayanlar için Makine Öğrenimi Modelleri


Nasıl Yapılır?

Veri bilimi 21. yüzyılın en gözde konularından biri, çünkü gerçekte işleyebileceğimizden çok
daha yüksek katsayıda veri üretiyoruz. Birçok ticari ve teknolojik işletme artık veri biliminin
faydalarından yararlanarak temel avantajlarını artırıyor. Bu sebeple, veri bilimi şu sıralar
oldukça ön planda.

Bu yazıda, makine öğrenimi dünyasının derinliklerine dalacağız. Makine öğreniminin


temellerinde bir gezintiye çıkacak, bir makine öğrenimi modeli kurmanın sürecine
bakacağız. Aynı zamanda anlama sürecini kolaylaştırmak adına Python’da rastgele orman
(random forest) modeli oluşturacağız.

Makine Öğrenimi Kavramı


Makine öğrenimi, bilgisayarların insanlar gibi öğrenmesini ve davranmasını sağlayan, onları
gözlem ve gerçek dünya etkileşimleri formundaki veriyle ve bilgiyle besleyerek otonom bir
şekilde zaman içinde öğrenmelerini geliştiren bir bilimdir.

Birçok farklı tipte makine öğrenimi algoritması vardır, her gün binlercesi yayınlanır ve
genelde ya öğrenme biçimlerine göre (gözetimli öğrenme, gözetimsiz öğrenme, yarı-
gözetimli öğrenme) ya da yapılarındaki veya işlevlerindeki benzerliklere göre (sınıflandırma,
regresyon, karar ağacı, kümeleme, derin öğrenme vs.) gruplandırılırlar. Öğrenme biçiminden
ya da işlevinden bağımsız olarak, tüm makine öğrenimi algoritması kombinasyonları şunları
içerir:

• Temsil (bir sınıflandırıcılar kümesi ya da bir bilgisayarın anladığı dil),


• Değerlendirme (amaç/skor fonksiyonu olarak da bilinir),
• Optimizasyon (arama yöntemi; genelde en yüksek skorlu sınıflandırıcı. Örneğin; ikisi
de kullanıma hazır ve özel yapım optimizasyon yöntemleri kullanılmış).

akademi40.org 37
Makine Öğrenimi Rehberi

Makine Öğrenimi Modeli Oluşturma Adımları


Bir hastane örneğinden, hem hasta akıbetini hem de yatırım getirisini iyileştirmek için
makine öğreniminin nasıl kullanılabileceğini inceleyelim:

1. Proje Hedeflerini Tanımla


Yaşam döngüsünün ilk adımı işlemleri somut bir şekilde geliştirecek, müşteri memnuniyetini
artıracak ya da başka şekilde bir değer yaratacak bir fırsatı tanımlamak. Tıp endüstrisinde,
taburcu edilen hastalar bazen hastaneye dönmelerini gerektirecek durumlarla
karşılaşabiliyorlar. Hasta için tehlikeli ve uğraştırıcı olmasının yanı sıra, bu yeniden yatışlar
hastanenin de hastaları ikinci kez tedavi ederken fazladan zaman ve kaynak harcayacağı
anlamına geliyor.

2. Veriyi Topla ve Keşfet


Bir sonraki adım, makine öğreniminde kullanılacak tüm ilgili veriyi toplamak ve hazırlamak.
Yani, Tıp alanı uzmanlarına danışıp yeniden yatış oranlarını tahmin etmede hangi verilerin
işe yarayacağını öğrenmek, geçmiş hasta kayıtlarından verileri toplamak ve bunu analize
uygun bir formata dönüştürmek, büyük ihtimalle .csv gibi bir düz dosya formatı gerekecek.

3. Veriyi Modelle
Makine öğrenimi yoluyla elindeki verilerden bir fikir edinebilmek için hedef değişkenine ve
hakkında daha derin bir bilgiye vakıf olmaya çalıştığın etmene karar vermelisin. Bu
durumda, hastane “yeniden yatmış”ı seçecek ki o da veri toplama sırasında geçmiş veri
kümelerine dahil edilmiş bir etiket. Sonra, geçmiş veri örnekleri üzerinden öğrenen modeller
inşa eden veri kümeleri üzerinde makine öğrenimi algoritmalarını çalıştıracaklar. Son olarak
hastane, yeni hastaların yeniden yatıp yatmayacağını öngörmek için eğitilmemiş veriler
üzerinde eğitimli modelleri çalıştırır ve daha iyi hasta bakımı kararları vermesini sağlar.

4. Yorumla ve Anlat
Makine öğrenimi projelerinin en zor görevlerinden biri, bir modelin sonuçlarını herhangi bir
veri bilimi geçmişi olmayanlara açıklayabilmektir, özellikle de sağlık hizmetleri gibi çok
kurallı endüstrilerde. Geleneksel olarak, makine öğrenimi bir “kara kutu” olarak görülür
çünkü taraflara ve düzenleyici makamlara ondan edinilen fikirleri yorumlamak ve değerini
anlatabilmek çok zordur. Modeliniz ne kadar yorumlanabilir olursa, düzenleyici gereklilikleri
karşılamak ve değerini yönetime ve diğer paydaşlara açıklamak da o kadar kolay olacaktır.

akademi40.org 38
Makine Öğrenimi Rehberi

5. Uygula, Belgele ve Sürdür


Son adım ise veri bilimi projesini uygulamak, belgelemek ve sürdürmek ki hastane ekibi de
modellerini geliştirmeye devam edebilsin. Model dağıtımı sıklıkla problem teşkil eder çünkü,
hem kodlama ve veri bilimi deneyimi gerektirir hem de geleneksel veri bilimi yöntemleri
kullanılarak döngünün başından itibaren uygulamanın alacağı zaman yanına
yaklaşılamayacak kadar uzundur.

Problem Tanımı
Bir araba üretimi şirketi olan X, spesifik bir araba modeli için müşteri hedeflerini öğrenmek
istiyor. Müşteriler yaşları, maaşları ve cinsiyetleriyle tanımlanıyorlar. Kurum, hangi
müşterilerin yeni arabanın satışlarını etkileyeceğini ve gerçekten satın alacağını bilmek ya
da öngörmek istiyor.

Burada, 0 ve 1 değerlerini tutan bir satın alım sütunumuz var. 0, o kişinin arabayı satın
almadığını gösteriyor. 1 ise arabanın satıldığı anlamına geliyor.

Koda Geçirme

Gerekli Kütüphaneleri İçeri Aktarmak


İlk iş, bizim için model oluşturma kısımlarını kolaylaştıracak bütün gerekli kütüphaneleri içe
aktarmanız lazım. Rastgele orman (random forest) algoritmasını oluşturmak için Keras
kullanıyoruz. Şemaları ve grafikleri çizip sonuçları görselleştirmek için Matplotlib
kütüphanesini kullanıyoruz. Son olarak, elimizdeki veriyi eğitim ve test aşaması olarak
bölmemize yardımcı olması için Sklearn modülünün fonksiyonlarını da içe aktarıyoruz.

Veri Kümesini Yüklemek


Bu adımda, veri kümenizi belleğe yüklemeniz lazım. Ondan sonra, sınıflandırıcımızın eğitimi
için bağımlı ve bağımsız değişkenleri ayırıyoruz. Çoğu durumda sizin bağımlıları ayırmanız
gerekir ve o da bağımsızları ayırır.

Eğitim ve Test Verisi Oluşturmak için Veri Kümesini Bölmek


Tüm durumlarda, verinizde bir takım bölme işlemleri yapmanız gerekecek. Verinizdeki
büyük bir yığın eğitim kümesi olarak, daha küçük bir yığınsa test kümesi olarak kullanılacak.
Eğitim ve test verisi oranları konusunda belirlenmiş net bir kriter yok. Ama çoğu insan büyük
pay eğitim kümesi olmak üzere 70-30 ya da 75-25 oranlarını kullanıyor. Veriyi eğitim
kümesinde eğitiyor ve test kümesinde test ediyoruz. Bu sürece, doğrulama (validation) adı
veriliyor.

akademi40.org 39
Makine Öğrenimi Rehberi

Bu amacın arkasındaki esas fikir, modelin performansını daha önce görmediği veriler
üzerinde ölçümlemek. Gerçek dünya senaryolarında model, değerleri görmediği veriler
üzerinden tahmin edecek. Dahası, doğrulama gibi teknikler modeli fazla ya da yetersiz
uyumlandırmaktan da kaçınmamızı sağlıyor.

Fazla uyum, modelin eğitildiği spesifik veriye dair her şeyi öğrendiği duruma deniyor. Eğitim
verisinde gayet iyi çalışacak ama daha önce görmediği herhangi bir veri noktasında
doğruluk hassasiyeti düşecek. Fazla uyum, modelinizin veriye fazla özelleşip,
genelleşememesi gibi. Benzer şekilde, yetersiz uyum da modelinizin fazla genel olup
spesifik durumlar için düzgün tahmin yapamadığı duruma deniyor. En iyi model
doğruluğunu elde edebilmek için fazla uyumla yetersiz uyum arasında mükemmel bir
denge yakalamanız lazım.

Veri Kümesi Değerlerini Standardize Etmek

Rastgele Orman Sınıflandırması (Random Forest Classification)


Uyarlamak
Bu durumda, modelimizi eğitim verisine uyarlıyoruz. Python’daki Sklearn paketinin rastgele
orman (random forest) modülünü kullanıyoruz. Nihayetinde, modelimizin matematiksel
katsayıları kullanarak aralarında dahili bir haritalama yaptığı bağımlı ve bağımsız özellikleri
ayrı ayrı geçiriyoruz.

Sınıflandırıcıdan Sonuçların Tahmini


Bu kısımda, görmediği verileri modelimize yolluyoruz ki üzerlerinden tahmin yapsın.
Modelimiz için doğruluk, kesinlik ve hatırlama gibi metrikleri çekmesi için bir hata matrisi
kullanıyoruz. Bu metrikler modelin performansını anlamamıza yardım edecek.

akademi40.org 40
Makine Öğrenimi Rehberi

Tahminleri Görselleştirmek
Ek olarak, aşağıdaki kodu kullanarak modelimizin tahminlerini görselleştirme denemesi
yaptık.

Bu içeriğimizde makine öğreniminin temellerini anlatmaya çalıştık. Eski teknoloji makine


öğrenimi, bilgisayarların spesifik görevleri gerçekleştirmeleri için programlanmadan da
öğrenebileceği teorisiydi. Ama artık, yapay zekâ ile ilgilenen araştırmacılar bilgisayarların
veriden öğrenip öğrenemeyeceğini görmek istiyorlar. Güvenilir kararlar ve sonuçlar üretmek
için geçmiş hesaplamalardan öğreniyorlar. Bu yeni bir bilim değil ama yepyeni bir moment
kazanıyor.

akademi40.org 41
Makine Öğrenimi Rehberi

DevOps için Makine Öğrenimi (ML/AI)

Yakın zamanda ortaya çıkan yeni trend sayesinde çoğu kuruluş yapay zekâ destekli bir
uygulama oluştururken iki yeni iş koluyla karşılaştı; birincisi geliştirme ve bir diğeri de veri
bilimi.

Çoğu zaman, her iki grup da aslında Python veya C/F# gibi bir dil kullanarak benzer
senaryolara sahip fonksiyonel çözümler geliştirmektedir. Ayrıca bir veri bilimcisi, veri bilimi
sürecinin değerlendirme ve model seçim adımını bitirdiğinde, her iki tarafın mevcut veya
yeni iş süreçlerine entegre uygulamalar ile “confusion vacuum” olduğu görülür. Kısacası
birbirlerini nasıl destekleyeceğini tam olarak anlayabilme diyebiliriz. Bu benzerliklerin çoğu
Docker ve Kubernetes gibi konteyner hizmetlerinin özellikle DevOps dünyasında artan
popülaritesi ve kullanımından kaynaklanıyor.

Sistem Nasıl İşliyor?


Yapay zekâ uygulamalarına yeni başlayanlar, sürekli entegrasyon için bir hat planlayabilir
ve oluşturabilirsiniz. Bu akış, veri bilimcisinin yaptığı her yeni analiz ile yeniden başlar ve test
takımının çalışmaları tetikler. Test başarılı olursa, en son derlemesiyle birlikte başarıyla
modellemek için gerekli tüm paket sürümleriyle bir Docker konteynerine aktarılır.

Konteyner, daha sonra Azure Kapsayıcı Hizmeti (ACS) gibi bulutta barındırılan bir
konteyner hizmeti kullanılarak dağıtılır ve sonraki görüntüler, ilgili kapsayıcı kayıt defterinde
(ACR) güvenli bir şekilde saklanır. Bu da küçük ölçekli geliştirme amaçları için iyidir, ancak
işler büyüdüğünde konteyner kümelerini yönetmek / düzenlemek için Kubernetes gibi bir
hizmet kullanabilirsiniz (Diğer hizmet alternatifleri Docker-Swarm / Mesos).

Uygulama, bulut tabanlı bir blob depolama hesabından ve uygulamanın bir parçası olan
paketlerden en son alınmış makine öğrenimi modelini güvenli bir şekilde çeker.
Konuşlandırılan uygulama, tek bir konteyner olarak paketlenmiş uygulama koduna ve
makine öğrenimi modeline sahiptir.

akademi40.org 42
Makine Öğrenimi Rehberi

Uygulama geliştiricilerini, veri bilimcilerinden ayıran nokta ise üretim uygulamalarının her
zaman makine öğrenimi modeliyle en son kodu çalıştırmasıdır. İkisi arasındaki farklı
aydınlatmak için temsili bir referans mimari şeması;

akademi40.org 43
Makine Öğrenimi Rehberi

Edge Cihazlarda Makine Öğrenimi

Edge Computing iş yüklerini merkezi konumlardan uzak konumlara taşır ve yapay zekâ
uygulamalarından daha hızlı yanıt verebilir. Edge Computing cihazları, insanların takibi,
araç tanıma, kirlilik izleme vb. gibi gerçek dünya süreçlerinin izlenmesi ve kontrolü için
giderek daha fazla kullanılmaktadır. Cihazlarda toplanan veriler, veri hatları üzerinden
merkezi bulut sunucularına aktarılır ve makine öğrenme modellerini eğitmek için kullanılır.
Eğitim modelleri çok fazla hesaplama gücüne ihtiyaç duyar.

Mevcut strateji, merkezden eğitim almak ve çıkarım yapmak için edge cihazlara
yerleştirmektir. Zaten derin öğrenme modelleri yüz tanıma ve gözetim gibi kritik problemler
için kullanılmaktadır. Ayrıca, edge cihazlarda makine öğrenimi modellerinden çıkarım
kullanan binlerce yapay zekâ uygulaması vardır. Makine öğrenimi modelleri, Raspberry Pi,
Akıllı telefonlar, gibi makine öğrenim çerçevelerindeki mikro denetleyiciler gibi uç
cihazlarda kullanılır. Makine öğrenimini en uç noktada gerçekleştirmenin zorlukları şunlardır:

• Büyük hacimli depolanmış verilerden modellerin eğitimi,


• Ön işleme ve veri temizlemede gecikme,
• Akış verilerinden dinamik çevrimiçi eğitim,
• Gerçek zamanlı karar vermede gecikme,
• Eğitim aşamasında artan güç tüketimi.

Makine öğrenimi verilerdeki kalıpları arar ve bunlara dayalı kararları etkiler. Edge yapay
zekâ, diğer bir deyişle Edge AI, gerçek zamanlı yanıtlar sağlamak için hızlı karar verme
özelliklerine sahip edge cihazları güçlendirir.

Örnek olarak, bitkileri tanımlamak için yaygın olarak kullanılan yapay zekâ özellikli bir
uygulamayı inceleyelim. Pl@ntNet yaprak ve çiçek resimlerinden bitkileri tanımlamak için
yararlı bir uygulamadır. Bu uygulama Asya ülkelerinde tamamlayıcı ilaçların hazırlanmasında
kullanılan nadir tıbbi bitkileri tanımlamak için yararlı olur. Bu uygulama web üzerinde ve aynı
zamanda bir mobil uygulama olarak da mevcuttur. Mobil uygulama sürümü edge makine
öğrenimi çıkarımlarını kullanır. Görüntülerin önceden işlenmesi ve bitkinin adını belirlemek
uzun zaman alır. Buluta veri aktarımında gecikme ve API'lardan gelen yanıt gecikmesi
birçok yapay zekâ geliştiricisini C buluttan kenara doğru ilerlemeye iter. Edge bilgi işlem
gücünü Pl@ntNet gibi makine öğrenimi çözümlerinde eğitim ve çıkarım için kullanabiliriz.

Bulut hizmeti sağlayıcıları vision, tahmin, kümeleme, sınıflandırma, konuşma ve doğal


dil işleme için API'ler sağlar. Vision kategorisindeki API'ler yüz tanıma, yüz doğrulama,
yüz gruplama, kişi tanımlama ve benzerlik değerlendirmesi için önceden eğitilmiş
modelleri ortaya koyar. Bulutta önceden eğitilmiş modellerin varlığı, yapay zekâ çözümü
geliştiricilerinin çıkarım için kullanmaları öncül bilgi işlem için buluta geçiş eğilimi yarattı.

akademi40.org 44
Makine Öğrenimi Rehberi

Modern edge cihazlarda bulunan bilgi işlem gücü, üst düzey sunucularda bulunan bilgi
işlem gücüne eşit veya daha yüksektir. Birçok girişim ve çip üreticisi, makine öğrenimi iş
yüklerinin hızını en üst düzeye çıkarmak için özel hızlandırıcı çipler üzerinde çalışıyor.
Örneğin, hızlandırıcı çiplere uygulanan Konvolüsyon Sinir Ağları, makine öğrenimi tabanlı
yüz tanıma sistemlerinin ön işleme aşamasında gerçek zamanlı görüntü filtrelemeye
yardımcı olur. Yüksek performanslı kenar aygıtlarına örnek olarak LattePanda Alpha, Udoo
Bolt, Khadas Edge-V, Jetson Nano ve Intel Neural Compute Sticks verilebilir. Jetson
Nano, video görüntülerinden gerçek zamanlı basamak tanımalarını yapmalarını sağlayan
yerleşik GPU'lara sahiptir. Nöral işlem çubukları, hesaplama güçlerini artırmak için
Raspberry Pi'ye USB aracılığıyla takılabilir. Bu cihazların evrimi ile edge computing
günümüz internetinin gecikme ve bant genişliği kısıtlamalarını azaltır. Tahminler, edge
hesaplamanın ileride bulutun, sadece veri deposu haline geleceğini gösteriyor.

Yakın gelecekte, yapay zekâ uygulamaları akıllı telefonlar, otomobiller, kameralar ve ev


aletleri gibi cihazlarda yani kısacası her yerde bulunacak. Çıkarımın yanı sıra, veri işleme
hattına ön işleme ve normalleştirme adımlarını dahil ederek akış verilerine makine öğrenimi
modellerini eklemek mümkün olacaktır. Edge modeller, çözülmekte olan ana problemle
ilgilenen seçilmiş özellikler kullanılarak eğitilecektir. Örneğin, bir şehirdeki seçilmiş
kavşaklarda kirlilik seviyesi, sıcaklık, trafik yoğunluğu vb. değişimlerdeki eğilimleri verebiliriz.

Modelleri edge cihazlardan merkezi sunuculara taşımak ham verileri işlemek için gereken
büyük miktarda bant genişliği ve ara depolama alanından tasarruf sağlar. Kestirimci
modeller, bağımsız değişkenlerden yola çıkarak hata olasılığını tahmin eder. Bu modeller
edge ile eğitilebilir ve günlük veya haftalık olarak bulut tabanlı merkezi bir sunucuya
aktarılabilir. Çok uçlu cihazlardan gelen modeller, birden fazla konumdaki senaryoları
dikkate alarak global olarak geçerli tahminler yapmak için merkezi sunucuda birleştirilebilir.
Konsolidasyon amacıyla, edgelerden alınan modeller, hedef değişkenleri önceden
tanımlanmış bir dizi bağımsız değişkene karşı yeniden yapılandırmak için kullanılabilir.
Global bir model, hedef model olarak uç modellerden elde edilen çıktılar kullanılarak
eğitilebilir.

Edge cihazlarındaki modeller farklı makine öğrenimi çerçeveleri kullanılarak geliştirmek ve


modeli bu çerçevelerden taşımak için standart bir biçime ihtiyaç var. Bu, Tahmini Model
İşaretleme Dili'nin (PMML) yararlı olduğu yerdir. Tahminli modellerin uygulamalar arasında
tanımlanmasını ve paylaşılmasını sağlayan XML tabanlı bir dildir. Bu biçimlendirme dili,
Spark ML, R, Pytorch, TensorFlow vb. gibi çeşitli modelleme çerçeveleri aracılığıyla
geliştirilen modellerin paylaşılmasını sağlar.

akademi40.org 45
Makine Öğrenimi Rehberi

Özetlemek gerekirse, uç noktadaki makine öğrenimi, bu dağıtılmış karar verme çağındaki


eğilim olacaktır. Edge cihazlarda eğitilen ve dağıtılan makine öğrenimi modelleri, edge
cihazlara daha fazla özerklik sağlayarak karar verme sürecinin merkezileştirilmesine
yardımcı olur. Bu, edge cihazlarının hızlı yanıtların gerektiği durumlara anında tepki
vermesini sağlar. Hareketlerinizi ve eylemlerinizi takip etmek için dağıtılan akıllı edge
cihazlarla birlikte var olmaya hazır olun.

akademi40.org 46
Makine Öğrenimi Rehberi

Makine Öğrenimi Modellerinin Artan Eğitimi için


Veri Tankları

Veri gölü (data lake), sınırsız sayıda veri depolamak için kullanılan bir havuzdur.
Bugünlerde, bulut hizmet sağlayıcılarının çoğu, verileri geldikçe depolamak için
ölçeklenebilir veri göllerinin barındırılmasına izin veriyor. Bu veri göllerini kullanmak için,
verilerin yapılandırılması gerekli değildir ve üzerinde farklı türde uygulamalar çalıştırılabilir.
Bunlar genellikle büyük veri analizi ve makine öğrenimi uygulamalarıdır. Bu
uygulamaların tüm verilerinin, bir veri gölünde bulunması gerekir ve göle yeni veri kümesi
eklendiğinde, analitik ve makine öğrenimi eğitim sürecini tekrar tekrar yapmamız gerekir. Bu
süre, çözümlerin teslim tarihini etkileyen zaman alıcı bir işlemdir.

Büyük veri analizi ve makine öğrenimindeki son gelişmeler ise artımlı analitik ve artımlı
öğrenmedir. Artımlı öğrenme, mevcut bir makine öğrenimi modelinin bilgisini yeni verilerle
daha da eğiterek genişletir. Bu ilerlemeyle, veri gölüne yeni veriler ekledikten sonra süreci
tekrar tekrar yürütmeniz gerekmez. Artan öğrenmeyle, uygulamayı yeni eklenen veriler
üzerinde çalıştırarak yakalanmış olan sonuçları yapay zekâya aktarabiliriz.

Bir analiz ve makine öğrenimi iş akışını sürdürmek için, modelin ilk sürümü oluşturulduktan
sonra bir veri gölüne abone olmamıza gerek yoktur. Toplu verilerle ilgili ilk analiz ve eğitim
tamamlandıktan sonra, "Veri Tankları"ndaki artımlı verileri koruyarak artımlı öğrenmeyi
yapabiliriz. Veri tankları artımlı öğrenmeyi kolaylaştırır. Veri göllerinin aksine, veri tanklarının
kapasitesi sınırlıdır.

Bu, bulutlarda abonelik maliyetinden tasarruf edilmesine yardımcı olur. Tıpkı bir su deposu
gibi, veriler veri deposuna doldurulur ve maksimum kapasiteye geldiğinde, büyük veri
analizi / makine öğrenimi eğitimi tetiklenir. Bu uygulamalar, halihazırda yakalanmış sonuçlar
üzerinde artan güncellemeler yapar. Artımlı öğrenme tamamlandığında, tankta depolanan
veriler başka bir veri kümesinin saklanması için yer açmak üzere boşaltılabilir. Temel olarak,
veri deposu yeniden kullanılır ve veriler kalıcı olarak depolanmaz.

IoT teknolojisinin evrimiyle birlikte makine öğrenme modelleri edge cihazlarda devreye
giriyor. Edge cihazlara yerleştirilen modeller çok sayıda çevrimiçi veri görür ve zaten bu
modelleri yeni verileri kullanarak eğitmek zordur. Tam teşekküllü makine öğrenimi eğitim
sürecini yürütmek için, cihazın büyük miktarda depolama ve bellek kapasitesine sahip
olması gerekir. Veri tankları bu noktada faydalı olur. Tanklar edge cihazlara yerleştirilebilir
ve tankların kapasitesine cihazdaki kullanılabilir depolama alanına göre karar verilebilir.
Artımlı öğrenme, modelleri artımlı bir şekilde eğitmek için kullanılan bir dizi teknikten oluşur.
Modeller Keras kullanılarak ya da TensorFlow çerçevesi kullanılarak geliştirilirse, Keras ve
Creme ile çevrimiçi ve artımlı öğrenmeye sahip oluruz.

akademi40.org 47
Makine Öğrenimi Rehberi

Creme, özellikle artan öğrenmeye göre uyarlanmış bir kütüphanedir. Amazon SageMaker,
artımlı öğrenme için yerleşik algoritmalar sağlar. Bu özellik, istihbaratını aşamalı olarak
güncelleyebilme özelliği ile edge uygulamalarına öğrenme uygulamaları dağıtırken veri
tanklarından yararlanmanıza yardımcı olur.

Artımlı öğrenme için veri tanklarını kullanmaktan çekinmeyin ve modelleri yeniden eğitmek
için gereken süreyi kısaltın.

akademi40.org 48
Makine Öğrenimi Rehberi

Yapay Zekâ ve Makine Öğrenimi İçin En İyi 20


Python Kütüphanesi

Makine öğrenimi (ML) ve yapay zekâ (AI) alanına girmek kolay bir iş değildir, fakat veri bilimi
programlarının kritik bir parçasıdır. Sektör profesyonelleri ve meraklıları büyük miktarlardaki
veriler için bir yol bulmak zorundalar. Alan sürekli gelişiyor ve bu hızlı gelişmenin hızına ayak
uydurmak çok önemli. Evrim ve yeniliklerin hızlı gelişimi ile başa çıkmak önemli. Makine
öğrenimi gelişmeleri hakkında güncel ve bilgili kalmak için, gelişmiş profesyoneller
tarafından günlük olarak kullanılan açık kaynak projeleri ve araçlarını inceleyeceğiz.

Aşağıdaki listede, Github'da en çok katkıda bulunulan projeleri görmekteyiz. Python ile
Endüstri 4.0 kapsamında özellikle makine öğrenimi, derin öğrenme ve yapay zekâ
alanlarında geliştirme yapan veya yapmayı düşünenlerin, aşağıdaki açık kaynak
projelerinden faydalanabileceklerine inanıyoruz.

1- TensorFlow başlangıçta Google’ın Makine İstihbarat araştırma organizasyonu içinde


Google Beyin Takımı üzerine çalışan araştırmacılar ve mühendisler tarafından geliştirilmiştir.
Sistem, makine öğreniminde araştırmayı kolaylaştırmak ve araştırma prototipinden üretim
sistemine geçişi hızlı ve kolay hale getirmek için tasarlanmıştır.

2- Scikit - learn, NumPy, SciPy ve Matplotlib, açık kaynak ticari olarak kullanılabilir. BSD
lisansı üzerine kurulu, veri madenciliği ve veri analizi için basit ve verimli araçlar, herkes için
erişilebilir ve çeşitli bağlamda yeniden kullanılabilir.

3- Keras, TensorFlow, CNTK veya Theano üzerinde çalışabilen yüksek neural network
geliştirme modülüdür.

4- PyTorch, Torch kütüphanesine dayanan, bilgisayarla görme ve doğal dil işleme gibi
uygulamalar için kullanılan açık kaynaklı bir makine öğrenim kütüphanesidir.

5- Theano, çok boyutlu dizileri verimli bir şekilde içeren matematiksel ifadeleri
tanımlamanıza, optimize etmenize ve değerlendirmenize olanak tanır.

6- Gensim, ölçeklenebilir istatistiksel anlam bilim, anlamsal yapı için düz metin belgelerini
analiz etme, anlamsal olarak benzer belgeleri alma gibi özelliklere sahip ücretsiz bir Python
kütüphanesidir.

7- Caffe akılda ifade, hız ve modülerlik ile yapılan derin öğrenme frameworküdür. Berkeley
vizyon ve Öğrenme Merkezi (BVLC) tarafından geliştirilmiştir.

akademi40.org 49
Makine Öğrenimi Rehberi

8- Chainer, derin öğrenme modelleri için Python tabanlı, bağımsız bir açık kaynak
modelidir. Chainer, tekrarlayan sinir ağları ve varyasyonel otomatik kodlayıcılar gibi son
teknoloji modelleri de dahil olmak üzere, bir dizi derin öğrenme modelini uygulamak için
esnek, sezgisel ve yüksek performanslı bir araç sağlar.

9- Statsmodels, kullanıcıların verileri keşfetmesine, istatistiksel modelleri tahmin etmesine


ve istatistiksel testler yapmasına izin veren bir Python modülüdür. Tanımlayıcı istatistikler,
istatistiksel testler, çizim fonksiyonları ve sonuç istatistiklerinin kapsamlı bir listesi, farklı veri
türleri ve her tahminci için kullanılabilir.

10- Shogun, çok çeşitli birleşik ve verimli Makine Öğrenimi (ML) yöntemleri sağlayan
Makine öğrenimi araç kutusudur. Araç kutusu, birden çok veri sunumunu, algoritma sınıfını
ve genel amaçlı araçları kolayca birleştirmeyi sağlar.

11- Pylearn2 bir makine öğrenme kütüphanesidir. İşlevselliğinin çoğu Theano üstüne inşa
edilmiştir. Bu, matematiksel ifadeleri kullanarak Pylearn2 eklentileri (yeni modeller,
algoritmalar, vb.) yazabileceğiniz anlamına gelir ve Theano bu ifadeleri sizin için optimize
eder ve stabilize eder.

12- NuPIC, hiyerarşik zamansal bellek (HTM) adı verilen bir neokorteks teorisine dayanan
açık kaynaklı bir projedir. HTM teorisinin bölümleri uygulamalarda kullanıldı, test edildi ve
kullanıldı. HTM teorisinin diğer bölümleri hâlâ geliştiriliyor.

13- Neon Nervana's, Python tabanlı derin öğrenme kütüphanesidir. En yüksek


performansı sunarken kullanım kolaylığı sağlar.

14- Nilearn NeuroImaging veri hızlı ve kolay istatistiksel öğrenme için bir Python
modülüdür. Böyle prediktif modelleme, sınıflandırma, kod çözme veya bağlantı analizi gibi
uygulamalarla çok değişkenli istatistikler için Scikit-öğrenin Python toolbox güçlendirir.

15- Orange3, acemi ve uzmanlar için açık kaynaklı makine öğrenimi ve veri
görselleştirmesidir. Büyük bir araç kutusu ile etkileşimli veri analizi iş akışları.

16- Pymc, Markov zinciri Monte Carlo da dahil olmak üzere Bayes istatistiksel modelleri ve
montaj algoritmalarını uygulayan bir Python modülüdür. Esnekliği ve genişletilebilirliği ile
büyük problemler için de geçerli olmasını sağlar.

17- Deap, hızlı prototipleme ve fikirlerin test edilmesi için yeni bir evrimsel hesaplama
frameworküdür. Algoritmaları açık ve veri yapılarını şeffaf hale getirmeyi amaçlamaktadır.
Multiprocessing ve SCOOP gibi paralellik mekanizması ile mükemmel bir uyum içinde
çalışır.

akademi40.org 50
Makine Öğrenimi Rehberi

18- Annoy, belirli bir sorgu noktasına yakın olan uzayda noktaları aramak için Python
bağlarına sahip bir C++ kütüphanesidir. Ayrıca, birçok işlemin aynı verileri paylaşabilmesi
için belleğe eşlenen büyük ve salt okunur dosya tabanlı veri yapıları oluşturur.

19- PyBrain modüler bir makine öğrenme kütüphanesidir. Amacı, makine öğrenimi
görevleri için esnek, kullanımı kolay ancak hâlâ güçlü algoritmalarla; algoritmalarınızı test
etmek ve karşılaştırmak için çeşitli önceden tanımlanmış ortamlar sunmaktır.

20- Fuel, ihtiyaç duydukları veri ile makine öğrenme modelleri sağlayan bir veri hattı
modelidir. Hem Blocks hem de Pylearn2 sinir ağı kütüphaneleri tarafından kullanılması
planlanmaktadır.

akademi40.org 51
Makine Öğrenimi Rehberi

Eğlenceli Yapay Zekâ ve Makine Öğrenimi


Projeleri
Veri bilimine yeni başlayanlar ve deneyimli uygulamacıların kullanabileceği, 8 eğlenceli
yapay zekâ ve makine öğrenimi proje örneğini sizin için derledik.

1. Sosyal Medya Duygu Analizi


Bu analiz, ilginç ve yenilikçi makine öğrenimi projelerinden biridir. Çünkü Facebook,
Twitter ve YouTube gibi sosyal medya platformları büyük birer veri okyanusu ve bu
verilerin madenciliği ile kullanıcı düşüncelerini anlamak çeşitli şekillerde faydalı olabilir.

Ek olarak bu proje, dijital pazarlama ve markalaşmanın bir müşterinin ürün veya hizmete
ilişkin fikir veya tepkisinin anlaşılmasında etkili olabilir. Başlangıç olarak modelinizi, verileri
pozitif veya negatif olarak sınıflandırmak için oluşturabilirsiniz.

2. NLP Kullanarak İş Toplantısı Özeti Oluşturma


Toplantı sonrası ya da ders sonrası alınan tüm notların özetini görmek istemez misiniz?
Ancak bunun için önce hepsini okuyup değerlendirmek ve özetini çıkarmak gereklidir.

NLP yani Doğal Dil İşleme'yi kullanarak, düzenlenmemiş notlarınızı özet bir forma
dönüştürebilirsiniz. İşte bu dönüşüm; konuşmanın dil yapısı ile istatiksel, dilbilimsel ve
duygusal yönlerin özelliklerinin yakalanmasıyla yapılabilir.

3. Fotoğraf Yenileme
Hasar görmüş ya da eski fotoğraflarınızı yenilemek zamanınızı alabilir. Tüm görüntü
kusurlarını, kırıkları, çizikleri ve yırtıkları bulabilecek algoritmalar mevcut. Inpainting
algoritmalarını derin öğrenme ile birlikte kullanarak eski fotoğraflarınızı renklendirebilir,
onarabilir ve piksele dayalı kusurları düzeltebilirsiniz.

4. Film Önerileri
Film izlemek için birçok platform kullanıyoruz teknolojiden faydalanıyoruz. Python veya R
diline yeni başlayanlar için, oldukça eğlenceli ve kendilerini geliştirecek bir proje olan film
önerilerini, hemen hemen her platform kullanıyor.

Genellikle izleyicinin geçmişine ve tercihlerine göre makine öğrenmesi kullanılarak yapılan


projeler Movielens Veri Kümesinden gelen verilerle gerçekleştirilebilir. Movielens
6000'den fazla kullanıcı tarafından üretilen ve şu anda 3.900 filmlik 1 milyondan fazla
film derecelendirmesine sahip bir veri kümesidir.

akademi40.org 52
Makine Öğrenimi Rehberi

5. Şarap Kalitesi Tahmini


Şarap alışverişi yapacaksınız ve bu konuda bilginiz yok. Eğer bir uzman değilseniz, şarabın
iyi olup olmadığını bilmeniz her zaman mümkün olamayabilir. Şarap Kalitesi Veri Kümesi,
şarap kalitesini tahmin etmeye yardımcı olacak eğlenceli bir makine öğrenimi projesidir. Bu
proje sayesinde veri görselleştirme, veri keşfi, regresyon modelleri ve R konusunda
kendinizi geliştirip deneyim kazanabilirsiniz.

6. Müzik Önerileri
Müzik severler için eğlenceli ve bir o kadar da faydalı bir proje. Müziksiz yaşayamayanlar ve
sürekli kendi sevdiği şarkıları dinlemek isteyenler için eğlenceli ve yenilikçi bir makine
öğrenimi projesi. Projenin amacı kullanıcıların geçmişine dayalı olarak dinlediği müzikleri
önermektedir. Python ve R dili ile geliştirilebilir.

7. Ürün Paketlerini Tanımlama


R kullanılarak oluşturulan ilginç makine öğrenimi projelerinden biridir. Bu projede satış
verilerinden ürün paketlerini bulmak için öznel segmentasyon kümeleme tekniği
kullanmanız gereklidir. Bu projeyi yapmak için veri bilimi hakkında biraz bilginiz olmalıdır.

8. Tweet Sıralama
Belirli kelimeleri seçmek ve o tweetleri sıralamak harika olmaz mıydı? Tam da bu işe
yarayacak belli kelimeleri ya da konuşulan kişilerin isimleri analiz edecek bir makine
öğrenimi projesi mevcut. Programcıların, doğal dil işlemcisinden geçmiş tweetleri alan bir
algoritma oluşturması için başlangıç düzeyde bir makine öğrenimi projesi bulunuyor.

akademi40.org 53
Makine Öğrenimi Rehberi

Google'ın Desteklediği En İyi Makine Öğrenimi


Projeleri

Teknoloji devi Google, 2020'de yapay zekânın gelişimi ve kullanım alanlarını genişletmek
için yapay zekâ destekli hizmet ve araçlar geliştirerek kullanıcı deneyimine sundu.

Ocak 2020'de Google tarafından piyasaya sunulan en iyi makine öğrenimi projelerini
aşağıda sıraladık;

Coral Accelerator Module & Coral Dev Board Mini


Google, Coral serisine Mini ve Coral Accelerator Module olmak üzere iki yeni Coral AI
ürününü ekleyerek Coral serisini genişletti. 2020 CES öncesinde duyurulan ve Coral
ailesinin en son çıkan yeni ürünleri Coral Accelerator Module ve Coral Dev Board Mini'ye
eklenen başarılı bir beta sürümü ile kullanıcı deneyimine sunuldu.

Coral Accelerator Module, şirketin özel olarak tasarlanmış Edge Tensor İşleme Ünitesini
(TPU) kapsayan çok çipli bir pakettir. Coral Dev Board içindeki çip, saniyede 30 karede
birden fazla bilgisayar görme modeli veya 100 fps üzerinde tek bir model ile çalışmak için
tasarlanmıştır. Bu teknolojinin kullanıcıları yeni sürümü PCB tasarımlarına entegre etmenin
daha kolay olduğunu söylemekteler.

Coral Accelerator Module de Google Edge TPU ile yeni çok çipli bir modül diyebiliriz.

Google ayrıca, Coral Dev Board'dan daha küçük bir form faktörüne sahip daha düşük güç
ve uygun maliyetli bir alternatif olan Coral Dev Board Mini'yi de piyasaya sürdü.

Coral Dev Board Mini, Coral Dev Board'un daha ucuz, daha küçük ve daha az güçle çalışan
bir versiyonudur

Resmi olarak Mart 2019'da açıklanan Coral ürünleri, yerel olarak çalışan yapay zekâ
kullanarak bulut tabanlı sistemlere olan bağımlılıklarını azaltmayı ve geliştiricilerin daha
verimli çalışmasına yardımcı olmayı amaçlamıştır.

Meena
Chatbotlar, uygulamalardaki muazzam büyümesi nedeniyle yapay zekâdaki en yeni
trendlerden biridir. Google, yeni ürününe insana benzeyen, insan gibi tepkiler veren yeni
özellikler ekledi. Meena, toplam 300 GB+ metin verisi ile gizli olmayan sosyal medya
konuşmalarından oluşturulan verileri uçtan uca iletecek şekilde tasarlandı.

akademi40.org 54
Makine Öğrenimi Rehberi

Ayrıca, Google’ın Duyarlılık ve Özgüllük Ortalaması (SSA) olarak adlandırılan insan


değerlendirme metriği, insan benzeri çok dönüşlü bir görüşmenin temel öğelerini de
yakalayarak bu sohbet botunu daha da çok yönlü hale getirir. Bir blog gönderisinde Google,
Meena'nın mevcut en yeni sohbet botlarından daha mantıklı ve spesifik konuşmalar
yapabileceğini iddia etmişti.

Reformer
Google Transformer'ın (dil anlayışı için yeni sinir ağı mimarisi) önemli bir gelişimi olarak
yeniden yapılandırılan Reformer, yalnızca 16 GB bellek kullanan tek bir yapay zekâ
hızlandırıcı ile 1 milyon kelimeye kadar bağlam penceresi işlenmesi amaçlanmaktadır.

Google, ilk olarak 2019'da UC Berkeley ile iş birliği içinde yürüttüğü bir araştırmada yeni
transformatör modeli fikrini ortaya atmıştır. Bu modelin arkasındaki temel fikir, öz dikkat ve
hesaplama için giriş dizisinin farklı konumlarda kullanma yeteneği diyebiliriz.

Reformer tüm kitapları aynı anda ve tek bir gadget üzerinden de işleyebilen teknolojiye
sahip olduğundan, gelecek için büyük bir potansiyel olarak görülmekte.

Google, her seferinde yapay zekâyı desteklediğini söyleyerek; geliştirdiği projeler ile yapay
zekâ çalışmalarına katkı yapmaya devam etmektedir. Google’ın yapay zekâ söylemi ile
verdiği önemi görebiliriz; “Yapay zekâ ateş ya da elektrikten daha derin bir işleve sahip ve
bu teknoloji bugün karşı karşıya olduğumuz birçok kısıtlamayı ortadan kaldırabilecektir.”

Google ayrıca yapay zekânın gelişimine olan katkısını, destek olduğu projeler ile gösteriyor.
Örneğin; yaptığı bir uygulama ya da araştırma ile göğüs kanserini tespit ederken, balinalar
gibi nesli tükenmekte olan hayvan türlerini korumak için araştırmalar gerçekleştiriyor.
Google yaptığı araştırmalar ile yapay zekâ sektörüne yön vermeye devam edecek.

akademi40.org 55
Makine Öğrenimi Rehberi

Çocuklar İçin Yapay Zekâ ve Makine Öğrenimi

Gün geçtikçe popülerliği ve önemi artan, oldukça farklı alanlarda fayda sağlayan yapay
zekâ ve makine öğrenimi konularını, küçük yaştan itibaren eğitim ve öğretim hayatına
dahil etmenin önemi tartışılmaz bir gerçek.

Yapay zekâ ve makine öğrenimi için gerekli eğitimlerin temel düzeyde verilebilmesinde,
ebeveynlerin ve öğretmenlerin rolü oldukça büyük. Hem ebeveynlerin hem de
öğretmenlerin, bu tür online eğitimleri denetimli bir şekilde sunabilmesi için, çocuklara özel
olarak tasarlanmış eğitim platformları oluşturulmuştur. Ne yazık ki, bu konuda çok fazla
Türkçe kaynak bulunmuyor.

Bu sebeple, makine öğrenimi (ML), yapay zekâ (AI) ve programlamayı çocuklara sevdirecek
ve öğretecek, kolaylıkla ulaşabileceğiniz bazı ücretsiz eğitim platformlarını sizler için
derledik.

Experiments with Google


Google Geliştiricileri tarafından, dijital deneylerin tasarlandığı ve bu deneylerin bazılarının
da açık kaynak olarak eklendiği, özellikle yapay zekâ konusunda oldukça eğlendirici ve
öğretici 1.000'den fazla projeyi bulabileceğiniz Google'ın ücretsiz eğitim platformu.

akademi40.org 56
Makine Öğrenimi Rehberi

Yapay zekâdan, sanal gerçekliğe kadar birçok konu hakkında yayımladıkları koleksiyonlara
da buradan erişebilirsiniz.

ML for KIDS IBM


6 yaş ve üzeri için tasarlanmıştır. Yapay zekâ ve makine öğrenim modelleri, interaktif eğitim
kitleri ve oyunlaştırılmış projelerin yer aldığı, IBM'in ücretsiz bir eğitim platformu. İçeriklerin
bulunduğu arayüzde Türkçe dil desteği de mevcut.

Scratch
Scratch; interaktif eğitimler, hikayeler, oyunlar ve animasyonlar yardımıyla 8-16 yaş
arasındaki çocukların, kodlama ve programlama öğrenmelerine yardımcı olmayı amaçlıyor.
Aynı zamanda, dil ve hitap kurallarının sürekli kontrol edildiği online topluluk sayfalarında da
hem ebeveyn olarak hem de öğretmen olarak yer alabiliyorsunuz.

Windows, macOS, Chrome OS ve Android platformları için uygulamayı buradan


indirebilirsiniz.

5-7 yaş arasındaki çocuklar için ise Scratch JR'ı ücretsiz olarak
Android ve iOS cihazlarınıza indirebilirsiniz.

akademi40.org 57
Makine Öğrenimi Rehberi

Machine Learning for Kids


Metin, rakam, görsel ve ses tanıma gibi temel yapay zekâ ve makine öğrenimi
modellemelerinin, çocuklara oyunlaştırarak öğretilmesini sağlıyor.

Çoğunluğu, Scratch ve Pyhton dillerinden oluşturulmuş ve indirilebilir projelerle interaktif


bir şekilde kullanılabiliyor.

PictoBlox AI
Scratch ile sürükle-bırak yöntemiyle çocuklara yönelik tasarlanmış yapay zekâ ve IoT
(nesnelerin interneti) eğitim platformudur. Uygulama içerisinde bulunan sanal asistan
sayesinde, oldukça keyifli eğitimlerle yapay zekâ ve makine öğreniminin yanında Robot
Lego, Ardunio, Evive gibi kartlarla IoT konusunda da kendilerini geliştirmelerine katkı sağlar.

akademi40.org 58
Makine Öğrenimi Rehberi

Sosyal Dünyada Makine Öğrenimi

Makine öğrenimi, keşfedilmemiş bir şeyi tahmin etmek için çok fazla veri ve algoritma
kullanır. Makine öğrenimi modelleri yaşama, iletişim kurma, seyahat etme ve çalışma
şeklimizi basitleştirmek için tasarlanabilir. Makine öğrenimini günlük yaşantımıza entegre
edebiliriz. Son birkaç yılda, veriyi elde etme, yaratma ve bunlarla iletişim kurma şeklimizi
değiştiren bir veri devrimi olduğu gözlenmektedir.

Piyasada rehberlik edecek çok sayıda makine öğrenimi danışmanlık şirketi bulunmaktadır.
Makine öğrenimi, şirketlerin büyüklüğü fark etmeksizin çoğunun günlük faaliyetlerinin
ayrılmaz bir parçasıdır. Tüm sektörler dışında, makine öğrenimi hizmetlerinin itici gücünü
henüz görmeyen tek alan, günlük hayatımız yani sosyal dünyadır.

We Are Social ve Hootsuite tarafından yeni bir küresel çapta hazırlanan dijital rapora göre,
arama yapmak için interneti kullanan insan sayısının 2019 yılında 5 milyar kişiye ulaştığı
belirtiliyor. Her saniye yaklaşık 40.000 arama gerçekleştiriliyor, bu da günde 3.5 milyar
veya yılda inanılmaz bir rakam olan 1.2 trilyon arama yapıyor.

Çeşitli Alanlarda Makine Öğrenmesinin Etkisi


Günlük yaşamımızda makine öğrenimi ile ilgili birçok hizmet veya ürün kullanıyoruz. Makine
öğrenimi genellikle verileri analiz ederek verdiğimiz kararları şekillendiriyor. Yazımızda çeşitli
sosyal alanlarda makine öğrenmesinin etkisini inceleyeceğiz.

1. Eğitim
Her bir bireyin yeteneğine uygun eğitim sistemi kullanılabilir. Her insanın eşsiz özellikleri,
zayıflıkları ve güçlü yanları vardır. Burada bireylere uygun eğitim için yapay zekâ ve makine
öğrenimi çözümleri hayati bir rol oynayabilir. Bir kursu her öğrencinin yeteneklerine,
gereksinimlerine ve becerilerine göre özelleştirmeye yardımcı olabilir. Gelişen dünyada
eğitim endüstrisinde AR ve VR kombinasyonu gibi yeni nesil öğrenmenin devreye
girmesiyle artık öğrenciler dersleri sanal ortamda alabilir ve herhangi bir yere gitmeden
evde oturarak eğitimlerini tamamlayabilir.

akademi40.org 59
Makine Öğrenimi Rehberi

2. Sağlık
Test sonuçlarındaki düzensizliklerin ve hastalığın yanlış teşhisinin tüm dünyada yaygın ölüm
nedenlerinden biri olduğu biliniyor. Makine öğrenimi ve yapay zekâ, gelişmiş teşhis
yetenekleri ile sonucun daha iyi tahmin edilmesine ve doğru teşhise yardımcı olur. Veriler,
daha iyi tedavi ile hastalığın daha hızlı teşhis edilmesine yardımcı olan tüm olası hastalıkların
semptomlarını içeren bir veri tabanına eklenir. Hastanelerin çoğunda yapay zekâ ve makine
öğrenimi, hastaların daha hızlı tedavisinde bir tümör ya da kanseri tespit etmek için
kullanılıyor.

3. Nakliye
Diğer endüstriler gibi ulaşım endüstrisi de yapay zekâ ve makine öğrenimi hizmetleri gibi
teknolojileri kullanmaya başladılar. Yollarda daha önce hiç olmadığı kadar fazla sensör var.
Makine öğrenimi yardımı ile demiryolu ağları ve hava yolları trafikleri hesaplanabilir. Yakın
zamanda Rolls Royce ve Google tarafından piyasaya sürücüsüz otonom bir gemi
sunulacak. Bu gemide makine öğrenimi ve yapay zekâ sistemleri, denizdeki nesneleri
tanımlamaya ve izlemeye yardımcı olacaktır.

4. Eğlence
Eğlence endüstrisi yeni teknolojileri diğer tüm endüstrilerden oldukça hızlı bir şekilde
benimsiyor. Yeni ses, ışık teknikleri, kurgu teknikleri ve çok daha fazlası gibi. Makine
öğrenimini, eğlence endüstrisine tanıttıktan sonra tüketici deneyimi tamamen
değiştirecektir. Günümüzde bir film setinde, film yapımını daha az karmaşık bir süreç haline
getiren birçok robot ve drone kullanılmakta. Büyüleyici görsel efektlerle (VFX) oluşturulan
filmler mevcut. Film yapımcılarının fiziksel olarak çektiği sahneler yakın zamanda daha da
azalacak.

Makine Öğreniminin Sınırları


Makine öğrenmesinden bekleyebileceğimiz en belirgin değişim endüstrilerin
otonomlaşmasıdır. Artık yavaş yavaş makineler işçilerin yerini alıyor. Günümüzde bir kontrol
merkezinde uzaktan işletilen ve kullanılan sürücüsüz birçok araç var. Yakın zamanda daha
fazla self servis, kiosk ve daha az personeli süpermarketlerde bile görebileceğiz. Fakat yine
de bazı kişiler hâlâ makinelerle mesafeli bir ilişkiye sahip. Çünkü insanların bir sorunu hızlı
bir şekilde çözme yeteneği, makinelerin henüz yapabileceği bir şey değildir.

akademi40.org 60
Makine Öğrenimi Rehberi

Özet Olarak
Makine öğreniminin sosyal ve etiğe olan etkisi dünyanın hayal gücünü harekete geçirmeye
devam edecektir. Çok büyük miktarda veri işleme ve kalıpları gerçek zamanlı olarak tanıma
yeteneği, problem çözme için yeni bir çerçeve oluşturmaya yardımcı olacaktır. Birçok
insanın akıllıca gözlemlediği gibi, yapay zekâ ve makine öğrenimi rüyası dünyada yeni
değildir. Makine öğrenmesinin günlük yaşamımıza uygulama zamanı geldi ve artık tüm
sosyal yaşantımızda devrim yakın.

akademi40.org 61
Makine Öğrenimi Rehberi

Bankacılıkta Makine Öğrenimi – İmkanlar, Riskler,


Kullanım Alanları

Rakipleri arasından sıyrılabilmek için bankalar, diğer finansal kurumlar gibi, teknolojik
gelişmeleri yakından takip etmek zorundalar. Neyse ki, yapay zekâ ve makine öğrenimi
bunu başarmalarına yardım etmek için burada. Veri işlemeyi geliştirmek, daha iyi stratejileri
ve dolandırıcılığa karşı daha güçlü mücadeleyi de beraberinde getirecek.

Bankacılık İstatistiklerinde Yapay Zekâ


● Araştırma şirketi Autonomous Next’in tahminlerine göre, dünyanın çeşitli
yerlerindeki bankalar, 2030’a gelindiğinde yapay zekâ teknolojilerini kullanarak
giderlerini %22 kadar azaltacak. Tasarruf 1 trilyon Dolar’a ulaşabilir.

● AI sistemleri yaratma becerisine sahip profesyonellerin %60’ı finans şirketleri için


çalışıyor.

● Kredi kartı dolandırıcılıklarıyla mücadele etmek için bankacılık sektöründe yüz


tanıma teknolojilerinin kullanılması bekleniyor. Yüz tanıma teknolojisi yıllık geliri
2020’de, %20’den fazla artırmış olacak.

Yapay Zekâ Bankacılıkta Nasıl Kullanılır


Bankaların müşterilerinden, yatırımcılarından, ortaklarından ve girişimcilerinden aldığı veriler
dinamiktir ve analiz edilmeleri için hangi parametrelerin kullanıldığına bağlı olarak farklı
amaçlar için kullanılabilir. Basitçe, bankacılık için AI kapsamı dört geniş gruba ayrılabilir:

Müşteri Hizmetlerini Geliştirmek


Bankalar ve diğer finansal kurumlar bir kullanıcı ve davranışları hakkındaki her şeyi bir ağ
üzerinden öğrenme fırsatını elde ettiklerinde, aynı anda müşteri hizmetlerini de mümkün
olduğu kadar geliştirme fırsatını yakaladılar.

Sohbet Botları
Örneğin bir kullanıcı, bir web sitesi ya da uygulamada sıkıntı yaşıyorsa, sohbet botları ona
izlemesi gereken adımlarda yol gösterirken aynı zamanda bankanın destek ekibinin de iş
yükünü azaltıyor. Ek olarak, modern sohbet botları, kartları bloke etme ya da blokeyi
kaldırmanın yanı sıra kullanıcıya hesabındaki para çekme limiti aşıldığında ya da tersine,
hesap bakiyesi normalinden fazlaysa, bildirim göndermek gibi basit işlemleri de
gerçekleştirebiliyor.

akademi40.org 62
Makine Öğrenimi Rehberi

Kişiye Özel Teklifler


Kullanıcı davranışları hakkında çeşitli bilgilere sahip olmak, finans şirketlerinin o anda ne
istediklerini ve ne kadarını ödeyebileceklerini de öğrenebiliyor. Yani, mesela, bir müşteri
araba satıcılarının reklamlarına bakıyorsa, o zaman ona özel bir kredi teklifi göndermek
gayet mantıklı —tabii ödeme gücünü ve tüm olası riskleri analiz ettikten sonra.

Müşteri Tutundurma
Bankacılıkta büyük veriyle çalışan modern AI sistemleri sadece analiz değil, varsayım da
yapıyor. Örneğin, birçok durumda, eğer bir müşteri bankacılık organizasyonunun
hizmetlerini reddetmek istiyorsa, onun niyetlerini tahmin etmek mümkün. Bu niyetin bilgisi,
ekstra elde tutma önlemleri alınması, daha da nokta atışı ve kişiselleştirilmiş teklifler
sunulması ve sonuç olarak müşteri hizmetlerinin geliştirilmesi gerektiğinin sinyalini veriyor.

Güvenli Bankacılık İşlemleri İçin Makine Öğrenimi


Makine öğreniminin finansal sektörde dolandırıcılığı önlemek bağlamında en temel avantajı,
sistemlerin mütemadiyen öğreniyor olması. Diğer bir deyişle, aynı numara ikinci kez
çalışmayacak. Bu gelişme, bankacılık endüstrisindeki kredi kartı dolandırıcılığı açısından
harika bir şey.

Yapay Zekâ Bankacılığı Nasıl Güvenli Hale Getirir


Çoğu bankacılık işlemi, kullanıcı internetten ya da dükkanlardan yaptığı alışverişi öderken
gerçekleşiyor. Bu da demek oluyor ki, çoğu dolandırıcılık işlemi de bir şeyler satın alma
vesilesiyle gerçekleşiyor. AI bankacılık bunun olmasını engelliyor. Mesela:

• Yüz tanıması olan kameralar, fiziki bir satış noktasından alışveriş yaparken bir kredi
kartının yasal sahibinin elinde olup olmadığını saptayabilir.
• Finansal bir işlemin gerçekleştiği şüpheli IP adreslerini takip etmek, indirim kuponları
sahtekarlığını engelleyebilir ve dolandırıcılık niyetinde olanları tanıyabilir. Örneğin,
yerine sahtesini iade etmek için ürün satın alan biri.

Pazar Araştırması ve Tahmin


Makine öğrenimi, büyük veriyle bir araya gelince, yalnızca bilgi toplamakla kalmıyor, spesifik
örüntüleri de buluyor. Örneğin, kur dalgalanmalarını öngörmek, yatırım için en karlı fikre
karar vermek, kredi risklerini derecelendirmek (ve aynı zamanda en düşük risk ile spesifik
kullanıcı için en uygun olan kredi arasındaki orta yolu bulmak), rakipleri öğrenmek ve
güvenlik açıklarını tespit etmek.

akademi40.org 63
Makine Öğrenimi Rehberi

Maliyet Düşürme
Makine Öğrenimi, finansal kurumların işlemlerdeki zayıflıkları tespit etmesine ve tam
zamanlı çalışanların işlerini daha verimli bir şekilde organize etmesine olanak tanır. Bunun
en basit örneği, müşterilere basit ve standart konularda başarılı bir şekilde yol gösteren
sohbet botlarıdır. Hem sohbet botları hizmetleri karşılığı ücret de talep etmez! Makine
öğrenimi ile çalışmanın şirketlerin maliyetini düşürmesinin yanı sıra, gelişmiş müşteri
hizmetleri sayesinde karı artırmaya yardımcı olması da gayet mantıklıdır.

Amerikan Bankalarında Makine Öğrenimi Kullanım Senaryoları


Biraz da öncü Amerikan bankalarında makine öğreniminin nasıl kullanıldığının örneklerine
bakalım.

JP Morgan Chase
Amerika Birleşik Devletleri’ndeki bu öncü banka Contract Intelligence (COiN) denen bir
akıllı sözleşme sistemi geliştirdi. Veriye ve makine öğrenimine dayalı algoritma, hızlıca
gerekli belgeleri ve bu belgelerin içerdikleri önemli bilgileri bulabilmeyi sağlıyor. An itibariyle,
banka 12.000’den fazla kredi sözleşmesiyle çalışıyor ve onları manuel analiz etmek uzun
yıllar alırdı. Şimdi Chase, bu veriyi uygulamanın farklı yollarını arıyor —örneğin, sistemi
örüntüleri arayıp onlara dayalı tahminler yapacağı şekilde eğitmek.

Bank of America
Bu bankanın sohbet botu gerçek bir finans danışmanı ve stratejisti. Sistem, kullanıcı verisini
analiz ediyor ve eğer müşteri azıcık bile farklı alışveriş alışkanlıkları gösterse onu uyarıp
ödemesi gereken faturaları hatırlatıyor. Bank of America’nın sohbet botu aynı zamanda
banka kartlarıyla bloke etme ve bloke kaldırma gibi basit işlemleri de nasıl yapacağını biliyor.

Wells Fargo
Bu banka, siteyle olan etkileşimi basit ve pratik bir prosedüre çevirmek için bir akıllı sohbet
botu geliştirdi. Wells Fargo bankası, müşterilerini olağandışı durumlar konusunda uyarabilen
Predictive Banking analitik sistemini geliştirdi; örneğin, müşteri, çeklerinin ortalama
tutarından fazlasını harcadıysa. Sistem aynı zamanda, eğer müşteri normalde hesabında
tuttuğundan daha yüksek tutarda bir para transferi aldıysa belli bir kısmını mevduata
yatırmayı önerebilir.

Citibank
Citibank, kullanıcı hareketlerinde anormalliklerin takibini yaparak dolandırıcılığı önleyen
güçlü bir sistem geliştirdi. Sistem bilhassa internet alışverişlerindeki kredi kartı
dolandırıcılığını saptamak için özelleştirilmiş.

akademi40.org 64
Makine Öğrenimi Rehberi

US Bank
Bu banka, müşterilerinin hesaplarının yanı sıra uçak bileti rezervasyonları ve yurt dışı
konaklamalarını da yönetebileceği bir uygulama olan Expense Wizard’ı geliştirdi. Bu
uygulama, diğer ülkelerde yapılan güvenli harcamalara odaklanıyor. Bu, kurumsal kredi kartı
olmadan iş seyahatlerine gidenler için gayet makul bir uygulama çünkü kullanıcının
seyahatle ilgili tüm finansal veriyi tek bir yerde toplamasına izin veriyor ve şirketin finans
departmanı için rapor oluşturuyor.

Makine Öğrenimini Bankacılığa Uyarlamanın Riskleri


Var Mı?
Tabii ki, yapay zekâ teknolojisi bankacılık sektöründe devrim yaratabilir. Lakin, birtakım
riskler de mevcut ama çoğu teknolojilerin yeni oluşu ve kullanıcıların bunların nasıl çalıştığını
tam olarak anlayamayışından kaynaklanıyor.

İşten Çıkarma
Bu uygulama kapsamı ne olursa olsun, AI ve makine öğrenimine dair en yaygın risklerden ve
korkulardan biri. Gelgelelim, modern araştırmalar bankacılık sektöründeki yapay zekânın,
tükenecek mesleklere kıyasla çok daha fazla sayıda iş imkânı sağlayacağını öngörüyor.
Ayrıca, bu makalenin başında bahsettiğimiz araştırmayı hatırlıyor musunuz? AI uzmanlarının
yüzde altmışı finans kurumları tarafından işe alınıyor. Bu bile başlı başına toplu bir çöküş
yaşamayacağımızı söylemek için yeterli bir sebep.

Daha Az İnsan Etkileşimi Sonucu Daha Az Güven


Kullanıcıların, insan danışmanlarla çalışmak için daha az fırsatı olacağından dolayı finans
kurumlarına daha az güven duyacağına dair bir görüş var. Bu doğru ama sadece kısmen.
Büyük ihtimalle bu trendi gözlemleyeceğiz ama sadece hali hazırda teknolojiye inanmaya
pek de meyilli olmayan, önceki jenerasyonlarda doğmuş insanlarda. Ama söz konusu
kolaylık ve emniyet için daha fazlasını ödemeye istekli Y kuşağı olduğunda, herhangi bir
işlemi daha az tıklamayla halledebilme fırsatı için memnuniyet duyacaklarını söyleyebiliriz.

Etik Riskler
Etik riskler, finans şirketlerinin topladığı, depoladığı, sistematize ettiği, analiz ettiği ve kendi
yararına (ve aslında müşterinin de yararına) kullandığı veri miktarının git gide büyümesiyle
ilgilidir. Bazı müşteriler bu gidişattan hoşnut değiller ama şu an kişisel veri izi bırakmadan
herhangi bir eylemde bulunmak imkânsız. Dolandırıcılar daha şimdiden AI sistemlerini
kandırmanın gittikçe zorlaştığının farkında oldukları için çoğunlukla bu gerçekten
hoşlanmıyorlar. Aynı zamanda bu kullanıcı deneyimi ve güvenlik seviyesinde de net bir artış
sağlıyor.

akademi40.org 65
Makine Öğrenimi Rehberi

Yanlış-Pozitif Sonuç Riski


Makine öğrenimi sistemleri ve AI, kullanıcı davranışlarındaki örüntüleri izliyor ve onları her bir
kullanıcıya istinaden kabul edilen model versiyonlarıyla kıyaslıyor. Yani mesela, eğer bir
kullanıcı yurt dışında bir işlem gerçekleştirmişse ama bankayı seyahati konusunda
bilgilendirmemişse (ya da banka herhangi bir sebepten bu bilgiye sahip olamamışsa;
örneğin kullanıcı, uçak biletlerini kredi kartıyla almamış da hediye gelmişse), o zaman bu
işlem dolandırıcılık olarak yorumlanabilir. Aslında her şey yasaldır, yalnızca küçük bir bilgi
eksikliği yanlış-pozitif sonuca götürmüştür.

Finansal Hizmetiniz İçin Makine Öğrenimi Çözümleri


Geliştirmek Adına En İyi Ortağı Nasıl Seçersiniz?
Finans kurumları, iş süreçlerine AI’ı katarken hedeflerini net bir şekilde belirlemeliler. Çünkü
sadece veriyi analiz etmek nihai bir hedef değildir; AI, spesifik bir amacı gerçekleştirme
yoludur. O yüzden, bir banka ya da finansal şirket için bir AI ya da makine öğrenimi çözümü
geliştirirken, bu görevi emanet ettiğiniz şirketin işinizin inceliklerini anladığından ve bu
yazılımın hangi görevleri tamamlaması gerektiğini bildiğinden emin olmanız lazım.

Buna ek olarak, potansiyel bir AI temsilcisi seçerken o şirketin özel olarak finans sektörü için
çalışma deneyimi olduğundan emin olun. Neden mi? Çünkü güvenlik gereklilikleri diğer
bütün alanlardan daha yüksektir.

Sonuç
Finans sektöründe yapay zekâ ve makine öğrenimi kullanımı, bu kurumları daha karlı hale
getirebilir ve müşteri güvenini artırır. Yine de bunun olabilmesi için AI çözümünüzün işinin
ehli uzmanlar tarafından geliştirilmesi gerekir.

akademi40.org 66
Makine Öğrenimi Rehberi

akademi40.org

akademi40.org 67

You might also like