র‌্যাঙ্কের ঘাটতি কী এবং কীভাবে এটি মোকাবেলা করতে হবে?


87

Lme4 ব্যবহার করে একটি লজিস্টিক রিগ্রেশন ফিটিংয়ের সাথে শেষ হয়

Error in mer_finalize(ans) : Downdated X'X is not positive definite. 

এই ত্রুটির সম্ভাব্য কারণ সম্ভবত র‍্যাঙ্কের ঘাটতি। র‌্যাঙ্কের ঘাটতি কী এবং আমি কীভাবে এটি সমাধান করব?


2
আমি আপনাকে পরামর্শ দিচ্ছি যে আপনার ভেরিয়েবলগুলির কোনওটিই ধ্রুবক নয় (অর্থাত্ কোনও বৈকল্পিক নয়) check যদি আপনি এই স্কোরটিতে ভাল থাকেন তবে আপনার কোনও জটিল মূল্যবান ভেরিয়েবল বা অসীম ভেরিয়েবল আছে কিনা তা পরীক্ষা করে দেখুন।
ত্রিস্তান

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

2
আমি ধনী আমিরিসরোয়ের সাথে একমত যেহেতু এটি বলে যে এক্স'এক্স ইতিবাচক সুনির্দিষ্ট নয় বলে আমি মনে করি তারা বোঝাচ্ছে যে ডিজাইনের ম্যাট্রিক্স এক্স'এক্স একক এবং তাই এর পূর্ণ পদ নেই। সুতরাং কমোয়্যারেটের মধ্যে কমপক্ষে একটিতে অন্য সমবায়ীদের সঠিক লিনিয়ার সংমিশ্রণ হিসাবে রচনা করা যেতে পারে।
মাইকেল চেরনিক 25'12

উত্তর:


123

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

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

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

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

কখনও কখনও এটি মডেল পছন্দ। এটি "পর্যাপ্ত ডেটা নয়" হিসাবে দেখা যেতে পারে, তবে অন্য দিক থেকে। আপনি একটি জটিল মডেল অনুমান করতে চান তবে এটি করার জন্য পর্যাপ্ত ডেটা সরবরাহ করেছেন।

উপরের সমস্ত উদাহরণে উত্তরটি হ'ল আরও ডেটা পাওয়া, এমন জায়গা থেকে বুদ্ধিমানের সাথে নমুনা তৈরি করা যা আপনার বর্তমানে যে প্রক্রিয়াটির অভাব রয়েছে সেই প্রক্রিয়া সম্পর্কে তথ্য সরবরাহ করবে। পরীক্ষাগুলির নকশা শুরু করার জন্য ভাল জায়গা।

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

প্রথমে ইউনিট এবং স্কেলিং সম্পর্কে কথা বলা যাক। ধরুন আমি এমন কোনও সমস্যা সমাধানের চেষ্টা করেছি যেখানে একটি ভেরিয়েবল হ'ল অনেকের চেয়ে অনেকের বড় আকারের অর্ডার than উদাহরণস্বরূপ, ধরুন আমার একটি সমস্যা আছে যা আমার উচ্চতা এবং জুতার আকার জড়িত। আমি আমার উচ্চতা ন্যানোমিটারে পরিমাপ করব। সুতরাং আমার উচ্চতা হবে প্রায় 1.78 বিলিয়ন (1.78e9) ন্যানোমিটার। অবশ্যই, আমি আমার জুতার আকার কিলো-পার্সেকসে মাপতে বেছে নেব, তাই 9.14e-21 কিলো-পার্সেকস। আপনি যখন রিগ্রেশন মডেলিং করেন, লিনিয়ার রিগ্রেশন হ'ল লিনিয়ার বীজগণিত সম্পর্কে, যা ভেরিয়েবলের রৈখিক সংমিশ্রণকে জড়িত। এখানে সমস্যাটি হ'ল এই সংখ্যাগুলি বিশাল আকারের অনেকগুলি আদেশের দ্বারা পৃথক হয়েছে (এবং এমনকি একই ইউনিটও নয়)) যখন কোনও কম্পিউটার প্রোগ্রাম সংখ্যার যোগ করতে এবং বিয়োগের চেষ্টা করে যা পরিমাণের এতগুলি আদেশের দ্বারা পৃথক হয় (ডাবল স্পষ্টতার জন্য) নম্বর,

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

এরপরে, আপনি বড় সংখ্যা এবং সেই সংখ্যায় ছোট পার্থক্য নিয়ে সমস্যা দেখতে পাচ্ছেন। সুতরাং, ধরুন আপনি এমন ডেটা সহ একটি মাঝারিভাবে উচ্চতর অর্ডার পলিনোমিয়াল মডেল তৈরি করার চেষ্টা করেছেন যেখানে আপনার ইনপুটগুলি সমস্ত ব্যবধানে অন্তর্ভুক্ত রয়েছে [1,2]। স্কোয়ারিং, কিউবিং, ইত্যাদি, 1 বা 2 এর ক্রমযুক্ত সংখ্যাগুলি ডাবল যথার্থ পাটিগণনে কাজ করার সময় কোনও সমস্যা তৈরি করবে না। বিকল্পভাবে, প্রতিটি সংখ্যায় 1e12 যুক্ত করুন। তত্ত্বগতভাবে, গণিত এটির অনুমতি দেবে। এটি কেবল এক্স-অক্ষের ভিত্তিতে যে কোনও বহুপদী মডেল তৈরি করে তা হ'ল। এটি ঠিক একই আকারে থাকতে পারে তবে ডানদিকে 1e12 দ্বারা অনুবাদ করা হবে। অনুশীলনে, র‌্যাঙ্ক ঘাটতিজনিত সমস্যার কারণে লিনিয়ার বীজগণিত খারাপভাবে ব্যর্থ হবে will আপনি ডেটা অনুবাদ ছাড়া কিছুই করেন নি, তবে হঠাৎ আপনি একক ম্যাট্রিকগুলি পপ আপ করতে দেখেন।

সাধারণত করা মন্তব্যটি "আপনার ডেটাটিকে কেন্দ্র করে স্কেল করার" পরামর্শ দেবে। কার্যকরভাবে এটি ডেটা স্থানান্তর এবং স্কেল করতে বলেছে যাতে এটির শূন্যের কাছাকাছি গড় এবং প্রায় একটি স্ট্যান্ডার্ড বিচ্যুতি ঘটে That এটি বেশিরভাগ বহুতল মডেলের কন্ডিশনারকে ব্যাপকভাবে উন্নতি করবে, র‌্যাঙ্কের ঘাটতিজনিত সমস্যাগুলি হ্রাস করবে।

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

আমি অবশ্যই একটি রৈখিক সিস্টেমে র‍্যাঙ্কের ঘাটতির জন্য অনেকগুলি কারণ অবশ্যই রেখেছি এবং আমি দীর্ঘকাল ধরে এঁকেছি। আশা করি আমি সহজ শর্তাবলী এগুলি অন্তর্ভুক্ত করেছি এবং সমস্যাটি সমাধানের একটি উপায় ব্যাখ্যা করতে পেরেছি।


42

ম্যাট্রিক্সের র‌্যাঙ্কের সংজ্ঞার জন্য, আপনি লিনিয়ার বীজগণিত সম্পর্কিত যে কোনও ভাল পাঠ্যপুস্তক উল্লেখ করতে পারেন, বা উইকিপিডিয়া পৃষ্ঠায় একবার নজর রাখতে পারেন ।

n×pXnpp×pXTX(XTX)1

XXnXTX

(XTX)1

X


23

ইউজার 974 এর উত্তর মডেলিং দৃষ্টিকোণ থেকে চমত্কার এবং গুই 11উমের উত্তর গাণিতিক দৃষ্টিকোণ থেকে দুর্দান্ত। আমি পূর্বের উত্তরটি মিশ্র মডেলিং দৃষ্টিকোণ থেকে কঠোরভাবে পরিমার্জন করতে চাই : বিশেষত একটি জেনারেলাইজড মিশ্র মডেলিং (জিএলএমএম) দৃষ্টিকোণ থেকে। আপনি দেখতে পাচ্ছেন, আপনি আর ফাংশনটি উল্লেখ করেছেন mer_finalizeযা দুর্দান্ত lme4প্যাকেজে রয়েছে। আপনি আরও বলছেন যে আপনি একটি লজিস্টিক রিগ্রেশন মডেল ফিট করছেন।

এমন অনেকগুলি সমস্যা রয়েছে যা এই জাতীয় সংখ্যার আলগোরিদিমগুলির সাথে ক্রপ হয়। নির্দিষ্ট প্রভাবগুলির মডেল ম্যাট্রিক্সের ম্যাট্রিক্স কাঠামোর বিষয়টি অবশ্যই বিবেচনা করার মতো, যেমন ব্যবহারকারী 974 ইঙ্গিত করেছে। তবে এটি নির্ধারণ করা খুব সহজ, কেবলমাত্র কোনও মডেলটিতে model.matrixআপনার formula=এবং data=আর্গুমেন্টগুলির গণনা করুন এবং detফাংশনটি ব্যবহার করে এর নির্ধারকটি নিন । এলোমেলো প্রভাবগুলি তবে ব্যাখ্যা, সংখ্যাগত প্রাক্কলন রুটিন এবং স্থির প্রভাবগুলির উপর অনুমানের জটিলতা (আপনি সাধারণত "নিয়মিত" রিগ্রেশন মডেলটিতে রিগ্রেশন সহগ হিসাবে বিবেচনা করেন) in

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

দুর্ভাগ্যক্রমে, ভেন্যারেবলস এবং রিপলি আপনার মতো রূপান্তর-ব্যর্থতার জন্য ডায়াগনস্টিকগুলিতে খুব বেশি বিনিয়োগ করেনি। এ জাতীয় বার্তা পৌঁছে দেওয়ার সম্ভাব্য ত্রুটিগুলির অগণিত পরিস্থিতিতে এমনকি অনুমান করাও কার্যত অসম্ভব। তারপরে, আমি নীচে ব্যবহার করি এমন ডায়াগনস্টিকগুলি বিবেচনা করুন:

  1. প্রতি ক্লাস্টারে কত পর্যবেক্ষণ আছে?
  2. জিইই ব্যবহার করে প্রান্তিক মডেল থেকে প্রাপ্ত ফলাফলগুলি কী?
  3. গুচ্ছগুলির আইসিসি কী? গুচ্ছ বৈচিত্র্যের মধ্যে কি ক্লাস্টারের ভিন্নতা আছে?
  4. 1-পদক্ষেপের প্রাক্কলনকারীকে ফিট করুন এবং আনুমানিক এলোমেলো প্রভাবগুলি দেখুন। তারা প্রায় স্বাভাবিক?
  5. বায়েশিয়ান মিশ্র মডেলটিকে ফিট করুন এবং স্থির প্রতিক্রিয়াগুলির জন্য উত্তর বিতরণ দেখুন distribution তাদের কি প্রায় কোনও সাধারণ বিতরণ রয়েছে?
  6. গুচ্ছগুলির একটি প্যানেল প্লট দেখুন মসৃণ ব্যবহারের ফলে ফলাফলের বিরুদ্ধে এক্সপোজার বা আগ্রহের রেজিস্টার দেখায়। প্রবণতাগুলি কি সামঞ্জস্যপূর্ণ এবং স্পষ্ট বা এমন অনেকগুলি উপায় রয়েছে যা এই জাতীয় প্রবণতাগুলি ব্যাখ্যা করা যেতে পারে? (উদাহরণস্বরূপ, অপ্রকাশিত বিষয়গুলির মধ্যে "ঝুঁকি" কী, এক্সপোজারটি প্রতিরক্ষামূলক বা ক্ষতিকারক বলে মনে হয়?)
  7. "আদর্শ" চিকিত্সার প্রভাব অনুমান করার জন্য কেবলমাত্র ব্যক্তির জন্য পর্যাপ্ত সংখ্যক পর্যবেক্ষণ (যেমন, এন = 5 বা এন = 10) থাকা স্যাম্পলগুলিকে সীমাবদ্ধ করা সম্ভব?

পর্যায়ক্রমে, আপনি কিছু ভিন্ন মডেলিং পদ্ধতির বিবেচনা করতে পারেন:

  1. ক্লাস্টার স্তর / স্বতঃস্ফূর্তভাবে ভিন্ন ভিন্নতার মডেল করতে আপনি কি পর্যাপ্ত ক্লাস্টার বা টাইম পয়েন্ট ব্যবহার করতে পারেন যা আপনি একটি নির্দিষ্ট প্রভাব (যেমন গ্রুপ সূচক বা বহুপদী সময় প্রভাব) ব্যবহার করতে পারেন?
  2. প্রান্তিক মডেল কি উপযুক্ত (স্ট্যান্ডার্ড ত্রুটি অনুমানের দক্ষতা উন্নত করতে জিআইই ব্যবহার করে তবে এখনও কেবল স্থির প্রভাবগুলি ব্যবহার করছেন)
  3. এলোমেলো প্রভাবগুলির পূর্বে কোনও তথ্যপ্রযুক্ত বায়েশিয়ান মডেল কি অনুমানের উন্নতি করতে পারে?

2
+1: মূল প্রশ্নের "মিশ্র" অংশটি সম্বোধন করার জন্য আপনাকে ধন্যবাদ। এই পোস্টটি সুন্দরভাবে উত্তরগুলির একটি ভাল সেট পরিপূরক।
whuber
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.