Meezo ML نشر 14 يونيو 2021 أرسل تقرير نشر 14 يونيو 2021 (معدل) كيف نقوم بحفظ ال Model في مكتبة Sklearn بعد أن ننتهي من تدريبه؟ وكيف نعيد تحميله؟ تم التعديل في 14 يونيو 2021 بواسطة Meezo ML اقتباس
1 Ali Haidar Ahmad نشر 14 يونيو 2021 أرسل تقرير نشر 14 يونيو 2021 (معدل) يمكنك ذلك عبر الموديول: externals.joblib للحفظ نستخدم التابع التالي: dump(model_name, 'path') لإعادةالتحميل: load('path') مثال: #استيراد المكتبات import numpy as np from sklearn.linear_model import LogisticRegression from sklearn.naive_bayes import GaussianNB from sklearn.ensemble import RandomForestClassifier, VotingClassifier from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split #تحميل البيانات data = load_breast_cancer().data labels = load_breast_cancer().target # تقسيم البيانات X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.2, random_state=2021, shuffle =True) c1 = LogisticRegression(multi_class='multinomial', random_state=1) c2 = RandomForestClassifier(n_estimators=50, random_state=1) c3 = GaussianNB() ec1 = VotingClassifier(estimators=[ ('lr', c1), ('rf', c2), ('gnb', c3)], voting='hard') ec1 = ec1.fit(X_train, y_train) print(ec1.score(X_test,y_test))#0.9385964912280702 # نستدعي الكلاس import sklearn.externals.joblib as savemodel savemodel.dump(ec1 , 'model.sav') # نستخدم التابع التالي لعملية الحفظ # لإعادة تحميله loading = savemodel.load('model.sav') تم التعديل في 14 يونيو 2021 بواسطة Ali Haidar Ahmad 2 اقتباس
1 ريم المهدي نشر 15 يونيو 2021 أرسل تقرير نشر 15 يونيو 2021 يمكنك أيضاً، @Meezo ML، حفظ النموذج بعد تدريبه على البيانات بإستخدام عملية pickling والتي تحول اي Object في بايثون إلى مجموعة من الBytes المهيكلة، لاحقاً يتم تحويل هذه البيانات المخزنة في شكل Bytes إلى نموذج مرة أخرى. عملية حفظ النموذج model تتم كالتالي: filename = 'model.sav' pickle.dump(model, open(filename, 'wb')) حيث ان model في البرنامج السابق يرمز للنموذج المدرب، و الدالة dump هي المسؤولة عن تحويل النموذج الى شكل بيانات قابلة للتخزين و هي تأخذ 3 قيم، الأولى النموذج المراد حفظه (أو اي Object اخر في بايثون)، ثم إسم الملف الذي تريد التخزين فيه (بالإضافة للمسار إن كنت تريد حفظه في مجلد غير المجلد الذي تطبق فيه البرنامج)، متبوعاً بطريقة الكتابة في الملف وهي في هذه الحالة wb وهي إختصار ل write binary والتي تعني فتح الملف و الكتابة فيه بBytes. اقتباس ملاحظة: الملف المحفوظ يحتوي على إمتداد يسمى بsav وهي من الإمتدادات المشهورة لحفظ الملفات، و هو مصمم لحفظ البيانات الإحصائية في SPSS. لا تنسى أن تقوم بعملية تحميل مكتبة pickle في البداية كالتالي: import pickle و الان لنقوم بعملية تحميل النموذج مرة أخرى يمكننا ذلك بإستخدام دالة load المتوفرة في مكتبة pickle أيضاً كالتالي: loaded_model = pickle.load(open(filename, 'rb')) لقد قمنا بإستخدام طريقة rb لقراءة الملف المحفوظ و هي إختصار ل read bytes. بذلك يكون النموذج تم تحميله في ال Object المسمى ب loaded_model، يمكننا إستخدام loaded_model في اي عمليات تقييم أخرى قد نحتاجها. 1 اقتباس
السؤال
Meezo ML
كيف نقوم بحفظ ال Model في مكتبة Sklearn بعد أن ننتهي من تدريبه؟ وكيف نعيد تحميله؟
تم التعديل في بواسطة Meezo ML2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.