Keras
מפתח פרנסואה צ'ולט
מחזור חיים 27 מרץ 2015 – הווה (9 שנים)
מערכת הפעלה Linux, macOS, Windows, Android, website
נכתבה בשפות פייתון
סוג רישיון MIT
קטגוריה למידת מכונה
https://github.com/keras-team/keras

https://keras.io/

Keras הינה ספרית קוד פתוח המשמשת כ-API ל-TensorFlow.

עד גרסה 2.3 Keras תמכה בעוד ספריות בינה מלאכותית כגון Microsoft Cognitive Toolkit, Theano, ו PlaidML[1] אך בגרסה 2.4 הפסיקה לתמוך בהן ועברה להתמקד ב-TensorFlow בלבד. Keras נוצרה עם מחשבה על ידידותיות למשתמש גמישות ומודולריות כאשר המוטו שלה הינו "Keras הוא ממשק API המיועד לבני אדם, לא למכונות". Keras פותחה במקור כחלק מפרויקט ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System) והמפתח והמתחזק העיקרי שלה הינו פרנסואה צ'ולט.

מאפיינים עריכה

Keras מכילה בתוכה הרבה אבני בניין נפוצות של רשתות עצביות מלאכותיות כגון שכבות, מייעלים (optimizers), פונקציות הפסד, מדדים לבדיקת המודל ודרכים לנהל דאטה. Keras תומכת בין השאר ברשות עצביות מתפתחות, RNN ורשתות עצביות מלאכותיות בעזרת שכבות dropout, כינוס, אגרגציה ו-batch normalization[2].

Keras ו TensorFlow עריכה

בגרסה 1.1 נוספה ל-Keras TensorFlow בתור תת ספריה מכיוון ש-TensorFlow נראתה דיי כמאיימת ולא אינטואיטיבית ו-Keras פתרה בעיה זאת כאשר היא משמשת כממשק הרבה יותר ידידותי ל-TensorFlow.ב-2019 בעקבות ירידת אחוז השימוש ב-TensorFlow גוגל המפתחת של TensorFlow רצתה לפתח ממשק חדש ידידותי יותר למשתמש וקל להבנה מכיוון ש-Keras כבר הייתה קיימת ומאוד פופולרית גוגל לא ראתה צורך בלפתח ממשק שלם מחדש ופשוט הפכה את Keras לממשק של TensorFlow מגרסה 2.0 מה גם ש-Keras ו-TensorFlow שתיהן ספריות קוד פתוח דבר נוסף שהתא את המוזנים לכיוון בחירה זאת.

קוד עריכה

יצירת מודל בשם "generator" בעזרת Keras:

generator = keras.Sequential(
    [
        keras.Input(shape=(latent_dim,)),
        layers.Dense(8 * 8 * 128),
        layers.Reshape((8, 8, 128)),
        layers.Conv2DTranspose(128, kernel_size=4, strides=2, padding="same"),
        layers.LeakyReLU(alpha=0.2),
        layers.Conv2DTranspose(256, kernel_size=4, strides=2, padding="same"),
        layers.LeakyReLU(alpha=0.2),
        layers.Conv2DTranspose(512, kernel_size=4, strides=2, padding="same"),
        layers.LeakyReLU(alpha=0.2),
        layers.Conv2D(3, kernel_size=5, padding="same", activation="sigmoid"),
    ],
    name="generator",
)

הערות שוליים עריכה

קטגוריה:למידה חישובית קטגוריה:בינה מלאכותית