জিএএমএস (আরগুজে এমজিসিভি প্যাকেজ) তে টেনসর পণ্যের ইন্টারঅ্যাকশনগুলির পিছনে অন্তর্দৃষ্টি


30

সাধারণকরণযোগ্য মডেলগুলি উদাহরণস্বরূপ । ফাংশনগুলি মসৃণ এবং অনুমান করা যায়। সাধারণত দণ্ডিত স্প্লাই দ্বারা। এমজিসিভি হ'ল একটি প্যাকেজ যা আর এটি করে এবং লেখক (সাইমন উড) আর এর উদাহরণ সহ তাঁর প্যাকেজ সম্পর্কে একটি বই লিখেছেন। রুপার্ট, ইত্যাদি। (2003) একই জিনিসটির আরও সহজ সংস্করণ সম্পর্কে আরও বেশি অ্যাক্সেসযোগ্য বই লিখুন।

y=α+f1(x1)+f2(x2)+ei

আমার প্রশ্নটি এই ধরণের মডেলের মধ্যে ইন্টারঅ্যাকশন সম্পর্কে। আমি যদি নিম্নলিখিতগুলির মতো কিছু করতে চাই তবে কী হবে: যদি আমরা ওএলএস জমিতে থাকি (যেখানে কেবলমাত্র বিটা হয়) , ব্যাখ্যা করার সাথে আমার কোনও সমস্যা হবে না । যদি আমরা দণ্ডিত স্প্লাইজের মাধ্যমে অনুমান করি তবে আমারও যুক্তিযুক্ত প্রসঙ্গে ব্যাখ্যায় কোনও সমস্যা নেই। 3

y=α+f1(x1)+f2(x2)+f3(x1×x2)+ei
ff^3

তবে জিএমে এমজিসিভি প্যাকেজটিতে "টেনসর প্রোডাক্ট স্মুডস" নামে এই জিনিসগুলি রয়েছে। আমি "টেনসর প্রোডাক্ট" গুগল করি এবং আমার যে ব্যাখ্যাগুলি পাওয়া যায় সেগুলি পড়ার চেষ্টা করার সাথে সাথে আমার চোখগুলি ঝলক করে। হয় আমি যথেষ্ট স্মার্ট নই বা গণিত খুব ভালভাবে ব্যাখ্যা করা হয়নি, বা উভয়ই।

কোডিংয়ের পরিবর্তে

normal = gam(y~s(x1)+s(x2)+s(x1*x2))

একটি টেনসর পণ্য একই (?) জিনিস করতে হবে

what = gam(y~te(x1,x2))

যখন আমি করি

plot(what)

অথবা

vis.gam(what)

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

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


সহজ উদাহরণ, প্যাকেজ লেখকের বই থেকে নেওয়া: গ্রন্থাগার (এমজিসিভি) ডেটা (গাছ) সিটি 5 <- গাম (ভলিউম ~ তে (উচ্চতা, ঘের, কে = 5), পরিবার = গামা (লিঙ্ক = লগ), ডেটা = গাছ) সিটি 5 vis.gam (ct5) চক্রান্ত (ct5, too.far = 0.15)
generic_user

উত্তর:


30

আমি তিনটি ধাপে এর উত্তর দেওয়ার চেষ্টা করব (প্রথমে): প্রথমে একটি অবিচ্ছিন্ন মসৃণ দ্বারা আমরা কী বোঝাতে চাই তা শনাক্ত করব। এর পরে, আমরা একটি মাল্টিভারিয়েট স্মুথ (বিশেষত, দুটি ভেরিয়েবলের মসৃণ) বর্ণনা করব। পরিশেষে, আমি একটি টেনসর পণ্য মসৃণ বর্ণনা করার জন্য আমার যথাসাধ্য চেষ্টা করব।

1) অবিচ্ছিন্ন মসৃণ

আসুন বলে আমরা কিছু প্রতিক্রিয়া তথ্য আছে যে আমরা অনুমান হয় একটি অজানা ফাংশন একটি predictor পরিবর্তনশীল এক্স প্লাস কিছু ত্রুটি ε । মডেলটি হ'ল:yfxε

y=f(x)+ε

এখন, এই মডেলটি ফিট করার জন্য, আমাদের কার্যকরী রূপটি সনাক্ত করতে হবে । আমরা যেভাবে এই কাজ ভিত্তিতে ফাংশন, যা অর্ডার ফাংশন প্রতিনিধিত্ব করার জন্য উপরিপন্ন হয় চিহ্নিতকরণের হয় তার সম্পূর্ণতা। খুব সাধারণ উদাহরণ হ'ল লিনিয়ার রিগ্রেশন, যার ভিত্তি ফাংশনগুলি কেবল এবং , ইন্টারসেপ্ট। ভিত্তি প্রসারণ প্রয়োগ, আমাদের আছেf β 2 x β 1ffβ2xβ1

y=β1+β2x+ε

ম্যাট্রিক্স ফর্মে, আমাদের এটি হবে:

Y=Xβ+ε

যেখানে হ'ল এন-বাই -1 কলামের ভেক্টর, হ'ল এন-বাই -2 মডেল ম্যাট্রিক্স, মডেল সহগের 2-বাই -1 কলাম ভেক্টর এবং ত্রুটির এন-বাই -1 কলাম ভেক্টর or । এর দুটি কলাম রয়েছে কারণ আমাদের ভিত্তি প্রসারণে দুটি পদ রয়েছে: রৈখিক শব্দ এবং ইন্টারসেপ্ট।এক্স বিটা ε এক্সYXβεX

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

স্পষ্ট করে বলতে গেলে, মাত্রার একটি ভিত্তি প্রসারিতটি দেখতে পাওয়া যেতে পারে:i2

y=β1+β2x+β3f1(x)+β4f2(x)+...+βifi2(x)+ε

যেখানে প্রতিটি ফাংশন , সম্ভবত, স্বাধীন ভেরিয়েবল এর একটি ঘনকৃত ফাংশন ।fx

ম্যাট্রিক্স সমীকরণ still এখনও আমাদের মডেল উপস্থাপন করতে ব্যবহার করা যেতে পারে। পার্থক্যটি হ'ল এখন এন-বাই-আই ম্যাট্রিক্স; এটি হ'ল, ভিত্তি বিস্তারে এটি প্রতিটি টার্মের জন্য একটি কলাম রয়েছে (ইন্টারসেপ্ট এবং লিনিয়ার টার্ম সহ)। যেহেতু ভিত্তি সম্প্রসারণের প্রক্রিয়া আমাদের একটি ম্যাট্রিক্স সমীকরণ আকারে মডেল প্রতিনিধিত্ব করতে অনুমতি দেওয়া হয়েছে, আমরা লিস্ট স্কোয়ার রৈখিক ব্যবহার মডেল মাপসই করা হবে এবং কোফিসিয়েন্টস এটি করতে ।Y=Xβ+εXβ

এটি আনপেনালাইজড রিগ্রেশনের একটি উদাহরণ এবং এমজিসিভির অন্যতম প্রধান শক্তি হ'ল পেনাল্টি ম্যাট্রিক্স এবং স্মুথিং প্যারামিটারের মাধ্যমে তার মসৃণতা অনুমান। পরিবর্তে অন্য কথায়:

β=(XTX)1XTY

আমাদের আছে:

β=(XTX+λS)1XTY

যেখানে হ'ল এক চতুর্ভুজ আই- বাই- আই পেনাল্টি ম্যাট্রিক্স এবং λ একটি স্কেলার স্মুথিং প্যারামিটার। আমি এখানে পেনাল্টি ম্যাট্রিক্সের স্পেসিফিকেশনে যাব না, তবে এটি বলাই যথেষ্ট হবে যে কোনও নির্দিষ্ট ভিত্তির বিবর্তনের জন্য কিছু স্বতন্ত্র পরিবর্তনশীল এবং একটি চতুর্ভুজ "wiggiversity" জরিমানার সংজ্ঞা (উদাহরণস্বরূপ, দ্বিতীয়-ডেরিভেটিভ পেনাল্টি), একটি পেনাল্টি ম্যাট্রিক্স এস গণনা করতে পারেন ।SiiλS

MGCV অনুকূল পরামিতি মসৃণকরণ আনুমানিক হিসাব বিভিন্ন উপায়ে ব্যবহার করতে পারেন । আমি সে বিষয়ে যাব না কারণ এখানে আমার লক্ষ্যটি ছিল যে কীভাবে একটি অবিচ্ছিন্ন মসৃণ নির্মাণ করা যায় তার একটি বিস্তৃত ধারণা দেওয়া, যা আমি বিশ্বাস করি যে আমি এটি করেছি।λ

2) মসৃণ মাল্টিভারিয়ট

উপরের ব্যাখ্যাটি একাধিক মাত্রায় সাধারণীকরণ করা যেতে পারে। আসুন আমাদের মডেল যে প্রতিক্রিয়া দেয় ফিরে যাই একটি ফাংশন হিসাবে এর ভবিষ্যতবক্তা এক্স এবং z- র । দুটি স্বতন্ত্র ভেরিয়েবলের সীমাবদ্ধতা ত্রুটিযুক্ত স্বরলিপি সহ ব্যাখ্যা বিশৃঙ্খলা রোধ করবে। মডেলটি হ'ল:yfxz

y=f(x,z)+ε

এখন, এটি স্বজ্ঞাতভাবে স্পষ্ট হওয়া উচিত যে আমরা উপরের ( এক্স ) এর অবিচ্ছিন্ন ক্ষেত্রে যেমন করেছিলাম তেমন ভিত্তি সম্প্রসারণ (অর্থাত্ বেসড ফাংশনগুলির একটি সুপারপজিশন ) দিয়ে উপস্থাপন করতে যাচ্ছি । এটিও স্পষ্ট হওয়া উচিত যে কমপক্ষে একটি, এবং আরও অনেকগুলি অবশ্যই এই ভিত্তির ফাংশনগুলির x এবং z উভয়েরই ফাংশন থাকতে হবে (যদি এটি না হয় তবে স্পষ্টতই পৃথকভাবে পৃথক হতে হবে যেমন ( এক্স , জেড ) = f x ( x ) + ff(x,z)f(x)xzf )। একটি বহুমাত্রিক স্প্লাইন ভিত্তির একটি চাক্ষুষ চিত্রএখানেপাওয়াযাবেI - 3 মাত্রার পূর্ণ দ্বিমাত্রিক ভিত্তির বিস্তৃতিএরকম কিছু দেখতে পেল:f(x,z)=fx(x)+fz(z)i3

y=β1+β2x+β3z+β4f1(x,z)+...+βifi3(x,z)+ε

আমি মনে করি এটি অত্যন্ত পরিষ্কার যে আমরা এখনও ম্যাট্রিক্স আকারে এটি উপস্থাপন করতে পারি:

Y=Xβ+ε

এবং জেড এর প্রতিটি অনন্য সংমিশ্রণে প্রতিটি ভিত্তি ফাংশনকে কেবল মূল্যায়ন করে । সমাধানটি এখনও:xz

β=(XTX)1XTY

দ্বিতীয় ডেরাইভেটিভ পেনাল্টি ম্যাট্রিক্স গণনা অবিচ্ছিন্ন ক্ষেত্রে হিসাবে একই একই, একক ভেরিয়েবলের প্রতি সম্মান সঙ্গে প্রতিটি ভিত্তিক ফাংশন দ্বিতীয় ডেরিভেটিভ সংহত করার পরিবর্তে, আমরা সম্মানের সাথে সমস্ত দ্বিতীয় ডেরিভেটিভস (পার্টিয়াল সহ) যোগফল একত্রিত সমস্ত স্বাধীন ভেরিয়েবল। পূর্বোল্লিখিত বিবরণ বিশেষভাবে গুরুত্বপূর্ণ নয়: বিন্দু যে আমরা এখনও শাস্তি ম্যাট্রিক্স গঠন করা যেতে পারে এবং একই পদ্ধতি ব্যবহার মসৃণকরণ পরামিতির অনুকূল মান পেতে λ , এবং প্রদত্ত যে পরামিতি মসৃণকরণ, কোফিসিয়েন্টস এর ভেক্টর এখনও:Sλ

β=(XTX+λS)1XTY

এখন, এই দ্বি-মাত্রিক মসৃণটির একটি আইসোট্রপিক পেনাল্টি রয়েছে: এর অর্থ একক মান উভয় দিকেই প্রযোজ্য। এক্স এবং জেড উভয়ই প্রায় একই স্কেলে যেমন স্থানিক প্রয়োগ হিসাবে কাজ করে তখন এটি কাজ করে । কিন্তু যদি আমরা স্থানিক চলক z এর সাথে টেম্পোরাল ভেরিয়েবল টি প্রতিস্থাপন করি ? একক টি অনেক বড় বা একক চেয়ে ছোট হতে পারে এক্স , এবং এই আমাদের দ্বিতীয় ডেরাইভেটিভস একীকরণ বন্ধ নিক্ষেপ করতে পারবেন না কারণ সেই ডেরাইভেটিভস কিছু উদাহরণস্বরূপ (সামগ্রিক ইন্টিগ্রেশন সামঞ্জস্যহীনভাবে অবদান রাখবে, যদি আমরা পরিমাপ টি ন্যানোসেকেন্ড এবং এক্সλxzzttxtxহালকা বছরগুলিতে, সাথে দ্বিতীয় ডেরাইভেটিভের অবিচ্ছেদ্য x এর সাথে দ্বিতীয় ডেরাইভেটিভের অবিচ্ছেদ্যের চেয়ে অনেক বেশি বড় হতে পারে , এবং এইভাবে এক্স দিকের সাথে "উইগগুয়েলিটি" বেশিরভাগই আনপেনালাইজড যেতে পারে)। আমি লিঙ্কযুক্ত "স্মুথ টুলবক্স" এর 15 টি স্লাইডে এই বিষয়ে আরও বিশদ রয়েছে।txx

এটি লক্ষণীয় যে আমরা এবং z এর প্রান্তিক ঘাঁটিগুলিতে বেস ফাংশনগুলিকে পচন করি নি । এখানে বোঝা যাচ্ছে যে বহুবিধ চলক সমর্থনকারী বেসগুলি থেকে বহুবিধ মসৃণগুলি অবশ্যই তৈরি করা উচিত be টেনসর পণ্যটি অবিবাহিত প্রান্তিক ঘাঁটিগুলি থেকে মাল্টিভারিয়েট ঘাঁটি নির্মাণকে সমর্থন করে, যেমন আমি নীচে ব্যাখ্যা করি।xz

3) টেনসর পণ্য মসৃণ

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

y=f(x,t)+ε

আমরা কি করতে চাই ভেরিয়েবল জন্য একটি দ্বি-মাত্রিক ভিত্তিতে গঠন করা হয় এবং টি । আমরা হিসাবে উপস্থাপন করতে পারলে এটি অনেক সহজ হবে :xtf

f(x,t)=fx(x)ft(t)

বীজগণিত / বিশ্লেষণাত্মক অর্থে, এটি অগত্যা সম্ভব নয়। তবে মনে রাখবেন, আমরা এর ডোমেইনের discretizing হয় এবং T (কল্পনা একটি দ্বি-মাত্রিক "জাফরি" এ নট অবস্থানে দ্বারা সংজ্ঞায়িত এক্স এবং টি অক্ষ) "সত্য" ফাংশন যেমন যে ভিত্তিতে ফাংশন উপরিপাত দ্বারা প্রতিনিধিত্ব করা হয় । আমরা যেমন ধরে নিয়েছিলাম যে একটি খুব জটিল অবিভাজনিত ক্রিয়াটি তার ডোমেনের একটি নির্দিষ্ট বিরতিতে একটি সাধারণ কিউবিক ফাংশন দ্বারা প্রায় অনুমান করা যেতে পারে, আমরা ধরে নিতে পারি যে নন-বিভাজক ফাংশন এফ ( এক্স , টি ) সহজ ফাংশনগুলির দ্বারা উত্পাদিত হতে পারে f x ( xxtxtff(x,t)fx(x) and ft(t) on an interval—provided that our choice of basis dimensions makes those intervals sufficiently small!

Our basis expansion, given an i-dimensional basis in x and j-dimensional basis in t, would then look like:

y=β1+β2x+β3fx1(x)+β4fx2(x)+...+βifx(i3)(x)+βi+1t+βi+2tx+βi+3tfx1(x)+βi+4tfx2(x)+...+β2itfx(i3)(x)+β2i+1ft1(t)+β2i+2ft1(t)x+β2i+3ft1(t)fx1(x)+βi+4ft1(t)fx2(x)+...+β2ift1(t)fx(i3)(x)++βijft(j3)(t)fx(i3)(x)+ε

Which may be interpreted as a tensor product. Imagine that we evaluated each basis function in x and t, thereby constructing n-by-i and n-by-j model matrices X and T, respectively. We could then compute the n2-by-ij tensor product XT of these two model matrices and reorganize into columns, such that each column represented a unique combination ij. Recall that the marginal model matrices had i and j columns, respectively. These values correspond to their respective basis dimensions. Our new two-variable basis should then have dimension ij, and therefore the same number of columns in its model matrix.

NOTE: I'd like to point out that since we explicitly constructed the tensor product basis functions by taking products of marginal basis functions, tensor product bases may be constructed from marginal bases of any type. They need not support more than one variable, unlike the multivariate smooth discussed above.

In reality, this process results in an overall basis expansion of dimension ijij+1 because the full multiplication includes multiplying every t basis function by the x-intercept βx1 (so we subtract j) as well as multiplying every x basis function by the t-intercept βt1 (so we subtract i), but we must add the intercept back in by itself (so we add 1). This is known as applying an identifiability constraint.

So we can represent this as:

y=β1+β2x+β3t+β4f1(x,t)+β5f2(x,t)+...+βijij+1fijij2(x,t)+ε

Where each of the multivariate basis functions f is the product of a pair of marginal x and t basis functions. Again, it's pretty clear having constructed this basis that we can still represent this with the matrix equation:

Y=Xβ+ε

Which (still) has the solution:

β=(XTX)1XTY

Where the model matrix X has ijij+1 columns. As for the penalty matrices Jx and Jt, these are are constructed separately for each independent variable as follows:

Jx=βTIjSxβ

and,

Jt=βTStIiβ

This allows for an overall anisotropic (different in each direction) penalty (Note: the penalties on the second derivative of x are added up at each knot on the t axis, and vice versa). The smoothing parameters λx and λt may now be estimated in much the same way as the single smoothing parameter was for the univariate and multivariate smooths. The result is that the overall shape of a tensor product smooth is invariant to rescaling of its independent variables.

I recommend reading all the vignettes on the MGCV website, as well as "Generalized Additive Models: and introduction with R." Long live Simon Wood.


Nice answer. I've since learned quite a lot more than I knew three years ago. But I'm not sure that I would have understood 3 years ago what you wrote today. Or maybe I would have. I think the place to start is to think of a basis expansion in many dimensions as a "net" across the variable space. I suppose tensors can be described as a net with rectangular patterns... And maybe different "shear" forces pulling from each direction.
generic_user

On another note, I would caution you against thinking of the tensor product as representing something spatial. This is because the actual tensor product of marginal x and t basis functions will include tons of zeros which represent the evaluation of basis functions outside of their defined range. The actual tensor product will usually be very sparse.
Josh

1
Thanks for this great summary! Just one remark: The equation after "Our basis expansion," is not completely correct. It does give the correct basis functions, but it gives a parametrization where the corresponding parameters are of product form (βxiβtj).
jarauh

1
@Josh Ok, I tried. It's not easy to have it correct and easy to understand at the same time (and to follow someone else's notation). By the way, the link to smooth-toolbox.pdf seems to be broken.
jarauh

1
Looks good. Apparently your edit was rejected, but I overrode the rejection and approved it. When I started writing this answer I didn't realize just how confusing the expansions would look. I should probably go back and rewrite it with pi (product) notation one of these days.
Josh
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.