Keras
מפתח | פרנסואה צ'ולט |
---|---|
מחזור חיים | 27 מרץ 2015 – הווה (9 שנים ו־35 שבועות) |
מערכת הפעלה | 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",
)
הערות שוליים
- ^ Åsa Magnusson, 02 / The association between the number of oocytes retrieved for IVF, perinatal outcomes and obstetric complications., dx.doi.org, 29 ביוני 2018
- ^ Douglas J. Keenan, Volcanic ash retrieved from the GRIP ice core is not from Thera, Geochemistry, Geophysics, Geosystems 4, 2003-11, עמ' n/a–n/a doi: 10.1029/2003gc000608
32434876Keras