الذكاء الصنعيمقالات ومحاور تقنية

ما هو TensorFlow؟ .. تعرف على مكتبة تعلم الآلة 2024

TensorFlow 2024


TensorFlow مكتبة مفتوحة المصدر تستخدم لغة بايثون Python للحساب الرقمي والذي يجعل تعلم الآلة أسرع وأسهل، بالمجمل تعلم الآلة نظام معقد إلا أنَّ تطبيق نماذج تعلم الآلة أصبح أقل صعوبة عما كان عليه في السابق، وذلك بفضل أطر تعلم الآلة – مثل TensorFlow من Google – والتي تسهل عملية الحصول على البيانات ونماذج التدريب وتخدم التنبؤات وتساعد في تحسين النتائج المستقبلية.

تم إنشاء TensorFlow بواسطة فريق Google Brain، وهي مكتبة مفتوحة المصدر للحساب الرقمي وتعلم الآلة على نطاق واسع. ويجمع TensorFlow معاً مجموعة من نماذج تعلم الآلة والتعليم العميق (المسمى أيضاً بالشبكات العصبية) والخوارزميات ويجعلها مفيدة من خلال الاستعارة الشائعة. ويستخدم Python لتوفير واجهة برمجة تطبيقات أمامية ملائمة لبناء التطبيقات مع إطار العمل، بينما يتم تنفيذ هذه التطبيقات بلغة السي بلس بلس عالية الأداء .

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

اقرأ أيضاً: أفضل تطبيق صيانة الجوال في المنزل | القائمة الكاملة لتطبيقات صيانة الجوالات 2024

ما هو التعلم العميق؟

التعلم العميق Deep learning هو مجموعة فرعية من التعلم الآلي، ويعمل على بنية ووظائف الدماغ البشري بشكل مشابه. فهو يتعلم من البيانات غير المنظمة ويستخدم خوارزميات معقدة لتدريب شبكة عصبية.

نحن نستخدم في المقام الأول الشبكات العصبية في التعلم العميق، والذي يعتمد على الذكاء الاصطناعي و هنا، نقوم بتدريب الشبكات على التعرف على النصوص والأرقام والصور والصوت وما إلى ذلك.

على عكس التعلم الآلي التقليدي، فإن البيانات هنا أكثر تعقيدًا وغير منظمة ومتنوعة، مثل الصور أو الصوت أو الملفات النصية و أحد المكونات الأساسية للتعلم العميق هي الشبكة العصبية.

اقرأ أيضاً: 6 من مخاطر الأمن السيبراني في عالم إنترنت الأشياء 2024

TensorFlow
TensorFlow

شرح الـ TensorFlow

يتيح TensorFlow للمطورين إنشاء رسومات بيانية لتدفق البيانات – وهي هياكل تصف كيفية تحرك البيانات عبر الرسم البياني، أو سلسلة من عقد المعالجة. تمثل كل عقدة في الرسم البياني عملية حسابية، ويكون كل اتصال أو حافة بين العقد عبارة عن مصفوفة بيانات متعددة الأبعاد، أو موتر.

يوفر TensorFlow كل هذا للمبرمج عبر لغة Python. وتعتبر Python سهلة للتعلم والعمل بها، وتوفر طرقاً مريحة للتعبير عن كيفية الجمع بين التجريدات عالية المستوى. العقد والتوترات في TensorFlow هي كائنات Python، وتطبيقات TensorFlow هي نفسها تطبيقات Python.

ومع ذلك، لا يتم تنفيذ العمليات الفعلية الرياضيات في Python. تتم كتابة مكتبات التحويلات التي تتوفر من خلال TensorFlow كثنائيات سي بلس بلس عالية الأداء. تقوم بايثون فقط بتوجيه حركة المرور بين القطع، وتوفر اختصارات برمجة عالية المستوى لربطها ببعضها البعض.

ويمكن تشغيل تطبيقات TensorFlow على أي منصة مناسبة: كالجهاز المحلي، أو كمجموعة في السحابة، أو أجهزة iOS وأندرويد، وحتى وحدات المعالجة المركزية (CPUs) أو وحدات معالجة الرسومات (GPU). وإن كنت تستخدم السحابة الخاصة لشركة Google، فيمكنك تشغيل TensorFlow على شريحة وحدة معالجة TensorFlow من Google لمزيد من التسارع. ومع ذلك، يمكن نشر النماذج الناتجة التي تم إنشاؤها بواسطة TensorFlow على معظم الأجهزة ليتم استخدامها لخدمة التوقعات.

اقرأ أيضاً: التكنولوجيا التي ستُغير حياتنا خلال 5 سنوات القادمة

تاريخ TensorFlow

تم الإعلان عن TensorFlow لأول مرة في عام 2015، في حين ظهرت أول نسخة مستقرة في 11 فبراير 2017 و تم إنشاؤه وصيانته بواسطة Google.

منذ ذلك الحين، أصبح أحد أطر العمل الأكثر شيوعًا لمشاريع التعلم العميق والتعلم الآلي و يحتوي على مكتبة واسعة للتعلم الآلي والحساب العددي على نطاق واسع. فيما يلي بعض المعالم الإضافية لـ TensorFlow:

  1. في ديسمبر 2017، تم إصدار Kubeflow لتشغيل ونشر TensorFlow على Kubernetes.
  2. في مارس 2018، تم إصدار TensorFlow 1.0 للتعلم الآلي في JavaScript.
  3. في يناير 2019، تم إصدار TensorFlow 2.0 والذي يضيف عددًا من المكونات إلى TensorFlow.
  4. في مايو 2019، تم إصدار TensorFlow Graphic للتعلم العميق في رسومات الكمبيوتر.

اقرأ أيضاً: أفضل dns في السعودية والعالم | ما هو اسرع dns في السعودية 2024؟

 بنية الـ TensorFlow
بنية الـ TensorFlow

بنية الـ TensorFlow

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

اقرأ أيضاً: تسريع أرشفة جوجل لموقعك – أفضل 10 طرق

آلية عمل TensorFlow

يتيح لك TensorFlow إنشاء رسوم بيانية لتدفق البيانات تصف كيفية تحرك البيانات عبر الرسم البياني و يتكون الرسم البياني من العقد التي تمثل عملية رياضية.

الاتصال أو الحافة بين العقد عبارة عن مصفوفة بيانات متعددة الأبعاد و يأخذ المدخلات كمصفوفة متعددة الأبعاد حيث يمكنك إنشاء مخطط انسيابي للعمليات التي يمكن تنفيذها على هذه المدخلات.

اقرأ أيضاً: أفضل شركات الاستشارات في العالم 2024 | القائمة الأحدث تفاصيل ومعلومات

ماذا تحتاج لتشغيل Tensorflow؟

يمكن تقسيم متطلبات أجهزة وبرامج TensorFlow إلى ثلاث فئات و الوضع (نوع الذكاء الاصطناعي)، يتم تدريبه خلال مرحلة التطوير و تتم غالبية التدريب على جهاز كمبيوتر أو كمبيوتر محمول و يمكن استخدام Tensorflow على مجموعة متنوعة من المنصات عند اكتمال مرحلة التدريب.

يمكن استخدامه على سطح مكتب Windows أو macOS أو Linux في السحابة كخدمة ويب وعلى الأنظمة الأساسية للجوّال مثل iOS و Android و يمكنك تدريبه على عدة أجهزة كمبيوتر ثم تشغيله على جهاز منفصل بمجرد أن يتم تدريبه.

يمكن استخدام كل من وحدات معالجة الرسومات (GPU) ووحدات المعالجة المركزية (CPU) لتدريب النموذج وتشغيله و تم إنشاء وحدات معالجة الرسومات مع وضع ألعاب الفيديو في الاعتبار و اكتشف باحثو ستانفورد في أواخر عام 2010 أن وحدات معالجة الرسومات قوية جداً في عمليات المصفوفة والجبر.

مما يجعلها سريعة جداً في هذه الأنواع من المهام و يتم استخدام الكثير من عمليات ضرب المصفوفات في التعلم العميق ونظراً لأن TensorFlow تم تطويره في ++C، فهو سريع للغاية في تنفيذ عملية ضرب المصفوفة و TensorFlow على الرغم من كتابته بلغة ++C، يمكن الوصول إليه والتحكم فيه باستخدام لغات مختلفة، أبرزها Python.

اقرأ أيضاً: أفضل 17 متجر تطبيقات بديل جوجل بلاي | تنزيل متجر التطبيقات الأفضل 2024

مكونات TensorFlow
مكونات TensorFlow

فوائد TensorFlow

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

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

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

اقرأ أيضاً: الواقع الممتد .. معلومات |حقائق | توقعات وكل ما ترغب بمعرفته 2024

خوارزميات مختلفة يمكن استخدامها في Tensorflow

فيما يلي الخوارزميات المدعومة:
  1. الانحدار الخطي: tf.estimator.inearRegressor.
  2. التصنيف: tf.estimator.LinearClassifier.
  3. تصنيف التعلم العميق: tf.estimator.DNNClassifier.
  4. مسح التعلم العميق: tf.estimator.DNNLinearCombinedClassifier.
  5. تعزيز انحدار الشجرة: tf.estimator.BoostedTreesRegressor.
  6. تصنيف الشجرة المعزز: tf.estimator.BoostedTreesClassifier.

اقرأ أيضاً: أفضل طريقة وبرنامج تشغيل اليوتيوب في الخلفية للايفون

TensorFlow والمنافسة

تتنافس TensorFlow مع عدد كبير من الأطر الأخرى للتعلم الآلي. تعد PyTorch و CNTK و MXNet ثلاثة أطر عمل رئيسية تتناول العديد من الاحتياجات نفسها وفيما يلي المقارنة بين هذه الأطر وTensorFlow:

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

يستخدم CNTK، مجموعة أدوات مايكروسوفت المعرفية، ومثل TensorFlow بنية رسومية لوصف تدفق البيانات، ولكنه يركز بشكل أكبر على إنشاء شبكات عصبية تعلمية عميقة. يعالج CNTK العديد من وظائف الشبكات العصبية بشكل أسرع، ولديه مجموعة أوسع من واجهات برمجة التطبيقات (Python ، C ++ ، C # ، Java). ولكن ليس من السهل تعلمه أو نشره حالياً مثل TensorFlow.

يمكن لـ Apache MXNet، التي تعتمدها أمازون Amazon كإطار عمل التعلم العميق الأول على AWS، أن تتسارع بشكل خطي عبر وحدات معالجة الرسوميات المتعددة والآلات المتعددة. كما أنها تدعم مجموعة واسعة من واجهات برمجة التطبيقات اللغوية – Python و ++C  و Scala و R و JavaScript و Julia و Perl و Go – على الرغم من أن واجهات برمجة التطبيقات الأصلية الخاصة بها ليست ممتعة للعمل معها كـ TensorFlow.

اقرأ أيضاً: أقوى 7 توقعات ذكاء اصطناعي Artificial Intelligence في 2024

وأخيراً اطلع على المزيد من شروحاتنا في عالم الذكاء الصنعي AI

يدعم TensorFlow كلاً من أجهزة الحوسبة وحدات المعالجة المركزية ووحدات معالجة الرسومات

تطبيقات التعلم العميق معقدة للغاية، حيث تتطلب عملية التدريب الكثير من العمليات الحسابية و يستغرق الأمر وقتًا طويلاً بسبب حجم البيانات الكبير، ويتضمن العديد من العمليات التكرارية والحسابات الرياضية ومضاعفات المصفوفات وما إلى ذلك. إذا قمت بتنفيذ هذه الأنشطة على وحدة معالجة مركزية عادية (CPU)، فعادةً ما يستغرق الأمر وقتًا أطول.

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

إحدى المزايا الرئيسية لـ TensorFlow هي أنه يدعم وحدات معالجة الرسومات، بالإضافة إلى وحدات المعالجة المركزية. كما أن لديها وقت تجميع أسرع من مكتبات التعلم العميق الأخرى، مثل Keras وTorch.

اقرأ أيضاً: أفضل تطبيقات تعلم الآلة 2024

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى