ক্রস বৈধকরণ, শেখার বক্ররেখা এবং চূড়ান্ত মূল্যায়নের জন্য ডেটাसेटকে কীভাবে ভাগ করবেন?


69

ডেটাসেট বিভক্ত করার জন্য উপযুক্ত কৌশল কী?

আমি নিম্নলিখিত পদ্ধতির উপর প্রতিক্রিয়া জন্য অনুরোধ (যেমন পৃথক পরামিতি না test_sizeবা n_iter, কিন্তু যদি আমি ব্যবহৃত X, y, X_train, y_train, X_test, এবং y_testউপযুক্তভাবে এবং ক্রম ইন্দ্রিয় তোলে থাকেন):

( এই উদাহরণটি সাইকিট-লার্ন ডকুমেন্টেশন থেকে বাড়ানো )

1. ডেটাसेट লোড করুন

from sklearn.datasets import load_digits
digits = load_digits()
X, y = digits.data, digits.target

2. প্রশিক্ষণ এবং পরীক্ষার সেটে বিভক্ত করুন (উদাহরণস্বরূপ, 80/20)

from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)

৩. অনুমানকারী চয়ন করুন

from sklearn.svm import SVC
estimator = SVC(kernel='linear')

4. ক্রস-বৈধতা পুনরুদ্ধারকারী চয়ন করুন

from sklearn.cross_validation import ShuffleSplit
cv = ShuffleSplit(X_train.shape[0], n_iter=10, test_size=0.2, random_state=0)

৫. হাইপারপ্রেটারি টিউন করুন

প্রশিক্ষণ সেটে ক্রস-বৈধতা পুনরুদ্ধারকারী প্রয়োগ করা

from sklearn.grid_search import GridSearchCV
import numpy as np
gammas = np.logspace(-6, -1, 10)
classifier = GridSearchCV(estimator=estimator, cv=cv, param_grid=dict(gamma=gammas))
classifier.fit(X_train, y_train)

6. শেখার বক্ররেখার সাথে ডিবাগ অ্যালগরিদম

X_trainএলোমেলোভাবে একটি প্রশিক্ষণ এবং একটি পরীক্ষায় 10 বার ( n_iter=10) বিভক্ত হয় । প্রশিক্ষণ-স্কোর বক্ররেখা প্রতিটি বিন্দু 10 স্কোর যেখানে মডেল প্রশিক্ষণ ও প্রথম মূল্যায়ন ছিল গড় আমি প্রশিক্ষণ উদাহরণ। ক্রস-বৈধতা স্কোর বক্ররেখার প্রতিটি পয়েন্ট হল 10 স্কোরের গড় যেখানে মডেলটি প্রথম i প্রশিক্ষণ উদাহরণগুলিতে প্রশিক্ষিত হয়েছিল এবং পরীক্ষার সেটটির সমস্ত উদাহরণের উপর মূল্যায়ন করেছিল।

from sklearn.learning_curve import learning_curve
title = 'Learning Curves (SVM, linear kernel, $\gamma=%.6f$)' %classifier.best_estimator_.gamma
estimator = SVC(kernel='linear', gamma=classifier.best_estimator_.gamma)
plot_learning_curve(estimator, title, X_train, y_train, cv=cv)
plt.show()

শেখার বক্ররেখা

প্লট_ইলর্নিং_কুর্ভ () সাইকিট-লার (0.15-গিট) এর বর্তমান দেব সংস্করণে পাওয়া যাবে।

The. পরীক্ষার সেটটিতে চূড়ান্ত মূল্যায়ন

classifier.score(X_test, y_test)

7a। নেস্টেড ক্রস-বৈধকরণ (পুরো ডেটাসেট ব্যবহার করে) দিয়ে মডেল নির্বাচনের ওভার-ফিটিং পরীক্ষা করুন

from sklearn.cross_validation import cross_val_score
cross_val_score(classifier, X, y)

অতিরিক্ত প্রশ্ন: নেস্টেড ক্রস-বৈধতা দ্বারা 7 ধাপটি প্রতিস্থাপন করা কি বোধগম্য? বা নেস্টেড সিভিকে step ম ধাপের পরিপূরক হিসাবে দেখা উচিত

(কোডটি সাইকিট-লার্নিতে কে-ফোল্ড ক্রস বৈধকরণের সাথে কাজ করছে বলে মনে হচ্ছে, তবে এলোমেলো ও বিভক্তির সাথে নয় So তাই cvকোডটি কাজ করার জন্য উপরে পরিবর্তন করা দরকার)

8. পুরো ডেটাসেটে ট্রেনের চূড়ান্ত মডেল

classifier.fit(X, y)

সম্পাদনা: আমি এখন সিবেলাইটদের সাথে একমত হই যে 7a পদক্ষেপটি এই ক্রমটিতে খুব বেশি বোঝা যায় না। সুতরাং আমি এটি গ্রহণ করব না।


আপনি কোন নির্ভুলতার স্কোরিং নিয়মটি ব্যবহার করছেন? যদি এটি শ্রেণিবদ্ধকরণের নির্ভুলতা হয় তবে এই ধরণের অনুচিত স্কোরিং নিয়ম আপনি যে কাজটিতে গিয়েছেন তার অনেকটাই পূর্বাবস্থায় ফিরে আসবে।
ফ্র্যাঙ্ক হ্যারেল

আমি ডিফল্ট ব্যবহার করেছি যা প্রকৃতপক্ষে শ্রেণিবদ্ধকরণের নির্ভুলতা। আমি জানি যে, এফ 1 আরও উপযুক্ত হবে। তবে এখানে আমি কেবল আগ্রহী যদি স্প্লিটগুলি ঠিকঠাক ব্যবহার করা হয়।
টবিপ করুন

3
আমি প্রায় নিশ্চিত যে F1 পুরানো ধারণার একটি নতুন নাম। আমি মনে করি পুরানো জিনিসগুলির জন্য নতুন নাম উদ্ভাবন করা প্রতিরোধমূলক। আরও গুরুত্বপূর্ণ বিষয়, এটি একটি ভুল স্কোরিং নিয়ম যা ভুল বৈশিষ্ট্যগুলি নির্বাচন করার পাশাপাশি পুরো প্রক্রিয়াটিতে একটি ভাল ডাবল শব্দ যোগ করার ফলাফল তৈরি করে।
ফ্র্যাঙ্ক হ্যারেল

3
... যে কোনও ক্ষেত্রে এফ 1 নির্ভুলতার সমস্যাগুলি ভাগ করে @ ফ্র্যাঙ্কহারেল এর প্রতি ইঙ্গিত দেয়: কঠোর শ্রেণিবদ্ধকরণের পরীক্ষার কেসগুলির ভগ্নাংশ গণনা থেকে এই স্টেম। ফ্র্যাঙ্কের যথাযথ স্কোরিং নিয়মের একটি পেতে আপনার এসভিএমের সম্ভাব্য আউটপুটটিতে স্যুইচ করতে হবে এবং তারপরে যথাযথতার পরিবর্তে বেরিয়ারের স্কোর (মানে স্কোয়ার ত্রুটি) ব্যবহার করুন। আমার ধারণা আপনি এফ 1 এর এমএসই-টাইপ সংস্করণও পেতে পারেন। টিউনিং পদক্ষেপের জন্য এই জাতীয় ব্যবস্থাগুলি অবশ্যই আরও ভাল হওয়া উচিত। চূড়ান্ত পারফরম্যান্সটি যোগাযোগের জন্য আপনার সম্প্রদায়ের জন্য পারফরম্যান্স প্রকাশের সাধারণ উপায়গুলি (যেমন যথার্থতা, এফ 1) প্রয়োজন হতে পারে।
cbeleites

1
@ টা.ফুট: আপনার দৃষ্টিভঙ্গিটি ভুল কিনা বা আপনি কী ভুল বিবেচনা করছেন তার উপর নির্ভর করে: আপনি যদি হাস্যকরভাবে স্বতন্ত্র সংখ্যক স্বতন্ত্র মামলা না করেন তবে অনুপাতের গ্রিড অনুসন্ধানে স্কিমিং বৈচিত্রের মারাত্মক ঝুঁকি থাকে। সুতরাং, অনেক পরিস্থিতিতে দাবি করা হয়েছে যে গ্রিড অনুসন্ধানটি সর্বোত্তম মডেল প্রদান করে তা ভুল। তবে, আপনি যদি সঠিকভাবে নেস্টেড বৈধতা করেন তবে বাহ্যিক বৈধতা নির্বাচিত "অনুকূল" মডেলের কর্মক্ষমতাটির একটি সৎ মাপ দেয়। সুতরাং এটি ভুল নয়। আপনার গ্রিড অনুসন্ধানটি অনুকূল মডেলটি পেয়েছে তার কোনও গ্যারান্টি নেই। সাহিত্যের হিসাবে, আমি আমার উত্তর আপডেট করব।
cbeleites

উত্তর:


41

আমি নিশ্চিত না যে আপনি পদক্ষেপ 7 এ করতে চান। যেহেতু আমি এখনই এটি বুঝতে পেরেছি তা আমার কাছে বোধগম্য নয়।

আমি এখানে আপনার বিবরণটি কীভাবে বুঝতে পারি তা: ধাপে, আপনি হোল্ড আউট পারফরম্যান্সের সাথে তুলনা করতে চান ক্রস বৈধকরণ আলিঙ্গনকারী পদক্ষেপ 4 - 6. (তাই হ্যাঁ, এটি একটি নেস্টেড সেটআপ হবে)।

আমি কেন এই তুলনাটি বেশি অর্থবোধ করি না বলে মূল বিষয়গুলি:

  • এই তুলনাটি বাস্তবে আমার মুখোমুখি হওয়া ওভারপোটিমস্টিক বৈধতা ফলাফলগুলির প্রধান দুটি উত্স সনাক্ত করতে পারে না:

    • প্রশিক্ষণ এবং পরীক্ষার ডেটাগুলির মধ্যে ডেটা লিক (নির্ভরতা) যা হায়ারার্কিকাল (ওরফে ক্লাস্টারড) ডেটা স্ট্রাকচারের কারণে ঘটে এবং যা বিভাজন হিসাবে গণ্য হয় না। আমার ক্ষেত্রে, আমরা একই পরীক্ষার জৈবিক প্রতিরূপের একাধিক (কখনও কখনও কয়েক হাজার) পঠন (ডেটা ম্যাট্রিক্সে সারি) করি। এগুলি স্বতন্ত্র নয়, তাই রোগীর স্তরে বৈধতা বিভাজন করা দরকার। যাইহোক, এই জাতীয় ডেটা ফাঁস হয়, আপনার হোল্ড আউট সেটটির জন্য বিভক্তকরণ এবং ক্রস বৈধকরণ বিভাজনে উভয়ই এটি থাকবে। হোল্ড-আউট ওয়েল্ড ক্রস বৈধতার মতো ঠিক আশাবাদী পক্ষপাতদুষ্ট হবে।

    • পুরো ডেটা ম্যাট্রিক্সে করা ডেটার প্রাক প্রসেসিং, যেখানে প্রতিটি সারির জন্য গণনাগুলি স্বতন্ত্র নয় তবে অনেকগুলি / সমস্ত সারি প্রাক-প্রসেসিংয়ের জন্য পরামিতি গণনা করতে ব্যবহৃত হয়। সাধারণ উদাহরণগুলি হ'ল "প্রকৃত" শ্রেণিবিন্যাসের আগে পিসিএ প্রক্ষেপণ।
      আবার এটি আপনার হোল্ড-আউট এবং বাইরের ক্রস বৈধকরণ উভয়কেই প্রভাবিত করবে, তাই আপনি এটি সনাক্ত করতে পারবেন না।

    আমি যে ডেটা নিয়ে কাজ করি তার জন্য, উভয় ত্রুটি সহজেই ভুল বিভক্তির ভগ্নাংশকে মাত্রার ক্রম দ্বারা কম করা যায় না!

  • যদি আপনি পরীক্ষার কেসগুলির প্রকারের পারফরম্যান্সের এই গণনা ভগ্নাংশের মধ্যে সীমাবদ্ধ থাকেন তবে মডেল তুলনাগুলি হয় সত্যিকারের পারফরম্যান্সে অত্যন্ত বড় সংখ্যক পরীক্ষার কেস বা হাস্যকরভাবে বড় পার্থক্যগুলির প্রয়োজন। সীমাহীন প্রশিক্ষণ ডেটার সাথে 2 শ্রেণিবদ্ধের তুলনা করা আরও পড়ার জন্য ভাল শুরু হতে পারে।

তবে, "অনুকূল" মডেলটির জন্য অভ্যন্তরীণ ক্রস বৈধতা দাবির সাথে মডেল মানের তুলনা করা এবং বাইরের ক্রস বৈধকরণ বা বৈধতা ধরে রাখা কোনও অর্থবোধ করে: যদি তাত্পর্যটি বেশি হয়, তবে আপনার গ্রিড অনুসন্ধান অপ্টিমাইজেশন কাজ করেছে কিনা তা সন্দেহজনক ( কর্মক্ষমতা পরিমাপের উচ্চতর পরিবর্তনের কারণে স্কিমযুক্ত ভেরিয়েন্স)। এই তুলনাটি আরও সহজ যে আপনি যদি সমস্যাটির মুখোমুখি হতে পারেন তবে যদি আপনার অভ্যন্তরীণ অনুমানটি অন্যের তুলনায় হাস্যকরভাবে ভাল হয় - যদি তা না হয় তবে আপনার অপটিমাইজেশন সম্পর্কে আপনার এতটা চিন্তা করার দরকার নেই। তবে যে কোনও ক্ষেত্রে, পারফরম্যান্সটির আপনার বাহ্যিক (7) পরিমাপ যদি সৎ এবং দৃ sound় হয় তবে আপনার পক্ষে কমপক্ষে প্রাপ্ত মডেলটির একটি কার্যকর অনুমান আছে, এটি সর্বোত্তম কিনা or

আইএমএইচও শেখার বক্ররেখা পরিমাপ করা এখনও অন্যরকম সমস্যা। আমি সম্ভবত আলাদাভাবে যে সাথে মোকাবিলা চাই, এবং আমি আপনাকে আরো পরিষ্কারভাবে কি শেখার বক্ররেখা প্রয়োজন জন্য (আপনার জন্য লার্নিং কার্ভ প্রয়োজন সংজ্ঞায়িত করতে প্রয়োজন মনে একটি প্রদত্ত সমস্যা, তথ্য ডেটা সেট, এবং শ্রেণীবিন্যাস পদ্ধতি বা লার্নিং কার্ভ জন্য এই দেওয়া সমস্যা, ডেটা, এবং শ্রেণীবিন্যাস mehtod) এর ডেটা সেট, এবং আরো সিদ্ধান্ত একটি গুচ্ছ (যেমন সব আবার প্রশিক্ষণ নমুনা আকার ফাংশন হিসাবে মডেল জটিলতা মোকাবেলা করার কীভাবে? অপ্টিমিজ, স্থায়ী hyperparameters ব্যবহার করেন, সিদ্ধান্ত প্রশিক্ষণের সেট আকারের উপর নির্ভর করে হাইপারপ্যারামিটারগুলি ঠিক করার ফাংশন?)

(শিক্ষার বক্ররেখার পরিমাপটি অনুশীলনে ব্যবহারের জন্য যথাযথভাবে সুনির্দিষ্টভাবে পাওয়ার জন্য আমার ডেটাতে সাধারণত কয়েকটি স্বতন্ত্র কেস থাকে - তবে আপনার 1200 সারি আসলে স্বাধীন হলে আপনি আরও ভাল হতে পারেন)


আপডেট: বিজ্ঞানী-শিখার উদাহরণটির সাথে "ভুল" কী?

প্রথমত, নেস্টেড ক্রস বৈধকরণ এখানে কিছুই ভুল। ডেটা-চালিত অপ্টিমাইজেশনের জন্য নেস্টেড বৈধতা অত্যন্ত গুরুত্ব দেয় এবং ক্রস বৈধকরণ খুব শক্তিশালী পদ্ধতির (বিশেষত যদি পুনরাবৃত্তি / পুনরাবৃত্তি হয়)।

তারপরে, কিছুতেই ভুল আছে কিনা তা আপনার দৃষ্টিভঙ্গির উপর নির্ভর করে: আপনি যতক্ষণ না সৎ নেস্টেড বৈধতা (বাইরের পরীক্ষার ডেটাটি কঠোরভাবে স্বতন্ত্র রেখেছেন) করেন, ততক্ষণ বাহ্যিক বৈধতা "অনুকূল" মডেলের কর্মক্ষমতাটির সঠিক পরিমাপ। কিছুতেই ভুল হয়নি।

তবে এসভিএমের হাইপারপ্যারামিটার টিউনিংয়ের জন্য এই অনুপাত-প্রকারের কর্মক্ষমতা ব্যবস্থাগুলির গ্রিড অনুসন্ধানের সাথে বেশ কয়েকটি জিনিস ভুল করতে পারে এবং করতে পারে। মূলত তাদের অর্থ হল যে আপনি (সম্ভবত?) অপ্টিমাইজেশানের উপর নির্ভর করতে পারেন না। তবুও, যতক্ষণ না আপনার বাহ্যিক বিভাজনটি যথাযথভাবে করা হয়েছিল, এমনকি যদি মডেলটি সবচেয়ে ভাল সম্ভব না হয় তবে আপনি যে মডেলটি পেয়েছিলেন তার কার্যকারিতা সম্পর্কে একটি সৎ অনুমান আছে।

অপ্টিমাইজেশন কেন সমস্যায় পড়তে পারে সে সম্পর্কে আমি স্বজ্ঞাত ব্যাখ্যা দেওয়ার চেষ্টা করব:

  • গাণিতিকভাবে / statisticaly ভাষী, অনুপাত সঙ্গে সমস্যা মাপা অনুপাত যে সসীম পরীক্ষা নমুনা আকারের কারণে বিপুল ভ্যারিয়েন্স সাপেক্ষে (মডেল, সত্য কর্মক্ষমতার উপর এছাড়াও নির্ভর :) এনপিভিএকটি( পি )=P(1-পি)p^np
    Var(p^)=p(1p)n

    রিক্যাল, স্পষ্টতা (মেশিন লার্নিং পারফরমেন্স ইন্দ্রিয়) অনুমান করার জন্য প্রয়োজনীয় সংক্ষিপ্ততা (পক্ষপাত / বৈষম্য বোধ) অর্জন করার জন্য আপনার হাস্যকরভাবে প্রচুর পরিমাণে মামলার (কমপক্ষে আমি সাধারণত থাকতে পারি এমন মামলার সংখ্যার তুলনায়) প্রয়োজন। আপনি অবশ্যই এই জাতীয় অনুপাত থেকে গণনা করা অনুপাতের ক্ষেত্রে অবশ্যই এটি প্রযোজ্য। দ্বিপদী অনুপাতের জন্য আস্থার ব্যবধানগুলি একবার দেখুন। তারা হতবাকভাবে বড়! হাইপারপ্যারামিটার গ্রিডের সাথে পারফরম্যান্সের সত্যিকারের উন্নতির চেয়ে প্রায়শই বড়। এবং পরিসংখ্যানগতভাবে বলতে গেলে, গ্রিড অনুসন্ধান একটি বৃহত্তর একাধিক তুলনার সমস্যা: আপনি যে গ্রিডের মূল্যায়ন করবেন তার আরও বেশি পয়েন্টগুলি হাইপারপ্যারামিটারগুলির এমন কিছু সংমিশ্রণ সন্ধান করার ঝুঁকি তত বেশি হবে যা ট্রেন / পরীক্ষার বিভাজনের জন্য আপনি দুর্ঘটনাক্রমে খুব ভাল দেখায় you স্কিমিং ভেরিয়েন্সের সাথে এটিই আমার অর্থ।

  • স্বজ্ঞাতভাবে, হাইপারপ্যারামিটারের একটি কাল্পনিক পরিবর্তন বিবেচনা করুন, এটি ধীরে ধীরে মডেলটির অবনতি ঘটায়: একটি পরীক্ষার কেস সিদ্ধান্তের সীমানার দিকে এগিয়ে যায়। 'হার্ড' অনুপাত কর্মক্ষমতা ব্যবস্থাগুলি সীমানা অতিক্রম না করে এবং ভুল দিকে না আসা পর্যন্ত এটি সনাক্ত করে না। তারপরে, তারা হাইপারপ্যারামিটারে অসীম ক্ষুদ্র পরিবর্তনের জন্য অবিলম্বে একটি সম্পূর্ণ ত্রুটি নির্ধারণ করে।
    সংখ্যাগত অপ্টিমাইজেশন করার জন্য, ভাল আচরণ করার জন্য আপনার পারফরম্যান্সের পরিমাপের প্রয়োজন। এর অর্থ: অনুপাত-প্রকারের পারফরম্যান্স পরিমাপের ঝাঁপিয়ে পড়া (ক্রমাগতভাবে পৃথক পৃথক নয়) বা সেই ঝাঁপ ব্যতীত যে ঘটনাচক্রে পরিবর্তনগুলি সনাক্ত করা যায় নি তা অপ্টিমাইজেশনের জন্য উপযুক্ত নয়।
    যথাযথ স্কোরিং নিয়মগুলি এমনভাবে সংজ্ঞায়িত করা হয় যা বিশেষত অপ্টিমাইজেশনের জন্য উপযুক্ত। যখন প্রতিটি ক্ষেত্রে প্রশ্নযুক্ত শ্রেণীর অন্তর্গত হওয়ার ক্ষেত্রে পূর্বাভাসযুক্ত সম্ভাবনাগুলি সত্য সম্ভাবনার সাথে মেলে তখন তাদের বৈশ্বিক সর্বাধিক থাকে।

  • এসভিএমগুলির জন্য আপনার অতিরিক্ত সমস্যা রয়েছে যা কেবলমাত্র পারফরম্যান্সের ব্যবস্থা না করে মডেলটিও এই ঝাঁকুনির ফ্যাশনে প্রতিক্রিয়া দেখায়: হাইপারপ্যারামিটারের ছোট ছোট পরিবর্তনগুলি কোনও কিছুই বদলাবে না। মডেলটি তখনই পরিবর্তিত হয় যখন হাইপারপ্যারামিটারগুলি পর্যাপ্ত পরিবর্তন হয় যার ফলে কিছু ক্ষেত্রে হয় সাপোর্ট ভেক্টর হওয়া বন্ধ করা বা সমর্থন ভেক্টর হয়ে উঠতে পারে। আবার, এই জাতীয় মডেলগুলি অনুকূল করা শক্ত।

সাহিত্য:


আপডেট দ্বিতীয়: স্কিমিং বৈকল্পিক

মডেল তুলনার ক্ষেত্রে আপনি কী সামর্থ্যবান তা অবশ্যই স্বতন্ত্র মামলার সংখ্যার উপর নির্ভর করে। আসুন এখানে স্কিমিং বৈচিত্রের ঝুঁকি সম্পর্কে কিছু দ্রুত এবং নোংরা সিমুলেশন তৈরি করি:

scikit.learnতাদের কাছে আছে 1797 digitsতথ্য আছে।

  • ধরুন যে 100 টি মডেল তুলনা করা হয়েছে, যেমন 2 পরামিতিগুলির জন্য গ্রিড।10×10
  • ধরে নিন যে উভয় প্যারামিটার (রেঞ্জ) মডেলগুলিকে মোটেই প্রভাবিত করে না,
  • অর্থাত্, সমস্ত মডেলের একই ধরণের পারফরম্যান্স রয়েছে, বলুন, 97% ( digitsডেটা সেটের জন্য আদর্শ পারফরম্যান্স )।

  • ডেটা সেটে নমুনা আকার = 1797 সারি সহ "এই মডেলগুলি পরীক্ষা করার" জন্য সিমুলেশনগুলি চালান104digits

    p.true = 0.97 # hypothetical true performance for all models
    n.models = 100 # 10 x 10 grid
    
    n.rows = 1797 # rows in scikit digits data
    
    sim.test <- replicate (expr= rbinom (n= nmodels, size= n.rows, prob= p.true), 
                           n = 1e4)
    sim.test <- colMaxs (sim.test) # take best model
    
    hist (sim.test / n.rows, 
          breaks = (round (p.true * n.rows) : n.rows) / n.rows + 1 / 2 / n.rows, 
          col = "black", main = 'Distribution max. observed performance',
          xlab = "max. observed performance", ylab = "n runs")
    abline (v = p.outer, col = "red")
    

এখানে সেরা পর্যবেক্ষণের জন্য বিতরণ করা হয়েছে:

স্কিমিং ভেরিয়েন্স সিমুলেশন

লাল রেখাটি আমাদের সমস্ত কাল্পনিক মডেলের সত্যিকারের পারফরম্যান্স চিহ্নিত করে। গড়ে তুলতে, আমরা তুলনামূলকভাবে 100 টি মডেলগুলির মধ্যে আপাতদৃষ্টিতে সেরাটির সঠিক ত্রুটি হারের মাত্র 2/3 পর্যবেক্ষণ করি (সিমুলেশনটির জন্য আমরা জানি যে তারা সবাই 97% সঠিক ভবিষ্যদ্বাণী নিয়ে সমানভাবে সম্পাদন করে)।

এই সিমুলেশনটি স্পষ্টতই খুব সরলীকৃত:

  • মডেল অস্থিরতার কারণে পরীক্ষার নমুনা আকারের বৈকল্পিকতা ছাড়াও কমপক্ষে বৈকল্পিক রয়েছে, তাই আমরা এখানে বৈকল্পকে কম করে দেখছি
  • মডেল জটিলতায় প্রভাবিত করে ট্যুনিং প্যারামিটারগুলি সাধারণত পরামিতি সেটগুলি কভার করবে যেখানে মডেলগুলি অস্থির এবং এইভাবে উচ্চতর বৈকল্পিকতা রয়েছে।
  • উদাহরণ থেকে ইউসিআই ডিজিটের জন্য, মূল ডেটা বেসে সিএ রয়েছে। 11 জন সংখ্যা 44 জন লিখেছেন। যিনি লিখেছেন তার মতে যদি ডাটা ক্লাস্টার করা হয়? (অর্থাত্‍ যদি কেউ জানেন যে কোনও ব্যক্তি কীভাবে লিখেছেন, বলুন, কীভাবে 3 লিখেছেন তবে 8 দ্বারা চিহ্নিত করা আরও সহজ?) কার্যকর নমুনার আকারটি তখন 44 এর চেয়ে কম হতে পারে।
  • টিউনিং মডেল হাইপারপ্যারামিটারগুলি মডেলগুলির মধ্যে পারস্পরিক সম্পর্ক স্থাপন করতে পারে (আসলে এটি একটি সংখ্যাসূচক অপ্টিমাইজেশনের দৃষ্টিকোণ থেকে ভাল আচরণ হিসাবে বিবেচিত হবে)। এর প্রভাব সম্পর্কে ভবিষ্যদ্বাণী করা কঠিন (এবং আমি সন্দেহ করি যে প্রকৃত শ্রেণিবদ্ধের বিষয়টি বিবেচনা না করে এটি অসম্ভব)।

তবে সাধারণভাবে, স্বতন্ত্র পরীক্ষার ক্ষেত্রে কম সংখ্যক এবং তুলনামূলকভাবে বেশি সংখ্যক মডেল উভয়ই পক্ষপাত বাড়িয়ে তোলে। এছাড়াও, কাওলি এবং টালবোট কাগজ অনুভূতিপূর্ণ পর্যবেক্ষণ আচরণ দেয়।


@ ক্লেবাইটস: যদি গ্রিড অনুসন্ধানটি সর্বোত্তম মডেলটি সন্ধানের জন্য উপযুক্ত পদ্ধতি নাও হতে পারে তবে আমার তখন কোন পদ্ধতিটি বেছে নেওয়া উচিত?

1
@ টা.ফুট: দুটি পন্থা ক) মডেলিংয়ের তুলনায় আপনার মডেলগুলির সংখ্যা তাত্পর্যপূর্ণভাবে হ্রাস করতে আপনার অ্যাপ্লিকেশন এবং ডেটা সম্পর্কে যতটা বাহ্যিক জ্ঞান অন্তর্ভুক্ত করা উচিত (= অনুকূলিতকরণের পরিবর্তে হাইপারপ্যারামিটারগুলি স্থির করুন)। অভ্যন্তরীণ অর্থপূর্ণ হাইপারপ্যারামিটার সহ এমন একটি শ্রেণিবদ্ধে পরিবর্তন করা সামগ্রিকভাবে ভাল হতে পারে, যেখানে আপনি অ্যাপ্লিকেশন এবং ডেটা টাইপ থেকে হাইপারপ্যারামিটারটি (প্রায়) কী হওয়া উচিত তা জানতে পারবেন। খ) যথাযথ স্কোরিং নিয়মের সাহায্যে অবশিষ্ট কয়েকটি মডেলের তুলনা করুন। উদাহরণস্বরূপ, ব্যারিয়ার স্কোরের অনেক শ্রেণিবদ্ধের জন্য আরও ভাল ভেরিয়েন্স বৈশিষ্ট্য রয়েছে।
cbeleites

1
আপনি (সিদ্ধান্ত (ক) এর মাধ্যমে) একেবারে অনুকূলিত করতেও অস্বীকার করতে পারেন। যদি আপনি যথেষ্ট পরিমাণে শ্রেণিবদ্ধী হন এবং তর্ক করতে পারেন যে উপলভ্য নমুনার আকারের (অন্য উদাহরণস্বরূপ কিছু ডেমো ম্যাকনেমার গণনা করুন) অনুমানের তুলনায় প্রয়োজনীয় নমুনার আকারটি অনুমানের তুলনায় আরও ভাল মানের শ্রেণিবদ্ধের জন্য দেখুন - সেখানে রয়েছে হাস্যকর আকারে বৃহত্তর অনুমানমূলক উন্নতির জন্যও এটি হাস্যকরভাবে বড় হওয়ার ভাল সম্ভাবনা রয়েছে), আপনি যুক্তি দিতে পারেন যে অপ্টিমাইজেশনের কোনও অর্থ হয় না এবং কেবল মাত্রাতিরিক্ত চাপের ঝুঁকি তৈরি করে।
cbeleites

আমি "স্কিমিং ভেরিয়েন্স" নিয়ে আপনার সাথে একমত নই। হাইপারপ্যারামিটার অপ্টিমাইজেশনের জন্য গ্রিডে আপনার যদি প্রচুর পয়েন্ট থাকে তবে একটি পয়েন্ট সুবিধাজনকভাবে সিভির এক ভাগে ভাগ্যবান হতে পারে; তবে যদি আপনার কাছে থাকে তবে 10 গিগা সিভি বলুন, প্যারামিটারের একটি সেট দুর্ঘটনাক্রমে সিভির সমস্ত 10 ভাগে ভাগ্যবান হওয়ার সম্ভাবনা নেই।
আরএনএ

1
@ আরএনএ: সমস্ত ভাঁজগুলিতে "ভাগ্যবান" হওয়ার সম্ভাবনা সরাসরি মামলার সংখ্যার সাথে সংযুক্ত (সমস্ত 10 ভাগে) এবং সাধারণত এই সমস্ত ভাঁজগুলির মধ্যে কেবল গড় বিবেচনা করা হয়। আমি সেরা 100 টি মডেলের হাইপোপটিকাল পিকিংয়ের সিমুলেশন সহ উত্তরটি আপডেট করেছি (উদাহরণস্বরূপ, প্রতিটি 10 ​​টি পদক্ষেপের সাথে 2 হাইপারপ্যারামিটার), যা ইতিমধ্যে উদাহরণের দৃশ্যের জন্য যথেষ্ট পক্ষপাতের সাথে যুক্ত রয়েছে (ত্রুটির হার 1/3 দ্বারা খুব কম) । এখানে অনেক লোকের হাতে খুব কমই কয়েক হাজার স্বতন্ত্র মামলা রয়েছে - উদাহরণস্বরূপ আমার কাছে খুব কমই 44 জন ব্যক্তিও রয়েছেন যারা পুরো ইউসিআই অঙ্কের ডেটা সেট জন্য ডিজিট লিখেছিলেন।
cbeleites
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.