Ali Ahmed55 نشر 21 يونيو أرسل تقرير نشر 21 يونيو السلام عليكم ده البيانات المستخدما وده الكود from pandas import read_csv from sklearn.cluster import KMeans data = read_csv("Customer.csv") kmeans_model = KMeans(n_clusters=5 , init='k-means++' , random_state=33 , algorithm='auto') fit = kmeans_model.fit(data) print(f"KMeans centers are: {fit.cluster_centers_}") print(f"Kmeans labels are: {fit.labels_}") print(f"Kmeans intertia is: {fit.inertia_}") Customer.csv 1 اقتباس
0 Chihab Hedidi نشر 21 يونيو أرسل تقرير نشر 21 يونيو المشكلة هي أن قيمة المعلمة algorithm في دالة KMeans يجب أن تكون إما 'lloyd' أو 'elkan'. لكن في الكود الخاص بك تم تعيينها إلى 'auto'، ، لحل هذه المشكلة يجب تعديل الكود لتغيير قيمة المعلمة algorithm إلى 'lloyd' أو 'elkan'. بالنسبة للفرق بينهما خوارزمية ليويد (Lloyd's algorithm) تعتبر الطريقة الكلاسيكية والأساسية لتنفيذ خوارزمية K-Means، وتعرف أيضا بـ "Forgy's algorithm". و تعتمد على تحديث المراكز من خلال تعيين كل نقطة إلى أقرب مركز، ومن ثم تحديث مراكز الكتل بناء على متوسط النقاط المخصصة لكل مركز. عادة ما تكون أسرع في الحالات التي تكون فيها الأبعاد قليلة. بالنسبة لخوارزمية إلكان (Elkan's algorithm) تعتبر تحسينا لخوارزمية ليويد الكلاسيكية، وتستخدم حدودا ثلاثية لتقليل عدد الحسابات المطلوبة عند تعيين النقاط إلى المراكز، يمكن أن تكون أسرع في الحالات التي تحتوي على عدد كبير من الأبعاد أو عدد كبير من المجموعات. استخدام أي من الخوارزميتين يعتمد على طبيعة البيانات والأداء المطلوب. في معظم الحالات، خوارزمية ليويد تكون كافية وتعمل بكفاءة. إذا كانت البيانات تحتوي على عدد كبير من الأبعاد أو كانت هناك حاجة لتحسين الأداء، يمكن تجربة خوارزمية إلكان. 1 اقتباس
0 Ali Ahmed55 نشر 21 يونيو الكاتب أرسل تقرير نشر 21 يونيو شكرااا لحضراك وشكراا جدا ان حضرتك وضحت الفرق بين 'lloyd' و 'elkan جزاك الله لك خير اقتباس
السؤال
Ali Ahmed55
السلام عليكم
ده البيانات المستخدما
وده الكود
Customer.csv
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.