Systematics
  • EN
  • אודות
    • על סיסטמטיקס
    • הורדת תעודות ISO
    • אירועים בסיסטמטיקס
    • קהילה
    • יצירת קשר
    • דרכי הגעה
    • לזכרו של יואב לבנטר ז"ל, מייסד ומנכ"ל משותף
  • פתרונות ומוצרים
    • תחום GIS
      • אודות
      • מוצרים
      • אירועים
      • קורסים
      • תמיכה
      • סיפורי לקוחות
    • תחום 3D CAD/PLM
      • אודות
      • מוצרים
      • אירועים
      • קורסים
      • תמיכה
      • סיפורי לקוחות
    • תחום MATLAB & Simulink
      • אודות
      • מוצרים
      • אירועים
      • קורסים
      • תמיכה
      • סיפורי לקוחות
    • תחום 3D Printing
      • אודות
      • מוצרים
      • אירועים
      • תמיכה
      • סיפורי לקוחות
      • רכישה Online
  • לקוחות
    • לקוחות סיסטמטיקס בחזית המאבק במגיפת הקורונה
    • לקוחות
      • סיפורי הצלחה
    • תעשיות
      • אקדמיה
      • Start Ups
    • תכניות עבור סטארטאפים
  • קורסים
      • אודות מרכז ההדרכה
    • קורסים GIS
      • אודות הקורסים
      • תאריכים וסילבוס
    • קורסים SOLIDWORKS
      • אודות הקורסים
      • תאריכים וסילבוס
      • קורסים CATIA
    • קורסים MATLAB & Simulink
      • אודות הקורסים
      • תאריכים וסילבוס
    • קורסים 3D Printing
      • תאריכים וסילבוס
    • קורסים ALTIUM
      • תאריכים וסילבוס
  • תמיכה
    • תמיכה ושירותי ייעוץ
    • סקר שביעות רצון לקוחות
    • נהלי התקנה ורישוי GIS
    • נהלי התקנה ורישוי MATLAB
    • נהלי התקנה ורישוי SOLIDWORKS
    • פתיחת קריאות שירות
    • פתיחת קריאות שירות תחום GIS
  • קריירה
    • משרות
    • לעבוד בסיסטמטיקס
  • צור קשר
  • בלוג
    • הבלוגים שלנו
    • SOLIDBlog
    • PCB Blog
    • GIS Blog
    • MATLAB With Fun Blog
    • 3D Printing Blog
  • HE
  • Contact Us
  • Support
  • Customers
    • Customers
    • Success Stories
  • Industries
  • Solutions
  • About Us
  • חיפוש באתר
  • Menu Menu

עמוד הבית » בלוג » MATLAB With Fun

  • ALL
  • GIS Blog
  • MATLAB With Fun
  • PCB Blog
  • Smart 3D Printing
  • SOLIDBlog

דואגים שתמיד תישארו מעודכנים: מה חדש ב-AI עם MATLAB?

יובל סיבירסקי
20/08/2024
MATLAB With Fun

תגיות: AI | Deep Learning | Machine Learning | MATLAB | Python | R2024a | SIMULINK

במאמר זה נסביר על קצה המזלג על השינויים והחידושים שהתרחשו בגרסה האחרונה – 2024a עם כלי ה-Deep Learning של MATLAB.

שתפו את הפוסט
  • שתף בפייסבוק
  • שתף בטוויטר
  • שתף בגוגל+
  • שתף בלינקדאין
  • שתף באימייל
  • שתף בוואטסאפ

כמה מתסכל זה יכול להיות שאנחנו נכנסים לדוקומנטציה של MATLAB כי אנחנו לא זוכרים איך קוראים לפונקציה מסוימת, ובסוף במקום להשתמש בה בקלות אנחנו רואים הודעה אזהרה אדומה שהפונקציה הזו היא – not recommended – ובמקומה מוצע עבורנו פתרון חדש שבכלל איננו מכירים או יודעים איך להשתמש בו:

היום אנחנו כאן כדי להסביר על קצה המזלג על השינויים והחידושים שהתרחשו בגרסה האחרונה – 2024a עם כלי ה-Deep Learning של MATLAB.

מעבר לכך, אם תרצו להעמיק ולשמוע עוד מעבר לחידושים בבלוג זה, אנחנו מקיימים כנס בנושא יישום והטמעה של AI ב24.9.24 במלון דניאל בהרצליה, בו תוכלו לראות דמואים ייעודיים בנושאי AI, לשמוע על השינויים והחידושים, ולקבל ידע פרקטי להטמעה ואימוץ של AI במערכות ופרויקטים מורכבים – גם אצלכם בחברה.

dlnetwork object:

מדובר באובייקט של MATLAB מגרסת 2019b שעבר כמה שדרוגים משמעותיים כך שיהיה שימושי עבורנו כאובייקט שמחזיק בתוכו את הרשת שבנינו.

עד היום התעסקנו בשני סוגי רשתות בסיסיות ומוכרות במטלב:

  1. seriesnetwork object – רשת עם שכבות מסודרות אחת אחרי השנייה. יש לו שכבת קלט אחת ושכבת פלט אחת כמו שניתן לראות בתמונה 1.

תמונה 1. דוגמה ל- Seriesnetwork

  • DAGnetwork object – רשת עם ארכיטקטורת שכבות מורכבת יותר מאשר ה- seriesnetwork שבה לשכבות יש כניסות משכבות מרובות ופלטים למספר שכבות. דוגמה לרשת מסוג זה ניתן לראות בתמונה מספר 2.

תמונה 2. דוגמה ל- DAGnetwork

מגרסת 2024a ההמלצה של MathWorks היא להשתמש רק באובייקט dlnetwork שמכיל בתוכו גם את ה- seriesnetwork וגם את ה- DAGnetwork. נשים לב כי אם יש לנו כבר רשת מסוג DAG או series אנחנו יכולים בקלות להמיר אותה ל- dlnetwork באמצעות הפונקציה: dag2dlnetwork.

שינוי ראשון שקורה בעקבות המעבר לאובייקט מסוג dlnetwork הוא שאנחנו לא צריכים יותר להשתמש בפונקציית layerGraph על מנת לראות את השכבות שלנו בצורה מסודרת או על מנת להוסיף שכבה, להסיר שכבה, לשנות שכבה או לייצר קשרים בין שכבות. ברגע שהמרנו את הרשת שלנו ל – dlnetwork נוכל לעשות את כל השינויים באמצעות האובייקט של הרשת מבלי להמיר אותו לשכבות. תמונה מספר 3 מציגה את השינויים הללו.

תמונה 3. כיצד ניתן לבצע שינויים ברשת או להמיר אותה מבלי להשתמש ב-  layergraph

למידע נוסף בנוגע לאובייקט dlnetwork ניתן לקרוא עוד בדוקומנטציה.

פונקציית trainnet:

אם האובייקט ששומר בתוכו את הרשת השתנה מן הראוי שגם פונקציית האימון תשתנה בהתאם לכך שתקבל לתוכה את האובייקט הספציפי הזה. עד היום היינו רגילים להשתמש ב- trainNetwork בצורה כזו שהיינו מכניסים את הדאטא של האימון ואת השכבות של הרשת (בין אם בצורה של layers או בצורה של layerGraph) וכמובן את המאפיינים של האימון. הפונקציה החדשה שמומלץ להשתמש בה הוצגה לראשונה בגרסת 2023b ונקראת trainnet. היא יכולה לקבל dlnetwork או layers (ממש כמו ב- trainNetwork) ואחד היתרונות העיקריים שלה הוא שהיא גם נותנת לנו לבחור את פונקציית ה- loss שלנו. אנחנו יכולים לבחור את אחת מהפונקציות המוכרות ש-MATLAB מציע למשל mse, crossentropy וכו' או לייצר פונקציית loss בעצמנו שמתאימה לצרכים ולדאטא שלנו ולהשתמש בה.

כמה יתרונות שיש לשני השינויים שדיברנו עליהם עד כה:

  1. הפונקציה trainnet תומכת באובייקטים מסוג dlnetwork והם תומכים במגוון גדול של ארכיטקטורות של רשתות שאפשר לייצר בעצמנו, להשתמש ברשתות קיימות ומוכרות ב-MATLAB או אפילו לייבא מבחוץ (tensorflow, pytorch וכו').
  2. באמצעות פונקציית trainnet אנחנו יכולים לשלוט בחישובי ה- loss מה שעוזר לנו עוד קצת לשלוט בתהליך האימון והלמידה בייחוד כאשר אפשר לייצר פונקציות loss משל עצמנו שמתאימות לדאטא שלנו בלבד.
  3. שימוש ב- trainnet הינו מהיר יותר משימוש ב- trainNetwork.

למידע נוסף בנוגע לפונקציית trainnet ניתן לקרוא עוד בדוקומנטציה.

Transfer learning:

עד היום על מנת לבצע transfer learning היינו משתמשים בשם הרשת שאותה אנחנו רוצים לאמן מחדש למשל:

אך שימוש בצורה כזו יוצר לנו seriesnetwork או DAGnetwork.  לכן, נוצרה פונקציה חדשה שנקראת imagePretrainedNetwork שמכילה בתוכה את כל סוגי הרשתות המוכרות שאנחנו יכולים להשתמש בהם (נשים לב כי כדי להשתמש ברשתות אלו עדיין נצטרך להוריד את ה- support package שלהן) ובאמצעות שימוש בפונקציה זו נקבל רשת שהינה אובייקט מסוג dlnetwork.

דרך פונקציה זו נוכל גם לשנות בקלות את הכמות של הקלאסים אם נרצה לקחת את הרשת לזהות דברים אחרים מהקלאסים המובנים שלה. יש לציין כי עבור סיגנלי שמע יש פונקציה דומה – audioPretrainedNetwork – שמכילה רשתות ידועות עבור סיגנלי שמע.

Predictions:

גם בחלק של הפרדיקציה ישנם כמה שינויים בעקבות השימוש באובייקט dlnetwork. ישנן 2 פונקציות שבהן נוכל להשתמש ונעשה בניהן כעת השוואה. ההשוואה מוצגת בטבלה 1.

טבלה 1. השוואה בין פונקציית minibatchpredict ל – predict

למידע נוסף בנוגע לפונקציות אלו ניתן להיכנס לקישורים הבאים בדוקומטציה:

  1. פונקציית predict
  2. פונקציית minibatchpredict

** חשוב לציין – כאשר אתם נתקלים ב- not recommended בדוקומנטציה, זה לא אומר שאסור להשתמש בפונקציות או באובייקטים הללו, הכוונה היא רק שיש אובייקטים ופונקציות מתקדמות יותר הן מבחינת פונקציונליות והן מבחינת ביצועים.

לגבי השילוב בין MATLAB ו­-Python

כמו שכבר כולם יודעים השילוב בין MATLAB ו­-Python הולך ומשתפר כל גרסה כך שלאט לאט נהיה יותר קל לעבוד עם שתי התוכנות יחד. כיום ניתן לייבא ולייצא רשתות בצורה קלה מ- Tensorflow ומ – ONNX גם עבור סביבות אחרות. גם מ- Pytorch ניתן לייבא רשתות ישירות לתוך MATLAB ללא בעיה (תמונה 4).

בגרסת 2023b נוצרו שתי פונקציות שעוזרות בייבוא הרשתות לתוך מטלב:

  1. importNetworkFromTensorFlow
  2. importNetworkFromONNX

הפונקציה importNetworkFromPyTorch שמייבאת רשתות מ- pytorch הוצגה מוקדם יותר בגרסת 2022b.

תמונה 4. – ייבוא וייצוא רשתות

אז היום כבר אין תירוצים, מי שמשתמש ברשתות מPython יכול לייבא אותן בקלות לתוך MATLAB ולעבוד עליהן משם.

למידע נוסף בנוגע לשימוש ברשתות מיובאות ב-MATLAB ניתן לקרוא כאן.

אם תרצו לשמוע עוד, וליישם חלק מהדברים האמורים גם אצלכם בחברה – אתם מוזמנים ליצור אתנו קשר ונשמח לעזור.

הזדמנות טובה לשמוע ולהכיר אותנו מקרוב– היא להגיע לכנס שלנו שמתקיים ב 24.9.24 במלון דניאל, שם תוכלו ללמוד ולהתעדכן , ונמשיך להתקדם משם 😊  

תגיות: AI | Deep Learning | Machine Learning | MATLAB | Python | R2024a | SIMULINK

למידע נוסף
כיתבו לנו
שתפו את הפוסט
  • שתף בפייסבוק
  • שתף בטוויטר
  • שתף בגוגל+
  • שתף בלינקדאין
  • שתף באימייל
  • שתף בוואטסאפ

פוסטים נוספים מאותה קטגוריה

להמריא עם MATLAB – כל מה שצריך לדעת על הקורסים של MathWorks

להמריא עם MATLAB – כל מה שצריך לדעת על הקורסים של MathWorks

MATLAB With Fun

שלי מרטינוב
11/05/2025
גילוי כשלים בייצור בשלבים מוקדמים בעזרת Visual Inspection

גילוי כשלים בייצור בשלבים מוקדמים בעזרת Visual Inspection

MATLAB With Fun

ענבר לוי
27/04/2025
תאום דיגיטלי להאצת בדיקות בקרת ההינע של מנועים חשמליים

תאום דיגיטלי להאצת בדיקות בקרת ההינע של מנועים חשמליים

MATLAB With Fun

איתמר אנגלמן
07/04/2025
תגובות | 0 תגובות

השאירו תגובה

כתיבת תגובה לבטל

האימייל לא יוצג באתר. שדות החובה מסומנים *

הרשמו לקבלת עדכונים

MATLAB With Fun
שדה חובה

ההרשמה בוצעה בהצלחה. בדוק בתיבת הדואר שלך, הודעה המכילה קישור לאישור ההרשמה ואשר את הרשמתך.

רוצים ללמוד עוד? כיתבו לנו

כיתבו לנו


    social-media-youtubesocial-media-linkedin

    קהילה

    • קהילת סיסטמטיקס
    • SOLIDWORKS Blog
    • PCB Blog
    • MATLAB with Fun Blog
    • GIS Blog
    • Smart 3D Printing Blog
    • ESRI Israel FB
    • SOLIDWORKS Israel FB
    • MATLAB and Simulink LI
    • MATLAB and Simulink FB

    צור קשר

    • בקשת יצירת קשר
    • בקשת קשר טלפוני

    רכישה

    • בקשת הצעת מחיר
    • מכירות ESRI
    • מכירות SOLIDWORKS
    • מכירות ALTIUM
    • מכירות CATIA
    • מכירות ENOVIA
    • מכירות MATLAB & Simulink
    • מכירת מדפסות תלת מימד

    קורסים

    • קורסים GIS
    • קורסים SOLIDWORKS
    • קורסים MATLAB & Simulink
    • קורסים CATIA
    • קורסים ALTIUM
    • יצירת קשר מרכז ההדרכה

    תמיכה

    • מדיניות תמיכה
    • שירותי ייעוץ
    • פתיחת קריאות שירות

    פתרונות ומוצרים

    • תחום GIS
    • תחום 3D CAD/PLM
    • SOLIDWORKS
    • ALTIUM PCB
    • CATIA
    • ENOVIA
    • MATLAB & Simulink
    • תחום 3D Printing
    • 3D EXPERIENCE
    • תעשיות
    • אקדמיה
    • Start Ups

    אודות סיסטמטיקס

    • מי אנחנו?
    • אירועים
    • דרכי גישה ומפה
    • יצירת קשר

    לקוחות

    • לקוחות סיסטמטיקס
    • סיפורי לקוח SOLIDWORKS
    • סיפורי לקוח MathWorks
    • סיפורי הצלחה GIS
    © 2025 All rights reserved SYSTEMATICS Ltd. | Privacy Policy
    • הישארו מעודכנים
    • כיתבו לנו
    Scroll to top