| Başlık | Veri Bilimi ve Derin Öğrenme: Teori ve Uygulama |
| Öğrenci | Hayır |
| Yazar(lar) |
Yazar 1 Name: Berkin Malkoç Org: Fizik Mühendisliği Bölümü, İTÜ; Miletos A.Ş. Country: TR E-mail: berkin_AT_miletos.co Yazar 2 Name: Atabey Kaygun Org: Matematik Mühendisliği Bölümü, İTÜ Country: TR E-mail: atabey.kaygun_AT_gmail.com Yazar 3 Name: Kürşat Aker Org: ODTÜ KKK Country: TR E-mail: kaker_AT_metu.edu.tr Yazar 4 Name: Azmi Can Özgen Org: Elektronik ve Haberleşme Mühendisliği Bölümü, İTÜ; Miletos A.Ş. Country: TR E-mail: azmi_AT_miletos.co Yazar 5 Name: Mustafa Can Uslu Org: Fizik Mühendisliği Bölümü, İTÜ; Miletos A.Ş. Country: TR E-mail: mustafa_AT_miletos.co Yazar 6 Name: Onur Kaplan Org: Elektronik ve Haberleşme Mühendisliği Bölümü, İTÜ; Miletos A.Ş. Country: TR E-mail: onur_AT_miletos.co |
| Anahtar Kelimeler | veri bilimi, veri analizi, makine öğrenmesi, derin öğrenme, yapay sinir ağları, öbekleme, sınıflandırma, GPU, GPU programlama |
| Özet | Veri Bilimi ve Derin Öğrenme: Teori ve UygulamaÖzetVeri kaynaklarının artması ve bu kaynaklardan gelen verilerin çeşitliliğinin ve kalitesinin artması elimizde biriken veri ile daha önceden hayal bile edemediğimiz şeyleri yapabilmek için önümüze yeni fırsatlar açıyor. Ancak bu fırsatların kullanılabilmesi için daha önce ayrı duran disiplinlere (istatistik, makine öğrenmesi, programlama ve hatta grafik tasarım) ait bilgi ve tecrübe birikiminin --son zamanlarda "veri bilimi" adı verilen bir kesişim alanında-- bir araya getirilmesi gerekiyor. Bunun yanında, birkaç yıldır makine öğrenmesinin birçok uygulama alanında etkileyici düzeylerde başarım sağlayan “derin öğrenme” de kendi içinde birçok kavram ve teknik ayrıntıyı barındırıyor. Bu eğitim programıyla, veri bilimi ve derin öğrenmeye hem kavramsal hem de uygulamalı bir giriş sunmayı; böylece eğitim sonunda katılımcıların kendi veri problemlerini çözecek ve literatürü takip edebilecek noktada olmalarını amaçlıyoruz. Programın ilk iki gününde veri biliminin temel kavramları ve yöntemlerini ele alacağız. Geri kalan iki günde ise, bu bilginin üzerine derin öğrenme kavram ve uygulamalarını oturtmaya çalışacağız. İki günlük ilk kısmın programını hazırlarken Rob Pike'ın "Programlamanın 5 Kuralı"ndan esinlenerek aşağıdaki prensipleri göz önüne aldık:
Programın bu ilk kısmını bitiren bir katılımcı, önüne gelen nümerik ya da kategorik bir veri yığını konusunda gerçekleştirebileği en temel istatistik ya da makine öğrenmesi analizlerinden haberdar olacak, ya bunları nasıl baştan uygulayacağını ya da aşina olduğu bir dildeki hangi kütüphaneleri kullanarak nasıl gerçekleştireceğini öğrenecektir. Eğitimin diğer parçası olan derin öğrenme; görüntü, doğal dil ve ses işleme gibi birçok alanda özellikle de son yıllarda kimi durumlarda insan başarımını geçen düzeyde başarılı ve dolayısıyla popüler oldu [1, 2]. Bu başarının arkasında, sadece çok büyük miktarlarda verinin ve bu veri kümelerini işleyecek donanım kaynaklarının mevcudiyeti değil; zor problemlerin çözümüne uygun derin yaklaşımların, bu kaynaklar üzerinde sonuca ulaşabilmesini yani yakınsayabilmesini ('converge') sağlayan algoritmik yenilikler yatmakta. Derin öğrenmenin, somut başarının önünü açan bu özelliklerinin yanındaki diğer temel ve çok önemli avantajı, uygulayıcıyı öz-nitelik mühendisliğinden ('feature engineering') kurtarması: Böylece, uygulayıcı eldeki problemin çözüme götürecek yönlerini kendi çabaları ve uzmanlığıyla keşfetmeye çalışmak yerine, bu keşif işini de derin öğrenme sistemine bırakabiliyor. Bu sebeple derin öğrenme yaklaşımlarına, eldeki problemin uygun bir temsilini öğrenme anlamında, “temsil öğrenmesi” ('representation learning') ismi de verilebiliyor [1, 2]. Popülerliği son yıllarda artmış olsa da, derin öğrenmenin mevcut noktaya gelmesinin arkasında onlarca yıl geriye giden bir birikim var. Bu sürecin, esas olarak, hayvanların başarısından dolayısıyla biyolojik sinir ağlarından esinlenen yapay sinir ağlarıyla ('artificial neural networks') başladığı söylenebilir. Zamanla, tek katmanlı yapay sinir ağlarında yüksek başarım elde edilemeyişinin gösterilmesinden devamla çok katmanlı ağlara ('multi-layer perceptron') yönelinilmiş ve akabinde problem türlerine uygun çok katmanlı ağ mimarileri keşfedilmiştir. Daha sonra uygulamaya dair teknik problemlerin de aşılmasıyla, iki binli yıllarda ve verinin miktarının çok arttığı günümüzde farklı veri tiplerine uygun belli başlı öne çıkan mimarilerle çok başarılı uygulamalar geliştirilmiştir. Eğitim ikinci kısmında, derin öğrenmeyle ilgili önceki paragrafta özetlenenleri somutlayacak bir yaklaşımla, teoriyi ve pratiği iki güne sığacak kadarıyla aktarmaya çalışacağız. Teoride, (yapay) nöronların ve sinir ağlarının temellerini ve bunlardan hareketle geliştirilen temel derin öğrenme mimarilerinin özelliklerini ele alacağız. Hangi problem için hangi mimarinin neden seçilebileceğine dair bir sezgi kazandırmaya çalışacağız. Pratikte ise, derin öğrenme sistemi geliştirmeyi, birbiriyle etkileşen çok sayıda doğrusal olmayan birimden oluşan bir sistemin parametrelerini eldeki problemi çözecek değerlere getirmek olarak düşündüğümüzde; bu işi yapacak algoritmaları nasıl gerçekleyebileceğimizi ve ilgili araçları aktaracağız. Buradaki önemli bir altbaşlık, derin öğrenmenin paralelleşmeye çok uygun olan ve milyonlarca parametrenin optimizasyonunu içermesinden dolayı da aslında paralel programlamayı mecbur kılan doğasından dolayı alandaki standart yaklaşım haline gelmiş olan GPU (“grafik işleme birimi” - 'graphical processing unit') kullanımı ve bu amaçla geliştirilmiş programlama çerçeveleri ('frameworks') olacak. Eğitimi, aktarılanları uygulayabileceğimiz örnek problemleri ele alarak tamamlayacağız. Bu eğitime katılmak isteyenlerin belirli bir düzeyde doğrusal cebir ve kalkülüs bilgisine sahip olmaları faydalı olacaktır. Ayrıca, katılımcının R ya da Python dillerinden birini biliyor olması ve kendi getireceği bilgisayarında kullanmak istediği dilin çalıştırma ortamını (runtime environment) kurmuş ve gerekli olan kütüphaneleri indirmeye hazırlamış olması beklenecektir. Bunların yanında raporlama için kullanıcılardan jupyter RStudio, knitr, sweave ya da org-mode konusunda az da olsa bilgi sahibi olmaları beklenmektedir. Eğitim ProgramıVeri bilimi - iyi alışkanlıklar
Temel makine öğrenmesi ve istatistik analizleri
ÖrneklerDerin öğrenmeye giriş
Temel derin öğrenme mimarileri
Derin öğrenmede eğitim yapma
Uygulamalar
Referanslar
|
| Başlıklar |
AB-Kurs Bulut, Kuantum ve Yüksek başarım bilişimi Veri Madenciliği |
| Dosya | |