Python में Discrete Event Simulation
Diogo Costa (PhD, MSc)
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
हिस्टोग्राम
Matplotlib पैकेज
import matplotlib.pyplot as plt
उपयोग: डेटासेट data का 50 बिन्स वाला हिस्टोग्राम बनाएँ
plt.hist(data, bins=50)


मशीन लर्निंग

डिस्क्रीट-इवेंट मॉडल्स में
हमारा फोकस
ऑब्ज़र्वेशंस और क्लस्टर सेंट्रोइड्स

SciPy मेथड
scipy.cluster.vq.kmeans()
इम्प्लीमेंटेशन
import scipy
scipy.cluster.vq.kmeans(
obs, k_or_guess, iter=20, thresh=1e-05,
check_finite=True, *, seed=None)
obs एक numpy array हैk-means चलाने से पहले: डेटा व्हाइटनिंग
obs डेटा को डिकॉरिलेट करेंobs के हर डायमेंशन को उसकी स्टैंडर्ड डिविएशन से रिस्केल करें
SciPy में
scipy.cluster.vq.whiten(
obs, check_finite=True)
obs एक numpy array हैProcess 1 के प्रभाव की जाँच करेंDNT_CURLY_TAG_2

पैकेज इम्पोर्ट करें
import scipy.cluster.vq as scvq
मॉडल परिणाम व्हाइटन करें
white_data = scvq.whiten(model_results)
2 क्लस्टर्स खोजें (नीले डॉट्स)
cluster_centroids, distortion =
scvq.kmeans(white_data, 2)
टेक्नीक्स
सिंपल मेथड
nobs = ऑब्ज़र्वेशंस की संख्याnum_clusters =
int((model_results.shape[0]/2)**0.5)
22
from sklearn.metrics import silhouette_score
k क्लस्टर्स के लिए सिल्हूएट स्कोर निकालें
for k in range(2, 6):
model = KMeans(n_clusters=k)
model.fit(model_results)
pred = model.predict(model_results)
score = silhouette_score(model_results, pred)
कंसोल आउटपुट
Silhouette Score for k = 2: 0.591
Silhouette Score for k = 3: 0.472
Silhouette Score for k = 4: 0.381
Silhouette Score for k = 5: 0.364
Silhouette Score for k = 6: 0.373
परिणाम समझें
score = 1
DNT_CURLY_TAG_6score = -1
DNT_CURLY_TAG_6score 0 के पासPython में Discrete Event Simulation