-
Çekiştirmeli Üretici Ağlar Uygulamalar
Hafta 12 - Çekişmeli Üretici AğlarBGM 565 - Siber Güvenlik
için Makine Öğrenme Yöntemleri
Bilgi Güvenliği MühendisliğiYüksek Lisans Programı
Dr. Ferhat Özgür Ç[email protected]
İstanbul Şehir Üniversitesi2018 - Bahar
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
İçindekiler
1 Çekiştirmeli Üretici AğlarGirişYöntemGAN Modelleri Nasıl
Çalışır?GAN vs AutoencodersGAN Eğitimi
2 Uygulamalar
MalGANgym-malwarePassGANSSGAN: SecureSteganography Based
onGenerative AdversarialNetworks
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
İçindekiler
1 Çekiştirmeli Üretici AğlarGirişYöntemGAN Modelleri Nasıl
Çalışır?GAN vs AutoencodersGAN Eğitimi
2 Uygulamalar
MalGANgym-malwarePassGANSSGAN: SecureSteganography Based
onGenerative AdversarialNetworks
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
Çekişmeli Üretici AğlarGenerative Adversarial Networks
Çekişmeli Üretici Ağlar
I İki arklı ağdan oluşan derin sinir ağ mimarileridir 1I
Düşmanca (Adversarial)
I Herhangi bir veri dağıtımını taklit etmeyi öğrenebilirler.I
GAN kendi başına benzer veriler oluşturması öğretilebilir:
I resimler, müzik, konuşma, düzyazı
I zero-sum game framework şeklinde iki ağın birbirine itiraz
etmesiüzerine kurulu bir mimaridir.
1Goodfellow, Ian, et al. ”Generative adversarial nets.” Advances
in neural informationprocessing systems. 2014.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
Generative vs. Discriminative Algorithms I
Discriminative AlgorithmsI Girdi verilerinin sınıflandırmaya
çalışırlar.
h : X → Y
I Bir girdinin niteliklerine bakarak etiket veya ait olduğu
kategorininbulunmasıdır.
I Bir epostada bulunan kelimeler veya karakterler analiz
edilerekiletinin SPAM veya NOT SPAM olarak etiketlenmesi.I Logistic
Regression: p(y = 1|x)I ”the probability that an email is spam
given the words it contains.”
I Discriminative Algorithms: Nitelikler ⇒ Etiketler
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
Generative vs. Discriminative Algorithms II
Generative Algorithms
I Bu e-postanın spam olduğunu varsayalım, bu özellikler ne
kadarolasıdır?
I Discriminative: y ve x arasında ilişkiye odaklanırI
Generative : x nasıl elde edildi?
I Bir spam mail nasıl oluşturulabilir.I p(x|y): y bilindiğinde
x’in olasılığı. Bir sınıfa ait niteliklerin olasılığı
I Generative vs. DiscriminativeI Discriminative yöntemler
sınıflar arasındaki sınırı öğrenir.I Generative yöntemler her
bir sınıfın dağılımını modelemektedirler.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
GAN Modelleri Nasıl Çalışır? I
GANI Generator olarak adlandırılan bir sinir ağı, yeni veri
örneklerini
üretirken, diğeri, Discriminator, onları doğruluk için
değerlendirir.I Discriminator gözden geçirdiği her veri
örneğinin gerçek eğitim
veri kümesine ait olup olmadığına karar verir.I Örnek
problem
I Gerçek dünyadan alınan MNIST veri kümesinde bulunanlar gibi
elleyazılmış rakamların üretimi.
I Gerçek MNIST veri kümesinden bir örnek
gösterildiğinde,Discriminator’ın amacı, onları doğru olarak
tanımaktır.
I Generator yeni örnekler oluşturup Discriminator’a iletir.
Dsicriminator’ınbu örneklerin gerçek olup olmadığını anlamasını
bekler.
I Generator’ın amacı, anlaşılmadan yalan söyleyebilen, elle
yazılmışrakamlar oluşturmaktır (fake images).
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
GAN Modelleri Nasıl Çalışır? II
GAN AdımlarıI Generator rasgele sayılar kullanarak ve bir
görüntü oluşturur.I Bu oluşturulan görüntü, gerçek veri
kümesinden alınan görüntülerin
akışıyla beraber Discriminator beslenir.I Discriminator hem
gerçek hem de sahte görüntüler alır ve 0 ile 1
şeklinde sınıflandırır, 1 değeri doğru, 0 ise sahte olduğunu
gösterir.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
GAN vs Autoencoders
AutoencodersI Autoencoders giriş verilerini vektörler
şeklinde olarak kodlar.I Girdi verilerinin gizli veya
sıkıştırılmış bir temsilini oluştururlar.I GAN’lar ince,
ayrıntılı ayrıntılarda veri oluştururken, AE’ler
tarafından oluşturulan görüntüler daha bulanık olur.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
GAN Eğitimi
GAN Eğitiminde İpuçları
I Discriminator eğitlirken, Generator değerlerini sabit
tutulur;Generator eğitilirken diskriminator Discriminator
tutulur.I Her bir model statik bir rakibe karşı antrenman
yapmalıdır.
I GAN’ların eğitilmesi uzun zaman alır. Tek bir GPU’da GAN
saatlerceve tek bir CPU’da bir günden fazla sürebilir.
I GAN unsupervised bir öğrenme çeşididir, y ihtiyaç yoktur
.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
İçindekiler
1 Çekiştirmeli Üretici AğlarGirişYöntemGAN Modelleri Nasıl
Çalışır?GAN vs AutoencodersGAN Eğitimi
2 Uygulamalar
MalGANgym-malwarePassGANSSGAN: SecureSteganography Based
onGenerative AdversarialNetworks
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
MalGAN I
MalGAN 2
I Zararlı yazılım geliştiricileri, tespit sistemlerine direk
erişimleribulunmamaktadır. Black-Box Attacks
I MalGAN: bypass black-box machine learning based
detectionmodels.I Generative network: minimize the generated
adversarial examples’
malicious probabilitiesI MalGAN is able to decrease the
detection rate to nearly zero
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
MalGAN II
2Hu, W., and Tan, Y. (2017). Generating adversarial malware
examples for black-boxattacks based on GAN. arXiv preprint
arXiv:1702.05983.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
gym-malware I
OpenAII Kâr amacı gütmeyen yapay zeka araştırma şirketi.I 1
milyar dolar tutarında bir bağış ile işe başlayan projeI Destek
verenler arasında Elon Musk, Sam Altman, Peter Thiel gibi
isimler bulunmaktadır.I GYM
I Gym is a collection of environments/problems designed for
testingand developing reinforcement learning algorithms
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
gym-malware II
Şekil: https://github.com/endgameinc/gym-malware
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
PassGAN I
PassGAN 3
I It uses a GAN to autonomously learn the distribution of
realpasswords from actual password leaks, and to
generatehigh-quality password guesses.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
PassGAN II
3Hitaj, Briland, et al. ”Passgan: A deep learning approach for
password guessing.” arXivpreprint arXiv:1709.00440 (2017).
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
SSGAN: Secure Steganography Based on Generative
AdversarialNetworks I
SSGAN 4
I Steganografi: normal görünümlü dosyalarda bilgi gizleme
işlemidir.
I Changing the least significant bit in each RGB pixel value of
an imagewould allow information to leak without ruining the image
for humanperception.
I Statistically, however, these images are easy to detect.
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
SSGAN: Secure Steganography Based on Generative
AdversarialNetworks II
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
SSGAN: Secure Steganography Based on Generative
AdversarialNetworks III
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
-
Çekiştirmeli Üretici Ağlar Uygulamalar
SSGAN: Secure Steganography Based on Generative
AdversarialNetworks IV
4Shi, Haichao, et al. ”Ssgan: Secure steganography based on
generative adversarialnetworks.” arXiv preprint arXiv:1707.01613
(2017).
Dr. Ferhat Özgür Çatak [email protected] Hafta 12 -
Çekişmeli Üretici Ağlar
Çekistirmeli Üretici AglarGirisYöntemGAN Modelleri Nasıl
Çalısır?GAN vs AutoencodersGAN Egitimi
UygulamalarMalGANgym-malwarePassGANSSGAN: Secure Steganography
Based on Generative Adversarial Networks