MAKİNE ÖĞRENMESİ İLE İLGİLİ KÜTÜPHANELER
Makine öðrenmesi, bilgisayarlarýn verilerden öðrendiði ve deneyimle iyileþtiði yapay zekanýn bir alt alanýdýr. Makine öðrenmesi uygulamalarý geliþtirmek için çeþitli programlama dilleri ve platformlar kullanýlabilir. Bunlardan bazýlarý þunlardýr:
- Python: Açýk kaynak kodlu, iþlevsel ve ücretsiz bir programlama dilidir. Geniþ topluluk desteði, kütüphane zenginliði ve iþlevselliði nedeniyle özellikle son yýllarda programlama, makine öðrenmesi ve yapay zekâ alanlarýnda tercih edilen bir programlama dilidir. Python ile makine öðrenmesi uygulamalarý geliþtirmek için popüler kütüphaneler arasýnda scikit-learn, TensorFlow ve PyTorch bulunur.
- Google Colab Not Defteri: Bulut tabanlý bir platformdur. Python kodunu tarayýcý üzerinden çalýþtýrmaya ve paylaþmaya olanak saðlar. Google Colab Not Defteri, makine öðrenmesi uygulamalarý için gerekli olan kütüphaneleri ve araçlarý içerir. Ayrýca, Google’ýn GPU ve TPU gibi güçlü hesaplama kaynaklarýna eriþim saðlar.
- Microsoft Azure Machine Learning: Bulut tabanlý bir platformdur. Makine öðrenmesi modellerini oluþturmak, eðitmek, daðýtmak ve yönetmek için kapsamlý bir çözüm sunar. Azure Machine Learning, Python, R ve diðer programlama dillerini destekler. Ayrýca, Azure Databricks, Azure Synapse Analytics ve Azure Cognitive Services gibi diðer Azure hizmetleriyle entegre çalýþýr.
- AutoCAD: Vektör tabanlý çizim ve tasarým programlarýndan biridir. Ýki boyutlu ve üç boyutlu geometrik nesneler oluþturabileceðiniz bir programdýr. Makine mühendisleri, mekanik tasarýmlarýný gerçekleþtirmek için AutoCAD kullanabilir.
- SolidWorks: Üç boyutlu modelleme ve simülasyon programlarýndan biridir. Makine mühendisleri, parça, montaj ve çizim tasarýmlarýný yapmak için SolidWorks kullanabilir.
Bu yazýlýmlarýn dýþýnda, makine öðrenmesi için faydalý olabilecek diðer yazýlýmlar arasýnda MATLAB, ANSYS, Excel ve Word bulunur.
SciPy Kütüphanesi
SciPy kütüphanesi, Python programlama dilinde bilimsel hesaplamalar yapmak için kullanýlan bir kütüphanedir. SciPy, NumPy kütüphanesinin saðladýðý çok boyutlu diziler ve matematiksel iþlemler üzerine kurulmuþtur. SciPy, NumPy’dan daha fazla fonksiyon ve modül içerir. SciPy’nin alt modülleri, farklý bilimsel alanlarda kullanýlan yöntemleri içerir. Örneðin:
- scipy.integrate: Sayýsal integrasyon ve diferansiyel denklemler çözme yöntemleri sunar.
- scipy.linalg: Lineer cebir, matris ayrýþtýrma, özdeðer bulma ve diðer matris iþlemleri için fonksiyonlar saðlar.
- scipy.optimize: Optimizasyon problemleri, kök bulma, eðri uydurma ve diðer matematiksel optimizasyon yöntemleri için fonksiyonlar içerir.
- scipy.signal: Sinyal iþleme, filtreleme, Fourier analizi, dalgalet dönüþümü ve diðer sinyal analizi yöntemleri için fonksiyonlar sunar.
- scipy.stats: Ýstatistik, olasýlýk daðýlýmlarý, hipotez testleri, korelasyon analizi ve diðer istatistiksel yöntemler için fonksiyonlar saðlar.
SciPy kütüphanesi, bilimsel hesaplamalar için güçlü ve esnek bir araçtýr. SciPy, Python’un avantajlarýndan yararlanarak, kolay okunabilir, hýzlý yazýlabilir ve geniþletilebilir bir kod yazmayý mümkün kýlar. SciPy, bilim, mühendislik, veri analizi, makine öðrenimi ve diðer birçok alanda kullanýlan bir kütüphanedir.
SciPy Kurulumu ve Ýçe Aktarýlmasý
SciPy, Python’da bilimsel hesaplama yapmak için kullanýlan ücretsiz ve açýk kaynaklý bir kütüphanedir. SciPy, NumPy, SciPy.ndimage ve diðer kütüphaneler üzerine inþa edilmiþtir ve optimizasyon, lineer cebir, integrasyon, interpolasyon, özel fonksiyonlar, FFT, sinyal ve görüntü iþleme, ODE çözücüleri gibi bilim ve mühendislikte yaygýn olan problemler için algoritmalar saðlar.
SciPy’ý sisteminize kurmak için çeþitli yöntemler vardýr. En kolay yöntemlerden biri, pip veya conda gibi paket yöneticilerini kullanmaktýr. Pip, Python paketlerini indirmek ve yüklemek için kullanýlan standart bir araçtýr. Conda ise Anaconda gibi bilimsel Python daðýtýmlarýyla birlikte gelen bir paket ve ortam yöneticisidir. Anaconda, Python’un yaný sýra SciPy ve diðer birçok bilimsel kütüphaneyi de içeren popüler bir daðýtýmdýr.
SciPy’ý pip ile kurmak için, komut satýrýnda þu komutu çalýþtýrmanýz yeterlidir:
python
python -m pip install scipy
SciPy’ý conda ile kurmak için, komut satýrýnda þu komutu çalýþtýrmanýz yeterlidir:
python
conda install -c conda-forge scipy
SciPy’ý Jupyter Notebook üzerinde kurmak için, pip komutunun baþýna ünlem iþareti (!) eklemeniz gerekir:
python
!pip install scipy
Eðer Anaconda platformu üzerinde Jupyter Notebook ile çalýþýyorsanýz, SciPy kütüphanesi zaten kurulu olarak gelir ve ekstra bir kurulum yapmanýza gerek yoktur.
SciPy kütüphanesini Python programýnýzda kullanmak için, þu komutu kullanarak içe aktarmanýz gerekir:
python
import scipy as sp
Bu komut, SciPy kütüphanesini sp adýyla içe aktarýr ve kütüphanenin fonksiyonlarýný sp.fonksiyon_adi þeklinde çaðýrmanýzý saðlar. Örneðin, SciPy’nin optimize modülündeki minimize fonksiyonunu kullanmak için þu komutu yazabilirsiniz:
python
from scipy import optimize
result = optimize.minimize(sp.sin, x0=0)
Bu komut, sinüs fonksiyonunu minimum yapan x deðerini bulmaya çalýþýr. x0 parametresi, baþlangýç noktasýný belirtir. result deðiþkeni, optimize iþleminin sonucunu içerir.
SciPy, scikit-learn ve scikit-image gibi bilimsel eklenti paketleri için de bir temel oluþturur. scikit-learn, Python’da makine öðrenmesi yapmak için kullanýlan bir kütüphanedir. scikit-learn, sýnýflandýrma, regresyon, kümeleme, boyut indirgeme, model seçimi ve ön iþleme gibi çeþitli makine öðrenmesi görevleri için modüller sunar. scikit-image ise Python’da görüntü iþleme yapmak için kullanýlan bir kütüphanedir. scikit-image, filtreleme, segmentasyon, kayýt, morfoloji ve analiz gibi görüntü iþleme algoritmalarý saðlar.
scikit-learn ve scikit-image kütüphanelerini kullanmak için, SciPy gibi pip veya conda ile kurmanýz ve Python programýnýzda içe aktarmanýz gerekir. Örneðin, scikit-learn kütüphanesini kurmak için þu komutu kullanabilirsiniz:
python
pip install scikit-learn
scikit-learn kütüphanesini içe aktarmak için þu komutu kullanabilirsiniz:
python
import sklearn as sk
scikit-image kütüphanesini kurmak için þu komutu kullanabilirsiniz:
python
pip install scikit-image
scikit-image kütüphanesini içe aktarmak için þu komutu kullanabilirsiniz:
python
import skimage as ski
scikit-learn ve scikit-image kütüphaneleri, SciPy kütüphanesinin saðladýðý algoritmalarý ve veri yapýlarýný kullanarak daha ileri düzeyde bilimsel uygulamalar geliþtirmenize olanak tanýr. Makine öðrenmesi uygulamalarý geliþtirirken scikit-learn kütüphanesi yaygýn olarak kullanýldýðýndan, bu konuda daha fazla örnek bulabilirsiniz. scikit-image kütüphanesi ise görüntü iþleme uygulamalarý geliþtirirken size yardýmcý olacaktýr.
Seaborn Kütüphanesi
Seaborn, Python programlama dilinde verileri görselleþtirmek için kullanýlan bir kütüphanedir. Matplotlib adlý baþka bir kütüphaneye dayanýr, ancak daha güzel ve anlaþýlýr grafikler üretir. Seaborn, Pandas adlý bir kütüphane ile uyumludur. Pandas, verileri tablo þeklinde depolamak ve iþlemek için kullanýlýr. Seaborn, verilerin nasýl daðýldýðýný, hangi özelliklerin birbiriyle iliþkili olduðunu, hangi gruplarýn arasýnda farklýlýklar olduðunu görmek için çok yararlýdýr. Seaborn ile çeþitli grafik türleri oluþturabilirsiniz, örneðin:
- Histogram: Verilerin frekansýný gösteren dikdörtgenlerden oluþan bir grafiktir. Verilerin ortalamasý, medyaný, modu, çarpýklýðý gibi istatistiksel özelliklerini görmek için kullanýlýr.
- Kutu grafiði: Verilerin minimum, maksimum, çeyreklikler, medyan ve aykýrý deðerlerini gösteren bir grafiktir. Verilerin yayýlýmýný ve simetrisini görmek için kullanýlýr.
- Saçýlým grafiði: Verilerin iki deðiþken arasýndaki iliþkisini gösteren noktalardan oluþan bir grafiktir. Verilerin korelasyonunu, regresyonunu, kümeleme gibi özelliklerini görmek için kullanýlýr.
- Çizgi grafiði: Verilerin bir deðiþkene göre nasýl deðiþtiðini gösteren çizgilerden oluþan bir grafiktir. Verilerin eðilimini, dalgalanmasýný, sezonluluðunu gibi özelliklerini görmek için kullanýlýr.
Seaborn kütüphanesi, veri görselleþtirme konusunda çok yetenekli ve kolay kullanýmlý bir kütüphanedir. Verileri anlamak ve sunmak için çok faydalýdýr.
Seaborn Kurulumu ve Ýçe Aktarýlmasý
Seaborn, Python’da veri görselleþtirme yapmak için kullanýlan bir kütüphanedir. Seaborn’u kullanabilmek için öncelikle sisteminizde kurulu olmasý gerekir. Eðer kurulu deðilse, Python’un paket yöneticisi olan pip ile kolayca kurabilirsiniz. Bunun için pip install seaborn komutunu çalýþtýrmanýz yeterlidir. Eðer Jupyter Notebook üzerinde çalýþýyorsanýz, baþýna ! iþareti koyarak da ayný komutu çalýþtýrabilirsiniz. Anaconda platformunu kullanýyorsanýz, Seaborn zaten kurulu olarak gelir, ekstra bir iþlem yapmanýza gerek yoktur.
Seaborn kütüphanesini kullanmak için, öncelikle Python kodunuza içe aktarmanýz gerekir. Bunun için import seaborn as sns komutunu yazmanýz yeterlidir. Bu þekilde Seaborn’u sns takma adýyla kullanabilirsiniz. Seaborn kütüphanesi, veri görselleþtirme yapmak için gerekli olan diðer kütüphaneleri de otomatik olarak içe aktarýr. Örneðin, pandas, numpy ve matplotlib gibi kütüphaneler Seaborn ile birlikte çalýþýr.
Seaborn kütüphanesi, içinde bazý hazýr veri setleri barýndýrýr. Bu veri setleri, veri görselleþtirme örnekleri yapmak için kullanýþlýdýr. Seaborn’de bulunan veri setlerinin listesini görmek için sns.get_dataset_names() komutunu çalýþtýrabilirsiniz. Bu komut size þöyle bir çýktý verir:
[’anagrams’, ’anscombe’, ’attention’, ’brain_networks’, ’car_crashes’, ’diamonds’, ’dots’, ’exercise’, ’flights’, ’fmri’, ’gammas’, ’geyser’, ’iris’, ’mpg’, ’penguins’, ’planets’, ’tips’, ’titanic’]
Bu veri setlerinden birini kullanmak için, sns.load_dataset("veri_seti_adi") komutunu kullanabilirsiniz. Örneðin, tips veri setini kullanmak için sns.load_dataset("tips") komutunu çalýþtýrabilirsiniz. Bu komut size bir pandas DataFrame nesnesi döndürür. Bu nesne üzerinde pandas kütüphanesinin sunduðu tüm iþlemleri yapabilirsiniz.
Tips veri seti, bir restoranda müþterilerin verdikleri bahþiþlere iliþkin bilgiler içerir. Bu veri setinde toplam 7 sütun (kolon) vardýr. Bunlar:
- total_bill: Toplam hesap miktarý
- tip: Verilen bahþiþ miktarý
- sex: Müþterinin cinsiyeti
- smoker: Müþterinin sigara içip içmediði
- day: Ziyaret edilen gün
- time: Ziyaret edilen zaman (Öðle veya akþam)
- size: Masadaki kiþi sayýsý
Tips veri seti hakkýnda daha fazla bilgi almak için, info ve describe metodlarýný kullanabilirsiniz. info metodu, veri setinin boyutu, sütun isimleri, veri tipleri ve eksik deðerler hakkýnda bilgi verir. describe metodu ise, sayýsal sütunlara ait tanýmlayýcý istatistikleri verir. Örneðin, ortalama, standart sapma, minimum, maksimum, çeyreklikler ve medyan gibi deðerleri gösterir.
Tips veri setini kullanarak veri görselleþtirme yapmak için, Seaborn kütüphanesinin sunduðu çeþitli fonksiyonlardan yararlanabilirsiniz. Örneðin, veri setindeki iki sütun arasýndaki iliþkiyi görmek için sns.scatterplot(x="total_bill", y="tip", data=tips) komutunu çalýþtýrabilirsiniz. Bu komut, total_bill ve tip sütunlarýný x ve y eksenlerine yerleþtirerek bir saçýlým grafiði (scatter plot) oluþturur. data parametresine ise, veri setinin adýný verirsiniz.
Bu grafikten, total_bill ve tip sütunlarý arasýnda pozitif bir iliþki olduðunu görebilirsiniz. Yani, hesap miktarý arttýkça bahþiþ miktarý da artmaktadýr.
Seaborn kütüphanesi, veri görselleþtirme yapmak için çok sayýda fonksiyon sunar. Bu fonksiyonlarýn tam listesini ve kullaným örneklerini Seaborn resmi web sitesi seaborn.pydata.org/dan inceleyebilirsiniz.
Seaborn ile Veri Görselleþtirme
Seaborn, Python’da istatistiksel veri görselleþtirmesi yapmak için kullanýlan bir kütüphanedir. Matplotlib kütüphanesine dayanýr, ancak daha yüksek seviyeli ve daha kolay kullanýmlý fonksiyonlar sunar. Seaborn ile veri çerçevelerini (DataFrame) doðrudan grafiklere dönüþtürebilir, renk paletleri ve temalar seçebilir, veri daðýlýmlarýný ve iliþkilerini gösterebilirsiniz.
Bazý Seaborn fonksiyonlarýný ve parametrelerini kýsaca açýklamak gerekirse:
- scatterplot fonksiyonu, iki deðiþken arasýndaki iliþkiyi noktalar halinde gösteren bir grafik çizer. data parametresi ile veri çerçevesini, x ve y parametreleri ile deðiþkenleri belirtirsiniz. Örneðin, tips veri setinde bahþiþ ve fatura toplamý arasýndaki iliþkiyi görmek için þöyle yazabilirsiniz:
python
import seaborn as sns
import matplotlib.pyplot as plt
sns.set() # Seaborn’un varsayýlan stilini ayarla
tips = sns.load_dataset("tips") # tips veri setini yükle
sns.scatterplot(data=tips, x="total_bill", y="tip") # scatterplot çiz
plt.show() # grafiði göster
- set_style fonksiyonu, grafiðin arka planýný, ýzgarasýný ve eksenlerini deðiþtirmenizi saðlar. darkgrid, whitegrid, dark, white ve ticks gibi farklý stiller seçebilirsiniz. Örneðin, arka planý beyaz, ýzgarayý koyu ve eksenleri kalýn yapmak için þöyle yazabilirsiniz:
python
sns.set_style("whitegrid", {"axes.edgecolor": "black", "axes.linewidth": 2})
- palette parametresi, grafiðin renklerini belirlemenizi saðlar. Seaborn’un önceden tanýmlanmýþ renk paletlerinden birini seçebilir veya kendi renklerinizi belirtebilirsiniz. Örneðin, grafiði mavi tonlarýnda yapmak için þöyle yazabilirsiniz:
python
sns.scatterplot(data=tips, x="total_bill", y="tip", palette="Blues")
- set fonksiyonu, grafiðin boyutunu, çözünürlüðünü ve yazý tipini ayarlamanýzý saðlar. rc parametresi ile bu ayarlarý bir sözlük olarak verirsiniz. Örneðin, grafiði 8x6 inç boyutunda, 300 dpi çözünürlükte ve 14 punto yazý tipinde yapmak için þöyle yazabilirsiniz:
python
sns.set(rc={"figure.figsize": (8, 6), "figure.dpi": 300, "font.size": 14})
- color parametresi, grafiðin çizgilerinin ve noktalarýnýn rengini belirtmenizi saðlar. Bir renk adý, kodu veya paleti verebilirsiniz. Örneðin, grafiði kýrmýzý yapmak için þöyle yazabilirsiniz:
python
sns.scatterplot(data=tips, x="total_bill", y="tip", color="red")
- hue parametresi, veriyi kategorik olarak gruplandýrmanýzý saðlar. Bir kategorik deðiþken adý verirseniz, grafiðin renkleri o deðiþkene göre ayrýlýr. Örneðin, grafiði yemek zamanýna göre gruplamak için þöyle yazabilirsiniz:
python
sns.scatterplot(data=tips, x="total_bill", y="tip", hue="time")
- relplot fonksiyonu, iliþkisel bir grafik çizer. scatterplot gibi iki deðiþken arasýndaki iliþkiyi noktalar halinde gösterebilir veya lineplot gibi iki deðiþken arasýndaki iliþkiyi çizgiler halinde gösterebilir. kind parametresi ile grafiðin türünü belirtirsiniz. relplot fonksiyonu, scatterplot ve lineplot fonksiyonlarýndan daha esnektir, çünkü birden fazla grafik çizmenizi saðlar. Örneðin, cinsiyete göre farklý grafikler çizmek için þöyle yazabilirsiniz:
python
sns.relplot(data=tips, x="total_bill", y="tip", kind="scatter", col="sex")
- height parametresi, grafiðin yüksekliðini belirlemenizi saðlar. Bir sayýsal deðer verirseniz, grafiðin boyutu o deðere göre ayarlanýr. Örneðin, grafiði 5 inç yüksekliðinde yapmak için þöyle yazabilirsiniz:
python
sns.relplot(data=tips, x="total_bill", y="tip", kind="scatter", height=5)
- style parametresi, kategorik olarak hue parametresinden baþka bir kategorik gösterim olanaðý verir. Bir kategorik deðiþken adý verirseniz, grafiðin þekilleri o deðiþkene göre ayrýlýr. Örneðin, grafiði sigara içip içmeme durumuna göre farklý þekillerde yapmak için þöyle yazabilirsiniz:
python
sns.relplot(data=tips, x="total_bill", y="tip", kind="scatter", style="smoker")
- sizes parametresi, sayýsal büyüklüðü göstermenizi saðlar. Bir sayýsal deðiþken adý verirseniz, grafiðin noktalarýnýn büyüklüðü o deðiþkene göre deðiþir. Örneðin, grafiði masadaki kiþi sayýsýna göre farklý büyüklüklerde yapmak için þöyle yazabilirsiniz:
python
sns.relplot(data=tips, x="total_bill", y="tip", kind="scatter", sizes="size")
- lineplot fonksiyonu, çizgi grafiði çizer. Ýki deðiþken arasýndaki iliþkiyi çizgiler halinde gösterir. data parametresi ile veri çerçevesini, x ve y parametreleri ile deðiþkenleri belirtirsiniz. Örneðin, cinsiyete göre fatura toplamý ve bahþiþ arasýndaki iliþkiyi görmek için þöyle yazabilirsiniz:
python
sns.lineplot(data=tips, x="total_bill", y="tip", hue="sex")
Korelasyon ve Isý Haritasý
- inner parametresine verilebilecek argümanlar þunlardýr:
- box: Grafik içinde bir kutu grafiði gösterir. Bu sayede, kategorik deðiþkenlerin istatistiksel özetini ve yoðunluðunu ayný anda görebiliriz. Örneðin, aþaðýdaki grafik, sigara içen ve içmeyen müþterilerin verdiði bahþiþlerin daðýlýmýný göstermektedir. Bu grafikten, sigara içen müþterilerin bahþiþlerinin ortalamasýnýn, medyanýnýn, minimumunun, maksimumunun ve çeyrekliklerinin sigara içmeyen müþterilerden daha yüksek olduðunu, ayrýca sigara içen müþterilerin bahþiþlerinin daha fazla varyasyona sahip olduðunu görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
sns.catplot(x="smoker", y="tip", data=tips, kind="violin", inner="box")
plt.show()
- quartile: Grafik içinde çeyreklikleri gösterir. Bu sayede, kategorik deðiþkenlerin daðýlýmýnýn çeyrekliklerine göre nasýl deðiþtiðini görebiliriz. Örneðin, aþaðýdaki grafik, sigara içen ve içmeyen müþterilerin verdiði bahþiþlerin daðýlýmýný göstermektedir. Bu grafikten, sigara içen müþterilerin bahþiþlerinin çeyrekliklerinin sigara içmeyen müþterilerden daha yüksek olduðunu, ancak sigara içmeyen müþterilerin bahþiþlerinin daha simetrik bir daðýlýma sahip olduðunu görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
sns.catplot(x="smoker", y="tip", data=tips, kind="violin", inner="quartile")
plt.show()
- point: Grafik içinde noktalarý gösterir. Bu sayede, kategorik deðiþkenlerin daðýlýmýnýn bireysel deðerlerini görebiliriz. Örneðin, aþaðýdaki grafik, sigara içen ve içmeyen müþterilerin verdiði bahþiþlerin daðýlýmýný göstermektedir. Bu grafikten, sigara içen müþterilerin bahþiþlerinin daha fazla çeþitlilik gösterdiðini, ancak sigara içmeyen müþterilerin daha fazla sayýda olduðunu görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
sns.catplot(x="smoker", y="tip", data=tips, kind="violin", inner="point")
plt.show()
- stick: Grafik içinde çubuklarý gösterir. Bu sayede, kategorik deðiþkenlerin daðýlýmýnýn bireysel deðerlerini görebiliriz. Örneðin, aþaðýdaki grafik, sigara içen ve içmeyen müþterilerin verdiði bahþiþlerin daðýlýmýný göstermektedir. Bu grafikten, sigara içen müþterilerin bahþiþlerinin daha fazla çeþitlilik gösterdiðini, ancak sigara içmeyen müþterilerin daha fazla sayýda olduðunu görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
sns.catplot(x="smoker", y="tip", data=tips, kind="violin", inner="stick")
plt.show()
- None: Grafik içinde hiçbir þey göstermez. Bu sayede, kategorik deðiþkenlerin daðýlýmýnýn sadece yoðunluðunu görebiliriz. Örneðin, aþaðýdaki grafik, sigara içen ve içmeyen müþterilerin verdiði bahþiþlerin daðýlýmýný göstermektedir. Bu grafikten, sigara içen müþterilerin bahþiþlerinin daha fazla yoðunlaþtýðý bölgeleri görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
sns.catplot(x="smoker", y="tip", data=tips, kind="violin", inner=None)
plt.show()
- split parametresi, farklý kategoriler için grafiði bölmek için kullanýlýr. Bu sayede, kategorik deðiþkenlerin daðýlýmýný karþýlaþtýrmak daha kolay olur. Örneðin, aþaðýdaki grafik, cinsiyete göre sigara içen ve içmeyen müþterilerin verdiði bahþiþlerin daðýlýmýný göstermektedir. Bu grafikten, sigara içen kadýnlarýn bahþiþlerinin daha fazla çeþitlilik gösterdiðini, sigara içen erkeklerin bahþiþlerinin daha yüksek olduðunu, sigara içmeyen kadýnlarýn bahþiþlerinin daha düþük olduðunu, sigara içmeyen erkeklerin bahþiþlerinin daha simetrik bir daðýlýma sahip olduðunu görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
tips = sns.load_dataset("tips")
sns.catplot(x="smoker", y="tip", hue="sex", data=tips, kind="violin", split=True)
plt.show()
- Birçok özelliðin birbiriyle iliþkisini birden fazla grafikle görselleþtirmek için, Seaborn kütüphanesinde bulunan PairGrid fonksiyonu kullanýlýr. Bu fonksiyon, bir veri kümesindeki sayýsal deðiþkenlerin ikili kombinasyonlarýný gösteren bir ýzgara oluþturur. Izgaranýn her bir hücresine farklý bir grafik türü uygulanabilir. Örneðin, aþaðýdaki grafik, tips veri kümesindeki toplam fatura, bahþiþ ve masa boyutu deðiþkenlerinin birbiriyle iliþkisini göstermektedir. Izgaranýn üst üçgeninde korelasyon katsayýlarý, alt üçgeninde daðýlým grafiði, ana köþegeninde ise yoðunluk grafiði çizilmiþtir. Bu grafikten, toplam fatura ve bahþiþ arasýnda en yüksek korelasyonun olduðunu, toplam fatura ve masa boyutu arasýnda orta derecede korelasyonun olduðunu, bahþiþ ve masa boyutu arasýnda ise düþük derecede korelasyonun olduðunu görebiliriz.
python
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
tips = sns.load_dataset("tips")
g = sns.PairGrid(tips, vars=["total_bill", "tip", "size"])
g.map_upper(lambda x, y, **kwargs: plt.text(x.mean(), y.mean(), f"{np.corrcoef(x, y)[0, 1]:.2f}", ha="center", va="center"))
g.map_lower(sns.scatterplot)
g.map_diag(sns.kdeplot)
plt.show()
Scikit-learn
Scikit-learn, Python programlama dilinde makine öðrenmesi algoritmalarýný uygulamak için kullanýlan bir kütüphanedir. Makine öðrenmesi, verilerden öðrenerek tahminler yapabilen bilgisayar sistemlerinin geliþtirilmesi sürecidir. Scikit-learn, makine öðrenmesi sürecindeki farklý aþamalarý kolaylaþtýrmak için çeþitli araçlar ve modüller saðlar. Bu aþamalar þunlardýr:
- Veri ön iþleme: Verileri makine öðrenmesi algoritmalarýna uygun hale getirmek için yapýlan iþlemlerdir. Örneðin, verileri standartlaþtýrmak, eksik deðerleri doldurmak, kategorik verileri sayýsal verilere dönüþtürmek, verileri eðitim ve test kümelerine ayýrmak gibi iþlemlerdir. Scikit-learn, sklearn.preprocessing, sklearn.impute, sklearn.feature_extraction gibi modüller ile veri ön iþleme iþlemlerini gerçekleþtirebilir.
- Model seçimi ve eðitimi: Makine öðrenmesi algoritmalarýný verilere uygulayarak bir model oluþturmak ve bu modelin performansýný deðerlendirmek için yapýlan iþlemlerdir. Örneðin, doðrusal regresyon, lojistik regresyon, destek vektör makineleri, karar aðaçlarý, k-ortalama, yapay sinir aðlarý gibi algoritmalarý kullanarak bir model eðitmek, çapraz doðrulama, ýzgara arama, rastgele arama gibi yöntemlerle modelin hiperparametrelerini ayarlamak, doðruluk, hassasiyet, geri çaðýrma, F1 skoru, ROC eðrisi gibi metriklerle modelin performansýný ölçmek gibi iþlemlerdir. Scikit-learn, sklearn.linear_model, sklearn.svm, sklearn.tree, sklearn.cluster, sklearn.neural_network gibi modüller ile model seçimi ve eðitimi iþlemlerini gerçekleþtirebilir.
- Model kullanýmý ve iyileþtirilmesi: Eðitilmiþ bir modeli yeni veriler üzerinde tahmin yapmak veya modeli daha iyi hale getirmek için yapýlan iþlemlerdir. Örneðin, modeli kaydetmek ve yüklemek, modeli seri hale getirmek, modeli güncellemek, modeli bir web servisi olarak sunmak, modelin açýklanabilirliðini artýrmak, modelin yanlýþ yaptýðý durumlarý analiz etmek gibi iþlemlerdir. Scikit-learn, sklearn.externals.joblib, sklearn.pipeline, sklearn.model_selection.learning_curve gibi modüller ile model kullanýmý ve iyileþtirilmesi iþlemlerini gerçekleþtirebilir.
Scikit-learn kütüphanesini kullanabilmek için öncelikle sisteme kurmak gerekir. Bunun için Python’un paket yöneticisi olan pip kullanýlabilir. Komut satýrýnda pip install scikit-learn komutu ile Scikit-learn kütüphanesi sisteme kurulur. Eðer Jupyter Notebook gibi bir ortamda çalýþýlýyorsa, !pip install scikit-learn komutu ile kütüphane kurulabilir. Anaconda gibi bir platform kullanýlýyorsa, Scikit-learn kütüphanesi zaten kurulu olarak gelir.
Scikit-learn kütüphanesini kullanmak için içe aktarmak gerekir. Bunun için import sklearn komutu kullanýlabilir. Ancak genellikle Scikit-learn kütüphanesinin alt modüllerini kullanmak daha pratiktir. Örneðin, from sklearn.linear_model import LinearRegression komutu ile doðrusal regresyon modelini içe aktarabiliriz. Scikit-learn kütüphanesinin versiyonunu öðrenmek için sklearn.__version__ komutu kullanýlabilir. Örneðin, aþaðýdaki kod bloðu Scikit-learn kütüphanesinin versiyonunu yazdýrýr.
python
import sklearn
print(sklearn.__version__)
Sosyal Medyada Paylaşın:
(c) Bu şiirin her türlü telif hakkı şairin kendisine ve/veya temsilcilerine aittir.