در الگوریتم‌های یادگیری ماشین که با زبان برنامه نویسی پایتون پیاده سازی می‌شود، یک مفهوم ساده ولی مهم وجود دارد؛ تصادفی بودن. مقداردهی اولیه تصادفی یا تولید عدد تصادفی در شبکه عصبی مصنوعی، بخش مهمی از پیکربندی و ارزیابی Machine Learning است که بین دو بازه ابتدایی و انتهایی انجام می‌پذیرد. تولید اعداد تصادفی با پایتون و استفاده از اعداد تصادفی به کمک تابع random انجام می‌گیرد که دو آرگومان ابتدایی و انتهایی دارد. اولین آرگومان کوچک‌ترین و دومین آرگومان بزرگ‌ترین عدد تصادفی است. با اجرای تابع random در محیط برنامه نویسی پایتون، اعداد تصادفی خروجی به شما نمایش داده خواهد شد.

قبل از شروع صحبتمان درباره تولید اعداد تصادفی در پایتون باید به این نکته اشاره کنم که اگر علاقه مند به یادگیری بیشتر پایتون در قالب پروژه های عملی هستید ما با تهیه  دوره مسترکدر پایتون در ۴۵ ساعت پایتون را شکلی کاربردی آموزش داده ایم.

تولید اعداد تصادفی با پایتون

تولید یک عدد تصادفی با پایتون در بازه مشخص

در ابتدا برای نوشتن کدی در پایتون که به شما اعداد تصادفی بدهد، شما باید با دو مبحث ماژول های پایتون و ورود داده و خروج گرفتن در پایتون آشنا باشید.

import random
print(random.randint(1,20))

ماژول مورد استفاده در این کد، تابع randit() است که اعداد تصادفی در آن توصیف شده است.

تولید بی نهایت عدد تصادفی با پایتون در بازه مشخص

برای بخش بعدی می خواهیم از مثالی بزنیم که در آن با استفاده از حلقه تکرار، تا زمان صدور دستور توقف تولید عدد تصادفی توسط پایتون ادامه یابد، برای این کار از تابع تکرار و به شکل زیر استفاده می کنیم.

 import random   while 1: print(random.randint(0,100))

خروجی این تابع به شکل زیر است:

5 11 38 ....

تولید اعداد تصادفی در این تابع تا زمانی که شما دستور break را صادر نمایید ادامه خواهد داشت.

تولید عدد تصادفی با پایتون با توجه به ورودی کاربر

شاید این مورد مد نظر شما باشد که ورودی به پچایتون بدهید، و پایتون با استفاده از آن یک عدد خروجی رندوم به شما بدهید. برای این مدل کد نویسی به روش زیر عمل می کنیم:

 import random  list1=['1','2','3','4','5','6','7']  Char=random.choice(list1)  if Char=='1': print('123564587945 ')  if Char=='2': print('298754357317 ')  if Char=='3': print('365428752112 ')  if Char=='4': print('412335648973 ')  if Char=='5': print('781385456311 ')  if Char=='6': print('003205202139 ')  if Char=='7': print('885162734101 ')  

حال اگر شما “1” را وارد نمایید، پایتون به شما عدد زیر را نمایش می دهد.

۱۲۳۵۶۴۵۸۷۹۴۵

در این روش با استفاده از کاراکتر ورودی کاربر پایتون از لیست موجود یک نتیجه را نمایش می دهد.

تولید عدد تصادفی در پایتون با گام مشخص و بازه مشخص

برای نوشتن این کد به روش زیر عمل میکنیم:

import random for x in range(18): print(random.randrange(4,28,5))  

خروجی به شکل زیر است:

6 11 16 21 26

در این روش کدی نوشته شد که در آن عدد تصادفی بین بازه انتخابی 4 تا 28 بود و پس از انتخاب اولین عدد، 5 واحد به آن اضافه می شد.

تولید عدد تصادفی اعشاری با پایتون

برای این مورد باید از یک کتابخانه ی دیگر پایتون به نام numpy استفاده نمود. برای این مورد به صورت زیر عمل می کنیم:

 import numpy as np np.random.rand()   print

خروجی این کد به شکل زیر است:

array([0.6487183])

اگر به این کد آرایه ی طول را بدهیم به شکل زیر عمل می کند:

  import numpy as np np.random.rand(4) print

خروجی این کد به شکل زیر است:

array([0.5432835 , 0.52513737, 0.60379138, 0.58264318])

حال اگر به این کد دو ورودی دهیم، خروجی کد یک آرایه دو بعدی است که هر بعد آن به صورت رندوم و تصادوفی ساخته شده است.

 import numpy as np np.random.rand(2,3)   print

خروجی این کد به شکل زیر است:

array([[0.6314548 , 0.67496411, 0.43982121],   [0.127873  , 0.96369461, 0.35684152]])

حال و پس از آشنایی با توابع پر کاربرد تولید اعداد تصادفی و همچنین مشاهده اجرای این کد ها در محیط پایتون، به بررسی روش تولید این اعداد در پایتون می پردازیم:

روش تولید اعداد تصادفی در پایتون

به صورت کلی تولید اعداد تصادفی به سه روش زیر در پایتون تولید می شوند:

  • استفاده از Pseudorandom Number Generators یا تولیدگر اعداد شبه تصادفی
  • استفاده از Python Programming Language یا زبان برنامه نویسی پایتون
  • استفاده از کتابخانه NumPy در پایتون برای تولید آرایه های تصادفی
روش تولید اعداد تصادفی در پایتون

 تولید اعداد شبه تصادفی در پایتون با استفاده Pseudorandom Number Generators

در واقع اعداد شبه تصادفی، اعدادی مشابه اعداد تصادفی منی باشند که با استفاده از یک فرایند تولید می شوند اما نکته مهم آن است که یک قطعی فرایند برای تولید آن ها وجود دارد که اگر ورودی یکسان بگیرد، قطعا خروجی یکسان می دهد.

تولید اعداد تصادفی با پایتون با استفاده Python Programming Language

در این شیوه، پایتون از یک تولید گر پر کاربرد به نام Mersenne Twister استفاده کرده است که با استفاده از یک توالی اعداد تصادفی را ایجاد می کند. مشابه بخش قبل یک پارامتر به نام seed وجود دارد که از کاربر دریافت شده و بر اساس آن یک عدد تصارفی ساخته و نمایش داده می شود. نکته آن است که اگر seed فراخوانی نشود، پایتون می تواند از میلی ثانیه زمان شمار بایوس استفاده نموده و اعداد تصادفی را تولید و نمایش دهد.

تولید اعداد تصادفی با کتابخانه NumPy در پایتون

این کتابخانه یک کتابخانه بسیار مفید در در انجام محاسبات ماتریس ها و بردارهاست. در این مدل، پایتون با استفاده از Mersenne Twister و توابع پوششی اقدام به تولید اعداد تصادفی می کند. با استفاده از این کتابخانه می توان آرایه های چند بعدی تصادفی را به دست آورد.

منابع

https://machinelearningmastery.com/how-to-generate-random-numbers-in-python/https://www.programiz.com/python-programming/examples/random-numberhttps://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwi6wcbcrZmDAxW5h_0HHYuvA1YQFnoECBYQAQ&url=https%3A%2F%2Fmedium.com%2F%40thehippieandtheboss%2Fhow-to-create-random-numbers-in-python-3ddd1a0b2375&usg=AOvVaw0F-QzIum86rZgBxhkjxK48&opi=89978449

در این مقاله سعی کردیم نحوه تولید اعداد تصادفی با پایتون را بطور کامل توضیح دهیم. امیدواریم برای شما عزیزان مفید واقع شده باشد. چنانچه هرگونه سوال در این‌باره دارید میتوانید از قسمت دیدگاه ها با ما درمیان بگذارید.