$User->is_logged_in:  bool(false)
$User->user_info:  NULL
$User->check_post:  object(stdClass)#6927 (18) {
  ["is_valid"]=>
  int(1)
  ["global_remaining_posts_to_view"]=>
  int(0)
  ["remaining_posts_to_view"]=>
  int(0)
  ["number_all_post"]=>
  int(0)
  ["number_post_read"]=>
  int(0)
  ["is_from_gifts_balance"]=>
  int(0)
  ["gifts_articles_balance"]=>
  int(0)
  ["all_gifts_articles_balance"]=>
  int(0)
  ["gifts_read_articles"]=>
  int(0)
  ["exceeded_daily_limit"]=>
  int(0)
  ["is_watched_before"]=>
  int(0)
  ["sso_id"]=>
  int(20733)
  ["user_agent"]=>
  string(9) "claudebot"
  ["user_ip"]=>
  string(14) "54.205.238.173"
  ["user_header"]=>
  object(stdClass)#7059 (42) {
    ["SERVER_SOFTWARE"]=>
    string(22) "Apache/2.4.57 (Debian)"
    ["REQUEST_URI"]=>
    string(109) "/technodad/%d8%a7%d9%84%d9%85%d8%b9%d8%a7%d9%85%d9%84%d8%a7%d8%aa-%d8%a7%d9%84%d9%81%d8%a7%d8%a6%d9%82%d8%a9/"
    ["REDIRECT_HTTP_AUTHORIZATION"]=>
    NULL
    ["REDIRECT_STATUS"]=>
    string(3) "200"
    ["HTTP_AUTHORIZATION"]=>
    NULL
    ["HTTP_X_FORWARDED_PROTO"]=>
    string(5) "https"
    ["HTTP_CONNECTION"]=>
    string(7) "upgrade"
    ["HTTP_HOST"]=>
    string(19) "technologyreview.ae"
    ["HTTP_CDN_LOOP"]=>
    string(10) "cloudflare"
    ["HTTP_CF_IPCOUNTRY"]=>
    string(2) "US"
    ["HTTP_ACCEPT_ENCODING"]=>
    string(8) "gzip, br"
    ["HTTP_CF_RAY"]=>
    string(20) "86b87c4ada203928-IAD"
    ["HTTP_CF_VISITOR"]=>
    string(22) "{\"scheme\":\"https\"}"
    ["HTTP_ACCEPT"]=>
    string(3) "*/*"
    ["HTTP_USER_AGENT"]=>
    string(9) "claudebot"
    ["HTTP_REFERER"]=>
    string(126) "https://technologyreview.ae/%D8%A7%D9%84%D9%85%D8%B9%D8%A7%D9%85%D9%84%D8%A7%D8%AA-%D8%A7%D9%84%D9%81%D8%A7%D8%A6%D9%82%D8%A9/"
    ["HTTP_CF_CONNECTING_IP"]=>
    string(14) "54.205.238.173"
    ["PATH"]=>
    string(60) "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
    ["SERVER_SIGNATURE"]=>
    string(79) "
Apache/2.4.57 (Debian) Server at technologyreview.ae Port 80
" ["SERVER_NAME"]=> string(19) "technologyreview.ae" ["SERVER_ADDR"]=> string(11) "172.18.0.20" ["SERVER_PORT"]=> string(2) "80" ["REMOTE_ADDR"]=> string(14) "54.205.238.173" ["DOCUMENT_ROOT"]=> string(13) "/var/www/html" ["REQUEST_SCHEME"]=> string(4) "http" ["CONTEXT_PREFIX"]=> NULL ["CONTEXT_DOCUMENT_ROOT"]=> string(13) "/var/www/html" ["SERVER_ADMIN"]=> string(19) "webmaster@localhost" ["SCRIPT_FILENAME"]=> string(23) "/var/www/html/index.php" ["REMOTE_PORT"]=> string(5) "35180" ["REDIRECT_URL"]=> string(45) "/technodad/المعاملات-الفائقة/" ["GATEWAY_INTERFACE"]=> string(7) "CGI/1.1" ["SERVER_PROTOCOL"]=> string(8) "HTTP/1.1" ["REQUEST_METHOD"]=> string(3) "GET" ["QUERY_STRING"]=> NULL ["SCRIPT_NAME"]=> string(10) "/index.php" ["PHP_SELF"]=> string(10) "/index.php" ["REQUEST_TIME_FLOAT"]=> float(1711637982.136573) ["REQUEST_TIME"]=> int(1711637982) ["argv"]=> array(0) { } ["argc"]=> int(0) ["HTTPS"]=> string(2) "on" } ["content_user_category"]=> string(4) "paid" ["content_cookies"]=> object(stdClass)#7058 (3) { ["status"]=> int(0) ["sso"]=> object(stdClass)#7057 (2) { ["content_id"]=> int(20733) ["client_id"]=> string(36) "1d1883f4-87d0-4156-8903-e6ceb0cb4224" } ["count_read"]=> NULL } ["is_agent_bot"]=> int(1) }
$User->gift_id:  NULL

المعاملات الفائقة Hyperparameter

2 دقائق

ما هي المعاملات الفائقة؟

عبارة عن معاملات تستخدم في مجال التعلم الآلي للتحكم بعملية التعلم. وبكلمات أخرى هي متغيرات تُحدد بُنية الشبكة العصبونية الاصطناعية وكيفية تدريبها. يتم تحديد قيمة المعاملات الفائقة قبل بداية عملية التعلم، ولهذه المعاملات تأثير مباشر على تدريب خوارزميات ونماذج التعلم الآلي. ونظراً لأهميتها فإنه من الضروري فهم آليا واستراتيجيات أمثلتها بهدف تحقيق أفضل أداء ممكن لتلك النماذج. ومن الأمثلة عليها:

  1. مُعدل التعلم.
  2. عدد دورات التدريب.
  3. تابع التفعيل المُستخدم.
  4. عدد الوحدات والطبقات الخفية (Hidden Layers & Units).
  5. عدد الفروع في شجرة القرار.
  6. عدد المجموعات في خوارزميات التجميع مثل خوارزمية تجميع كي-المتوسط (K-means).

أهمية ضبط المعاملات الفائقة في نموذج التعلم الآلي

يمكن النظر إلى المعاملات الفائقة على أنها إعدادات الخوارزمية التي يتم ضبطها لتحسين الأداء، وتشبه تماماً تدوير مفاتيح الراديو لتحسين إشارة الإذاعة، بحيث يمكن لاختيار القيم الصحيحة للمعاملات الفائقة أن يساعد على تحسين سرعة التدريب وتحسين دقة التنبؤات وزيادة كفاءة النموذج.

ما الفرق بين المعاملات والمعاملات الفائقة؟

 تعبّر المعاملات عن المتغيرات التي تتحكم في سلوك النموذج، وتتم معالجتها خلال عملية التدريب وتعديل قيمها لتحسين أداء النموذج، بينما تتحكم المعاملات الفائقة في عملية التدريب نفسها، مثل عدد الدورات التدريبية ومعدل التعلّم وحجم البيانات في كل دورة تدريب. ويعد تحديد القيم الصحيحة للمعاملات الفائقة محوراً أساسياً لتحسين أداء النموذج ودقته في التنبؤ بالبيانات الجديدة.

كيف تضبط المعاملات الفائقة؟

يمكن اعتماد نهج تلقائي لضبط المعاملات يدوياً، ويُسمَّى مقياس الأداء المحدد بالاستراتيجية الأمثل، إليك كيفية عمله:

  1. تقسيم البيانات المتاحة إلى مجموعات تدريب واختبار.
  2. تكرار حلقة التدريب لعدد ثابت من الدورات أو حتى تتحقق الشروط التالية:
    1. اختيار مجموعة جديدة من المعاملات الفائقة للنموذج.
    2. تدريب النموذج على مجموعة التدريب باستخدام مجموعة المعاملات الفائقة المحددة.
    3. تطبيق النموذج على مجموعة الاختبار وإنشاء التنبؤات.
    4. تقييم التنبؤات المتعلقة بالاختبار السابق باستخدام مقياس الأداء الصحيح للمشكلة المحددة، مثل الدقة أو الخطأ المطلق المتوسط. 
    5. تخزين قيمة المقياس التي تتوافق مع مجموعة المعاملات الفائقة المحدد.
  3. مقارنة قيم المقاييس جميها واختيار مجموعة المعاملات الفائقة التي تولد أفضل قيمة للقياس.

ما هي طرق أمثلة المعاملات الفائقة؟

هناك العديد من الاستراتيجيات المُستخدمة لتحديد وأمثلة المعاملات الفائقة أهمها:

  1. بحث الشبكة (Grid Search): البحث ضمن مجموعة محددة مسبقاً من المعاملات الفائقة عن المعاملات ذات الأداء الأفضل واستخدامها.
  2. البحث العشوائي (Random Search): تشبه الطريقة السابقة لكن بدلاً من البحث الشامل ضمن المجموعة يتم اللجوء إلى البحث العشوائي. يتفوق البحث العشوائي على بحث الشبكة عندما يكون هناك عدد صغير من المعاملات الفائقة المطلوب أمثلتها فقط.
  3. الأمثلة البايزية (Bayesian Optimization): يتم في هذه الطريقة بناء نموذج احتمالي لتابع التخطيط بدءاً من قيمة المعاملات الفائقة وصولاً إلى الهدف المطلوب الوصول إليه عند استخدام مجموعة التحقق مع نموذج التعلم الآلي.
  4. الأمثلة التطورية (Evolutionary Optimization): تعتمد هذه الطريقة على استخدام خوارزميات الحوسبة التطورية للوصول إلى أفضل حل ممكن.
Content is protected !!