Etiket: Makine Öğrenmesi
-
Support Vector Machines
Support Vector Machines; koordinat sistemi üzerinde, 2 sınıfa sahip verimizi yerleştirdiğimizi düşünelim. Eğer özelliklerimiz(feature, eksen) uygunsa verimizi 2 grup olarak görebiliyor olmalıyız. Öyle bir çizgi ile bölelim ki bu veri setini sınıflandırma işlemini yapabiliyor olalım. Bu çizgiyi, tek bir çizgi olmak zorunda değil, bulmamızı sağlayan öğrenme metotlarına Support Vector Machines (SVM) denir. SVM ile sadece…
-
Overfitting, Underfitting ve Bias-Variance İkilemi
Makine öğrenmesi bazen o kadar alakasız bağlantılar kurabilir ki aslan yelesini bir kediye ya da diş fırçasını bir sopaya benzetebilir. Bazen de kurduğu bağlantıları o kadar katı kurallara bağlar ki gördüğü her iki yuvarlak nesneyi göz zannedip bir elektrik prizinin deliklerini yüz olarak etiketleyebilir ya da gece saat 2’de alınan satın alınmış bir reçel verisi…
-
Karar Ağaçları (Decision Trees) ile Veri Sınıflandırma
Karar ağaçları, verimizi özelliklerine göre bir nevi if…else yapısına sokarak sınıflandırmamızı sağlar. http://www.r2d3.us/ sitesi çok güzel bir görselleştirme ile Türkçe olarak anlatmış. Buradaki örneğe göre veri setindeki ev fiyatları, alanı, yüksekliği, yatak odası sayısı vs. özelliklerini alarak bu evin hangi şehirde olduğunu tahmin etmeye çalışıyor. Burada verileri görselleştirerek belirli sınırlar(eşik, threshold’da deniliyor) yakalamaya çalışıyor daha…
-
Naive Bayes ile Sınıflandırma
Naive Bayes; Bayes teoremin dayanan bir sınıflandırma tekniğidir. Sınıflandırma yaparken özellikleri birbirinden bağımsız olarak hesaba katar. Örneğin bir meyvenin çilek olma ihtimalini; kırmızı ise bir birim, uzunluğu 5cm’den küçük ise bir birim arttırır. Bu iki özelliğin aynı anda olması Naive Bayes için bir katma değer sağlamaz, Naive(saf, toy) denmesinin sebebi de buradaki saf davranışından dolayıdır.…
-
Tensorflow ve Tensor nedir? Küçük Bir Örnek
Daha önce Keras ile Tensorflow’u MNIST üzerinde kullanmıştık. Bu üst bir kütüphane ile kullanım Tensorflow’un en kolay kullanımı, asıl içeride neler oluyor, Tensorflow ne yapıyor? Bu giriş yazısında bu konulara biraz değinmeye, bazı tanımlar yapmaya çalışacağım. Tensor Tensorflow için tensor; herhangi bir boyutta olan bir dizi içinde tutulan ilkel(integer, float..) verilerden oluşan veri setidir. Bir…
-
Metin Madenciliğinde TF-IDF Kullanımı
Elinizde bir miktar bölümlenmiş, haber metni, blog yazısı, yemek tarifi gibi metin verisi var ise bu bölümler içinde geçen kelimelerin ya da terimlerin sıklık düzenini bir algoritma ile çıkararak bu metinler üzerine bir gruplama yapabiliriz. Kısaltmaların açıklamaları şöyle TF: Term Frequency / Terim Sıklığı IDF: Inverse Document Frequency / Ters Döküman Sıklığı Burada TF-IDF‘in bir…
-
Kısa Pandas Alıştırmaları
Pandas; python dilinde yazılmış NumPy üzerine kurulu açık kaynaklı bir veri düzenleme aracıdır. DataFrame; Pandas içerisindeki ana veri saklama yapısıdır, veriyi satırlar ve kolonlar şeklinde tutabilirsiniz.Series: Pandas içinde başka bir veri yapısı, DataFrame’den en belirgin farkı tek kolonlu bir yapısı olması. Pandas aracı, eğer Anaconda kullanıyorsanız kurulu gelen ortamınızda(environment) hazır bulunması gerekir, eğer yok ise…
-
Autoencoding ile Kirlenmiş Dokümanları Temizleme
Bir yapay sinir ağı yöntemi olan Autoencoding’ı biraz daha detaylı inceleme fırsatım oldu. Öğrendiklerimi sırasıyla paylaşmaya çalışayım. Autoencoding nedir? Bahsettiğim gibi bir yönü olan yapay sinir ağı çeşididir. “Unsupervised”dır yani kullandığı veriler için bir etikete ihtiyaç duymaz. Temelinde bir veri sıkıştırma algoritmasıdır, diğer algoritmalardan farklı olarak; + Sıkıştırma algoritması üzerinde birilerinin çalışması gerekmez, yeni veri…
-
Recurrent Neural Network ile Hayyam Rubaileri Yazmak
Andrej Karpathy, Stanford Üniversitesinde bir doktora öğrencisi, Github hesabında paylaştığı içeriklere bakarken char-rnn reposuna denk geldim. Karpathy bu çalışmasında çok katmanlı kompleks bir Recurrent Neural Network kullanarak, verdiği metin içeriği ile bu içeriğe benzer yeni içerikler üretebiliyor. Örneklerinde Shakespeare metinlerini vererek bu metinlere benzer yeni içerikler yada Linux kaynak kodlarını vererek söz dizimi(syntax) hatası çok…