Kişiselleştirilmiş Ürün Öneri Sisteminin Adım‑Adım Kurulumu

kan_ve_gul

Yeni Üye
Katılım
Eyl 2026
Konular
1
Mesajlar
1
Tepki puanı
0
Görüntülenme
0

1. Gerekli Ortam​

  • LAMP (Linux + Apache + MySQL + PHP 8)
  • Web sunucusunda mod_rewrite etkin
  • PHP’de pdo_mysql eklentisi enabled

2. Veri Toplama​

  1. Etkinlik tablosu oluşturma
    SQL:
    CREATE TABLE user_events (
      id BIGINT AUTO_INCREMENT PRIMARY KEY,
      user_id BIGINT NOT NULL,
      product_id BIGINT NOT NULL,
      event_type ENUM('view','add_cart','purchase') NOT NULL,
      event_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    );
  2. HTML/JS ile izleme
    HTML:
    <script>
      function trackEvent(type, productId) {
        fetch('/track', {
          method: 'POST',
          headers: { 'Content-Type': 'application/json' },
          body: JSON.stringify({type, productId})
        });
      }
    </script>
    Sayfa tetiklerinde trackEvent('view', 123) gibi çağrılar yapılır.

3. Öneri Algoritması – Basit Ürün‑Ürün Benzerliği​

  1. Oluşturulması
    PHP:
    $stmt = $pdo->prepare(
      "SELECT a.product_id, b.product_id, COUNT(*) AS weight
       FROM user_events a
       JOIN user_events b ON a.user_id = b.user_id
       WHERE a.event_type = 'view' AND b.event_type = 'view'
       AND a.product_id <> b.product_id
       GROUP BY a.product_id, b.product_id
       ORDER BY weight DESC"
    );
  2. Cache
  • Sonuçları Redis veya OPcache ile 5 dk süreyle saklayın.

4. API Entegrasyonu​

  • /api/recommend.php dosyası oluşturun.
    PHP:
    <?php
    header('Content-Type: application/json');
    $userId = $_GET['user_id'];
    $stmt = $pdo->prepare(
      "SELECT product_id FROM recommendation_cache
       WHERE user_id = ? ORDER BY score DESC LIMIT 10"
    );
    $stmt->execute([$userId]);
    echo json_encode($stmt->fetchAll(PDO::FETCH_COLUMN));
  • Önemli: CORS başlıklarını ekleyin.

5. Güncelleme İşlemi​

  • cron ile haftada bir php update_recommendations.php çalıştırın.
  • Bu script, 3. adımda tanımlanan sorguyu yeniden çalıştırıp recommendation_cache tablosunu günceller.

6. Yayın Öncesi Kontroller​

AdımKontrolAçıklama
1Veritabanı bağlantısıPDO hatası var mı?
2JavaScript izlemeKonsolda fetch hatası var mı?
3Cache boş mu?Öğrenme verisi oluşturulmalı
4API yanıtı200 OK ve JSON döndürmeli

Bu yapı, e‑ticaret sitenizde gerçek zamanlı ve tutarlı öneriler sunmanıza olanak tanır.

Peki, hangi veri kümenizin öneri doğruluğunu artıracağını düşünüyorsunuz?

Support Pollinations.AI:

🌸 Ad 🌸
Powered by Pollinations.AI free text APIs. Support our mission to keep AI accessible for everyone.
 
Geri
En Üst