দক্ষ অনলাইন লিনিয়ার রিগ্রেশন


53

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

আমি ধরে নিচ্ছি একটি সাধারণ লিনিয়ার মাল্টিভারিয়েট রিগ্রেশন মডেল, অর্থাৎ

y=Ax+b+e

লিনিয়ার রিগ্রেশন প্যারামিটারগুলি এবং ধারাবাহিক আপডেটের প্রাক্কলন তৈরির জন্য সেরা অ্যালগরিদম কী ?Ab

মূলত:

  • আমি এমন একটি অ্যালগরিদম চাই যা আপডেটের ক্ষেত্রে সর্বাধিক স্থান এবং সময় জটিলতা, যেখানে হল স্বাধীন ভেরিয়েবলের মাত্রা ( ) এবং নির্ভরশীল ভেরিয়েবলের মাত্রিকতা ( )।O(NM)NxMy
  • প্রতিটি নতুন নমুনা দ্বারা প্যারামিটারগুলি কতটা আপডেট হয় তা নির্ধারণ করতে আমি কিছু প্যারামিটার নির্দিষ্ট করতে সক্ষম হতে চাই, উদাহরণস্বরূপ 0.000001 এর অর্থ হবে যে পরবর্তী নমুনাটি প্যারামিটারের প্রাক্কলনের এক মিলিয়ন ভাগ সরবরাহ করবে। এটি সুদূর অতীতে নমুনার প্রভাবের জন্য এক ধরণের ক্ষতিকারক ক্ষয় দেবে।

2
সন্ধান করুন (1) নমনীয় লিনিয়ার রিগ্রেশন, (2) কলম্যান ফিল্টার।
জেস

উত্তর:


31

গাইন্ডেজ আবর্তনের উপর ভিত্তি করে মাইন্ডোনাল্ড একটি ক্রমিক পদ্ধতি বর্ণনা করে । (একটি গিভনস রোটেশন দুটি ভেক্টরের একটি অর্থোগোনাল রূপান্তর যা ভেক্টরগুলির মধ্যে একটিতে প্রদত্ত এন্ট্রি জিরো করে দেয়)) পূর্ববর্তী ধাপে আপনি ডিজাইনের ম্যাট্রিক্স কে ত্রিভুজাকার ম্যাট্রিক্স- মাধ্যমে বিভক্ত করেছেন an অরথোগোনাল রূপান্তর যাতে । (এটা একটি ত্রিকোণ ম্যাট্রিক্স থেকে রিগ্রেশন ফলাফল পেতে দ্রুত এবং সহজ।) একটি নতুন সারি সংলগ্ন পরে নিচে , আপনি কার্যকরভাবে প্রসারিত একটি অশূন্য সারিতে খুব বলতেXTQQX=(T,0)vX(T,0)t। তির্যক অবস্থানগুলিতে এন্ট্রিগুলি রাখার সময় এই সারিটি শূন্য করা । Givens ঘুর্ণন একটি ক্রম এই আছে: প্রথম সারি দিয়ে আবর্তন প্রথম উপাদান zeros ; তারপরে element দ্বিতীয় সারির দ্বিতীয় সারির সাথে ঘূর্ণন দ্বিতীয় উপাদানটি শুক্র করে on এর প্রভাবটি rot a একটি ধারাবাহিক আবর্তনের দ্বারা প্রিমিটিপ্লাই করা হয়, যা এর অরথোগোনালটি পরিবর্তন করে না।TTtTQ

যখন ডিজাইনের ম্যাট্রিক্সে কলাম রয়েছে (যা ভেরিয়েবলগুলি এবং ধ্রুবকগুলিতে রিগ্রেশন করার ক্ষেত্রে এটি হয় ) তখন প্রয়োজনীয় ঘূর্ণনের সংখ্যা ছাড়িয়ে যায় না এবং প্রতিটি ঘূর্ণন দুটি -ভেক্টর পরিবর্তন করে । for এর জন্য প্রয়োজনীয় স্টোরেজ হ'ল । সুতরাং এই অ্যালগরিদমের সময় এবং স্থান উভয় ক্ষেত্রে এর একটি গণনা ব্যয় রয়েছে ।p+1pp+1p+1TO((p+1)2)O((p+1)2)

একটি অনুরূপ পদ্ধতির সাহায্যে আপনাকে একটি সারি মুছে ফেলার প্রতিরোধের উপর প্রভাব নির্ধারণ করতে দেয়। মাইন্ডোনাল্ড সূত্র দেয়; বেলসলে, কুহ এবং ওয়েলশকেও তাই করুন । সুতরাং, আপনি যদি রিগ্রেশনটির জন্য চলন্ত উইন্ডোটির সন্ধান করছেন, আপনি উইন্ডোটির জন্য একটি বিজ্ঞপ্তি বাফারের মধ্যে, নতুন ডেটুম সংলগ্ন এবং প্রতিটি আপডেটের সাথে পুরানোটি বাদ দিয়ে ডেটা ধরে রাখতে পারবেন। এটি আপডেটের সময় দ্বিগুণ করে এবং প্রস্থ উইন্ডোর জন্য অতিরিক্ত স্টোরেজ প্রয়োজন । এটি প্রদর্শিত হয় যে প্রভাব প্যারামিটারের এনালগ হবে।O(k(p+1))k1/k

ক্ষতিকারক ক্ষয়ের জন্য, আমি মনে করি (অনুমানমূলকভাবে) যে আপনি এই পদ্ধতির ভারসাম্যযুক্ত ন্যূনতম স্কোয়ারগুলির সাথে মানিয়ে নিতে পারেন, প্রতিটি নতুন মানকে 1 এর চেয়ে বেশি ওজন প্রদান করে previous

তথ্যসূত্র

জেএইচ মেইনডোনাল্ড, পরিসংখ্যান গণনা। জে উইলি অ্যান্ড সন্স, 1984. অধ্যায় 4।

ডিএ বেলসলে, ই কুহ, আরই ওয়েলস্চ, রিগ্রেশন ডায়াগনস্টিকস: প্রভাবশালী ডেটা এবং সহপাঠের উত্স চিহ্নিতকরণ। জে উইলি অ্যান্ড সন্স, 1980


1
মাইন্ডোনাল্ড যে পদ্ধতিটি বর্ণনা করেছেন সেটি কি জেন্টলম্যানের অ্যালগরিদমের সাথে সম্পর্কিত? jstor.org/stable/2347147
onestop

6
সেক্ষেত্রে অ্যালান মিলার jstor.org/stable/2347583 দ্বারা বর্ধিত এক্সটেনশনগুলিও দেখুন । তার ফোর্টরান
22

5
পি এর নীচে একটি স্পষ্ট আলগোরিদম প্রদর্শিত হবে। Saba.kntu.ac.ir/eecd/people/aliyari/NN%20 % 20files / rls.pdf এর 4 টি । এটি গুগলিং "পুনরাবৃত্তির ন্যূনতম স্কোয়ারগুলি" দ্বারা পাওয়া যাবে। এটি জেন্টলম্যান / মাইন্ডলোনাল্ড পদ্ধতির উন্নতির মতো বলে মনে হচ্ছে না, তবে কমপক্ষে এটি পরিষ্কার এবং স্পষ্টভাবে বর্ণিত হয়েছে।
whuber

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

2
@ সানকুলসু হুম ... মাইন্ডালোনডের বইটি নতুনভাবে প্রকাশিত হয়েছিল যখন আমি এটি ব্যবহার শুরু করেছি :-)।
whuber

8

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


হতে পারে আমি বিভ্রান্ত কিন্তু এটি কোনও টাইম সিরিজের মডেলকে বোঝায়? আমার মডেলটি আসলে সহজতর যে নমুনাগুলি কোনও সময় সিরিজ নয় (কার্যকরভাবে তারা স্বতন্ত্র (x-> y) নমুনাগুলি, তারা সময়ের সাথে সাথে কেবলমাত্র বড় পরিমাণে জমে থাকে)
মাইক্রা

1
হ্যাঁ, সাধারণ ক্ষেত্রে এটি স্বতন্ত্র পর্যবেক্ষণ সহ সময় সিরিজের জন্য ব্যবহৃত হয়; তবে আপনি ক্রমাগত পর্যবেক্ষণগুলির মধ্যে সর্বদা সম্পর্ককে ধরে নিতে পারেন, এটি আপনাকে আগ্রহের বিশেষ ক্ষেত্রে দেয়।
এফ। টসেল

7

আপনার মডেল এর প্যারামিটারের ব্যয়ের জন্য স্ক্র্টের ব্যয়ের যোগফলের পরিমাণটি আপনি সর্বদা গ্রেডিয়েন্ট বংশোদ্ভূত করতে পারেন । কেবলমাত্র এর গ্রেডিয়েন্ট নিন তবে বন্ধ ফর্ম সমাধানের জন্য যাবেন না তবে কেবল অনুসন্ধানের দিকনির্দেশের জন্য।EW

যাক হতে প্রশিক্ষণ নমুনা i'th দেওয়া পরামিতি খরচ । J'th প্যারামিটারের জন্য আপনার আপডেটটি তখনE(i;W)W

WjWj+αE(i;W)Wj

যেখানে একটি ধাপের হার, যা আপনার ক্রস বৈধতা বা ভাল পরিমাপের মাধ্যমে বেছে নেওয়া উচিত।α

এটি অত্যন্ত দক্ষ এবং নিউরাল নেটওয়ার্কগুলি সাধারণত প্রশিক্ষিত হয়। আপনি সমান্তরাল এমনকি অনেক নমুনা প্রক্রিয়া করতে পারেন (বলুন, একটি 100 বা তাই) দক্ষতার সাথে।

অবশ্যই আরও পরিশীলিত অপ্টিমাইজেশান অ্যালগরিদম (গতিবেগ, সংঘবদ্ধ গ্রেডিয়েন্ট, ...) প্রয়োগ করা যেতে পারে।


এই কাগজের সাথে খুব মিল মিলে যায় বলে মনে হচ্ছে eprints.pascal-network.org/archive/00002147/01/… । এটি জুবাতাস নামে একটি ওপেন সোর্স প্রকল্পে প্রয়োগ করা হয়েছে।
স্যাকারিন

3

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

L(β)=(yXβ)t(yXβ)
গ্রেডিয়েন্টটি এবং হেসিয়ান:
L(β)=2Xt(yXβ)
2L(β)=XtX

এখন, আপনি কিছু অতীত ডেটা পেয়েছেন এবং একটি লিনিয়ার রিগ্রেশন করেছেন এবং আপনার পরামিতিগুলির সাথে বসে আছেন ( )। এই বিন্দুতে গ্রেডিয়েন্ট সংজ্ঞা অনুসারে শূন্য। উপরের মত হেসিয়ান দেওয়া আছে। একটি নতুন ডেটা পয়েন্ট ( ) আসবে। আপনি কেবলমাত্র এর মাধ্যমে নতুন পয়েন্টের জন্য গ্রেডিয়েন্ট গণনা করুন:βxnew,ynew

Lnew(β)=2xnew(ynewxnewTβ)
এবং এটি আপনার সামগ্রিক গ্রেডিয়েন্টে পরিণত হবে (যেহেতু বিদ্যমান ডেটা থেকে গ্রেডিয়েন্টটি শূন্য ছিল) । নতুন ডেটা পয়েন্টের হেসিয়ান হ'ল:

2Lnew=xnewxnewT

উপরে বর্ণিত পুরাতন হেসিয়ানগুলিতে এটি যুক্ত করুন। তারপরে, কেবল নিউটন র‌্যাফসন পদক্ষেপ নিন।

βnew=βold+(2L)1Lnew

এবং তুমি করে ফেলেছ.


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

ধন্যবাদ, আজ একটু পরে আরও বিশদ যুক্ত করবে। হ্যাঁ, হেসিয়ান ইনভার্ট করা বড় জন্য লাগে । আপনি হেসিয়ান বিপরীতটিও চেষ্টা করে দেখতে পারেন এবং এটি সরাসরি পাওয়ার সিরিজ ( ) ব্যবহার করে আপডেট করতে পারেন । আপনার যদি মিলিয়ন প্যারামিটার থাকে তবে গ্রেডিয়েন্ট বংশোদ্ভূত যাই হোক না কেন আপনার একমাত্র বিকল্প কম-বেশি। O(p3)p(IA)1=I+A+A2+
ryu576

2

মানক সর্বনিম্ন-বর্গক্ষেত্রের ফিটটি রিগ্রেশন সহগ দেয়

β=(XTX)1XTY

যেখানে এক্স প্রতিটি এন ডাটা পয়েন্টের জন্য এম মানগুলির একটি ম্যাট্রিক্স এবং আকারে এনএক্সএম। Y আউটপুটগুলির একটি এনএক্স 1 ম্যাট্রিক্স। অবশ্যই সহগের একটি এমএক্স 1 ম্যাট্রিক্স। (আপনি যদি কোনও ইন্টারসেপ্ট চান তবে এক্স এর সমান একটি সেট সর্বদা 1 এর সাথে করুন)β

সম্ভবত এই অনলাইনটি তৈরি করতে আপনার কেবল এবং ট্র্যাক রাখা দরকার , সুতরাং একটি এমএক্সএম ম্যাট্রিক্স এবং একটি এমএক্স 1 ম্যাট্রিক্স। প্রতিবার আপনি যখন একটি নতুন ডেটা পয়েন্ট পান তখন আপনি সেই উপাদানগুলি আপডেট করেন এবং তারপরে আবার গণনা , যার জন্য আপনার একটি এমএক্সএম ম্যাট্রিক্স বিপরীকরণ এবং এমএক্সএম ম্যাট্রিক্স এবং এমএক্স 1 ম্যাট্রিক্সের গুণমান।XTXXTYM2+Mβ

উদাহরণস্বরূপ, যদি এম = 1 হয় তবে তার এক সহগ হয়

β=i=1Nxiyii=1Nxi2

সুতরাং প্রতিবার নতুন ডেটা পয়েন্ট পাওয়ার পরে আপনি উভয় পরিমাণ আপডেট করেন এবং অনুপাত গণনা করুন এবং আপনি আপডেটটি সহগ পাবেন get

জ্যামিতিকভাবে আপনি যদি পূর্বের অনুমানগুলি স্যাঁতস্যাঁতে চান তবে আমি মনে করি নতুন শব্দ যুক্ত করার আগে আপনি প্রতিবার এবং দ্বারা ওজন করতে পারতেন , যেখানে কিছু সংখ্যক ছোট।XTXXTY(1λ)λ


2
এই সহজ কেসটি ব্যাখ্যা করা ভাল লাগছে। আপনি কি লক্ষ্য করেছেন, যে প্রশ্নটি বিশেষত মাল্টিভারিয়েট রিগ্রেশন সম্পর্কে জিজ্ঞাসা করে? সেক্ষেত্রে ডিনোমিনেটর আপডেট করা এত সহজ নয় ! β
whuber

আমি মনে করি আমার উত্তর এখনো কাজ করে: অর্থাত আপনি এমএক্সএম ম্যাট্রিক্স ট্র্যাক রাখতে প্রয়োজন এবং Mx1 ম্যাট্রিক্স । এই ম্যাট্রিকগুলির প্রতিটি উপাদান এম = 1 উদাহরণের মতো একটি যোগফল। নাকি আমি কিছু মিস করছি? XTXXTY
মার্ক হিগিন্স

6
হ্যাঁ: একটি ম্যাট্রিক্স পণ্য কম্পিউটিং ও একটি ভেক্টর করার জন্য একটি ম্যাট্রিক্স প্রয়োগ ছাড়াও, আপনি এখন প্রয়োজন invert প্রতিটি পদে পদে। ঐটা ব্যয়বহুল. অনলাইন অ্যালগরিদমগুলিতে পুরো বিষয়টি হ'ল সস্তা আপডেট পদ্ধতি দ্বারা পাইকারি ব্যয়বহুল পদক্ষেপগুলি প্রতিস্থাপন করা। XX
whuber

1
@ হুইবার, পরিবর্তিত ম্যাট্রিক্স এবং ভেক্টর জন্য অনুমান করার জন্য একটি দ্রুত, অনলাইন উপায় শ্রাউডল্ফ, এনএন (2002) দিয়েছেন। দ্বিতীয় ক্রম গ্রেডিয়েন্ট বংশদ্ভুত জন্য দ্রুত বক্রতা ম্যাট্রিক্স-ভেক্টর পণ্য। মূলত, আপনি , এবং হিসাবে । C1xCxzt+1=zt+xCztzC1xt
নিল জি

1

আপনি জিনিসগুলিকে কিছুটা নতুন করে লিখলে সমস্যাটি আরও সহজেই সমাধান হয়ে যায়:

Y = y

এক্স = [এক্স, ১]

তারপর

Y = A * X

গণনার মাধ্যমে একটি সময় সমাধান সমাধান পাওয়া যায়

ভি = এক্স '* এক্স

এবং

সি = এক্স '* ওয়াই

নোট করুন V এর আকার এন-বাই-এন এবং সি আকারের এন-বাই-এম হওয়া উচিত। আপনি যে প্যারামিটারগুলি সন্ধান করছেন তা এর পরে দেওয়া হবে:

এ = ইনভ (ভ) * সি

যেহেতু ভি এবং সি উভয়ই আপনার উপাত্তের সমষ্টি করে গণনা করা হয়, তাই আপনি প্রতিটি নতুন নমুনায় A গণনা করতে পারেন। তবে এটিতে ও (টাইম জটিলতা) রয়েছে (এন। 3)।

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

র‌্যাঙ্ক -১ আপডেট অ্যালগরিদমগুলি গোলুব এবং ভ্যান লোন দ্বারা "ম্যাট্রিক্স গণনা" এ পাওয়া যাবে। এটি শক্ত উপাদান, তবে এ জাতীয় অ্যালগরিদমের বিস্তৃত ওভারভিউ রয়েছে view

দ্রষ্টব্য: উপরের পদ্ধতিটি প্রতিটি পদক্ষেপে একটি ন্যূনতম-বর্গ অনুমান দেয়। আপনি এক্স এবং ওয়াইয়ের আপডেটগুলিতে খুব সহজেই ওজন যুক্ত করতে পারেন X এক্স এবং ওয়াইয়ের মানগুলি যখন খুব বড় হয়, ফলাফলকে প্রভাবিত না করে সেগুলি একক স্কেলারের সাহায্যে মাপানো যায়।

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