اذهب إلى المحتوى

ياسر مسكين

الأعضاء
  • المساهمات

    1792
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    3

كل منشورات العضو ياسر مسكين

  1. دورة علوم الحاسوب أعدّت خصيصا لتعليم المبادئ الأساسية في البرمجة أي أنك بعد دراستها ستحتاج إلى دراسة مجال برمجي تخصصي يكون مطلوبا في سوق العمل، ومن خلال إتمامك لهذه الدورة ستتمكن من إختيار المجال الذي تريده لأنك ستكون قد اطلعت على أغلب مجالات البرمجة خلال الدورة وأصبحت لديك دراية بالمفاهيم البرمجية ومختلف الوظائف الممكنة. يمكنك الاطلاع على الإجابة التالية التي تشرح الهدف من الدورة: كما أنه من الجيد أخذ فكرة عن البرمجة من هنا: وعن مجالات البرمجة من هنا: يمكنك أيضا التعرف أكثر حول وظائف البرمجة الأكثر طلبا من هنا: أما الرواتب فهي تختلف وتعتمد على العديد من العوامل، لذا أول خطوة بعد إتمامك للدورة هي البدء باختيار مجال والتخصص فيه وعمل مشاريع وبناء معرض أعمال خاص بك، ثم سيتم توجيهك لبناء سيرة ذاتية جيدة والتقدم لعروض العمل المختلفة، لكن أهم شيء أن لا تتوقف عن التعلم لأنّ دورة علوم الحاسوب هي أول خطوة نحو التخصص في المجال.
  2. وعليكم السلام ورحمة الله تعالى وبركاته، أسماء الملفات قد تكون حساسة لحالة الأحرف في بعض السياقات كما أن المسافات الإضافية أو الأخطاء الإملائية قد تسبب مشاكل لذا يمكنك تعديل اسم الملف ليكون training.csv بدلا من Copy of excel for training csv.csv ثم أعد المحاولة مرة أخرى. في حال استمرت المشكلة حاول استخدام الخط المائل للأمام / حيث يعمل على جميع الأنظمة الأساسية كالتالي: pd.read_csv("C:/Users/User/Documents/training.csv") وأرجو في حال كان سؤالك متعلقا بإحدى الدورات التي قمت بالاشتراك فيها، أرجو منك الانتقال إلى قسم "دوراتي" ثم أسفل الدرس الذي واجهت فيه المشكلة، قم بإضافة سؤالك هناك، وهذا لمساعدتك بشكل أفضل.
  3. وعليكم السلام ورحمة الله تعالى وبركاته، Structure-from-Motion (SfM) و Neural Radiance Fields (NeRF) هما تقنيتان لإنشاء تمثيلات ثلاثية الأبعاد من صور ثنائية الأبعاد. SfM هي تقنية في رؤية الكمبيوتر، تعيد بناء البنية ثلاثية الأبعاد لمشهد ومواقع الكاميرات من خلال اكتشاف الميزات، تقدير وضع الكاميرا، التقاطع، وتعديل الحزمة، مما ينتج سحابة نقاط ويستخدم في النمذجة ثلاثية الأبعاد والروبوتات، بينما تعتمد NeRF على التعلم العميق لتمثيل المشهد كدالة مستمرة باستخدام إحداثيات ثلاثية الأبعاد واتجاه الرؤية، مع عرض الحجم والتدريب على صور لتوليد مناظر واقعية مفصلة، وهي مثالية للواقع الافتراضي لكنها تتطلب موارد أكبر. أيضا نجد أن SfM تعتمد على الطرق الهندسية وتناسب إعادة البناء المتفرق بصور أقل، بينما تتفوق NeRF في التفاصيل والإضاءة المعقدة، مما يجعل كل تقنية مناسبة لتطبيقات مختلفة.
  4. وعليكم السلام ورحمة الله تعالى وبركاته، لا يوجد اختصار مدمج في VS Code يقوم بتجميد الكود بشكل مباشر أعتقد أنك تقصد ميزة "التوقف عند نقطة التوقف" (Breakpoint) التي توقف تنفيذ الكود أثناء عملية debugging إن كان هذا ما تقصده يمكنك عمل ذلك من خلال الاختصار التالي: Shift + F9 أو إذا كنت تقصد تعليق الأسطر البرمجية بحيث لا تصبح وظيفية وجعلها تعليقات، يمكنك ذلك من خلال الضغط على: Ctrl + /
  5. أرجو إرفاق المشروع لتصفح المشكلة عن كثب.
  6. وعليكم السلام ورحمة الله تعالى وبركاته، أقترح عليك أن تطلع على الإجابة من خلال مطالعة هذه المقالة أين يمكنك تصفح أسماء ومعاني لغة بايثون ومصطلحاتها البرمجية من هنا:
  7. وعليكم السلام ورحمة الله تعالى وبركاته، Python و CPython يمثلان مفهومين متصلين لكنهما مختلفين ف Python هي اللغة المجردة وتضم مجموعة القواعد والمفاهيم والبنية النحوية التي تحدد كيف يكتب المبرمج الشيفرة وكيف يجب أن تعمل. أي أنها المواصفات والتصميم الفكري للغة، فهي فكرة وفلسفة وطريقة تفكير في البرمجة تتجسد في قواعد وتعليمات محددة. بينما CPython هو التجسيد العملي والمادي لهذه الفكرة أي أنه البرنامج الفعلي الذي يقرأ شيفرة Python ويحولها إلى تعليمات يمكن للحاسوب فهمها وتنفيذها. وتمت كتابة هذا المفسر بلغة C ومن هنا جاء الاسم "CPython" وهو البرنامج الذي تقوم بتنزيله وتثبيته عندما تثبت Python بعبارة أخرى، Python هي اللغة، وCPython هو الأداة الرسمية التي تترجم هذه اللغة وتنفذها.
  8. لمعرفة نوع المفسر الخاص ببايثون (Python) لديك، يمكنك استخدام وحدة sys المدمجة في بايثون: import sys print(sys.version) هذا سيعرض إصدار بايثون الكامل ونوع المفسر، كما في سطر الأوامر (Command Line)، يمكنك كتابة: python --version ولمعرفة مسار المفسر، يمكنك استخدام: import sys print(sys.executable)
  9. وعليكم السلام ورحمة الله تعالى وبركاته، عيدك مبارك وكل عام وأنت بخير. يمكنك ذلك بكل تأكيد وهذا سيعينك أكثر على فهم ما تعلمته وترسيخ معارفك الجامعية، يمكن عمل مشاريع وتطبيقات جانبية دون نسيان إنجاز المشاريع العملية الخاصة بالدورة ومساراتها. من الأفضل مراجعة الشروط قبل البدء في متابعة الدورة لأنها ضرورية خاصة وأنك أشرت أنك لم تقم بحفظ ما كنت تقوم بتطبيقه مع المدرب فمن شروط الحصول على الشهادة أن تقوم: إتمام أربعة مسارات تعليمية على الأقل التطبيق العملي مع المدرب، والاحتفاظ بالمشاريع العملية الناتجة لإرسالها للمراجعة رفع المشاريع على حسابك على GitHub أولًا بأول لمشاركتها معنا توثيق الهوية فمثلا في المسار الأول من الدورة يوجد "تطبيق مهام" من الأفضل المتابعة مع المدرب وحفظ المشروع العملي الناتج لإرساله للمراجعة فيما بعد. وأرجو الاعتماد على هذه الطريقة مع بقية الدروس والمسارات. صحيح أن المسارات الثلاثة الأولى تحتوي على معلومات ومفاهيم مهمة في مجال تطوير مواقع الويب بلغة بايثون ودجانغو إلاّ أنّ بقية المسارات هي مسارات تطبيقية وعملية وهي مهمة لاستيعاب المفاهيم التي تطرقت إليها، لذا من الأفضل دراستها ومتابعتها وستعينك على أخذ أكبر قدر من الاستفادة من الدورة، وأقترح عليك مراجعة الإجابات التالية لتحقيق استفادة من محتوى الدورات:
  10. عند وضع DEBUG=False لا يقوم Django بخدمة ملفات الوسائط (media) والملفات الثابتة (static)، لذا يجب على Apache أن يقوم بذلك لذا أرجو وضع الكود التالي في ملف .htaccess : RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^media/(.*)$ /Cyber-Website/cyberZ_website/media/$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^static/(.*)$ /Cyber-Website/cyberZ_website/static/$1 [L] وتأكد من أن المسارات /Cyber-Website/cyberZ_website/media/ و/Cyber-Website/cyberZ_website/static/ تتطابق مع مكان تواجد ملفاتك على السيرفر. إذا كانت مختلفة، قم بتعديلها لتناسب إعدادات موقعك.
  11. وعليكم السلام ورحمة الله تعالى وبركاته، المحولات (Transformers) هي عبارة عن بنية شبكات عصبية تستخدم آلية تسمى "الانتباه الذاتي" أو self-attention لفهم العلاقات بين أجزاء مختلفة من البيانات وقد تم تصميمها في الأصل لمعالجة اللغة، ثم تم تكييفها للرؤية الحاسوبية من خلال نماذج مثل محول الرؤية (Vision Transformer - ViT)، الذي يتعامل مع الصور كمجموعة من الرقع المشابهة للكلمات في الجملة. وعلى عكس الشبكات العصبية التلافيفية التقليدية (CNNs) التي تعالج الصور بشكل هرمي وتركز على الأنماط المحلية، يمكن للمحولات النظر فورا في العلاقات بين الأجزاء البعيدة من الصورة، مما يتيح لها التقاط السياق العالمي بشكل أكثر فعالية. هذه القدرة جعلت المحولات مهيمنة بشكل متزايد في مهام الرؤية الحاسوبية بما في ذلك تصنيف الصور، واكتشاف الأشياء، وتجزئة الصور، متفوقة غالبا على البنيات السابقة. وبالإضافة إلى نموذج ViT، تم دمج تقنيات المحولات مع شبكات الالتفاف لإنشاء نماذج هجينة، وتم تطبيقها في مهام مثل الكشف عن الأجسام على سبيل المثال، DETR والتجزئة، وحتى تحليل الفيديو.
  12. وعليكم السلام ورحمة الله تعالى وبركاته، عيد فطر سعيد ومبارك عليك وعلى جميع أمتنا الإسلامية. شكرا على كلماتك الراقية، وتشجعيك ونتمنى لك تجربة تعليمية فريدة وناجحة. بالنسبة لسؤالك فالشبكات الكلاسيكية مثل LeNet و AlexNet و VGG تتبع عادة تصميمًا تسلسليًا يعتمد على تكديس الطبقات، حيث تستخدم الطبقات الالتفافية غالبا بأحجام نوى ثابتة تليها طبقات التجميع والطبقات المتصلة بالكامل. هذه الشبكات لا تتضمن آليات تُسهّل تدريب النماذج العميقة جدًا، وتميل إلى الاعتماد على تكديس طبقات أعمق بشكل متزايد لتحسين الدقة، مما قد يؤدي إلى مشاكل مثل تلاشي التدرجات. أما شبكات ResNet (الشبكات المتبقية) فتعالج هذه التحديات من خلال إدخال وصلات اختصار (أو وصلات متبقية). تسمح هذه الوصلات للشبكة بتعلم "الدوال المتبقية" أي الفرق بين التمثيل المطلوب والتمثيل التعريفي بدلا من تعلم التمثيل الكامل، مما يساهم في تخفيف مشكلة تلاشي التدرجات ويسمح بتدريب شبكات عميقة جدًا (غالبًا بمئات الطبقات) بدقة وتقارب أفضل. بينما تعتمد بنى Inception نهجا مختلفا إذ بدلا من تكديس الطبقات بشكل تسلسلي فقط، تقوم ببناء "وحدات Inception" تقوم بمعالجة المدخل باستخدام مرشحات التفافية المتوازية بأحجام مختلفة مثل 1×1 و3×3 و5×5.
  13. في حال كان سؤالك متعلقا بإحدى الدورات التي قمت بالاشتراك فيها، أرجو منك الانتقال إلى قسم "دوراتي" ثم أسفل الدرس الذي واجهت فيه المشكلة، قم بإضافة سؤالك هناك، وهذا لمساعدتك بشكل أفضل. أما إن لم يكن كذلك فأرجو توضيح سؤالك أكثر وفي أي سياق تريد أن يعمل هذا الكود.
  14. وعليكم السلام ورحمة الله تعالى وبركاته، فيهما تشابه، يشبه تحليل الصور قبل التدريب الدقة التحليلية المستخدمة في تقييم البيانات الطبية. يقوم الباحثون باستكشاف المجموعات البيانية بشكل شامل من خلال فحص توزيع الفئات والخصائص الإحصائية، كما يحللون بيانات الصور الوصفية للكشف عن التحيزات المحتملة وتقييم التمثيل الديموغرافي. كما تشمل هذه العملية تحديد الفئات الفرعية الممثلة تمثيلا ناقصا، وتقييم جودة الصور، واكتشاف التحديات. وهذا تماما كما يدرس الباحثون الطبيون عوامل خطر المرضى، يقوم خبراء رؤية الكمبيوتر أيضا بفحص البيانات لضمان المتانة والموثوقية والدقة.
  15. عندما يكون DEBUG = False لا يتم خدمة ملفات الوسائط (media files) تلقائيا كما يحدث في وضع التطوير، أما في بيئة الإنتاج (عندما DEBUG = False)، يجب عليك استخدام خادم ويب مثل Nginx أو Apache لخدمة الملفات الثابتة وملفات الوسائط. بالنسبة لخدمة ملفات الوسائط (media files) عندما يكون DEBUG = False، يجب استخدام خادم ويب مثل Nginx أو Apache لخدمة هذه الملفات. أما عندما يكون DEBUG = True، يتيح Django خدمة الملفات الثابتة (static files) والوسائط (media files) بشكل تلقائي ففي ملف settings.py، يتم تعريف هذه الإعدادات كالتالي: STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'cyberZ_website/static/') ] STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') وفي urls.py يمكن إضافة مسارات خدمة هذه الملفات كالتالي: from django.conf import settings from django.conf.urls.static import static urlpatterns = [ ] if settings.DEBUG: urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) DEBUG = True سيسمح بخدمة الملفات الثابتة والوسائط مباشرة من مجلداته في حين STATIC_URL و MEDIA_URL سيحددان المسار الافتراضي للوصول إلى هذه الملفات. STATICFILES_DIRS سيحدد المجلدات الإضافية للملفات الثابتة، بينما STATIC_ROOT و MEDIA_ROOT يحددان المسار الفعلي لتخزين هذه الملفات.
  16. هل قمت بتثبيت مكتبة prompt-sync ؟ في حال كنت تستخدم بيئة nodeJs أرجو تثبيتها من خلال الأمر التالي في الطرفية: npm install prompt-sync ثم استيراد المكتبة للعمل عليها من خلال السطر التالي قم بوضعه في الأعلى تماما: const prompt = require('prompt-sync')(); بعد تنفيذ الأمر سيعمل معك لاحظ هنا اخترت الرقم 5 وتم إظهار يوم الجمعة بشكل عادي: في حال استمر الخطأ أرجو توضيح المشكلة لديك أكثر، إرفاق رسالة الخطأ، أو المشروع الذي تعمل عليه. وفي حال كان سؤالك متعلقا بأحد دروس الدورة التي اشتركت فيها أرجو إرفاقه أسفل الدرس لتفقد المشكلة بشكل أفضل.
  17. هذا بسبب أنك نسيت كتابة علامة : بعد كلمة default في هذا السطر: default console.log('Invalid Input'); break; } لذا يجب تعديلها لتصبح كالتالي: default: console.log('Invalid Input'); break; } ومنه يصبح الكود بعد التعديل هكذا: let day = +prompt('Enter day:'); switch(day) { case 0: console.log('Sunday'); break; case 1: console.log('Monday'); break; case 2: console.log('Tuesday'); break; case 3: console.log('Wednesday'); break; case 4: console.log('Thursday'); break; case 5: console.log('Friday'); break; case 6: console.log('Saturday'); break; default: console.log('Invalid Input'); break; } وتلك النقطتين مهمتان جدا ولا ينبغي نسيانهما فهي تعلن نهاية الشرط (case) وتفصل بين الشرط والكود الذي سيتم تنفيذه، فضلا على أنها جزء من التركيب الصحيح للغة البرمجية لهذا واجهت Syntax Error بتصحيحه وإضافة النقطتين سيعمل معك البرنامج. يمكنك مراجعة البناء الخاص بها من هنا: التعبير البرمجي switch.
  18. وعليكم السلام ورحمة الله تعالى وبركاته، لا يوجد قاعدة بيانات منفصلة للتسميات في المسار /kaggle/input/microsoft-catsvsdogs-dataset، بل يتم تخزين التسميات ضمن بنية المجلدات وعند استخدام الدالة flow_from_directory() في Keras، يتم تعيين التسميات تلقائيًا استنادًا إلى أسماء المجلدات الفرعية فيما يلي الكود الأساسي الذي يوضح ذلك: from keras.preprocessing.image import ImageDataGenerator train_datagen = ImageDataGenerator(rescale=1./255) train_generator = train_datagen.flow_from_directory( '/kaggle/input/microsoft-catsvsdogs-dataset/PetImages', target_size=(150, 150), batch_size=32, class_mode='binary' ) print("Class Indices:", train_generator.class_indices) بهذا الشكل سيقوم المولد train_generator بتوليد دفعات من الصور مع التسميات التي تم استخراجها تلقائيًا من أسماء المجلدات.
  19. وعليكم السلام ورحمة الله تعالى وبركاته، عند تقسيم بيانات الصور لتدريب نموذج تعلم آلي، تكون العملية بسيطة جدا لأنّ الدالة train_test_split() مصممة للتعامل مع المصفوفات متعددة الأبعاد، مما يعني أنها تعمل بشكل مثالي مع مجموعات بيانات الصور. هذه الدالة تأخذ مجموعة الصور بالكامل وتقوم بتقسيمها عشوائيا إلى مجموعتين: مجموعة للتدريب وأخرى للاختبار. يضمن هذا التقسيم الحفاظ على التوافق الصحيح بين الصور والتسميات الخاصة بها على سبيل المثال إذا كان لديك مجموعة من صور القطط والكلاب مع التسميات الخاصة بها، فسيتم الاحتفاظ بكل صورة مع التسمية الصحيحة عند التقسيم. كما يمكنك التحكم في نسبة البيانات المخصصة للاختبار عن طريق تحديد النسبة المئوية التي تريد استخدامها. عادة نقوم بتخصيص حوالي 20% من البيانات للاختبار بينما نستخدم 80% منها للتدريب كما يمكن تعيين random seed مما يتيح الحصول على نفس التقسيم العشوائي في كل مرة تقوم بتشغيل الكود، وهذا مفيد لضمان تكرار النتائج في تجارب التعلم الآلي. التقسيم يكون عشوائيا تماما، لكنه يضمن أن تكون مجموعتا التدريب والاختبار ممثلتين بشكل جيد لمجموعة البيانات الكاملة وهذا سيساعد على إنشاء نموذج تعلم آلي أكثر دقة حيث يتم اختباره على بيانات لم يسبق له رؤيتها أثناء التدريب.
  20. يوجد نوعان من المشاريع، مشاريع وتطبيقات علمية تتواجد في المسارات الخاصة بالدورة، وفي هذه الحالة أنت مطالب بإنجازها خلال التعلم مع المدرب ثم رفعها لأنها شرط من شروط التقدم للامتحان النهائي، يمكنك مراجعة الشروط من هنا: إتمام أربعة مسارات تعليمية على الأقل التطبيق العملي مع المدرب، والاحتفاظ بالمشاريع العملية الناتجة لإرسالها للمراجعة رفع المشاريع على حسابك على GitHub أولًا بأول لمشاركتها معنا توثيق الهوية شروط التقدم للامتحان بعد ذلك سيتوجب عليك التواصل مع مركز مساعدة أكاديمية حسوب وإخبارهم في رغبتك بإجراء الامتحان مع تزويدهم بروابط المشاريع التي قمت برفعها وطبقتها أثناء الدورة، بعدها سيحدّد لك موعد لاجراء محادثة صوتية لمدة 30 دقيقة يطرح المدرب فيها أسئلة متعلقة بالدورة ويناقش معك ما نفذته خلالها. ثم سيحدد لك المدرب مشروعا مرتبطا بما تعلمته أثناء الدورة لتنفيذه خلال فترة محددة تتراوح بين أسبوع الى أسبوعين. سيراجع المدرب المشروع الذي أنجزته، وإن سارت جميع الخطوات السابقة بشكل صحيح، ستتخرج وتحصل على الشهادة أو يرشدك المدرّب لأماكن القصور ويطلب منك تداركها ثم التواصل معه من جديد.
  21. وعليكم السلام ورحمة الله تعالى وبركاته، الدالة cifar10.load_data() هي جزء من واجهة برمجة التطبيقات لمجموعات البيانات في Keras التابعة ل TensorFlow وتحديدا ضمن tf.keras.datasets.cifar10 وتقوم هذه الدالة بتحميل مجموعة بيانات CIFAR-10 في حال ما إذا لم تكن موجودة بالفعل في ذاكرة التخزين المؤقت وهي عبارة عن مجموعة من 60,000 صورة ملونة بحجم 32x32 بكسل تنتمي إلى 10 فئات. ويتم تقسيم المجموعة إلى 50,000 صورة للتدريب و10,000 صورة للاختبار، وتعيد الدالة هذه البيانات على شكل زوج من الأزواج: x_train, y_train) – مجموعة التدريب (x_test, y_test) – مجموعة الاختبار وتمثل كل صورة مصفوفة NumPy ذات أبعاد (32, 32, 3) للدلالة على وجود 3 قنوات لونية (أحمر، أخضر، أزرق) وتعطى التسميات كأعداد صحيحة تشير إلى إحدى الفئات العشر وتستخدم هذه الدالة بشكل شائع لتجربة النماذج التصنيفية باستخدام الشبكات العصبية الالتفافية (CNNs) في TensorFlow بسرعة وسهولة.
  22. وعليكم السلام ورحمة الله تعالى وبركاته، دورة إدارة تطوير المنتجات تقوم بالتركيز على تعليم المفاهيم والمراحل الأساسية لتطوير وإدارة المنتجات الرقمية من الفكرة حتى الإطلاق وما بعده فهي تشرح كيف يتم تطوير المنتجات الرقمية، وتشرح كيفية إدارة المنتجات بدءا من دراسة السوق وتحديد احتياجات المستخدمين وصولا إلى التخطيط، التنفيذ، المتابعة، والتحليل بعد الإطلاق. يمكنك أخذ فكرة عن مسارات ومحاور دورة إدارة تطوير المنتجات من خلال الصفحة الرسمية للاشتراك في الدورة من هنا: دورة إدارة تطوير المنتجات هذه الدورة موجهة أساسا لمن: ليس لديه خبرة في مجال البرمجة أو التصميم ويريد تنفيذ مشروعه الناشئ يريد تعلم إدارة تطوير المنتجات لتحسين فرصه التوظيفية يعمل في إدارة المنتجات ويرغب بتوسعة معلوماته حول عملية التطوير وإدارتها وبما أنك ترغب في تحسين فرصك التوظيفية فالمحاور التي ستتعلمها في الدورة ستساعدك في هذا الشأن من خلال تعلم: أساسيات إدارة تطوير المنتجات كيفية توظيف مصممين ومبرمجين إعداد المستندات اللازمة لتطوير المنتجات التعمق في منهجية أجايل وبالنسبة للوظائف التي يمكن تقلّدها يمكنك أن تعمل ك: مدير منتج (Product Manager) مالك المنتج (Product Owner) استشاري تطوير المنتجات محلل أعمال وفي مواقع العمل الحر كمستقل وخمسات، يمكنك إيجاد العديد من المشاريع التي تكون تحت وسم "إدارة المنتجات" وأي شيء بخصوص العمل بعد اشتراكك في الدورة يمكنك مناقشته من خلال مركز المساعدة: مركز مساعدة أكاديمية حسوب
  23. وعليكم السلام ورحمة الله تعالى وبركاته، يمكنك التعرف علىمفهوم الكلمة المفتاحية yield واستخداماتها في لغة بايثون من خلال الإجابتين هاتين: بالنسبة للفرق بينها وبين return فيكمن ذلك في أن yield تعمل مثل return في إعادة القيمة التي تم حسابها ولكنها لا توقف عمل الدالة بشكل كامل بل تسمح لنا بإعادة استدعاء الدالة نفسها مع حفظ آخر خطوة قمنا بها والعمل على الخطوة التالية.
  24. وعليكم السلام ورحمة الله تعالى وبركاته، في HTML لكل وسم دوره ودلالته الخاصة ووسم <p> يستخدم لتعريف فقرة نصية، وهو عنصر كتلي (block element) يعني أنه يخلق مسافة فاصل حول المحتوى بداخله. أما الوسوم مثل <strong> فهي عناصر مضمنة (inline elements) تستخدم لتحديد وتوضيح أجزاء من النص داخل الفقرة أو عنصر آخر لهذا فوضع الوسوم الأخرى داخل <p> قد يؤدي إلى استخدام غير مناسب للدلالات والهيكلية الصحيحة للصفحة، وقد يسبب مشاكل في التنسيق والتخطيط لهذا نستخدم كل وسم في سياقه المناسب حسب وظيفته ودلالته في المحتوى. في حال كان سؤالك متعلقا بإحدى الدورات التي قمت بالاشتراك فيها، أرجو منك الانتقال إلى قسم "دوراتي" ثم أسفل الدرس الذي واجهت فيه المشكلة، قم بإضافة سؤالك هناك، وهذا لمساعدتك بشكل أفضل. بالتوفيق إن شاء الله.
  25. وعليكم السلام ورحمة الله تعالى وبركاته، بالنسبة ل tf.data.Dataset.list_files فهو يعمل كمستكشف أولي بمعنى أنه يستعرض نظام الملفات الخاص بك للعثور على ملفات معينة تتوافق مع نمطك مثل .jpg" لكنه لا يقوم بفتحها فعليا فهو ببساطة ينشئ مجموعة بيانات تحتوي على مسارات الملفات كسلاسل نصية. أي أنه يختلف ذلك عن tf.io.read_file() الذي يأخذ تلك المسارات المكتشفة ويسترجع المحتوى الخاص بكل ملف وهي البيانات الثنائية كما هي مخزنة في الملف، أي السلسلة من البايتات التي تكوّن الملف بدون أي معالجة أو تفسير مع الحفاظ على البيانات في شكلها المضغوط والمشفر دون تفسير ما تمثله البايتات. وأخيرا يقوم tf.image.decode_jpeg بتحويل تلك البايتات الخام إلى تمثيل بصري ذي معنى عن طريق فك الضغط وتفسير الترميز الخاص ب JPEG وتحويلها إلى متجه ثلاثي الأبعاد بأبعاد تمثل الارتفاع والعرض وقنوات الألوان التي يمكن لنموذجك معالجتها.
×
×
  • أضف...