Python'da AI Modelleri Entegrasyonu: Bir Veri Bilimcinin Not Defterinden Kahvemi yudumlarken, bir veri setine baktığım o anı hatırlıyorum: "Bu karmaşık veriden anlamlı sonuçlar çıkarmak haftalar alacak" diye düşünmüştüm. Sonra Python ve AI kütüphaneleri imdadıma yetişti. İşte sahadan gerçek deneyimlerle, adım adım AI entegrasyon rehberi: 1. "Hazır Modellerle Hızlı Başlangıç" Senaryo: Müşteri yorumlarından duygu analizi yapmanız gerekiyor. from transformers import pipeline # Hazır modeli 1 satırda yükle duygu_analiz = pipeline("sentiment-analysis", model="savasy/bert-base-turkish-sentiment-cased") # Test edelim sonuc = duygu_analiz("Ürün hızlı geldi ama kutu hasarlıydı") print(sonuc) # [{'label': 'NEGATIVE', 'score': 0.89}] Pro Tip: transformers kütüphanesindeki pipeline fonksiyonu, sizi model mimarisiyle uğraştırmadan direk sonuca götürür. 2. "Kendi Verinizle Özel Model Eğitmek" Gerçek Hikaye: Bir e-ticaret sitesi için ürün kategorizasyon modeli yazmıştım. from sklearn.ensemble import RandomForestClassifier import pandas as pd # Veriyi yükle data = pd.read_csv("urun_verileri.csv") X = data[["agirlik", "fiyat", "renk_kodu"]] y = data["kategori"] # Modeli kur ve eğit model = RandomForestClassifier() model.fit(X, y) # Tahmin yap yeni_urun = [[1.2, 299, 45]] print(model.predict(yeni_urun)) # ['elektronik'] Düştüğüm Hata: Başta veriyi normalize etmeyi unutmuştum, modelin doğruluğu %40'ta kalmıştı! StandardScaler ekleyince %92'ye fırladı. 3. "Bilgisayar Görüsü için OpenCV + TensorFlow" Komik Anı: Stajyer, ofis kedisinin fotoğraflarını "tehlikeli hayvan" diye sınıflandıran bir model eğitmişti 😅 import cv2 import tensorflow as tf # Önceden eğitilmiş model model = tf.keras.applications.MobileNetV2() # Görüntüyü işle img = cv2.imread("kedi.jpg") img = cv2.resize(img, (224, 224)) # Modelin beklediği boyut img = tf.keras.applications.mobilenet_v2.preprocess_input(img) # Tahmin tahmin = model.predict(img[np.newaxis, ...]) print(tf.keras.applications.mobilenet_v2.decode_predictions(tahmin)) Çıktı: [('n02124075', 'Egyptian_cat', 0.871)] → "Kedi"yi doğru tanıdı! 4. "PyTorch ile Derin Öğrenme" Unutamadığım Bug: GPU kullanırken to(device) yazmayı unutup 6 saat beklediğim gün... import torch import torch.nn as nn # Basit sinir ağı class Net(nn.Module): def __init__(self): super().__init__() self.fc = nn.Linear(10, 2) # 10 giriş, 2 çıkış def forward(self, x): return self.fc(x) # Model + GPU model = Net() device = torch.device("cuda" if torch.cuda.is_available() else "cpu") model.to(device) # BU SATIR HAYATİ! # Test verisi x = torch.randn(3, 10).to(device) # Veriyi de GPU'ya taşı print(model(x)) 5. "API Olarak Dağıtmak (Flask)" Başıma Gelen: Sunucuya requirements.txt yüklemeyi unutunca 3 saat debug yapmıştım! from flask import Flask, request, jsonify import joblib app = Flask(__name__) model = joblib.load("model.pkl") # Kayıtlı model @app.route("/tahmin", methods=["POST"]) def tahmin(): veri = request.json["veri"] sonuc = model.predict([veri]) return jsonify({"tahmin": str(sonuc[0])}) if __name__ == "__main__": app.run(host="0.0.0.0", port=5000) Test: curl -X POST http://localhost:5000/tahmin -H "Content-Type: application/json" -d '{"veri": [1, 2, 3]}' Şimdi Size Altın Kuralları Veriyorum: Veri Ön İşleme: Modeliniz ne kadar iyi olursa olsun, çöp veri girdiyseniz çöp sonuç alırsınız. GPU Kullanımı: torch.cuda.is_available() ile kontrol etmeden eğitime başlamayın. Model Kaydetme: joblib veya torch.save kullanarak eğittiğiniz modelleri saklayın. Versiyon Kontrolü: pip freeze > requirements.txt yapmayı unutmayın yoksa başka makinede çalışmaz! Bonus: Hata Ayıklama: Modeliniz kötü performans gösteriyorsa, küçük bir veri parçasıyla (batch_size=1) overfit yapmayı deneyin. Eğer yapamıyorsa, model mimarinizde sorun var demektir!