কোয়ান্টাইল মডেলিংয়ে মডেল পারফরম্যান্স


14

আমি কোয়ান্টাইল রিগ্রেশন (উদাহরণস্বরূপ gbmবা quantregআর এর মাধ্যমে ) ব্যবহার করছি - মিডিয়ানের দিকে মনোনিবেশ না করে পরিবর্তে একটি উচ্চতর কোয়ান্টাইল (উদাঃ 75 তম)। ভবিষ্যদ্বাণীপূর্ণ মডেলিংয়ের ব্যাকগ্রাউন্ড থেকে এসে আমি মডেলটি কতটা পরীক্ষার সেটটিতে ফিট করে তা কোনও ব্যবসায়ী ব্যবহারকারীকে বর্ণনা করতে সক্ষম হতে চাই measure আমার প্রশ্নটা কেমন? অবিচ্ছিন্ন লক্ষ্যমাত্রার সাথে একটি সাধারণ সেটিংয়ে আমি নিম্নলিখিতগুলি করতে পারি:

  • সামগ্রিক আরএমএসই গণনা করুন
  • পূর্বাভাসকৃত মান দ্বারা সেট করা ডেটা ডেস্কেল করুন এবং প্রতিটি ডেস্কলে পূর্বাভাস প্রাপ্ত গড়ের সাথে গড়ের তুলনা করুন।
  • প্রভৃতি

ভবিষ্যতে ভবিষ্যদ্বাণীটির তুলনা করার জন্য সত্যিকারের কোনও আসল মান (আমি কমপক্ষে ভাবি না) এই ক্ষেত্রে কী করা যায়?

এখানে একটি উদাহরণ কোড দেওয়া হয়েছে:

install.packages("quantreg")
library(quantreg)

install.packages("gbm")
library(gbm)

data("barro")

trainIndx<-sample(1:nrow(barro),size=round(nrow(barro)*0.7),replace=FALSE)
train<-barro[trainIndx,]
valid<-barro[-trainIndx,]

modGBM<-gbm(y.net~., # formula
            data=train, # dataset
            distribution=list(name="quantile",alpha=0.75), # see the help for other choices
            n.trees=5000, # number of trees
            shrinkage=0.005, # shrinkage or learning rate,
            # 0.001 to 0.1 usually work
            interaction.depth=5, # 1: additive model, 2: two-way interactions, etc.
            bag.fraction = 0.5, # subsampling fraction, 0.5 is probably best
            train.fraction = 0.5, # fraction of data for training,
            # first train.fraction*N used for training
            n.minobsinnode = 10, # minimum total weight needed in each node
            cv.folds = 5, # do 3-fold cross-validation
            keep.data=TRUE, # keep a copy of the dataset with the object
            verbose=TRUE) # don’t print out progress

best.iter<-gbm.perf(modGBM,method="cv")

pred<-predict(modGBM,valid,best.iter)

এখন কী - যেহেতু আমরা শর্তাধীন বিতরণের শতকরা পর্যবেক্ষণ করি না?

যোগ করুন

আমি বেশ কয়েকটি পদ্ধতি অনুমান করেছিলাম এবং আমি জানতে চাই যে সেগুলি সঠিক কিনা এবং আরও ভাল পদ্ধতি রয়েছে কিনা - এছাড়াও প্রথমটি কীভাবে ব্যাখ্যা করতে হবে:

  1. ক্ষতির ফাংশন থেকে গড় মান গণনা করুন:

    qregLoss<-function(actual, estimate,quantile)
    {
       (sum((actual-estimate)*(quantile-((actual-estimate)<0))))/length(actual)
    
    }
    

    কোয়ান্টাইল রিগ্রেশন এর জন্য এটি ক্ষতির ফাংশন - তবে আমরা মানটি কীভাবে ব্যাখ্যা করব?

  2. আমাদের কি আশা করা উচিত যে উদাহরণস্বরূপ আমরা যদি একটি পরীক্ষার সেটটিতে 75 তম পার্সেন্টাইল গণনা করি, তবে পূর্বাভাসকৃত মানটি 75% সময়ের প্রায় আসল মানের চেয়ে বেশি হওয়া উচিত?

মডেলটি আরও কতগুলি ভাল ক্ষেত্রে পূর্বাভাস দেয় তা বর্ণনা করার জন্য কি অন্য পদ্ধতিগুলি আনুষ্ঠানিক বা urতিহাসিক?


এই কাগজ 3 নং বিভাগ কার্যকর হতে পারে।
tchakravarty

@ ট্যাচক্রাবতী আমি মনে করি যে লিঙ্কটি মরে গেছে
অলেক্সপ্যাযেজে

উত্তর:


3

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


0

আমি পিনবল ক্ষতির ব্যবহার করব ( https://arxiv.org/pdf/1102.2101.pdf এর দ্বিতীয় পৃষ্ঠার শুরুতে সংজ্ঞায়িত ) ব্যবহার করব এবং উদাহরণস্বরূপ, আপনি যে মডেলিং করছেন তার কোয়ান্টাইলের জন্য গড় পরম ত্রুটি (এমএই) হিসাবে এটি ব্যাখ্যা করব , 100 এর ত্রুটির জন্য বলি: "আমাদের পরীক্ষার তথ্যগুলিতে আসল 75%-কোয়ান্টাইল সম্পর্কিত আমাদের মডেলটির গড় পরম ত্রুটি 100" "

মনে রাখবেন এটি আরএমএসইয়ের সাথে তুলনামূলক নয় কারণ আউটলিয়াররা অনেক কম প্রভাবশালী।

আপনার প্রশ্নের উত্তর (২): আপনি যদি 75% কোয়ান্টাইল মডেল করেন তবে আপনি ডেটা ভরকে বিভাজন করে বর্ডারটি ফিট করতে পারবেন! 75:25 অনুপাতের। তারপরে আপনার পরীক্ষার ডেটাগুলির প্রায় 25% আপনার ভবিষ্যদ্বাণীটির উপরে থাকা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.