এটি কি এলোমেলো সংখ্যা হওয়া উচিত মধ্যে পক্ষপাত পরিচয় করিয়ে দেবে?


11

এলোমেলোভাবে উত্পাদিত ৮০+ মিলিয়ন এবং জিরো সহ একটি ডেটা ফাইল ধরে নিন।

এই ফাইলটি থেকে, আমরা এলোমেলো দশমিক পূর্ণসংখ্যার একটি তালিকা তৈরি করতে চাই।

এই রূপান্তরটি করার পরিকল্পনা এটি।

  1. ৮ মিলিয়ন অঙ্কগুলিকে 4 বাইনারি অঙ্কের গ্রুপিংয়ে ভাগ করুন।
  2. প্রতিটি 4-সংখ্যার বাইনারি দশকে রূপান্তর করুন।
  3. 9 এর চেয়ে বেশি দশমিক মানগুলি ত্যাগ করুন।

এটি 0-9 থেকে এলোমেলো পূর্ণসংখ্যার স্ট্রিংয়ের ফলস্বরূপ

এখানে উদ্বেগের বিষয়। 24 টি বাইনারি অঙ্কগুলিতে 4 বাইনারি সংখ্যার 6 টি গ্রুপিংয়ের সমন্বয়ে 10 থেকে 15 এর মানগুলিতে 17 টি থাকে এবং কেবল 7 টি জিরো থাকে। এই ভারসাম্যহীনতা এমনকি বনাম বিজোড় পূর্ণসংখ্যার বিতরণকে প্রভাবিত করবে, বা কোনওভাবে দশমিক অঙ্কের চূড়ান্ত স্ট্রিংয়ের এলোমেলোভাবে আপস করবে?

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


9
আরও কার্যকর পদ্ধতি আছে। উদাহরণস্বরূপ, আপনি বিট স্ট্রিংটি 10 ​​টি গোষ্ঠীতে বিভক্ত করতে পারেন, তাদের তাদের তিন-অঙ্কের উপস্থাপনা বেস 10 এ রূপান্তর করতে পারেন এবং 1000 বা এর চেয়ে বড় মান সহ যে কোনওটিকে বাতিল করতে পারেন। এটি বিটগুলির কেবলমাত্র 62.5% এর পরিবর্তে 97.6% ব্যবহার করবে। আপনি এর চেয়ে ভাল কিছু করতে পারবেন না। (আপনি 681 এর গ্রুপ ব্যবহার করতে পারেন এবং তাদের 205-সংখ্যার বেস -10 স্ট্রিংগুলিতে রূপান্তর করতে পারেন, যার ফলে বিটগুলির প্রায় 99.7% ব্যবহার করা যায়))
শুক্রবার

উত্তর:


18

আসুন গণনা করুন এবং দেখুন। ফাইলটি নির্মাণ করে, সমস্ত 4-বিট স্ট্রিং সমান সম্ভাবনা রয়েছে। এরকম 16 টি স্ট্রিং রয়েছে। এখানে তারা:

 0. 0000
 1. 0001
 2. 0010
 3. 0011
 4. 0100
 5. 0101
 6. 0110
 7. 0111
 8. 1000
 9. 1001
10. 1010
11. 1011
12. 1100
13. 1101
14. 1110
15. 1111

আপনার পদ্ধতিটি 10 ​​থেকে 15 পর্যন্ত স্ট্রিংগুলি ছুঁড়ে ফেলেছে use সুতরাং আপনি যদি বাস্তবে ব্যবহার করেন তবে আপনি 0 থেকে 9 এর মধ্যে বেছে নেবেন, যার মধ্যে প্রতিটিই পছন্দসইভাবে সমান সম্ভাবনাযুক্ত। এবং আমরা জানি যে উত্পন্ন দশমিক অঙ্কগুলি একে অপরের থেকে স্বতন্ত্র, কারণ প্রত্যেকে 4 বিটের পৃথক স্ট্রিং ব্যবহার করে এবং সমস্ত বিট স্বাধীন। আপনার পদ্ধতিটি একটি সাধারণ ধরণের প্রত্যাখ্যানের নমুনা গঠন করে


5
আমি সেই যুক্তিটি স্পষ্ট দেখতে পাচ্ছি। তবুও আমি উদ্বিগ্ন যে আমি 0 এর চেয়ে বেশি বাইনারি 1 বাদ দিচ্ছি। কেন এই ভারসাম্যহীনতার কোনও প্রভাব নেই?
জোয়েল ডব্লিউ।

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

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

7
জোয়েল, আমি দেখছি আপনি কোথা থেকে এসেছেন। এখানে একটি ভুল ধারণা থাকতে পারে: আপনি প্রক্রিয়াটি বিপরীত করতে পারবেন না। আপনি যদি দশমিক সংখ্যার প্রবাহ থেকে বিটের একটি প্রবাহকে পুনর্গঠন করতে চান তবে আপনাকে 8 এবং 9 এর সমস্তগুলি মুছার মতো কিছু করতে হবে এবং বাকী অঙ্কগুলি বাইনারি ট্রিপলে রূপান্তর করতে হবে। এটি ভারসাম্য পুনরুদ্ধার করবে। প্রকৃতপক্ষে, এটি সহজেই দেখতে পাওয়া যায় যে এই "রাউন্ড ট্রিপ" আপনার মূল স্রোতটিকে চার বিট নিম্বলগুলিতে বিভক্ত করার এবং তাদের সর্বাধিক উল্লেখযোগ্য বিটগুলি ত্যাগ করার সমান 60০ মিলিয়ন বিটের একটি সুন্দর অভিন্ন বিতরণ ক্রম রেখে চলেছে।
whuber

1
@ শুভ মেলা যথেষ্ট; এখনো যোগ করেনি।
কোডিওলজিস্ট

4

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

উপরের গ্রাফের জন্য আর কোডটি

generza=matrix(sample(0:1,4*1e6,rep=TRUE),ncol=4)
uniz=generza[,1]+2*generza[,2]+4*generza[,3]+8*generza[,4]
barplot(hist(uniz[uniz<10],breaks=seq(-0.5,9.5,le=11))$counts,col="steelblue")
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.