প্রশ্ন:
কোড তৈরির জন্য কি এমন কোনও পদ্ধতি বা তত্ত্ব আছে যা ম্যাট্রিক্স ঘন হয়ে থাকে এবং কেবল শূন্য এবং এর সাথে পূর্ণ হয়ে গেলে ম্যাট্রিক্স-ভেক্টর গুণকে কার্যকরভাবে প্রয়োগ করে? আদর্শভাবে, অপ্টিমাইজড কোডটি নকলকৃত কাজ হ্রাস করতে পূর্বে গণিত তথ্যের পদ্ধতিগত ব্যবহার করবে।
অন্য কথায়, আমি একটি ম্যাট্রিক্স আছে এবং আমি কিছু উপর ভিত্তি করে precomputation কাজ করতে চান , যে কম্পিউটিং করতে হবে যতটা সম্ভব দক্ষ হিসাবে যখন আমি পরে ভেক্টর গ্রহণ ।
একটি আয়তক্ষেত্রাকার ঘন বাইনারি ম্যাট্রিক্স যা "সংকলন সময়" নামে পরিচিত, যখন একটি অজানা সত্য ভেক্টর যা কেবল "রান টাইমে" পরিচিত।
উদাহরণ 1: (স্লাইডিং উইন্ডো)
আমার কথাটি বর্ণনা করার জন্য আমাকে একটি সহজ ছোট উদাহরণ ব্যবহার করুন। ম্যাট্রিক্স বিবেচনা করুন,
একটি স্ট্যান্ডার্ড ম্যাট্রিক্স-ভেক্টর গুণিত করা ঠিক এইভাবে গণনা করবে। যাইহোক, এই কাজ অনেক অপ্রয়োজনীয়। আমরা "চলমান মোট" ট্র্যাক রেখে কম খরচে একই ম্যাট্রিক্স গণনা করতে পারি এবং পরবর্তী নম্বর পেতে যোগ / বিয়োগ করে:
উদাহরণ 2: (শ্রেণিবদ্ধ কাঠামো)
পূর্ববর্তী উদাহরণে, আমরা কেবল চলমান মোটের উপর নজর রাখতে পারি। তবে, সাধারণত মধ্যবর্তী ফলাফলের একটি গাছ তৈরি এবং সংরক্ষণ করা প্রয়োজন। উদাহরণস্বরূপ, এক গনা পারেW=এমভিদক্ষতার অন্তর্বর্তী ফলাফল একটি গাছ ব্যবহার করছে:
- গণনা এবং W 7 , এবং পেতে তাদের যোগ W 3 ।
- গণনা এবং W 6 , এবং পেতে তাদের যোগ W 2 ।
- ডাব্লু 1 পেতে এবং ডাব্লু 3 যোগ করুন
উপরের উদাহরণগুলির কাঠামোটি দেখতে সহজ, তবে প্রকৃত ম্যাট্রিকগুলির জন্য আমি আগ্রহী, কাঠামোটি এত সহজ নয়।
উদাহরণ 3: (নিম্ন পদ)
কিছু বিভ্রান্তি দূর করার জন্য, ম্যাট্রিকগুলি সাধারণত বিরল হয় না। বিশেষত, এই সমস্যাটি সমাধান করার একটি পদ্ধতিতে ম্যাট্রিকগুলি প্রয়োগ করার জন্য দক্ষ পদ্ধতিগুলি সন্ধান করা দরকার যেখানে বড় ব্লকগুলি পূর্ণ থাকে। উদাহরণস্বরূপ, বিবেচনা করুন
এই ম্যাট্রিক্স দুই র্যাঙ্ক -1 ম্যাট্রিক্স, পার্থক্য যেমন পচে যায়
তাই একটি ভেক্টর তার কর্ম দক্ষতার দ্বারা নির্ণিত হতে পারে, W 1
প্রেরণা:
আমি কিছু চিত্র প্রক্রিয়াকরণের জন্য একটি সংখ্যাসূচক পদ্ধতিতে কাজ করছি এবং বিভিন্ন কাঠামোর সাথে বেশ কয়েকটি বড় ঘন ম্যাট্রিক রয়েছে যা সর্বকালের জন্য স্থির থাকে। পরে এই ম্যাট্রিকগুলি অনেক অজানা ভেক্টর v i এ প্রয়োগ করা দরকার যা ব্যবহারকারীর ইনপুটটির উপর নির্ভর করবে। এখনই আমি প্রতি ম্যাট্রিক্স ভিত্তিতে দক্ষ কোড নিয়ে আসতে পেন্সিল এবং কাগজ ব্যবহার করছি, তবে আমি ভাবছি যে প্রক্রিয়াটি স্বয়ংক্রিয় করা যায় কিনা be
সম্পাদনা: (পোস্টস্ক্রিপ্ট)
এখানে এখন পর্যন্ত সমস্ত উত্তর (9/5/15 পর্যন্ত) আকর্ষণীয়, কিন্তু আমি আশা হিসাবে সন্তুষ্টিজনকভাবে প্রশ্নের উত্তর কেউ দেয় না। সম্ভবত দেখা যাচ্ছে যে এটি একটি কঠোর গবেষণামূলক প্রশ্ন এবং এর উত্তরের উত্তর কেউ জানে না।
যেহেতু সময় ফুরিয়েছে আমি এভিলজেএস এর উত্তরে অনুদান দিচ্ছি যেহেতু এটি সঠিক প্রশ্নের সমাধান করে। তবে, আমি উত্তরটি আরও স্পষ্ট এবং বিস্তারিত ব্যাখ্যা থাকতে চাই।
ট্র্যানিস্টোরের উত্তরটি এই প্রশ্ন এবং অনলাইন বুলিয়ান ম্যাট্রিক্স-ভেক্টর বহুগুণ (ওএমভি) সমস্যার মধ্যে একটি সংযোগ তৈরি করে, তবে সংযোগটি এই প্রশ্নটি যা জিজ্ঞাসা করছে ঠিক তা নয়। বিশেষত, নিম্নলিখিত অনুমানটি সত্যিই ফিট করে না (গা bold় জোরের খনি),
এখন অনুমান সবার জন্য এবং সব এন × এন ম্যাট্রিক্স M আমরা একটি অ্যালগরিদম জানি , সব ভেক্টরের জন্য বনাম নির্ণয় এম ভি সত্যিই subquadratic সময়, অর্থাত সময় হে ( ঢ 2 - ε ) কিছু ε > 0 ।
সমস্ত ম্যাট্রিকের জন্য subquadratic অ্যালগরিদম আছে কি না তা একটি নির্দিষ্ট ম্যাট্রিক্সের জন্য অ্যালগরিদম সন্ধান করার প্রশ্নটি যত দ্রুত সম্ভব ততোধিক দৃষ্টিভঙ্গি। বেশিরভাগ 0-1 ম্যাট্রিকগুলি এলোমেলো শব্দের মতো দেখায় এবং (যদি আমি অনুমান করি তবে) সম্ভবত সাবক্যাড্র্যাটিক অ্যালগরিদম নেই। তবে, সত্যিকারের খারাপ ম্যাট্রিক্স আছে তা আমাকে ভাল ম্যাট্রিক্সে দ্রুত অ্যালগরিদম খুঁজে পাওয়া থেকে বিরত রাখে না, উদাহরণস্বরূপ, একটি "স্লাইডিং উইন্ডো" ম্যাট্রিক্স।
vzn- এর উত্তর, প্রথম উত্তর , দ্বিতীয় উত্তর আকর্ষণীয় (এবং আমার মতে এতগুলি ডাউনভোটের প্রাপ্য নয়) তবে তারা সেখানে মন্তব্যে আলোচিত কারণে প্রশ্নটিতে প্রয়োগ করে না।