Hafta 01 - Giris - BGM 565 - Siber Güvenlik için Makine Ögrenme … · 2020. 7. 17. · I Alan...
Transcript of Hafta 01 - Giris - BGM 565 - Siber Güvenlik için Makine Ögrenme … · 2020. 7. 17. · I Alan...
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Hafta 01 - GirisBGM 565 - Siber Guvenlik icin Makine Ogrenme Yontemleri
Bilgi Guvenligi MuhendisligiYuksek Lisans Programı
Dr. Ferhat Ozgur [email protected]
Istanbul Sehir Universitesi2018 - Bahar
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Icindekiler
1 Makine OgrenmesiMakine Ogrenme UygulamalarıMakine OgrenmesininGelecegiDers Hakkında BilgilerUygulama Alanları
2 YontemlerTanımFormal ModelMakine OgrenmeProblemlerinin Sınıflandırılması
3 Danısmanlı ogrenme (Supervisedlearning)
Sınıflandırma
RegresyonSıralama (Ranking)
4 Danısmansız Ogrenme(Unsupervised Learning)
GirisKumelemeBoyut Azaltımı
5 RegresyonTek Degiskenli DogrusalRegresyonMaliyet fonksiyonu (Costfunction)Gradient DescentDogrusal Regresyon - Python
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Icindekiler
1 Makine OgrenmesiMakine Ogrenme UygulamalarıMakine OgrenmesininGelecegiDers Hakkında BilgilerUygulama Alanları
2 YontemlerTanımFormal ModelMakine OgrenmeProblemlerinin Sınıflandırılması
3 Danısmanlı ogrenme (Supervisedlearning)
Sınıflandırma
RegresyonSıralama (Ranking)
4 Danısmansız Ogrenme(Unsupervised Learning)
GirisKumelemeBoyut Azaltımı
5 RegresyonTek Degiskenli DogrusalRegresyonMaliyet fonksiyonu (Costfunction)Gradient DescentDogrusal Regresyon - Python
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Makine Ogrenme Uygulamaları
Sekil: Self-driving carsSekil: Oneri Sistemleri
Sekil: Facebook face recognition
Sekil: human-brain-project
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Makine Ogrenmesinin Gelecegi
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Ders
NotlandırmaI Derse katılım : %10I Odevler : %30I Proje : %25I Final : %35
KaynaklarI Applications of Data Mining in Computer
Security Daniel Barbara and Sushil JajodiaI Machine Learning and Data Mining for
Computer Security Marcus A. Maloof
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Araclar I
Python 3.5 (Oneri: 64-Bit)I Kutuphaneler
I scikit-learn (makine ogrenmesi)I keras (derin ogrenme)I tensorflow (derin ogrenme)I pandas (veri manipulasyonu)I matplotlib (veri goresellestirme)
I Gelistirme OrtamıI Spyder (Onerilen - MATLAB benzeri ortam)I Pycharm (Alternatif)
Python kutuphane kurulumu
pip install -U kutuphane adi
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Araclar II
Lab OrtamıI Jupyter: komut satırında jupyter notebook
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Makine Ogrenmesi I
Genel Tanım
I Tanım: Ogrenme modelini, ornek verilerden otomatik olarak cıkarmanınve genellestirmenin hesaplama surecidir.
I Ogrenme modelleri, veri ve nedensellikler arasındaki bagımlılıkları vegirdi ile cıktı arasındaki korelasyonları tanımlamak icin istatistikselfonksiyonları veya kuralları kullanmaktadır.
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Makine Ogrenmesi II
Neden Ogrenme?
I Ornek bir veri kumesi kullanarak bilgisayarları bir performans kriterinioptimize etmek icin programlamak.
I Makine ogrenimi her olay icin gerekli degildir.I Bordro hesabı
I Ogrenme ornekleriI Insan deneyiminin olmadıgı durumlar (Bio-enformatik)I Insan deneyiminin tam olarak acıklanamadıgı durumlar (Ses tanıma,
goruntu tanıma)I Cozumun zaman icinde degismesi (saldırı turleri)
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Makine Ogrenmesi III
Makine Ogrenmesine Ne Zaman Gerek Var?I Programlamak icin karmasık gorevler:
I Canlılar tarafından yapılan gorevlerI araba kullanmakI ses tanımaI resim tanıma
I Insan yeteneklerinin otesinde gorevler (Buyuk veri)I Astronomi verileriI DNA analizleriI Arama motorları
I Uyarlanabilirlik (Adaptivity)I Programlar yazıldıktan sonra degistirilemezlerI Istenmeyen e-posta algılama programları
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Ornek Model
Ornek Model
I Ogrenme: orneklerden (veri) genel modellerin cıkarılmasıI Veri: erisimi kolay ve etrafımızda doluI Bilgi: Pahalı ve sınırlı
I Ornek:I Musteri alısveris hareketlerinden (transactions) musteri davranısının
bulunmasıI ”Da Vinci Sifresi”’ni satın alanlar ”Kayıp Sembol”’de satın aldı.
I Hedef: Veriden anlamlı tahminler yapan modeller olusturmak.
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Uygulama Alanları
Uygulama AlanlarıI Perakende: Sepet analizi, musteri iliskileri yonetimiI Finans: kredi skorları, sahtekarlık tespiti (fraud)I Uretim: Optimizasyon, kontrolI Haberlesme: spam filtreleri, saldırı tespiti,I Bilim: yuksek boyutlu fizik verilerinin analiz edilmesi, biyolojiI Web: Arama motorları
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Icindekiler
1 Makine OgrenmesiMakine Ogrenme UygulamalarıMakine OgrenmesininGelecegiDers Hakkında BilgilerUygulama Alanları
2 YontemlerTanımFormal ModelMakine OgrenmeProblemlerinin Sınıflandırılması
3 Danısmanlı ogrenme (Supervisedlearning)
Sınıflandırma
RegresyonSıralama (Ranking)
4 Danısmansız Ogrenme(Unsupervised Learning)
GirisKumelemeBoyut Azaltımı
5 RegresyonTek Degiskenli DogrusalRegresyonMaliyet fonksiyonu (Costfunction)Gradient DescentDogrusal Regresyon - Python
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Tanım I
Makine OgrenmesiI Paradigma degisikligiI Klasik yontem (Klasik Programlama): Kurallar + Veri⇒ CevaplarI Makine Ogrenmesi: Veri + Cevaplar⇒ KurallarI Bir makine ogrenme sistemi programlanmaz, egitilir.
Makine Ogrenmesi - TeoriI Gozlem veri kumesi : XI Parametreler : θI Ogrenme modeli: fθ : X → YI Ogrenme hatası: E(fθ(X ),Y)
I Makine ogrenme algoritmaları hatayı minimize etmeye calısırlar.I Tahmin edilen cıktı, fθ(X ), ile gozlemlenen veri kumesi X arasında bulunan
fark.
I θ degistirilerek E(fθ(X ),Y) minimize edilmeye calısılır.
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Tanım II
NotasyonI Sayısal degerler (scalar) kucuk harf: x , λ, η, ornek x = 3.14I vektorler kalın harf: x, ornek x = [1.2, 2.4, · · · 0.2]I Bir vektorun i . elemanı: x(i)
I Girdi veri kumesi : X ∈ Rm×n ⇒ m adet satır (ornek) ve n boyutlu uzay(nitelik sayısı, kolon sayısı)
I k boyutlu sınıf etiket kumesi: C = {C1, · · ·Ck}I C : Ag saldırıları: {DDoS, SQL Injection, XSS v.b.}I C : Zararlı Yazılım: {Trojan, Backdoor, Virus, Botnet v.b.}
I Girdi ornekleri ve hedef etiket ciftleri:X = {(xi , yi)|x ∈ Rm×n, y ∈ {C1, · · ·Ck}}n
i=1
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Formal Model IIstatiksel Ogrenme Teorisi
I Ogrenmenin girdileriI Alan kumesi (Domain set): Etiketlenmek istenen veri kumesi, X . Zararlı
yazılım ogrenme problemi. Nitelikler (DNS, API). Diger isimlendirmeler:ornekler, ornek uzayı
I Etiket kumesi (Label set): iki elemanlı kume, genellikle {0, 1} veya{−1,+1}. Y olabilecek etiketler kumesini gostersin. Zararlı yazılım analiziicin Y ∈ {0, 1}. 0: Normal, 1: zararlı yazılım
I Egitim verisi (Training data): S = ((x1, y1), · · · (xm, ym)). Sonlu bir dizi ciftX × Y. Diger adlandırmalar: Egitim veri kumesi, training set
I Ogrenmenin cıktıları: Tahmin kuralı uretmesi istenir h : X → Y.Hipotez, sınıflandırıcı, model. Tahmin: h(x)→ y . Gercek sınıflandırıcıf : X → Y, f (x)→ y . y : tahmin edilen sınıf (zararlı yazılım veya degil),y : gercek sınıf
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Formal Model IIIstatiksel Ogrenme Teorisi
I Basarı olcutleri: Sınıflandırıcı hatası, D’den (Egitim veri kumesi)rastgele secilen bir ornegin x kullanılarak h(x) 6= f (x) ifadesininolasılıgıdır.
LD,f (h) = Px∼D
[h(x) 6= f (x)]
LD,f (h) genellestirme hatası (generalization error), risk, h’ın gercekhatasıI Deneysel risk minimizasyonu: f bilinmememsi sebebiyle gercek hatanın
hesaplanması imkansız. Bunun yerine egitim hatası hesaplanabilir.
LD(h) =|{i ∈ [m] : h(xi ) 6= yi}|
m
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Makine Ogrenme Problemlerinin Sınıflandırılması
Ogrenme Tipleri
I Iliskilendirme kuralları (Association rule learning): degiskenlerarasında iliskinin ogrenilmesi
I Danısmanlı ogrenme (Supervised learning): Degiskenlerden cıktıtahminiI Sınıflandırma (Classification)I Regresyon (Regression)I Sıralama (Ranking)I Sıralı kategoriler (Puanlar)
I Danısmansız ogrenme (Unsupervised learning): Veri uzerindebulunan desenin cıkarılmasıI Kumeleme (Clustering)I Boyut azaltma (Dimensionality reduction)
I Yarı danısmanlı ogrenme (Semi-supervised learning): Buyukmiktarda etiketlenmemis veriyle etiketlenmis kucuk bir miktarda veri
I Guclendirme ogrenimi (Reinforcement learning): Kumulatif odulu enust duzeye cıkarma
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Icindekiler
1 Makine OgrenmesiMakine Ogrenme UygulamalarıMakine OgrenmesininGelecegiDers Hakkında BilgilerUygulama Alanları
2 YontemlerTanımFormal ModelMakine OgrenmeProblemlerinin Sınıflandırılması
3 Danısmanlı ogrenme (Supervisedlearning)
Sınıflandırma
RegresyonSıralama (Ranking)
4 Danısmansız Ogrenme(Unsupervised Learning)
GirisKumelemeBoyut Azaltımı
5 RegresyonTek Degiskenli DogrusalRegresyonMaliyet fonksiyonu (Costfunction)Gradient DescentDogrusal Regresyon - Python
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Sınıflandırma (Classification) I
Ornek: DDoS Saldırısı
Normal
DDoS
1 2 3 4 5
1
2
3
4
5
θ1(SYNPaketleri)
θ 2(P
aylo
adbu
yukl
ugu)
I Bir sunucuya olan baglantılarınDDoS saldırı riski kararı icinSYN paket sayısı ve Payloadbuyuklugune bakılması
I θ1 : SYN Paket sayısıI θ2 : Payload buyuklugu
i f SYN > 25 and payload > 25:p r i n t ( ”DDoS a t tack ” )
e lse :p r i n t ( ” Normal t r a f f i c ” )
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Sınıflandırma (Classification) II
Uygulama AlanlarıI Yuz tanıma (Face recognition): Isık, acı, gozluk, makyaj ve sac
stilinden bagımsız olarak algılamaI Karakter tanıma: Farklı el yazısı tarzından bagımsızI Ses tanıma (Speech recognition): farklı ortamlarda seslerin tanınmasıI Hastalık Teshisi: semptomlardan hastalık tespit edilmesiI Biometrik: Kisinin fiziksel veya davranıs karakteristiklerinden tanıma:
yuz, iris, imza gibi bilgilerden
Danısmanlı Ogrenme Ornekleri
Bir kurumda siber guvenlik alanında calıstıgınızı kabul edin. Sizden birproblem icin cesitli algoritmalar kullanarak model olusturulması istensin.I Problem 1: Kullanılan kimlik dogrulama sistemi uzerinde bulunan her bir
hesap icin normal/ele gecirilmis (compromised) olarak karar vermekistiyorsunuz.I Sınıflandırma Problemi
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Regresyon (Regression) I
Ornek: Bir ag icerisinde toplam paket sayısının Istemcisayısıyla degisimi
I x : istemci sayısıI y : paket sayısıI y = wx + bI y = hθ(x)
I h: modelI θ: parametrelerI θ = (w , b)
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Regresyon (Regression) II
Uygulama AlanlarıI Bilgisayar sayısının ag trafigine etkisiI Urun fiyatlarının satıs uzerine etkisiI Bir hastalıgın baslangıc yasıI Bir robot kolunun kinematigi
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Sıralama (Ranking) I
Sıralama (Ranking)I X ogelerinin belirli bir listesini sıralayan bir fonksiyon bulunmasıI Cift yonlu yaklasım
I Sınıflandırma problemi olarak: {x1, x2} dogru sekilde sıralı mı?I Noktasal yaklasım
I Regresyon problemi olarak: h(x)oyle ki x1 < x2 ⇔ f (x1) < f (x2)
I Liste bazında yaklasımI En iyi liste secimi.
Kullanım alanları
I Oneri sistemleriI Kullanıcıların bereaber aldıkları urunlerI Kullanıcılara video onerileri (Youtube)
I Bilgi cıkarımıI DokumanI Arama motorları
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Icindekiler
1 Makine OgrenmesiMakine Ogrenme UygulamalarıMakine OgrenmesininGelecegiDers Hakkında BilgilerUygulama Alanları
2 YontemlerTanımFormal ModelMakine OgrenmeProblemlerinin Sınıflandırılması
3 Danısmanlı ogrenme (Supervisedlearning)
Sınıflandırma
RegresyonSıralama (Ranking)
4 Danısmansız Ogrenme(Unsupervised Learning)
GirisKumelemeBoyut Azaltımı
5 RegresyonTek Degiskenli DogrusalRegresyonMaliyet fonksiyonu (Costfunction)Gradient DescentDogrusal Regresyon - Python
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Danısmansız Ogrenme (Unsupervised Learning) I
I Egitim veri kumesinin cıktı etiketleri mevcut degilI Yogunluk tahmini (Density estimation): Verideki yapının bulunmasıI Kumeleme (Clustering)I Boyut azaltma (Dimensionality reduction)
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Kumeleme (Clustering) I
KumelemeI Amac: Nesneleri kumelere gruplamak.I Aynı kume icerisinde yer alan nesneler, diger kumelerde yer alan
nesnelere gore daha benzer olacaklardır.
−2.0 −1.5 −1.0 −0.5 0.0 0.5 1.0 1.5 2.0−2.0
−1.5
−1.0
−0.5
0.0
0.5
1.0
1.5
2.0
−4 −3 −2 −1 0 1 2 3 4−3
−2
−1
0
1
2
3
4
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Kumeleme (Clustering) II
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Kumeleme (Clustering) III
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Kumeleme (Clustering) IV
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Boyut Azaltma (Dimensionality Reduction) I
Boyut AzaltımıI Amac: Girdi veri kumesinde yer alan degisken sayısının azaltılmasıI Nitelik secimi (Feature selection)
I Sadece iliskili niteliklerin secilmesiI Nitelik cıkarımı (Feature extraction):
I Veri kumesini daha az boyuta sahip bir uzaya cevirilmesiI Saklama alanı ve hesaplama zamanının azaltılmasıI Dogrusallıkların kaldırılmasıI Gorsellestirme (2 veya 3 boyutla)I Yorumlanabilir hale getirme
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Icindekiler
1 Makine OgrenmesiMakine Ogrenme UygulamalarıMakine OgrenmesininGelecegiDers Hakkında BilgilerUygulama Alanları
2 YontemlerTanımFormal ModelMakine OgrenmeProblemlerinin Sınıflandırılması
3 Danısmanlı ogrenme (Supervisedlearning)
Sınıflandırma
RegresyonSıralama (Ranking)
4 Danısmansız Ogrenme(Unsupervised Learning)
GirisKumelemeBoyut Azaltımı
5 RegresyonTek Degiskenli DogrusalRegresyonMaliyet fonksiyonu (Costfunction)Gradient DescentDogrusal Regresyon - Python
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Tek Degiskenli Dogrusal Regresyon ILinear regression with one variable
Danısmanlı ogrenme(Supervised learning)
Regresyon Problemi:
I Surekli degerler
I Sınıflandırma: Discrete-value
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Tek Degiskenli Dogrusal Regresyon IILinear regression with one variable
Istemci sayısı (x) Paket sayısı (y)80 10085 100110 130· · · · · ·
Notasyon: X ∈ Rm×n
m: ornek sayısı (satır sayısı)x : girdi degiskeni/niteliklery : cıktı/hedef degisken(
x(i), y i)
: i . egitim girdisi
Egitimkumesi
Algoritma
h (hipotez)IstemciSayisi
Paket sayısıtahmini
hipotez h gosterilim: h(x) = w0+w1x
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Maliyet fonksiyonu ICost function
Istemci sayisi (x) Paket sayisi (y)80 10085 100110 130· · · · · ·
I Hipotez: hw = w0 + w1xI wi : parametrelerI wi nasıl secilecek?I Hata: ε = y − h(x)
−1 −0.5 0.5 1 1.5 2
−1
1
2
Sekil: h = 1.5 + 0x
−1 −0.5 0.5 1 1.5 2
−1
1
2
Sekil: h = 0 + 0.5x
−1 −0.5 0.5 1 1.5 2
−1
1
2
Sekil: h = 1 + 0.5x
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Maliyet fonksiyonu IICost function
−1 −0.5 0.5 1 1.5 2
−1
1
2
Cozum: w0 ve w1 degerlerininsecimiyle (x , y) egitimorneklerinin h(x) degerininy ’ye yakın olması.
minimizew0,w1
=1
2m
m∑i=1
(h(x (i))− y (i)
)2
C(w0,w1) =1
2m
m∑i=1
(h(x (i))− y (i)
)2
minimizew0,w1
C(w0,w1)
(1)
C(w0,w1): Maliyet fonksiyonu (Cost function)
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Maliyet fonksiyonu IIICost function
h(x) = 0 + x
−1 −0.5 0.5 1 1.5 2
−1
1
2
C(w0,w1) =1
2m
m∑i=1
(h(x (i))− y (i)
)2
=1
2m
(02 + 02 + · · ·+ 02
)= 02
(2)
C(w0,w1)
−2 −1 1 2 3
−2
−1
1
2
w1
C
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Maliyet fonksiyonu IVCost function
h(x) = 0 + 0.5x
−1 −0.5 0.5 1 1.5 2
−1
1
2
C(w0,w1) =1
2m
m∑i=1
(h(x (i))− y (i)
)2
=1
2× 6
((0.25− 0.5)2 + (0.5− 1)2 + (1− 2)2 + · · ·+ (1.5− 3)2
)= 0.25
(3)
C(w0,w1)
−2 −1 1 2 3
−2
−1
1
2
w1
C
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Maliyet fonksiyonu VCost function
h(x) = 0 + x
−1 −0.5 0.5 1 1.5 2
−1
1
2
C(w0,w1) =1
2m
m∑i=1
(h(x (i))− y (i)
)2
=1
2× 6
((0.25− 0.5)2 + (0.5− 1)2 + (1− 2)2 + · · ·+ (1.5− 3)2
)= 0.25
(4)
C(w0,w1)
−2 −1 1 2 3
−2
−1
1
2
w1
C
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Gradient Descent I
Gradient Descent
Fonksiyon: C(w0,w1) veya C(w) = C(w0,w1, · · ·wn)Amac: min
w0,w1C(w0,w1)
Ozet:I w0,w1 icin herhangi bir degerler baslayın (Ornek: w0 = 0,w1 = 0)I w0,w1 degerlerini degistirerek, C(w0,w1) maliyet fonksiyon degerini
minimize etmeye calısın.I C(w0,w1)’un minimum degerini bulun.
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Gradient Descent II
00.5 1
1.5 2 0
0.5
10
0.5
1
w0
w1
C(w
0,w
1)
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Gradient Descent III
Gradient descent algoritması herhangi bir degerle baslayıp, w degerlerindeher bir iterasyonda guncellemeler yapar.
deger yakınsaya kadar {wj = wj − α ∂
∂wjC(wj)
}
α : Learning rate∂∂wj
C(wj)
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Gradient Descent IV
w1 = w1 − α∂
∂w1C(w1)
Kucuk α degeri
−2 −1 1 2 3
−2
−1
1
2
Buyuk α degeri
−2 −1 1 2 3
−2
−1
1
2
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Gradient Descent V
∂
∂wjC(w0,w1) =
∂
∂wj
12m
m∑i=1
(h(x (i))− y (i)
)2
=∂
∂wj
12m
m∑i=1
(w0 + w1x (i) − y (i)
)2
j = 0⇒ ∂
∂w0C(w0,w1) =
1m
m∑i=1
(h(x (i))− y (i)
)j = 1⇒ ∂
∂w1C(w0,w1) =
1m
m∑i=1
(h(x (i))− y (i)
)x (i)
(5)
Hatırlatma
(f · g)′ = f ′g + g′f
deger yakınsaya kadar {w0 = w0 − α 1
m
∑mi=1
(h(x (i))− y (i)
)w1 = w1 − α 1
m
∑mi=1
(h(x (i))− y (i)
)· x (i)
}
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Dogrusal Regresyon - Python I
import pandas as pdimport matplotlib.pyplot as plt
# veri kumesini okuverikumesi = pd.read_csv("ds1.txt",delimiter="\t")
X = verikumesi.iloc[:,:-1].valuesy = verikumesi.iloc[:,1].values
# veri kumesini egitim ve test olarak parcalafrom sklearn.cross_validation import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
# dogrusal regresyon modelifrom sklearn.linear_model import LinearRegressionregressor = LinearRegression()regressor.fit(X_train, y_train)
# tahminy_pred = regressor.predict(X_test)
# veri gorsellestirmeplt.scatter(X_train, y_train, color=’red’)plt.plot(X_test, y_pred, color=’blue’)plt.show()
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris
Makine Ogrenmesi Yontemler Danısmanlı ogrenme (Supervised learning) Danısmansız Ogrenme (Unsupervised Learning) Regresyon
Dogrusal Regresyon - Python II
Dr. Ferhat Ozgur Catak [email protected] Hafta 01 - Giris