আমার গণনা গবেষণাকে পুনরুত্পাদনযোগ্য করার জন্য কোন জার্নাল নিবন্ধ (বা অনলাইন পোস্ট) দিয়ে আমার কী উপাদান অন্তর্ভুক্ত করা উচিত?


23

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

উত্তরগুলিতে বিশেষভাবে ব্যবহারগুলি হ'ল মূলতঃ সেই পরামর্শগুলি - কার্যপ্রবাহগুলি বাস্তবায়নের সম্ভাব্য উপায়। সিস্টেম-অজোনস্টিক বা লিনাক্স-ভিত্তিক ওয়ার্কফ্লোগুলি ভাল। এছাড়াও, আপনার যে কোনও প্রাসঙ্গিক ব্যক্তিগত অভিজ্ঞতা নিয়ে আলোচনা করাও সহায়ক হবে।

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

উত্তর:


17

গুরুত্বের অর্থে।

সোর্স কোড

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

রান-টাইম প্যারামিটার / ইনপুট ফাইল

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

চিত্র এবং টেবিল উত্পন্ন করার জন্য স্ক্রিপ্টগুলি

এই স্ক্রিপ্টগুলি অন্তর্ভুক্ত করা খুব সহায়ক, উভয়ই পরিসংখ্যানগুলি কী দেখায় সে সম্পর্কে কোনও প্রশ্ন স্পষ্ট করতে এবং পরামিতিগুলি পরিবর্তন করে বা অ্যালগরিদম পরিবর্তন করে যদি পাঠকেরা কীভাবে পরিবর্তন ঘটে তা পরীক্ষা-নিরীক্ষা করতে।


ইউনিট পরীক্ষা অন্তর্ভুক্ত করা কতটা গুরুত্বপূর্ণ হবে? পুনরুত্পাদনযোগ্যতার জন্য আমার অন্তর্ভুক্ত কোডটি কত ভালভাবে ডকুমেন্ট করা উচিত?
জেফ অক্সবেরি

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

6

বেশিরভাগ জার্নালগুলি কোনও আনুষ্ঠানিক উপায়ে সেট আপ করা হয় না তবে আমরা সম্প্রতি সংখ্যার সফ্টওয়্যার সংরক্ষণাগারটি প্রতিষ্ঠা করেছি যা উত্স কোড এবং অন্য যে সমস্ত প্রয়োজনীয় জিনিসটি নিবন্ধের অংশ হতে হবে তা নির্দিষ্টভাবে তৈরি করার উদ্দেশ্যে। এটি দেখুন: http://journals.tdl.org/ans জমাটি স্বাগত!


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

1
@ জ্যাকপলসন: এটি এমন একটি বিষয় যা আমরা সম্পাদকদের মধ্যে দৈর্ঘ্যে আলোচনা করেছি এবং যা আমরা সম্প্রদায়ের অন্যদের সাথে আরও বৃহত্তর দৈর্ঘ্যে আলোচনা করেছি। আমি মনে করি আমরা সবাই আপনার বক্তব্যটি দেখতে পাচ্ছি, তবে একই সাথে আমরা অনুভব করেছি যে আমরা দুটি কারণে এটি অন্য কোনও উপায়ে করতে পারি না: (i) এলোমেলো প্রকল্প এক্স এর জন্য পর্যালোচক কোথায় পাবেন তা আমরা জানি না। (ii) সম্প্রদায়ের মধ্যে একটি নির্দিষ্ট sensক্যমত্য রয়েছে যার প্রকল্পগুলি উচ্চমানের এবং কোনটি নয়; আমরা চাইনি যে এএনএস প্রতিটি ওয়ানবে প্রকল্পের আউটলেট হয়ে উঠুক। ওয়েবপৃষ্ঠায় আমরা যেমন উল্লেখ করেছি, আমরা শেষ পর্যন্ত সমস্ত উচ্চ মানের প্যাকেজ অন্তর্ভুক্ত করতে চাই।
ওল্ফগ্যাং ব্যাঙ্গার্থ

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

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

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

3

মধ্যে

স্টডডেন, ভি। ২০০৯। "পুনরুত্পাদনযোগ্য বৈজ্ঞানিক গবেষণার জন্য আইনী কাঠামো।" সিআইএসই

ভিক্টোরিয়া স্টডডেন পূর্ণ "গবেষণা সংমিশ্রণ" প্রকাশের পরামর্শ দিয়েছেন এবং নীচের উপাদানগুলি পি তে তালিকাভুক্ত করেছেন। 38:

  1. গবেষণা পত্র
  2. ডেটা - ডেটা প্রক্রিয়াকরণের জন্য ডকুমেন্টেশন এবং কোড সহ
  3. পরীক্ষা - সমস্ত উত্স কোড; ডকুমেন্টেশন, প্যারামিটার, সেটিংস এবং অপারেটিং সিস্টেম নির্ভরতা
  4. পরীক্ষার ফলাফল - পরিসংখ্যান, ডেটা, চিত্রের উত্স ফাইলগুলি; এবং পরীক্ষামূলক ফলাফলের প্রক্রিয়াকরণের ডকুমেন্টেশন এবং ব্যাখ্যা
  5. কোন সহায়ক উপাদান

2

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


2

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

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