اكتشف Keras، وهي واجهة برمجة تطبيقات Python سهلة الاستخدام تعمل على تبسيط التعلّم الآلي من خلال النمطية والمرونة والدعم متعدد النهايات الخلفية.
Keras هي واجهة برمجية مفتوحة المصدر وعالية المستوى مصممة لتبسيط إنشاء نماذج
. وهي مكتوبة بلغة Python وتركز
على تمكين التجريب السريع من خلال العمل كغلاف سهل الاستخدام حول مكتبات حسابية رقمية معقدة ومنخفضة المستوى
. تم تطوير Keras وفقًا لفلسفة مفادها أن أدوات
يجب أن تكون في متناول البشر بدلاً من تصميمها للآلات فقط. وهي تسمح للباحثين والمطورين بالانتقال
من فكرة أولية إلى نتيجة عملية بأقل قدر من التأخير، مما يجعلها أداة أساسية في النظام البيئي الأوسع
.
يسترشد تصميم Keras بالنمطية والبساطة وقابلية التوسعة. فهو يتعامل مع
كسلسلة من الوحدات المستقلة
القابلة للتكوين بالكامل والتي يمكن توصيلها معًا بأقل قدر ممكن من القيود. هذا النمط المعماري
يجعل من السهل على المبتدئين فهم المفاهيم الأساسية مع الحفاظ على قوتها بما يكفي للخبراء لبناء
البنى المتقدمة.
تدعم Keras محركات خلفية متعددة، مما يعني أنها لا تقوم بعمليات tensor منخفضة المستوى بنفسها. بدلاً من ذلك، فإنه
يعتمد على مكتبات قوية مثل
أو JAX للتعامل مع الرفع الثقيل. تسمح هذه الإمكانية متعددة النهايات للمستخدمين بالاستفادة من نقاط القوة المحددة
لأطر العمل المختلفة - مثل النظام البيئي الجاهز للإنتاج في TensorFlow أو الرسوم البيانية الحسابية الديناميكية لـ
PyTorchإعادة كتابة تعريفات النماذج عالية المستوى. يمكنك استكشاف الموقع الرسمي
للتعمق في تكوين الواجهة الخلفية الخاصة به.
من المهم التمييز بين الواجهة والمحرك. Keras هي الواجهة، بينما تعمل مكتبات مثل
و
كمحركات.
أدت بساطة Keras إلى اعتماده على نطاق واسع في مختلف الصناعات لحل مشاكل البيانات المعقدة
.
يوضّح المثال التالي كيفية تعريف مصنف صور بسيط باستخدام واجهة برمجة تطبيقات Keras التسلسلية. يقوم هذا النهج المعياري
بتكديس الطبقات - مثل تجميع
و
- لاستخراج الميزات من الصور.
from tensorflow.keras import layers, models
# Define a Sequential model for image classification
model = models.Sequential(
[
layers.Conv2D(32, (3, 3), activation="relu", input_shape=(28, 28, 1)),
layers.MaxPooling2D((2, 2)),
layers.Flatten(),
layers.Dense(64, activation="relu"),
layers.Dense(10, activation="softmax"), # Output layer for 10 classes
]
)
# Compile the model with an optimizer and loss function
model.compile(optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"])
# Display the architecture
model.summary()
في حين أن Keras ممتاز لبناء بنيات مخصصة من الصفر، فإن تطوير الذكاء الاصطناعي الحديث غالبًا ما يتضمن استخدام
نماذج متخصصة ومحسّنة مسبقًا لمهام محددة. على سبيل المثال، يوفر موقع
أحدث أداء لمهام
والتجزئة خارج صندوق
.
غالبًا ما يجد المطورون قيمة في فهم كلا النموذجين. يمكن للمرء أن يستخدم Keras لتجربة نموذج جديد
أو رأس تصنيف
بسيط، بينما يعتمد على أطر عمل قوية مثل Ultralytics لخطوط أنابيب الكشف على مستوى الإنتاج.
علاوة على ذلك، غالبًا ما يمكن تصدير النماذج المبنية في Keras إلى تنسيقات قابلة للتشغيل البيني مثل
. وهذا يسمح بنشرها جنبًا إلى جنب مع نماذج YOLO في بيئات عالية الأداء مثل
أو تطبيقات الهاتف المحمول.
بالنسبة لأولئك الذين يتطلعون إلى توسيع مجموعة أدواتهم، يوفر تعلم Keras أساسًا متينًا في
و
و
، وهي معرفة أساسية عند
ضبط النماذج المتقدمة باستخدام
على
مخصص.