কীভাবে চলন্ত গড়ের হ্যান্ডেলগুলি হারানো ডেটার পয়েন্টগুলি হ্যান্ডেল করা উচিত?


10

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

(যদি আমি আরও ভাল লো-পাস ফিল্টার ব্যবহার করতে পারি তবে আমি প্রস্তাবগুলি পছন্দ করব)


প্রথম জিনিসটি যা মনে আসে তা হ'ল চলন্ত-গড় ফিল্টারটি ব্যবহারের আগে পয়েন্টগুলি
বিভক্ত করা

3
কমপক্ষে আরও প্রসঙ্গের অভাবে, একটি সিগন্যাল প্রসেসিং প্রশ্নের চেয়ে সত্যিকারের কোনও পরিসংখ্যানগত প্রশ্ন। তবে আপনি কেবল গড়ের পুনর্নির্মাণটি এড়াতে পারেন, প্রতিস্থাপনের মান হিসাবে বর্তমান গড়টি ব্যবহার করতে পারেন, বা পরবর্তী পরিমাপের জন্য অপেক্ষা করতে পারেন এবং বিরতি, লিনিয়ার বা অন্যথায় চেষ্টা করতে পারেন।
ড্যানিয়েল আর হিকস

অন্যরা যেমন উল্লেখ করেছে, আপনি ফিল্টার আউটপুটটি কীভাবে আচরণ করতে চান তা বিবেচনার ভিত্তিতে এটি সাধারণত একটি অ্যাপ্লিকেশন-নির্দিষ্ট সিদ্ধান্ত হবে। বেশিরভাগ সিগন্যাল প্রসেসিং থিয়োরিটি সমান দূরত্বে থাকা নমুনাগুলির উপর ভিত্তি করে তৈরি হয়, সুতরাং আপনি এমন কিছু পাবেন না যা অবাস্তবভাবে "সঠিক উত্তর" বলা যেতে পারে।
জেসন আর

সেই সময়ে ব্যবহারকারীর ওজনের আরও যুক্তিসঙ্গত অনুমান দেওয়ার জন্য @ জেসনআর আই ফিল্টার করি কিছু তথ্য পয়েন্ট অনুপস্থিত বাদে ডেটা সমানভাবে নমুনাযুক্ত (নমুনা ফ্রিকোয়েন্সি = 1 / দিন)।
আন্না

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

উত্তর:


4

সাধারণ ধারণা হিসাবে, আপনি যে মুভিং এভারেজ ফিল্টারটি বেছে নিয়েছেন তার পরিবর্তে অনুপস্থিত পয়েন্টগুলি স্বয়ংক্রিয়ভাবে ফিট করার ক্ষেত্রে রিগ্রেশন আরও ভাল কাজ করবে।

আপনি যদি একটি এআর (অটো রিগ্রেসিভ ফিল্টার) বা এআরএমএ ফিল্টার ব্যবহার করেন - আপনার অতীত ইনপুটগুলির উপর ভিত্তি করে একটি নমুনা আউটপুটের পূর্বাভাসের মান থাকতে পারে।

X^[i]=ωkx[i1k]+η

যেখানে হল পূর্বাভাস করা মান valueX^[i]

বিশেষ করে আপনার ক্ষেত্রে, আপনি কি জানেন ব্যক্তির ওজন একটি নির্দিষ্ট পরিসর আছে বলে । এখন যদি আপনার মান না থাকে - দুটি পৃথক বিকল্প প্রয়োগ করুন - একটি মিনের সাথে এবং একটি ম্যাক্সের সাথে এবং উপলভ্য মডেলটির উপর ভিত্তি করে আপনার জন্য দুটি চরম কেস ফলাফল হবে এবং আপনি করতে পারেন তাদের মধ্যে কিছু চয়ন করুন।Xmax,Xminx[i1]X^[i]

অন্যান্য বিভিন্ন বিকল্প রয়েছে - আপনি রাখতে পারেন

এক্স [আমি]=এক্স দীর্ঘমেয়াদী নমুনা গড় 

X^[i]=X[i1]
বা
X^[i]=Long term sample average of X 

মূলত এটি সেই মানটির পূর্বাভাসের একটি খেলা এবং এটি একটি সংকেত হিসাবে ব্যবহার করা চালিয়ে যায়। অবশ্যই, পূর্বাভাস একটি আসল নমুনার মতো হবে না তবে এটি ডেটা না থাকার জন্য আপনি যে মূল্য দেন তা নয়।


2
আপনি কেন বলেন যে রিগ্রেশন ফিটিংয়ের ক্ষেত্রে আরও ভাল কাজ করবে? ধন্যবাদ
স্পেসি

3

অনুপস্থিত তথ্য পূরণের জন্য একটি সহজ এবং সাধারণ পদ্ধতি, আপনার যদি সম্পূর্ণ ডেটা চালায় তবে
লিনিয়ার রিগ্রেশন ব্যবহার করা । বলুন যে আপনার একের পর এক 5000 রান রয়েছে যার সাথে কোনওটিই নিখোঁজ রয়েছে।
1000 x 1 ভেক্টর y এবং 1000 x 4 ম্যাট্রিক্স এক্স সেট করুন:

y       X
wt[0]   wt[-2] wt[-1] wt[1] wt[2]
---------------------------------
68      67     70     70    68
...

রিগ্রেশন আপনাকে ৪ টি নম্বর অ্যাবসিডি দেবে যা সেরা ম্যাচ দেয়

wt[0] ~= a * wt[-2]  + b * wt[-1]  + c * wt[1]  + d * wt[2]

আপনার 1000 সারি ডেটার জন্য - বিভিন্ন ডেটা, বিভিন্ন abc d।
তারপরে আপনি এই abcd ব্যবহার অনুমান করতে (পূর্বাভাস, আন্তঃবিশ্লেষণ) অনুপস্থিত wt [0]।
(মানব ওজনের জন্য, আমি আশা করতাম যে abcd প্রায় 1/4 এর কাছাকাছি হবে))

পাইথনে, numpy.linalg.lstsq দেখুন

(রিগ্রেশন সম্পর্কিত লক্ষ লক্ষ পুস্তক এবং কাগজপত্র রয়েছে, সমস্ত স্তরেই p


1

আপনি যদি কিছু ডেটা জানেন না, তবে এটির উপরে মোটেও গড় না বাড়ানো আপনার সেরা বাজি। লিনিয়ার রিগ্রেশন এবং এর মত অনুমান করা সাহায্য করতে পারে তবে এটি আপনার ডেটাতে অতিরিক্ত জটিলতা এবং অনিচ্ছাকৃত পক্ষপাতের পরিচয় দিতে পারে। আমি বলব যে আপনি যদি এই পাঁচটি ডাটা পয়েন্টের গড় গড় করেন: , আপনার উত্তরটি হওয়া উচিত[a,b,c,?,e]

a+b+c+e4

1

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

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