به بخش پرسش و پاسخ یادگیری عمیق خوش آمدید,
این نسخه آزمایشی سایت است.
لطفا به نکات زیر توجه کنید:
  • برای ارتباط با مدیران میتوانید از صفحه مدیران اقدام کنید.
  • سوال و جواب ها باید به زبان فارسی باشند. استفاده از زبان انگلیسی یا فینگلیش برای پاسخ دادن مجاز نیست.
  • لطفا بعد از پرسش سوال لینک سوال خود را در گرو تلگرام (Iran Deep Learning Group) معرفی کنید تا سریعتر به جواب برسید. برای دسترسی به آخرین لینک از منابع یادگیری استفاده کنید
  • لطفا بجای عکس از متن استفاده کنید. اگر متون طولانی هستند از سایت pastebin.com برای اپلود استفاده کرده و لینک حاصل را در سوال خود قرار دهید. برای قرار دادن تصویر ، از بخش ارسال تصویر ادیتور سایت استفاده کنید.
  • بعد از دریافت پاسخ، بهترین پاسخ را از طریق کلیک بر روی علامت تیک انتخاب کنید
  • اگر با خطا و یا مشکلی مواجه شدید از بخش تماس با ما در انتهای صفحه و یا ایمیل Coderx7@gmail.com موضوع را اطلاع دهید.

با تشکر

دسته بندی ها

0 امتیاز

سلام وقت بخیر
دوستان بنظرتون این فلگ ها چی هستند کجا کاربرد دارند رابطه مستقیمی با سیستم دارند . سیستم من core i3 و 1080 و رم 16 . بنظرتون بهترین گزینه برای انتخاب اینها چی میتونه باشه ؟ اینها بنظرم ربطی به پیش پردازش دیتا داره و اینکه شاید input pipeline اینجا رعایت شده باشد .

tf.app.flags.DEFINE_integer('num_clones', 1, 'Number of model clones to deploy.') 
tf.app.flags.DEFINE_boolean('clone_on_cpu', False, 'Use CPUs to deploy clones.')       
tf.app.flags.DEFINE_integer('worker_replicas', 1, 'Number of worker replicas.')    
tf.app.flags.DEFINE_integer('num_readers', 4, 'The number of parallel readers that read data from the dataset.')
tf.app.flags.DEFINE_integer('num_preprocessing_threads', 4, 'The number of threads used to create the batches.')

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

batch_queue = slim.prefetch_queue.prefetch_queue(
          [images, labels], capacity=2 * deploy_config.num_clones)

و یا اینکه از num_readers به این صورت :

   with tf.device(deploy_config.inputs_device()):
      provider = slim.dataset_data_provider.DatasetDataProvider(
          dataset,
          num_readers=FLAGS.num_readers,
          common_queue_capacity=20 * FLAGS.batch_size,
          common_queue_min=10 * FLAGS.batch_size)

این common_queue_capacity و common_queue_min چی میتونه باشه ؟

توسط (389 امتیاز)

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

سلام
این فلگ ها برای تنظیمات صف اطلاعات ورودی به مدل هستن که چطوری خونده بشن و چندتا داده توی مموری(صف) نگه داریم و ....
یا مثلا اون num_thread می گه چندتا thread داده ها رو بخونن (مثلا از روی هارد یا هرجای دیگه مثل hdfs)
راسیتش این تنظیمات معمولا برای داده‌های خیلی بزرگ یا کارهای streaming کاربرد داره و برای کاربردهای شخصی و روی یه سیستم، تنظیمات پایه (مثلا num_thread حتی یک باشه تا به تعداد coreهای cpu خوبه) به طور معمول کاربرد خوبی داره و bottleneck تهش به پردازش روی gpu یا انتقال داده محدود میشه
اما توی کاربردهای بزرگ که کلی حجم پردازشی داریم، می خوایم مطمئن بشیم که با تمام حجم ممکنه و سرعت، داده آماده داریم که fed بشه به gpu یا tpu یا هرچی که داریم

در مورد اون دو تا flag آخر در مورد صف (capacity و min)، اولی حجم صف رو نشون میده (مثلا میگیم 3000 تا داده توی هر صف نگه دار) و دومی هم حداقل داده های موجود توی هر صف رو نشون میده (مثلا 500) که می گه از این کمتر توی صف نداشته باشیم و اگه از این کمتر بشه، معمولا پردازش sync میشه تا صف دوباره به یه حداقلی برسه و پردازش ادامه پیدا کنه

این بحثها رو اگه توی distributed tf دنبال کنید خیلی اطلاعات بیشتری بدست میارید، چون توی کارهای بزرگ، این چیزا تاثیر زیادی توی هزینه زمانی و به طبعش انرژی و هزینه مالی و .... داره

توسط (1.6k امتیاز)
انتخاب شده توسط
ممنون از شما
ببخشید منظور از صف يا queueچیه ؟
و اینکه میشه یکم در مورد thread بیشتر توضیح دهیدو چه فرقی باcore داره؟
...