Scikit-learn, Python programlama dili için geliştirilmiş popüler bir makine öğrenimi kütüphanesidir. Veri analizi ve veri madenciliği alanlarında yaygın olarak kullanılan bu kütüphane, kullanıcıların hızlı ve etkili bir şekilde makine öğrenimi modelleri oluşturmalarını sağlar. Scikit-learn, çok çeşitli algoritmalar ve araçlarla donatılmıştır ve kullanıcı dostu bir arayüze sahiptir.

 

Scikit-learn Nedir?

Scikit-learn, Python programında makine öğrenimi uygulamalarını gerçekleştirmek için kullanılan bir kütüphanedir. Bu kütüphane, sınıflandırma, regresyon, kümeleme, boyut indirgeme ve model değerlendirme gibi çeşitli makine öğrenimi görevlerini destekler. Scikit-learn, veri bilimcilerin ve geliştiricilerin karmaşık makine öğrenimi problemlerini çözmelerine olanak tanır. Bunun yanı sıra, kütüphane, verileri işlemek için gerekli olan araçları da içerir.

 

Kurulum

Scikit-learn kütüphanesini Python ortamınıza yüklemek oldukça kolaydır. Aşağıdaki komut ile pip kullanarak kütüphaneyi yükleyebilirsiniz:

pip install scikit-learn

 

Temel Özellikler

  • Algoritma Desteği: Sınıflandırma, regresyon, kümeleme ve boyut indirgeme gibi birçok makine öğrenimi algoritmasını içerir.
  • Veri Ön İşleme Araçları: Veri setlerinizi hazırlamak için standartlaştırma, normalizasyon, eksik değerleri doldurma gibi işlemleri kolayca yapabilirsiniz.
  • Model Seçimi: Farklı makine öğrenimi algoritmalarını karşılaştırmak ve en iyi modeli bulmak için kullanılacak araçlar sağlar.
  • Çapraz Doğrulama: Model performansını değerlendirmek için çapraz doğrulama yöntemlerini destekler.

 

Scikit-learn ile Basit Bir Örnek

Aşağıda, Scikit-learn kullanarak iris veri setini kullanarak basit bir sınıflandırma modeli oluşturma sürecini görebilirsiniz. Bu örnekte, çiçek türlerini sınıflandırmak için rastgele bir orman modeli kullanacağız.


import numpy as np
import pandas as pd
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score

# Iris veri setini yükleme
iris = datasets.load_iris()
X = iris.data
y = iris.target

# Veriyi eğitim ve test setine ayırma
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Modeli oluşturma ve eğitme
model = RandomForestClassifier()
model.fit(X_train, y_train)

# Tahmin yapma
y_pred = model.predict(X_test)

# Modelin doğruluğunu hesaplama
accuracy = accuracy_score(y_test, y_pred)
print("Model Doğruluğu:", accuracy)

 

Veri Ön İşleme

Scikit-learn, veri ön işleme sürecini kolaylaştırmak için bir dizi araç sunar. Örneğin, StandardScaler sınıfını kullanarak verilerinizi ölçeklendirebilirsiniz:


from sklearn.preprocessing import StandardScaler

# Ölçeklendirme işlemi
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

# Ölçeklendirilmiş veriyi gösterme
print(X_scaled[:5])

 

Model Seçimi ve Hiperparametre Ayarı

Scikit-learn, model seçimi için kullanışlı araçlar sunar. GridSearchCV sınıfı, farklı hiperparametre kombinasyonlarını denemenizi sağlar. Aşağıda bir örnek verilmiştir:


from sklearn.model_selection import GridSearchCV

# Hiperparametreler
param_grid = {'n_estimators': [10, 50, 100],
              'max_depth': [None, 10, 20]}

# Grid search
grid_search = GridSearchCV(RandomForestClassifier(), param_grid, cv=5)
grid_search.fit(X_train, y_train)

# En iyi modelin doğruluğunu yazdırma
best_model = grid_search.best_estimator_
print("En İyi Model Doğruluğu:", accuracy_score(y_test, best_model.predict(X_test)))

 

Scikit-learn, makine öğrenimi ve veri analizi projeleri için güçlü bir araçtır. Kullanıcı dostu arayüzü ve geniş algoritma desteği ile veri bilimcilerin ve geliştiricilerin karmaşık makine öğrenimi problemlerini çözmelerine yardımcı olur. Scikit-learn kütüphanesini keşfetmek, veri bilimi alanında kendinizi geliştirmek için önemli bir adımdır.