পারস্পরিক সম্পর্ক ম্যাট্রিক্স থেকে এলোমেলো ভেরিয়েবলের স্বল্প সংযুক্ত সাবসেট


10

আমার একটি পারস্পরিক সম্পর্ক ম্যাট্রিক্স , যা আমি মাত্লাবের কর্কোফের () মাধ্যমে পিয়ারসনের লিনিয়ার পারস্পরিক সম্পর্ক সহগ ব্যবহার করে পেয়েছি । 100x100 মাত্রার পারস্পরিক সম্পর্কের ম্যাট্রিক্স, অর্থাৎ আমি 100 এলোমেলো ভেরিয়েবলের সাথে সম্পর্কযুক্ত ম্যাট্রিক্সটি গণনা করেছি।A

এই 100 টি এলোমেলো ভেরিয়েবলগুলির মধ্যে আমি 10 টি র্যান্ডম ভেরিয়েবলগুলি খুঁজে পেতে চাই যার পারস্পরিক সম্পর্ক ম্যাট্রিক্সটিতে "সামান্য পারস্পরিক সম্পর্ক" হিসাবে যথাসময়ে উপস্থিত রয়েছে ( পরিমাপের মেট্রিক্সের সাথে সম্পর্কযুক্ত ম্যাট্রিক্স বি এর তুলনায় একটি "ক্যারলেশন ম্যাট্রিক্স বি" কতটুকু পরিমাণের তুলনা করছে দেখুন একটি পারস্পরিক সম্পর্ক মেট্রিক্স)। আমি কেবল জোড়াযুক্ত পারস্পরিক সম্পর্ক সম্পর্কে যত্নশীল।

যুক্তিসঙ্গত পরিমাণে 10 টি এলোমেলো ভেরিয়েবলগুলি খুঁজে পাওয়ার জন্য কি কোনও ভাল পদ্ধতি আছে (উদাহরণস্বরূপ আমি (10010) সংমিশ্রণগুলি চেষ্টা করতে চাই না )? আনুমানিক অ্যালগরিদম ঠিক আছে।


1
metrics to measure the overall correlation। আপনি নির্ধারক সম্পর্কে বিশেষভাবে চিন্তা করছেন?
ttnphns 3'14

1
একটি খুব অনুরূপ প্রশ্ন stats.stackexchange.com/q/73125/3277
ttnphns

1
লগ-নির্ধারক একটি সাবমডুলার ফাংশন ( এখানে পৃষ্ঠা 18 দেখুন )। দুর্ভাগ্যক্রমে, এটি ক্রমবর্ধমান নয়, যার অর্থ ক্লাসিক 11/e লোভী অনুমানের ফলাফলটি প্রয়োগ হয় না, তবে এটি এখনও মনে হয় যে এটি কোনওভাবে সহায়ক হতে পারে ....
ডগাল

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

3
গুচ্ছ বিশ্লেষণ সহ সেই সহজ ধারণাটি সম্পর্কে কী। নিনদূরত্ব হিসাবে (বৈষম্য) এবং একটি নির্বাচিত পদ্ধতি দ্বারা ক্লাস্টারিং করা (আমি সম্ভবত ওয়ার্ড বা গড় লিঙ্কেজ শ্রেণিবদ্ধ নির্বাচন করব)। 10 টি আইটেম সমন্বিত সর্বাধিক টাইট ক্লাস্টার নির্বাচন করুন। |r|
ttnphns

উত্তর:


3

আসুন আমাদের পছন্দের পরিমাপ হিসাবে পরম জুটিযুক্ত পারস্পরিক সম্পর্কগুলির যোগফলটি বিবেচনা করি। আমরা এইভাবে সহ সাথে একটি ভেক্টর যেখানে হ্রাস করবে যেখানে।v{0,1}Nl1(v)=nvQvQij=|Aij|

ধরুন প্রশ্নটি এ হিসাবেও ইতিবাচক সুনিশ্চিত, সীমাবদ্ধ চতুর্ভুজ অপ্টিমাইজেশান সমস্যা সমাধানে সমস্যা হ্রাস পেয়েছে:

v=min vQv s.t. l1(v)=n, vi{0,1}

এটি ফলোলিং শিথিলকরণের পরামর্শ দেয়:

v=min vQv s.t. l1(v)=n, vi[0,1]

যা সহজেই অফ-দ্য শেল্ফ সলভারগুলি ব্যবহার করে সমাধান করা যেতে পারে; তারপরে ফলাফলটি বৃহত্তম উপাদানগুলির দ্বারা প্রদত্ত ।nv

নমুনা মতলব কোড:

N=100;
n=10;
% Generate random data
A=rand(N,1000);
C=corrcoef(A');
Q=abs((C+C')/2); % make sure it is symmetric
x = cplexqp(Q,zeros(1,N),[],[], ones(1, N),n, zeros(N,1), ones(N,1));
% If you don't use CPLEX, use matlab's default
% x = quadprog(Q,zeros(1,N),[],[], ones(1, N),n, zeros(N,1), ones(N,1));
assert(abs(sum(x)-n)<1e-10);
% Find the n largest values
I=sort(x); 
v=zeros(size(x)); v(x>I(N-n))=1; 
assert(abs(sum(v)-n)<1e-10);
% Make sure we do better than 10K random trials
for i=1:10000
   vc=zeros(size(x)); vc(randperm(N,n))=1;
   assert(sum(vc)==n, 'Wrong l0 norm');
   assert(vc'*Q*vc>v'*Q*v, 'Improves result');
end
% Show results
J=find(v==1);
fprintf('The optimal solution total off-diagonal correlations are %1.3f\n', v'*Q*v-n);
fprintf('The matrix:\n');
C(J,J)

আপনার কি কোনও সুযোগে এই স্ক্রিপ্টটির পাইথন সংস্করণ রয়েছে?
ক্যাসিমির

2

এটি @ ttnphns এর হায়ারারিকিকাল ক্লাস্টারিং আইডিয়া থেকেও খারাপ হতে পারে। কিন্তু: আমি শুধুমাত্র জুড়ে ঘটেছে একটি কাগজ যে ব্যবহারসমূহ একটি ক্রমবর্ধমান submodular উদ্দেশ্য ফাংশন হিসাবে:logdet(I+A)

ভানচিনাথন, মারফুর্ট, রোবেলিন, কোসম্যান এবং ক্রাউস। প্রচুর ডেটা থেকে মূল্যবান আইটেমগুলি আবিষ্কার করা । KDD 2015. ( doi , arXiv )

আপনি যদি মনে করেন যে এটি "ন্যূনতম সম্পর্কযুক্ত" এর একটি যুক্তিসঙ্গত পরিমাপ, আপনি কেবলমাত্র পুনরাবৃত্তভাবে সেই সর্বাধিক পয়েন্টটি বেছে নিয়ে অনুকূল সেটটির ফ্যাক্টরের মধ্যে পেতে পারেন । এটি ব্লক এলইউ পচানোর সাথে দক্ষতার সাথে সম্পন্ন করা যেতে পারে , যেখানে ইতিমধ্যে ম্যাট্রিক্সে প্রবেশের প্রবেশদ্বারগুলির সাথে সম্পর্কের ভেক্টর:11/ev

det[I+AvvT2]=det([I0vT(I+A)11][I+A002vT(I+A)1v][I(I+A)1v01])=det[I0vT(I+A)11]det[I+A002vT(I+A)1v]det[I(I+A)1v01]=(2vT(I+A)1v)det(I+A)

এবং অবশ্যই আপনার , যেখানে এর কোলেস্কি ফ্যাক্টেরাইজেশন এবং ত্রিভুজাকার দ্রাবক ব্যবহার করে যা । তাই এই পুরো প্রক্রিয়া গ্রহণ করা উচিত সময় নিতে বাইরে উপাদান পারস্পরিক সম্পর্ক ম্যাট্রিক্স অভিমানী ইতিমধ্যে নির্ণয় করা হয় ।vT(I+A)1v=L1v2LI+AO(n2)O(k=1nNk2+k3)=O(Nn3)nN


দেখে মনে হচ্ছে কাগজের লিঙ্কটি মারা গেছে। আপনার কাছে প্রশংসাপত্রটি সহজ?
সাইকোরাক্স মনিকাকে

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

1

"আমি কেবল জুটিওয়ালা পারস্পরিক সম্পর্কের বিষয়ে যত্নশীল" দ্বারা আপনি কী বোঝাতে চেয়েছেন তা পুরোপুরি বুঝতে আমি নিশ্চিত নই , তবে এখানে এমন কিছু যা সহায়তা করতে পারে: আপনার পারস্পরিক সম্পর্ক ম্যাট্রিক্সের বিপরীতটি ব্যবহার করুন। মেয়াদ সমান , যেখানে হয় এক্স থেকে নির্মিত ম্যাট্রিক্স যেখানে কলাম এবং লাইন সরানো হয়েছে।Aii1det(A0i)/det(A)A0i(n1)(n1)Ai

in সর্বনিম্ন তির্যক সহগের সূচক পাওয়া এভাবে আপনাকে জানায় যে সেটটির বাকী অংশের সাথে কোন পয়েন্টের সর্বনিম্ন সম্পর্ক রয়েছে।A1

আপনি প্রকৃতপক্ষে যা করতে চান তার উপর নির্ভর করে আপনি হয় উল্টোর ত্রিভুজের 10 টি সর্বনিম্ন মানগুলি নিতে পারেন বা প্রথমটি পেতে পারেন, তারপরে মোছা বিন্দুর সাথে ইনভার্টটি গণনা করুন ইত্যাদি।

আপনার যদি এটি প্রয়োজন না হয় তবে আমার মনে হয় এই কৌশলটি এখনও সহায়ক হতে পারে তবে আমি কীভাবে তা নিশ্চিত নই।


0

এই এর অন্তত pairwise পারস্পরিক সম্পর্ক আইটেম: যেহেতু বলে একটি পারস্পরিক সম্পর্ক ব্যাখ্যা দুটি সিরিজ এটা আপনার টার্গেট জন্য সম্পর্কযুক্তরূপে বর্গের সমষ্টি কমানোর জন্য আরো ইন্দ্রিয় তোলে মধ্যে সম্পর্ক আইটেম। এখানে আমার সহজ সমাধান।kn0.60.36k

আপনার ম্যাট্রিক্স পারস্পরিক সম্পর্কের ম্যাট্রিক্সের সাথে সম্পর্কিত। প্রতিটি কলামের স্কোয়ারগুলি যোগ করুন। সর্বাধিক যোগফল সহ কলাম এবং সংশ্লিষ্ট সারিটি সরিয়ে ফেলুন। আপনার এখন একটি ম্যাট্রিক্স রয়েছে। আপনার কাছে ম্যাট্রিক্স না হওয়া পর্যন্ত পুনরাবৃত্তি করুন । এছাড়াও আপনি শুধু সঙ্গে কলাম এবং সংশ্লিষ্ট সারি রাখতে পারে ক্ষুদ্রতম অঙ্কের। পদ্ধতিগুলির সাথে তুলনা করে, আমি একটি ম্যাট্রিক্সে এবং সাথে দেখতে পেলাম যে ঘনিষ্ঠ অঙ্কের সাথে কেবল দুটি আইটেমই আলাদাভাবে রাখা এবং মুছে ফেলা হয়েছিল।n×n(n1)×(n1)k×kkn=43k=20


2
এটি কার্যকর হতে পারে তবে এটি অ্যাডহক শোনায় (এটি একটি লোভী অ্যালগরিদমের মতো পড়ে) এবং আপনি কোনও গাণিতিক কারণ প্রস্তাব করেন নি যে এটি কাজ করার পরামর্শ দেয়। এটি কার্যকর হবে কি আপনার কোনও আশ্বাস, বা এটি সর্বোত্তম সমাধানের কতটা কাছাকাছি আসবে তার কোনও সীমা রয়েছে?
হোয়বার

আমি ব্যবহৃত Gurobi এর শাখা ও বাঁধা অবস্থায় সমাধানের জন্য সাপেক্ষে সহসংযোগ ম্যাট্রিক্স এবং জন্য অনুকূলতার জন্য । আমি 8.13 এর একটি চূড়ান্ত উদ্দেশ্য মান পেয়েছি। তুলনা করার জন্য, এই লোভী পদ্ধতিটি 42.87 অর্জন করেছে তবে এলোমেলো নির্বাচনের প্রত্যাশিত উদ্দেশ্য মান ছিল 62.07। সুতরাং যে দুর্দান্ত না কিন্তু অকেজোও না। এবং এই পদ্ধতিটির অবশ্যই সরলতা এবং গতি আছে এটির জন্য! x=argminx{0,1}n(xTC x)i=1nxi=k418×418k=20
ক্যাসিমির

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