Professional Documents
Culture Documents
Endüstri 4.0 Yapay Sinir Ağları-Makale
Endüstri 4.0 Yapay Sinir Ağları-Makale
Fikriye OÇAKCI
fikriyeocakci66@gmail.com
Özet
Bu makalenin amacı; insan beyninin veriyi işleme ve analiz etme modelinden ilham alınarak
tasarlanmış Yapay Sinir Ağlarının (Artificial Neural Networks- ANN) yapısı, işleyişi, yapay
zeka çalışmalarına katkıları ve özellikle günlük yaşantımızda sıkça kullandığımız bilinmeyen
veriyi tahmin etme veya sınıflandırma problemlerinin çözümünde makine öğrenmesi
alanından nasıl faydalanıldığı hakkında araştırma yaparak bilgi vermektir. Günümüzde bilgi
teknolojilerinin hızla gelişmesi ve insanların ihtiyaç duydukları hemen hemen tüm işlemlerini
bu teknolojiler üzerinden gerçekleştirmesi hatta kişisel verilerin internet aracılığı ile tüm 1
dünya ile paylaşılmasının çekici hale gelmesi, gerçek verinin dijitalleşmesine ve “Big Data”
denilen kavramın ortaya çıkmasına neden olmuştur. İşte bu yüzden; dijital ortamdaki verinin
bu denli artması, verinin hızlı ve pratik bir şekilde işlenmesi ihtiyacını doğurmuştur.
Günümüzde milyonlarla hatta milyarlarla ifade ettiğimiz bu veri havuzundaki verilerin
insanlar tarafından elle işlenmesi, sınıflandırılması ve anlamlı hale getirilmesi ne yazık ki pek
mümkün değildir. Bunun için yüksek hesaplama gücü gerektiren ve karmaşık matematiksel
işlemleri dahi yapabilen gelişmiş nitelikteki makinelere ihtiyaç vardır. İşte bu nedenle 1980’li
yıllarda ortaya atılan “makinelerin insan gibi düşünebilme, analiz edebilme ve işlem
yapabilme” fikri neticesinde çalışmalara başlanmış, dijital ortamdaki verinin hızlı ve pratik bir
şekilde işlenebilmesi ihtiyacının derinden hissedilmesi üzerine yapay sinir ağları
geliştirilmiştir. Yapay sinir ağları ve yapay zekanın gelişmesiyle önem kazanan makine
öğrenmesi alanı, günümüzde sadece verinin işlenmesi ve analiz edilmesi için değil, günlük
yaşantımızda birbirine bağlı değişkenlerden birinin değerini, ötekine bağlı olarak tahmin etme
(Regresyon) ya da yüzlerce veriden oluşan bir veri setinin uygun yöntemlerle sınıflandırılması
(Classification) amacıyla da kullanılmaktadır. Yapılan çalışma sonucunda yapay sinir ağları
kullanımının gerekliliği önem kazanmış ve makine öğrenmesi alanının hayatımızı nasıl
kolaylaştırdığı anlaşılmış olacaktır.
2
Nörolojik Sinir Hücresi Yapay Sinir Hücresi
3
Bir yapay sinir ağı hücresi 3 kısımdan oluşur. Giriş katmanı olarak adlandırılan kısımda, ağa
girdi değerleri verilir ve sonucu bulması istenir. Gizli katman olarak adlandırılan kısım da
hesaplamaların yapıldığı yerdir. Bu katmana gizli katman denmesinin sebebi, içeride yapılan
hesaplamaların bizler tarafından görülmemesidir. Yapay sinir ağlarının bir avantajı da budur.
Çünkü sinir ağı karmaşık bütün işlemleri içeride hesaplar ve bizler içeride ne yapıldığıyla pek
ilgilenmeyiz. Yapay sinir ağının öğrenmeyi gerçekleştirdiği yer de bu katmandır. Sinir ağı
doğru çıktıyı verdiği sürece yapılan hesaplamaların bir önemi yoktur. Son katman ise çıkış
katmanıdır. Verilen girdi değerlerine göre çıktının üretildiği kısımdır.
Yapay sinir ağının genel yapısını gösteren Şekil.1’e bakıldığında süreç ilk olarak dışarıdan
girdi değerlerinin (𝒙𝟏 , 𝒙𝟐 … 𝒙𝒎 ) verilmesiyle başlar. Yapay sinir ağı, değerleri alır ve belli
ağırlıklarla (𝒘𝟏 , 𝒘𝟐 … 𝒘𝒎 ) çarpar. Ağırlıklar, ağdaki belli bir düğümün gücünü gösterir.
Ağırlık değerleri, süreç işlediği sürece değişmeye devam eder. Gizli katmanda yapılan
hesaplamalar binlerle ifade edilirse, ağırlıkların da bir o kadar değiştiği anlaşılmalıdır. Çünkü
ağırlıkların sürekli değişmesi doğru sonucun bulunması için gereklidir. Yapay sinir ağı, artık
bir şeyleri öğrenip tüm model için genelleme yapabilecek hale gelene kadar ağırlıklar
güncellenmeye devam edilir. Daha sonra ağırlıklı girdilerin toplamıyla oluşturulmuş toplama
fonksiyonu ( ∑ ) aktivasyon fonksiyonundan geçirilir. Aktivasyon fonksiyonu, yapay sinir
ağının işlevine uygun olmalıdır. Bu nedenle farklı yapay sinir ağları farklı aktivasyon
fonksiyonlarından geçirilir. Son olarak çıktı değeri (y) üretilir. En yaygın kullanılan
aktivasyon fonksiyonları; Sigmoid, ReLU, Leaky ReLU, Maxout vb.
Bias: Dışarıdan verilen sabit bir sayıdır. Genelde ağırlıklı girdilerin toplamının 0 çıkmaması
için verilir. Zorunlu değildir. “Bias” kullanıldığı takdirde değeri 1 alınabilir.
3. PERCEPTRONS (ALGILAYICILAR) NEDİR VE NEDEN KULLANILIR?
Perceptron ya da algılayıcıyı, yapay sinir ağını en temel haliyle ifade etmek için kullanabiliriz.
İleri beslemeli bir ağ modelidir. Yapay sinir ağlarıyla aynı şekilde çalışır. Tek farkı
algılayıcıların tek katmanlı olmasıdır. Günümüzde yapay sinir ağları oldukça karmaşık
şekillerde kullanılmaktadır. Bu karmaşıklığı, birden fazla katmana sahip olması ile
açıklayabiliriz. Yapay sinir ağlarının ilk ortaya çıkmasından bu yana gelinen noktada; çok
karmaşık matematiksel ifadeleri dahi çözebilecek, çok iyi modellemeler yapabilecek seviyeye
gelinmiştir. Bu da gizli katman olarak adlandırdığımız çok katmanlı yapısı sayesinde
gerçekleşmektedir. Fakat perceptron olarak adlandırdığımız basit yapıda gizli katman yoktur.
Dolayısı ile karmaşık işlemleri çözebilecek ya da çok iyi modelleme yapabilecek durumda
değildir.
Günümüzde perceptrons, ikili sınıflandırıcı olarak kullanılmaktadır. Yani genellikle doğrusal
olarak ayrılabilen problemleri çözmek için kullanılır. Çıktısı binary (1 ya da 0 gibi)’dir.
Algılayıcının en iyi modelleme yapabileceği örnekler mantık kapılarıdır. (AND, OR, XOR)
Ancak orda bile yalnızca AND ve OR problemlerini çözebilmiş, XOR problemini çözmede
başarılı olamamıştır. XOR’ u çözememe problemi, günümüzde kullanılan modern sinir
ağlarının temelini oluşturmuştur.
Şekil.5 İleri Besleme (Çıkış Hesaplama) ve Geri Yayılım (Hata Yayma) Yönleri
5. MAKİNE ÖĞRENMESİ TANIMI
Makine öğreniminin temelinde “bilgisayarların kendi kendine öğrenebilmesi” fikri yer alır.
Bu öğrenim; dışarıdan bir yazılım ya da programcı tarafından açıkça komutlar verilmeksizin,
makinenin kendi deneyimlerine dayanarak sonucu bilinmeyen ifadelerin sonuçlarını doğruya
en yakın şekilde tahmin edebilmesi şeklinde gerçekleşir. Makine öğrenmesi alanı ile
bilgisayarlara bu yeteneğin kazandırılması sağlanır.
Bilgisayar bilimcisi ve makine öğreniminin öncüsü Tom M. Mitchell ise “Tecrübeyle gelişen
bilgisayar programlarını nasıl oluşturabiliriz?” diye düşünmüş ve Tom Mitchell Algoritmasını
geliştirmiştir. Algoritmaya göre; “Bilgisayar programının bir işi (Task) yaparken edindiği
tecrübeler (Experience) artarsa, işi yaparken ki performansı da (Performance) artar”.
Makine öğrenimine neden ihtiyaç duyulduğuna gelecek olursak; günlük yaşantımızda
teknolojinin her geçen gün gelişen yeniliklerine ayak uydurmak istememizin neticesi olarak,
dijital ortamdaki verinin günden güne kat ve kat arttığını gözlemliyoruz. Bu kadar verinin;
işlenmesi, analiz edilmesi ve sınıflandırılması da bir hayli zor olmalı. İşte makine öğrenmesi
alanı; bu zorluğun kolaylaştırılmak istenmesi ve makinelerin bizim yerimize bu işi kolaylıkla
yapabileceği düşüncesiyle hayatımıza girmiştir.
Makine öğrenmesinde amaç, geçmişteki verilerden yararlanarak yeni verileri tahmin
edebilecek en iyi modeli geliştirmektir. Bu nedenle makine öğrenmesinin, geleneksel
programlama yöntemlerine göre işleyişi biraz farklıdır. Geleneksel programlama
yöntemlerinde, bilgisayara veri seti ve uygun program (model) verilerek çıktı vermesi istenir.
Fakat makine öğreniminde bilgisayara veri seti ile birlikte çıktı değerleri de verilir. Burada
6
amaç, bilgisayarın aldığı giriş verileri ile çıkış değerleri arasındaki mantığı öğrenip, en uygun
programı (modeli) üretmesidir. Daha sonra bu model yeni veri setlerine uygulanarak, olası
tahmini sonuçlar kolaylıkla öğrenilebilir.
Labels (Etiketler): Etiketler, bir makine öğrenimi algoritmasından elde edilecek sonuçlar
olarak ifade edilebilir. Örneğin; yukarıdaki örnek üzerinden gidildiğinde, hava tahmini için
‘yağmurlu’ ya da ‘güneşli’ ifadeleri birer etikettir. Ya da ikili sınıflandırma yapıyorsak; elde
edilecek 1 ve 0 değerleri etiket olarak algılanabilir. Regresyonda ise ulaşılmak istenen gerçek
değeri etiket olarak düşünebiliriz. Örneğin; hava tahmininde 27° ifadesi bir etikettir.
Test Data (Test Verileri): Öğrenme algoritmalarını test etmek amacıyla kullanılan
verilerdir. Test amacıyla kullanılan veriler etiketlenmemiş yani sınıflanmamış verilerdir.
Böylece veri setinin bir kısmı test için kullanılarak, eğitim sürecinin başarısı ölçülebilir. Test
7
edilmeyen algoritmanın öğrenmeyip ezberlediği düşünülebilir.
a. Sınıflandırma (Classification):
Sınıflandırma algoritmaları; değişkenlerin kategorik değerler alabildiği, verilerin sınıflara
ayrılabildiği problemlerin çözümünde kullanılmaktadır. Denetimli öğrenme algoritması
çeşididir. İşleyiş olarak ilk girdi değerleri alınır ve kategorize edilir. Böylece, yeni girdi
verileri geçmiş değerlere göre sınıflandırılır. Sınıflandırmanın regresyondan farkı, etiketli
verilerin kategorik sınıflar olmasıdır.
10
Örnek verecek olursak; elimizde bir şirket çalışanlarının yaşları ve aldıkları maaşlar olsun.
Buna göre çalışanların maaşlarını yaşlarına göre tahmin etmeye çalışalım. Çıktı olarak sayısal
değerler istediğimiz için regresyon yöntemini kullanabiliriz. Elimizdeki bu veri setini
kullanarak, modelimizi eğitelim. Böylece modele verilen farklı giriş değerleri için elimizde
tahmini değerler olacaktır.
11
[1] Fırat Üniversitesi Adli Bilişim Mühendisliği, Dr. Öğr. Üyesi FATİH ERTAM’ın
“Makine Öğrenmesi” Ders Notları
[3] Beykoz Akademi Dergisi, 2016; 4(1), 1-32 Derya Saatçioğlu, Necdet Özçakar İstanbul
Üniversitesi Sosyal Bilimler Enstitüsü: Yapay Sinir Ağları Yöntemi ile Aralıklı Talep
Tahmini, (2016)
http://library.beykoz.edu.tr/wp-content/uploads/YAPAY-S%C4%B0N%C4%B0R-
A%C4%9ELARI-Y%C3%96NTEM%C4%B0-%C4%B0LE-ARALIKLI.pdf
[4] https://www.derinogrenme.com/2017/03/04/yapay-sinir-aglari/
[5] https://www.sciencedirect.com/topics/chemical-engineering/feedforward-neural-
networks
[6] https://analyticsindiamag.com/6-types-of-artificial-neural-networks-currently-being-
used-in-todays-technology/
12
[7] https://medium.com/towards-artificial-intelligence/main-types-of-neural-networks-
and-its-applications-tutorial-734480d7ec8e
[8] https://www.elektrikport.com/teknik-kutuphane/denetimli-ve-denetimsiz-makine-
ogrenmesi-nedir/22487#ad-image-0
[9] https://medium.com/fintechexplained/supervised-machine-learning-regression-vs-
classification-18b2f97708de