Skip to content

Dimas0824/streamlytics-netflix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎬 Netflix User Segmentation using Machine Learning

Proyek ini bertujuan untuk membentuk segmentasi pengguna Netflix berdasarkan usia, preferensi genre, dan pola perilaku menonton. Dengan menerapkan algoritma K-Means dan DBSCAN, proyek ini mengidentifikasi karakteristik serta pola perilaku dari berbagai kelompok pengguna, sehingga dapat ditemukan kelompok dengan minat dan tingkat engagement yang berbeda.


📁 Struktur Proyek

streamlytics-netflix/
├── dataset/
│   ├── original_dataset/      # Dataset mentah dari sumber asli
│   └── preprocessed_dataset/  # Dataset hasil pembersihan & transformasi
├── ML_netflixanalysis.ipynb   # Source code utama (Jupyter Notebook)
├── ML_netflixanalysis.json    # Metadata run (Kaggle)
└── README.md                  # Dokumentasi proyek

📊 Deskripsi Dataset

Dataset digunakan dalam dua tahap utama:

  • Original Dataset
    Data asli dari sumber publik Netflix atau komunitas, mencakup atribut seperti: User ID, Age, Genre Preference, Watch Time, Rating Behavior, dll.

  • Preprocessed Dataset
    Dataset yang telah melalui:

    • Pembersihan data (missing values, outlier removal)
    • Pemilihan fitur relevan dan memiliki missing values minimal

🧠 Model Machine Learning

Notebook ini menggunakan dua algoritma utama:

Model Tujuan Keterangan
K-Means Mengelompokkan pengguna berdasarkan kesamaan perilaku menonton Centroid-based clustering
DBSCAN Mendeteksi kelompok unik dan outlier Cocok untuk data dengan densitas berbeda

Fitur tambahan:

  • Analisis dimensi (PCA, Plotly)
  • Evaluasi cluster (Silhouette Score, Davies–Bouldin Index)
  • Visualisasi distribusi cluster dalam 2D dan 3D (3D plot tersedia di Kaggle)

⚙️ Cara Menjalankan

💻 Opsi 1: Jalankan di Kaggle (Direkomendasikan)

Akses notebook melalui:
👉 Kaggle - ML Netflix Analysis

Keuntungan:

  • Melihat semua visualisasi (termasuk 3D plot)
  • Menjalankan semua cell tanpa instalasi lokal
  • Mengedit dan fork notebook dengan akun Kaggle

🖥️ Opsi 2: Jalankan Secara Lokal

Jika Anda memiliki Git, clone repository dengan perintah berikut:

git clone https://github.com/Dimas0824/streamlytics-netflix.git
cd streamlytics-netflix

Jika tidak memiliki Git, lakukan unduh manual:

  1. Unduh repository secara manual dengan memilih "Download ZIP" di halaman GitHub, lalu ekstrak file ZIP tersebut.
  2. Install dependensi Python:
    pip install -r requirements.txt
  3. Jalankan notebook:
    jupyter notebook ML_netflixanalysis.ipynb

⚠️ Beberapa visualisasi interaktif (terutama 3D Plot) hanya optimal di Kaggle.


📈 Ringkasan Hasil

  • K-Means membentuk beberapa cluster dengan perbedaan signifikan pada preferensi dan durasi menonton.
  • DBSCAN mengidentifikasi pengguna dengan perilaku unik di luar cluster mayoritas.
  • Analisis dimensi (PCA, t-SNE) memperlihatkan struktur cluster yang terpisah dan interpretatif.

🔗 Sumber Eksternal


📜 Lisensi

Proyek ini open-source dan dapat digunakan untuk riset atau pembelajaran, dengan mencantumkan atribusi ke pemilik repositori.


ℹ️ Tentang Repository

Repository ini mendukung eksperimen segmentasi pengguna Netflix menggunakan unsupervised learning. Tujuan akhirnya adalah memberikan insight perilaku penonton berdasarkan genre, usia, dan pola waktu menonton, yang dapat dimanfaatkan untuk:

  • Rekomendasi konten lebih personal
  • Analisis retensi pengguna
  • Strategi promosi dan engagement berbasis data

About

Netflix 2025 dataset: preprocessed and cleaned

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •