গতিশীলভাবে কোয়ান্টাইলগুলি নিরীক্ষণের জন্য অ্যালগরিদম


24

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


কিছু ধারণার জন্য (মিডিয়ানদের অনুমানের প্রসঙ্গে) থ্রেডটি stats.stackexchange.com/q/346/919দেখুন
whuber

3
এই প্রশ্নের হয় crossposted math.SE. উপর
কার্ডিনাল

উত্তর:


16

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

আপনার "ভারী-লেজযুক্ত" ডেটার জন্য এই পদ্ধতিটি কীভাবে ব্যর্থ হবে আপনি ঠিক তা বলছেন না, তবে এটি অনুমান করা সহজ: প্রচুর পরিমাণে ডেটা সংগ্রহ না করা পর্যন্ত ভারী-লেজযুক্ত বিতরণের জন্য চরম কোয়ান্টাইলের অনুমান অস্থির হবে। আপনি যদি সমস্ত ডেটা সঞ্চয় করে রাখেন তবে এটি (কিছুটা কম পরিমাণে) সমস্যা হতে চলেছে, সুতরাং অলৌকিক প্রত্যাশা করবেন না!

যে কোনও হারে, সহায়ক চিহ্নগুলি কেন সেট করা যায় না - আসুন তাদের এবং কল করুন - যার মধ্যে আপনি অত্যন্ত নিশ্চিত যে কোয়ান্টাইলটি মিথ্যা এবং এবং মধ্যে থাকা সমস্ত ডেটা ? আপনার বাফার পূরণ করলে আপনাকে এই চিহ্নিতকারীগুলিকে আপডেট করতে হবে, সর্বদা রেখে । এটি করার জন্য একটি সাধারণ অ্যালগরিদম (ক) কোয়ান্টাইলের বর্তমান পি 2 অনুমান এবং (খ) চেয়ে কম ডাটা সংখ্যার এবং চেয়ে বেশি ডেটার সংখ্যার সংমিশ্রণ থেকে তৈরি করা যেতে পারে । এই ফ্যাশনে আপনি উচ্চ সুনিশ্চিততার সাথে কোয়ান্টাইলটি ঠিক যেমনটি করতে পারেন ঠিক তেমনই যদি আপনার কাছে পুরো ডেটাसेटটি সর্বদা উপলব্ধ থাকে তবে আপনার কেবল একটি অপেক্ষাকৃত ছোট বাফার প্রয়োজন।x 6 x 0 x 6 x 0x 6 x 0 x 6x0x6x0x6x0x6x0x6

বিশেষত, আমি ডাটা মান ক্রম সম্পর্কে আংশিক তথ্য বজায় রাখতে একটি ডেটা স্ট্রাকচারের প্রস্তাব করছি । এখানে, a একটি লিঙ্কযুক্ত তালিকাএন এক্স 1 , এক্স 2 , , এক্স এন ওয়াই(k,y,n)nx1,x2,,xny

y=(x[k+1](n)x[k+2](n)x[k+m](n)).

এই স্বরলিপিটিতে so এখনও অবধি পড়া টির মধ্যে lest এর মধ্যে ক্ষুদ্রতমকে বোঝায় । একটি ধ্রুবক, বাফার আকার । i n x m yx[i](n)ithn xmy

অ্যালগরিদমটি প্রথম ডেটা মানগুলির মুখোমুখি হয়ে them filling পূরণ করে এবং এটিকে ছোট থেকে বৃহত্তম থেকে সাজানো ক্রমে রেখে begins যাক সমাংশক নির্ণয় করা হতে; যেমন, = 0.99। reading পড়ার পরে তিনটি সম্ভাব্য ক্রিয়া রয়েছে: m q q x n + 1yমিকুইকুইএক্সএন+ +1

  • যদি । , ইনক্রিমেন্ট । কেxn+1<x[k+1](n)k

  • যদি ।, কিছুই করবেন না।এক্সএন+ +1>এক্স[+ +মি](এন)

  • অন্যথায়, সন্নিবেশ মধ্যে । yএক্সএন+ +1Y

যে কোনও ইভেন্টে, এনক্রিমেন্ট ।এন

সন্নিবেশ পদ্ধতি রাখে মধ্যে সাজানো ক্রম এবং তারপর চরম মান এক ঘটিয়েছে : y yএক্সএন+ +1YY

  • যদি , তবে এবং বর্ধমান থেকে সরান ;x ( এন ) [ কে + 1 ] ওয়াই কেk+m/2<nqx[k+1](n)yk

  • অন্যথায়, অপসারণ থেকে । yx[k+m](n)y

প্রদত্ত যথেষ্ট পরিমাণে বড়, এই পদ্ধতিটি উচ্চ সম্ভাবনার সাথে বিতরণের সত্য পরিমাণের বন্ধনী তৈরি করবে। কোনো পর্যায়ে এটা পরিপ্রেক্ষিতে স্বাভাবিক ভাবেই নির্ণয় করা যায় এবং , যা থাকা বিভিন্ন । (আমি বিশ্বাস করি কেবলমাত্র সর্বাধিক পরিমাণ ডেটা ( ) এর বর্গমূলের মতো স্কেল করতে হবে , তবে আমি এটি প্রমাণ করার জন্য কঠোর বিশ্লেষণ করিনি)) কোনও হারে, অ্যালগরিদম এটি সফল হয়েছে কিনা তা সনাক্ত করবে (দ্বারা এবং থেকে ) তুলনা করা ।এন এক্স ( এন ) [ কুই এন] এক্স ( এন ) [ কুই এন] Y মিটার এন / এন ( + + মি ) / এন কুইmnx[qn](n)x[qn](n)ymNk/n(k+m)/nq

এবং (সবচেয়ে কঠিন ক্ষেত্রে) ব্যবহার করে 100,000 অবধি মান পরীক্ষা করে দেখায় যে of সঠিক মান অর্জনে এই অ্যালগরিদমের 99.5% সাফল্যের হার রয়েছে । মানগুলির একটি স্রোতের জন্য , এর জন্য কেবলমাত্র দুই মিলিয়ন বাফারের প্রয়োজন হবে (তবে তিন বা চার মিলিয়ন ভাল পছন্দ হবে)। বাফারের জন্য বাছাই করা দ্বিগুণ সংযুক্ত তালিকার ব্যবহারের জন্য = প্রচেষ্টা সর্বাধিক বা মিনিট সনাক্তকরণ এবং মোছার সময় ও ক্রিয়াকলাপ। তুলনামূলকভাবে ব্যয়বহুল সন্নিবেশটি কেবলমাত্র কুই=.5এক্স ( এন ) [ কুই এন] এন=10 12 হে(লগ(m=2Nq=.5x[qn](n)N=1012(লগ(এন))(1)( )O(log(N))O(log(N))O(1)(এন+ √)O(N)বার। সুতরাং এই অ্যালগরিদমের গণনাগত ব্যয় হ'ল সময় এবং স্টোরেজে ।( )O(N+Nlog(N))=O(N)O(N)


এটি পি 2 অ্যালগরিদমের বর্ধিত কাজ। [লিঙ্ক] sim.sagepub.com/content/49/4/159.abstract । আমার অ্যাপ্লিকেশনটির জন্য স্টোরেজটি এখনও অনেক বেশি, যা মোট 10 কে র‌্যাম সহ ছোট সেন্সরগুলিতে চলে। কেবলমাত্র কোয়ান্টাইল অনুমানের জন্য আমি কয়েকশত বাইট গ্রাস করতে পারি।
sinoTrinity

@ শুভর প্রকৃতপক্ষে আমি বর্ধিত পি 2 বাস্তবায়ন করেছি এবং এটি ইউনিফর্ম এবং ক্ষতিকারক হিসাবে বিভিন্ন বিতরণ থেকে উত্পন্ন নমুনাগুলি দিয়ে পরীক্ষা করি, যেখানে এটি দুর্দান্ত কাজ করে। তবে আমি যখন এটিকে আমার অ্যাপ্লিকেশন থেকে প্রাপ্ত ডেটার বিপরীতে প্রয়োগ করি, যার বিতরণটি অজানা, কখনও কখনও এটি রূপান্তর করতে ব্যর্থ হয় এবং 300% পর্যন্ত আপেক্ষিক ত্রুটি (অ্যাবসেস (অনুমান - প্রকৃত) / প্রকৃত) দেয় s
sinoTrinity

2
@ সিনো সমস্ত ডেটা ব্যবহারের তুলনায় অ্যালগরিদমের গুণাগুলি লেজগুলির ভারাক্রমে নির্ভর করে না। যাক: একটি fairer পথ ত্রুটি পরিমাপ এই হল গবেষণামূলক সিডিএফ হও। পারসেন্টাইলের একটি অনুমান এর জন্য , এবং মধ্যে পার্থক্য কী ? যদি এটি এর আদেশে থাকে তবে আপনি দুর্দান্তভাবে ভাল করছেন। অন্য কথায়, পি 2 অ্যালগরিদমটি কেবল আপনার পার্সেন্টিলের জন্য ফিরে আসে? কুই কুই এফ ( কুই ) এফ ( কুই ) 1 / এনFq^qF(q^)F(q)1/n
হোবার

তুমি ঠিক. 300% পর্যন্ত আপেক্ষিক ত্রুটির সাথে উল্লেখ করা মামলার জন্য আমি কেবল F (qˆ) এবং F (q) পরিমাপ করেছি। 0.7 এর Q এর জন্য, qˆ প্রায় 0.7, এর ফলে তুচ্ছ ত্রুটি হয়। যাইহোক, ০.৯ এর Q এর জন্য, qˆ মনে হয় প্রায় 0.95 এর কাছাকাছি। আমার ধারণা, এ কারণেই আমার 300% পর্যন্ত বিশাল ত্রুটি রয়েছে। কোনও ধারণা কেন এটি 0.9 নয়, 0.9 নয়? বিটিডাব্লু, আমি কি এখানে চিত্রটি পোস্ট করতে পারি এবং আপনি কীভাবে গণিতের সূত্র পোস্ট করতে পারি?
sinoTrinity

2
@ হুবুহু আমি পুরোপুরি আত্মবিশ্বাসী যে আমার বাস্তবায়ন প্রসারিত পি 2 তে মেনে চলে। আমি একযোগে 0.8, 0.85, 0.9, 0.95 কোয়ান্টাইল অনুমান করলে 0.9 এখনও 0.95 বা তার চেয়েও বড় হয়। তবে 0.9, 0.85, 0.9, 0.95 এবং 1.0 কোয়ান্টাইল একই সময়ে ট্র্যাক করা থাকলে 0.9 এর খুব কাছে চলে যায় ।
sinoTrinity

5

আমি মনে করি whuber এর পরামর্শটি দুর্দান্ত এবং আমি প্রথমে এটি চেষ্টা করব। তবে আপনি যদি দেখতে পান যে আপনি সত্যই সামঞ্জস্য করতে পারবেন না বা এটি অন্য কোনও কারণে কার্যকর হয় না, তবে এখানে পি 2 এর আলাদা সাধারণীকরণের জন্য একটি ধারণা দেওয়া হয়েছে। এটি whuber যা বলে তার মত বিশদ নয় - সমাধান হিসাবে সমাধানের পরিবর্তে আরও একটি গবেষণা ধারণা হিসাবে।O(N)

মূল পি 2 অ্যালগরিদমের পরামর্শ অনুসারে , , , এবং এ কোয়ান্টাইলগুলি অনুসরণ করার পরিবর্তে আপনি কেবল আরও কোয়ান্টাইলের ট্র্যাক রাখতে পারেন (তবে এখনও একটি ধ্রুবক সংখ্যা)। দেখে মনে হচ্ছে অ্যালগরিদম খুব সহজভাবে এটির জন্য অনুমতি দেয়; আপনাকে যা করতে হবে তা হ'ল ইনকামিং পয়েন্টগুলির জন্য সঠিক "বালতি" গণনা করা এবং কোয়ান্টাইলগুলি আপডেট করার সঠিক উপায় (সংলগ্ন সংখ্যা ব্যবহার করে চতুর্ভুজটি) ically0p/2p(1+p)/21

বলুন আপনি পয়েন্টের ট্র্যাক রাখেন। আপনি , , , , , , , এ কোয়ান্টাইল ট্র্যাক করার চেষ্টা করতে পারেন , (equidistantly মধ্যে পয়েন্ট অবচয় 0 এবং পি এবং তাদের মধ্যবর্তী পি এবং 1 ), অথবা এমনকি ব্যবহার 22 Chebyshev নোড ফর্মের পি / 2 ( 1 + + কোসাইন্ ( 2 আমি -250p/12p11/12pp+(1p)/12p+11(1p)/1210pp122 এবংপি+(1-পি)/2(1+কোস(2আই-1)π πp/2(1+cos(2i1)π22)। যদিপি0বা1 এরকাছাকাছি থাকে তবে আপনিযেদিকে কম সম্ভাবনার ভর এবং অন্যদিকে আরও কিছু আছে সেখানে কম পয়েন্ট রাখার চেষ্টা করতে পারেন।p+(1p)/2(1+cos(2i1)π22)p01

যদি আপনি এটি অনুসরণ করার সিদ্ধান্ত নেন, আমি (এবং সম্ভবত এই সাইটের অন্যরা) এটি কাজ করে কিনা তা জানতে আগ্রহী ...


+1 আমি মনে করি এটি ওপি'র সীমাবদ্ধতার পরিপ্রেক্ষিতে একটি দুর্দান্ত ধারণা। সকলেই আশা করতে পারে এটি একটি আনুমানিক হয়, সুতরাং কৌশলটি হ'ল বিনগুলি বাছাই করা যা সংকীর্ণ হওয়ার এবং পছন্দসই পরিমাণটি যুক্ত হওয়ার উচ্চ সম্ভাবনা রয়েছে।
whuber

3

এট আল। টিপুন, সংখ্যার রেসিপি 8.5.2 "স্বেচ্ছাসেবী কোয়ান্টাইলের একক-পাস অনুমান" পি। 435, একটি সি ++ শ্রেনী আইকিএজেন্ট দিন যা টুকরোজা-লিনিয়ার আনুমানিক সিডিএফ আপডেট করে।


book.google.com/… এমন সংস্করণের জন্য যা ফ্ল্যাশের প্রয়োজন হয় না।
ZachB

2

এটি অ্যালগরিদমগুলি থেকে অভিযোজিত হতে পারে যা অনলাইনে একটি ডেটাসেটের মিডিয়ান নির্ধারণ করে। আরও তথ্যের জন্য, এই স্ট্যাকওভারফ্লো পোস্টটি দেখুন - /programming/1387497/find-median-value-from-a-growing-set


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

2

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

সম্পাদিত:

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


1

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

বেল ল্যাবস কাগজ "বৃহদায়তন ট্র্যাকিং জন্য ক্রমবর্ধমান সমাংশক প্রাক্কলন" (দেখুন ftp://ftp.cse.buffalo.edu/users/azhang/disc/disc01/cd1/out/papers/kdd/p516-chen.pdf )


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