Mulai sekarangMulai gratis

Model eCommerce logistik: analisis k-means

Sekarang setelah Anda memperoleh wawasan awal tentang keluaran model, Anda dapat memperdalam pemahaman tentang pola dan hubungan antarkeluaran menggunakan analisis klaster.

Anda akan menggunakan algoritma k-means untuk membantu memahami pengendali utama perilaku model Anda dan mengklasifikasikan titik data ke dalam kelompok dengan karakteristik serupa. Ini akan membantu mengidentifikasi kemacetan pada operasi e-commerce/logistik dunia nyata yang direpresentasikan oleh model Anda.

kmeans dan whiten telah diimpor dari scipy.cluster.vq serta matplotlib.pyplot as plt. Himpunan data asli dan yang telah di-whiten memiliki data kolom seperti di bawah ini. Variabel dummy p mendefinisikan indeks proses-proses tersebut dalam himpunan data.

  • kolom 1 (p=0): time_requests
  • kolom 2 (p=1): time_packaging
  • kolom 3 (p=2): time_shipping
  • kolom 4 (p=3): sum/total time

Latihan ini merupakan bagian dari kursus

Simulasi Peristiwa Diskret dengan Python

Lihat Kursus

Instruksi latihan

  • Lakukan whitening pada array record_processes_np untuk menyiapkannya bagi pengelompokan k-means.
  • Jalankan metode k-means pada array whitened menggunakan paket SciPy, dengan menetapkan k-means untuk mencari tiga klaster.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# Whiten the record_processes_np array
whitened = ____(record_processes_np)

# Run the k-means method on whitened, using three clusters
codebook, distortion = ____(whitened, ____)

fig, axs = plt.subplots(3)
for p in range(3):
    axs[p].scatter(whitened[:, 3], whitened[:, p], marker=".", label=f"{process_names[p]}")
    axs[p].scatter(codebook[:, 3], codebook[:, p], label='Cluster Centroids')
    axs[p].legend(loc='center left', bbox_to_anchor=(1, 0.5))
    axs[p].set_ylabel(f'Process duration (days)')
    axs[p].set_xlabel('Total duration (days)')
plt.show()
Edit dan Jalankan Kode