লজিস্টিকআগ্রেশনসিভিতে অ-রূপান্তর কীভাবে ঠিক করবেন


13

আমি ডেটা সেট (7000 নরমালাইজড পর্যবেক্ষণ সহ প্রায় 14 টি প্যারামিটার) ক্রসওয়েডিয়েশন সহ লজিস্টিক রিগ্রেশন করতে সাইকিট-লার্ন ব্যবহার করছি। আমার কাছে একটি টার্গেট ক্লাসিফায়ারও রয়েছে যার মান 1 বা 0 হয়।

আমার সমস্যাটি হ'ল সলভারটি নির্বিশেষে, আমি কনভার্জেন্স সতর্কতা পেয়ে যাচ্ছি ...

model1 = linear_model.LogisticRegressionCV(cv=10,verbose=1,n_jobs=-1,scoring='roc_auc',solver='newton-cg',penalty='l2')

/home/b/anaconda/lib/python2.7/site-packages/scipy/optimize/linesearch.py:285: LineSearchWarning: The line search algorithm did not converge
  warn('The line search algorithm did not converge', LineSearchWarning)
/home/b/anaconda/lib/python2.7/site-packages/sklearn/utils/optimize.py:193: UserWarning: Line Search failed


model2 = linear_model.LogisticRegressionCV(cv=10,verbose=1,n_jobs=-1,scoring='roc_auc',solver='sag',penalty='l2')

max_iter reached after 2 seconds
max_iter reached after 2 seconds
max_iter reached after 2 seconds
max_iter reached after 2 seconds
max_iter reached after 2 seconds
max_iter reached after 2 seconds
max_iter reached after 2 second

model3 = linear_model.LogisticRegressionCV(cv=10,verbose=1,n_jobs=-1,scoring='roc_auc',solver='lbfgs',penalty='l2')

/home/b/anaconda/lib/python2.7/site-packages/sklearn/linear_model/logistic.py:701: UserWarning: lbfgs failed to converge. Increase the number of iterations.
  warnings.warn("lbfgs failed to converge. Increase the number "

model4 = linear_model.LogisticRegressionCV(cv=10,verbose=1,n_jobs=-1,scoring='roc_auc',solver='liblinear',penalty='l2')

    cg reaches trust region boundary
iter 18 act 1.382e+06 pre 1.213e+06 delta 1.860e+01 f 7.500e+06 |g| 1.696e+06 CG   8
iter  2 act 1.891e+06 pre 1.553e+06 delta 1.060e-01 f 1.397e+07 |g| 1.208e+08 CG   4
iter  4 act 2.757e+04 pre 2.618e+04 delta 1.063e-01 f 1.177e+07 |g| 2.354e+07 CG   4
iter 18 act 1.659e+04 pre 1.597e+04 delta 1.506e+01 f 7.205e+06 |g| 4.078e+06 CG   4
cg reaches trust region boundary
iter  7 act 1.117e+05 pre 1.090e+05 delta 4.146e-01 f 1.161e+07 |g| 9.522e+05 CG   4
iter 31 act 1.748e+03 pre 1.813e+03 delta 2.423e+01 f 6.228e+05 |g| 5.657e+03 CG  14

সতর্কতা পাওয়া বন্ধ করতে আমার কী করা দরকার?


আমি অবাক হই যদি এটি নিখুঁত বা কাছের পৃথকীকরণের ক্ষেত্রে হয়
সাইকোরাক্স

উত্তর:


13

max_iterপরামিতি বাড়ানোর জন্য প্রোগ্রামের পরামর্শ প্রয়োগ করে আপনি শুরু করতে পারেন ; তবে মনে রাখবেন যে এটি সম্ভবত আপনার ডেটা কোনও লজিস্টিক মডেল দ্বারা ফিট করা যায় না।


2
আমি 4000 অবধি ম্যাক্স_আরটি টুকরো টুকরো করে ফেলেছিলাম, তবে এটি কৌশলটি করেছে। ধন্যবাদ!
ব্যবহারকারী3188040

@ user3188040 আপনাকে চালাতে কতক্ষণ সময় নিয়েছে?
ডেভ লিউ

আমি বিজ্ঞানে মোটামুটি নতুন আমি কীভাবে ম্যাক্স_আরটি (ম্যাক্সিমিটার?) থেকে 4000 "টোল" করব?
রন জেনসেন - আমরা সকলেই

লজিস্টিকআগ্রেশন অবজেক্ট তৈরি করার সময় আপনি সর্বাধিক মান পরিবর্তন করতে পারেন। model1 = linear_model.LogisticRegressionCV (max_iter = 4000)
psychonomics
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.