מה חדש בכלי MATLAB ו-Simulink בגרסת R2018b?

MATLAB

  • העלאה מהירה יותר של התוכנה, של Live Scripts ושל Apps
  • חקר גרפים בצורה נוחה יותר – אפשר לבצע panning, זום וסיבוב תלת-ממדי ולהוסיף data tips בצורה אינטראקטיבית
  • הרחבת השימושיות של String Arrays. למידע נוסף – לחצו פה.
  • פיצ'רים חדשים ב-Live Editor, כמו סגנונות נוספים לכותרות, היפרלינקים פנימיים לצורך ניווט קל יותר בתוך Script וכו'. למידע נוסף – לחצו פה.
  • העברת מערכים לוגיים/נומריים רב-ממדיים בין MATLAB ו-Python

Simulink

  • ניתן ליצר פורט יציאה וכניסה בצורה אוטומטית לבלוקים מסוימים (subsystem, add, mux, etc). למידע נוסף – לחצו פה.
  • חיפוש בלוק על ידי כתיבה על משטח העבודה יציג כעת תוצאות נפוצות תחילה (להבדיל מהצגת תוצאות לפי ה-a,b,c…). ניתן כעת גם לתכנת את סדר הופעת הבלוקים ולהכניס בלוקים פרטיים. למידע נוסף לחצו פה.
  • שינוי ערך / שם המשתנה יבוצע ישירות על הבלוק ללא צורך בפתיחת חלון (בבלוקים תומכים). למידע נוסף לחצו פה.
  • השלמה אוטומטית של שמות המשתנים לפי ה-path של MATLAB (פונקציות, פרמטרים מה-workspace)
  • יכולות המיקבול של Simulink שופרו, כעת ניתן להריץ Job עם BatchSim בנוסף ל-ParSim. למידע נוסף לחצו פה.
  • שופרו יכולות גילוי הפותרן ברמת המודל, ניתן לצפות בקצבי דגימה, תלויות בין בלוקים (לצורך מקבול), ולמצוא pipelines. למידע נוסף לחצו פה.
  • עבודה ויצירת קוד בתצורה של Row-Major & Column-Major
  • ניתן לשלב בצורה פשוטה ונוחה קוד C כחלק מהמודל – באמצעות בלוק חדש – בלוק C-Caller – למידע נוסף לחצו פה.
  • ייבוא וייצוא מודלים ל-FMU עבור שילוב ב-Co-Simulation. למידע נוסף לחצו פה.
  • צפייה במידע עם תצוגת מפה בשימוש בSimulation Data Inspector. למידע נוסף לחצו פה.
  • ייצור Bus עבור כל סוגי הסיגנלים מכל סוגי המשפחות (Simulink, SimScape) – למידע נוסף לחצו פה.
  • ניתן ליבוא מודלים של Spice לתוך SimScape. למידע נוסף לחצו פה.
  • עבודה עם Strings גם ב-Simulink וגם ב-StateFlow – למידע נוסף לחצו פה.
  • יכולות debug חדשות בכלי ה-StateFlow – למידע נוסף לחצו פה.

Sensor Fusion and Tracking Toolbox

כלי חדש, המכיל אלגוריתמים וכלים לתכנון, סימולציה וניתוח של מערכות עקיבה וניווט המשלבות מידע מכמה חיישנים בו-זמנית. שימושים עיקריים: בניית תרחישי מכ"ם ותקשורת בזירות מרובות חיישנים ואותות.

למידע נוסף – לחצו פה.

5G Toolbox

כלי חדש, המכיל מגוון פונקציות ודוגמאות למידול, סימולציה, ניתוח ובדיקה של השכבה הפיזית במערכות תקשורת 5G. בין יכולות הכלי:

  • תמיכה בסימולציות Link Level ,Golden Reference ובדיקות תקן 5G
  • בניית אותות 5G תקניים

למידע נוסף – לחצו פה.

Audio System Toolbox

  • יכולות Deep Learning ו-Machine Learning חדשות עבור אותות אודיו
  • ממשק גרפי חדש – Audio Labeler App – להגדרת והצגת תוויות ground truth עבור אותות אודיו

Deep Learning Toolbox

לפוסט בנושא החידושים בתחום הלמידה העמוקה – לחצו פה.

Signal Processing Toolbox

  • הרחבת יכולות Deep Learning עבור אותות
  • שליטה על תדרי דגימה ופונק' Preprocessing בממשק ה-Signal Analyzer

DSP System Toolbox

  • תכנון מסנני multi-stage multi-rate
  • האצת ביצועים ע"י Multi-threading ו-Parallel optimization

Communications Toolbox

  • ממשק גרפי חדש – Wireless Waveform Generator App – המאפשר:
    • בניית אותות OFDM ,QAM ,PSK ו-WLAN
    • הוספת RF Impairments לאותות והצגתם במגוון צורות
    • ייצוא האות ל-MATLAB או קובץ לשימוש חיצוני
  • מקודדים ומפענחים חדשים לתקשורת לוויינית ותעשיות בטחוניות

Antenna Toolbox

  • הצגת path loss של אנטנה על גבי מפה טופוגרפית

Phased Array System Toolbox

  • ספריית אלגוריתמי Pulse Compression חדשה
  • יכולות חדשות לשיערוך מיקום ומהירות מטרות
  • האצת סימולציות באמצעות Dataflow

HDL Coder

  • ייבוא קוד Verilog סינטזבילי לתוך Simulink וייצירת מודל Simulink אשר מייצג אותו מבחינה פונקציונלית. למידע נוסף – לחצו פה.
  • ייצור קוד RTL סינטזבילי (שאינו תלוי ב-Target) ממודלים ב- double-precision floating-point. לרשימת הבלוקים הנתמכים – לחצו פה.
  • שיפורים בייצור קוד HDL עבור מטריצות. למידע נוסף – חפשו "Matrices" בקישור הזה.
  • בייצור קוד להתקני Xilinx Zynq UltraScale+ MPSoC ניתן כעת לבחור מתוך מגוון predefined targets ו-reference designs. למדריך למתחילים – לחצו פה.

HDL Verifier

  • שימוש ב- FPGA Data Capture כדי להגדיר אילו אותות יתועדו במהלך בדיקות FPGA, על ידי סימון Test Points ב-Simulink. למידע על FPGA Data Capture – לחצו פה.

MATLAB Coder

  • יצירת קוד יעילה יותר לפעולות אלגברה ליניארית בסיסיות באמצעות שימוש בספריות BLAS
  • יצירת קוד עבור אופרטור back-slash בעבודה עם מטריצות דלילות (Sparse Matrices)
  • יצירת קוד מרשתות למידה עמוקה עבור מעבדי Intel ו-ARM אינה מצריכה כעת רישיון ל-GPU Coder
  • יכולת לעדכן פרמטרים של מודל SVM קיים שכבר יוצר מתוכו קוד, ללא צורך ביצירת קוד נוספת
  • יצירת קוד עבור פונקציות מהכלי החדש Sensor Fusion and Tracking Toolbox כגון: imufilter ו-imusensor
  • יצירת קוד עבור פונקציות מהכלי החדש 5G Toolbox, כגון: nrPSS, nrPRBS

 

איך לבחור עמדת עבודה כאשר עובדים עם SOLIDWORKS

*** הפוסט עודכן בתאריך: 1 באפריל 2020 ***

כאשר עובדים עם תוכנה גרפית מתקדמת כמו SOLIDWORKS, חשוב לבחור מפרט מתאים למחשב בו אנו מתכוונים להשתמש לקבלת ביצועים מיטביים. אפשר למצוא בשוק מחשבים של חברות רבות ואינסוף אפשרויות של מפרטים, אז איך נדע לבחור את המפרט שמתאים לנו?

ראשית, עלינו להגדיר מהו אופן השימוש הצפוי בתוכנה:
# האם אני משתמש בתוכנה באופן תדיר והאם SOLIDWORKS היא התוכנה העיקרית עליה אני עובד?
# אלו חלקים אני מתכוון למדל – חלקים פשוטים או חלקים בעלי פיצ'רים מורכבים?
# מה הסדר גודל של ההרכבות עליהן אני עובד – מעל 500 \ 5,000 \ 10,000 חלקים?

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

 

מעבד

הרכיב הבסיסי והחשוב ביותר בכל מחשב הוא המעבד והוא זה שנותן את הטון לביצועי התוכנות השונות. ככל שנשתמש במעבד חדש וחזק יותר, כך נוכל לקבל ביצועים טובים יותר מהמחשב שלנו.
בשוק קיימים מעבדים רבים ומגוונים אשר מתחרים בינהם על מספר הליבות שהם מציעים. עבור פעולות תכן ומידול, עיקר התהליכים בתוכנה מתבצעים בצורה טורית ולכן האלמנט החשוב ביותר הוא דווקא מהירות העיבוד של ליבה אחת (GHz) ולא מספר הליבות. אז נכון, ככל שיהיו יותר ליבות במעבד תוכלו לעבוד על תוכנות נוספות במקביל ללא פגיעה בביצועי SOLIDWORKS  אבל אם אנחנו מתמקדים בביצועים מיטביים של SOLIDWORKS עצמה נדרוש מעבד לא בעל מספר הליבות הגדול ביותר אלא דווקא מעבד בעל הביצועים הטובים ביותר פר ליבה.
עבור פעולות של סימולציה, רינדור תמונות ושרטוטים מורכבים כן תהיה השפעה למספר הליבות על הביצועים אבל גם במקרה זה יותר מ-8 ליבות לא יעשו הבדל.
ישנם אתרי אינטרנט רבים אשר יודעים לבצע השוואה בין ביצועי מעבדים שונים, אך לצורך הדוגמה ניעזר במבחן הביצועים של PassMark.

מהשוואה הזו אנו יכולים להסיק מהם המעבדים המתאימים ביותר לביצועים גבוהים ב – SOLIDWORKS. ככל שצפי העבודה שלנו דורש ביצועים גבוהים יותר נבחר מעבד קרוב יותר לראש הרשימה, בהתאם לתקציב שלנו כמובן. שימו לב ששני המעבדים הראשונים ברשימה, השיגו תוצאות דומות מאוד אך קיים בינהם הבדל של כ – 600$ (לא מעט בכלל).
ניתן לראות כי בחירה נבונה של המעבד תחסוך לנו (או למעסיק שלנו) הרבה מאוד כסף.

 

זכרון RAM

זיכרון ה RAM של המחשב הוא זה שמאכלס את הקבצים עליהם אנו עובדים במשך זמן העבודה, ורק לאחר שסיימנו לעבוד ושמרנו הוא ישלח את הקבצים לזכרון הקשיח.
מובן אם כך, שבכדי לעבוד עם מספר גדול של קבצים פתוחים במקביל (וזה המצב בעבודה על הרכבה גדולה) נדרוש זכרון RAM גדול מספיק.
דרישות התוכנה המינימליות הן זכרון RAM של 16GB, אולם לעבודה הדורשת ביצועים גבוהים יותר (חלקים מרובי גופים / הרכבות גדולות מאוד / חלקים עם פיצ'רים מורכבים) נבחר להשתמש ב – 32GB או אפילו 64GB במקרי קיצון (הרכבות של מעל 10,000 חלקים).

 

כרטיס מסך

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

מהרשימה נראה כי כרטיסי המסך הנתמכים הם של 2 חברות:AMD ו Nvidia  אולם Nvidia מציעה את המגוון הרחב ביותר של כרטיסי המסך לכן בכתבה זו נבחן את כרטיסי המסך שלה. (חשוב להדגיש – כרטיסי Nvidia מסדרת GeForce אינם נתמכים).

כשמדברים על כרטיסי מסך בהקשר של SOLIDWORKS יש לקחת בחשבון שני גורמים עיקריים: זכרון RAM של הכרטיס (לא להתבלבל עם זכרון ה RAM של המחשב) וליבות CUDA.
זכרון ה RAM של הכרטיס, בדומה לזה של המחשב, הוא הזכרון הזמני של המנוע הגרפי, הגרפיקה המוצגת על המסך מחושבת באמצעותו ולאחר סגירת התוכנה זכרון זה יימחק. ככל שזכרון ה – RAM גדול יותר ניתן יהיה להציג מודלים גרפיים גדולים יותר בצורה יותר חלקה.
ליבות ה – CUDA של הכרטיס (קיימות רק עבור כרטיסי Nvidia) הן ליבות לעיבוד מקבילי, ומשמשות לניצול המעבד הגרפי לפעולות חישוב בשיתוף פעולה עם מעבד המחשב. עד גרסת 2018 SOLIDWORKS לא ידעה לנצל את הטכנולוגיה הזו אך החל מגרסת 2019 SOLIDWORKS ניתן לנצל את ליבות אלו בכדי להוריד עומס מליבות המעבד הרגיל (למשתמשי SOLIDWORKS Visualize נציין שגרסת 2018 כן יודעת לנצל את ליבות ה – CUDA).
נראה השוואה לדוגמה בין 3 כרטיסי מסך מסדרת P:

ניתן לראות מהשוואה זו כי דגם P4000 צפוי לספק ביצועים הרבה יותר טובים מאשר P1000. נראה זאת באמצעות השוואת ביצועים שנערכה ע"י אתר PassMark:

לאחר שביצענו השוואה בין הכרטיסים השונים נוכל לקבל החלטה בהתאם לשימוש הצפוי. אם למשל אני מבצע מידול של חלקים פשוטים אין לי סיבה לרכוש כרטיס מסך עם ביצועים מקסימאליים כמו P4000, אלא P1000 עשוי להספיק. אם אני ממדל הרכבות קטנות יחסית (עד 500 חלקים) P1000 אולי לא עשוי לספק ביצועים מיטביים אבל P2000 משלים את הפער ועשוי לספק את הצרכים שלי. לעומת זאת אם אני מתכנן למדל הרכבות של 15,000 חלקים וארצה עבודה רציפה וחלקה אעדיף לרכוש כרטיס מסך לביצועים גבוהים כמו P4000.

**יש לשים לב כי כרטיסים מסדרת P כבר נחשבים מיושנים, שלא כמו בזמן כתיבת הפוסט. השימוש בכרטיסים אלו בפוסט זה הוא לצורך דוגמה להשוואה נכונה בין כרטיסי מסך מאותה הסדרה.

לשיפור ביצועי SOLIDWORKS עם כרטיס מסך של NVIDIA, אתם מוזמנים להכנס לפוסט הקודם שלנו בנושא.

כונן קשיח

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

גם בתוך הקטגוריה של כונני SSD יש חלוקה לדורות:

SATA – הדור הראשון של כונני ה SSD.
NVMe\PCIe – דור חדש של כונני SSD.
ההבדל במהירות הפתיחה של קבצים בין שני דורות אלו יכול להגיע לפי 10 (!!), לכן חשוב לוודא שהכונן הקשיח שלכם הוא מסוג NVMe SSD וכך תבטיחו ביצועים מיטביים בעת פתיחה או שמירה של קבצי SOLIDWORKS.

 

סיכום

לפני בחירת מפרט מחשב המיועד לעבודה עם SOLIDWORKS:
# נקבע את צפי השימוש בו ורמת הביצועים הנדרשת (בהתאם לגרסת ה SOLIDWORKS שאנו צפויים לעבוד איתה).
# נקבע את סוג המעבד, וכמות זכרון ה – RAM.
# סוג כרטיס המסך בהתאם לרמה הנדרשת שהגדרנו ונוודא שהוא נמצא ברשימת הכרטיסים הנתמכים.
# נוודא שסוג הכונן קשיח הוא SSD.

 

הפוסט עודכן בתאריך: 1 באפריל 2020.

Deep Learning with MATLAB – New Features in R2018b

תכנית יעודית לסטארטאפים - לחצו לפרטים נוספים

 

 

גרסת R2018b של כלי MathWorks, אשר שוחררה לפני מספר שבועות, כוללת יכולות חדשות רבות ותיקוני באגים בכלים הקיימים, ואף מספר כלים חדשים (לסקירת יכולות הגרסה – לחצו פה). מבחינת תחום ה-Deep Learning – כמו בגרסה הקודמת (לחצו לסקירה) – גם בגרסה השניה לשנת 2018 התחום מקבל פוקוס מיוחד. למעשה, לאור העובדה של-Neural Network Toolbox נוספו כל כך הרבה יכולות בתחום ה-Deep Learning בתקופה האחרונה, עד שתחום זה הפך למסה העיקרית של הכלי – החברה החליטה לשנות את שם הכלי ל-Deep Learning Toolbox.

אז…מה חדש בתחום ה-Deep Learning בגרסת R2018b?

להלן החידושים המרכזיים:

  1. תוספת Apps – כדי להקל על השימוש ולשפר את היעילות. ה-Apps החדשים הינם:
  • Deep Network Designerממשק גרפי לעבודה עם רשתות – ניתן לבנות רשת באמצעות גרירת אבני בניין וחיבורן, ללא הקלדת פקודות; ניתן לייבא רשת מאומנת ולערוך אותה בקלות לצורך ביצוע Transfer Learning; ניתן לנתח את הרשת כדי לוודא שהארכיטקטורה מוגדרת כהלכה ולאתר בעיות לפני תחילת האימון (על ידי פתיחת ה-Network Analyzer ישירות מתוך App זה); וניתן כמובן לייצא את הרשת. למידע נוסף: יש ללחוץ פה.
  • Audio Labelerממשק גרפי המקל על הכנת Labeled data sets לצורך הפעלת טכניקות מתחום ה-Deep Learning על סיגנלים חד-ממדיים (אודיו) – אפשר לעבוד על אוספי הקלטות או להקליט ישירות עם ה-App; אפשר לנווט בצורה אינטראקטיבית; אפשר להגדיר וליישם labels על קבצים שלמים או על איזורים בתוך קבצים; אפשר לייבא וליצא תיקיות אודיו, הגדרות של labels ו-datastores. למידע נוסף: יש ללחוץ פה.
    בהקשר זה יוזכר ה-Audio Datastore שהתווסף ל-Audio System Toolbox בגרסה זו, ומאפשר לנהל אוספים גדולים של קבצי אודיו (יצירת labeles על סמך שמות התיקיות, דגימה של קבצים בצורה אקראית, גישה מקבילית לצורך עיבוד מקדים או חילוץ פיצ'רים או אוגמנטציה וכו').
    הרשום בסעיף זה מהווה "טעימה" לתחום מיקוד משני שהוסיפה MathWorks בכל הקשור ליכולות הכלים של החברה בעולם ה-Deep Learning – לא עוד "רק עיבוד תמונה וראיה ממוחשבת" – אלא גם יכולות בתחומים עיבוד אות, ניתוח טקסט ודיבור. 
  • Video Labeler Appממשק גרפי לתיוג רצפי תמונות וסרטוני וידאו המכיל את היכולות השימושיות של ה-Ground Truth Labeler אך אינו מחייב רישיון ל-Automated Driving System Toolbox. מאפשר אוטומציה של תהליך התיוג באמצעות עקיבה אחר אוביקטי עניין וכן מאפשר תיוג ברמת הפיקסל לצורך ביצוע Semantic segmentation. למידע נוסף – יש ללחוץ פה.

 

  1. קל יותר לאמן בענן ועל HPC Boxes (כמו Nvidia DGX) לצורך בדיקת היתכנות לפני שמשקיעים ברכישת חומרה פרטית ולצורך האצת האימון.
  • דרך אחת – MATLAB Reference Architectures ל- Azure ו-Amazon – מאפשרת לקבל בקלות מכונה וירטואלית שעובדת על כל אחד מה-domainים האלה. למידע נוסף – יש ללחוץ פה.
  • דרך שניה – קונטיינרים ל-(NGC (Nvidia GPU Cloud – יש תמיכה ב-Nvidia DGX. למידע נוסף – יש ללחוץ פה.
  1. אינטראופרביליות עם סביבות Deep Learning מבוססות Python כמו Keras-Tensorflow, PyTorch ואחרות – R2018b הינה הגרסה הרשמית הראשונה של כלי MathWorks שכוללת את התמיכה בפורמט ONNX מאז שתמיכה זו שוחררה כ-Support Package. הפיצ'ר מאפשר גישה לכל תוצאות המחקרים האחרונים הזמינים בסביבות Deep Learning נפוצות, מאפשר שיתוף פעולה בין חברי צוות שמעדיפים לעבוד כל אחד בסביבה אחרת, ומאפשר ניצול יכולות MATLAB בתחומים כמו תיוג או עיבוד מקדים או יצירת קוד והורדה למערכת Embedded. כלומר – לא חייבים לבחור סביבה אחת או סביבה אחרת, אפשר ליהנות מכל העולמות!

 

  1. Out of box targeting for popular GPU boards  – ה-GPU Coder הוא כלי של MathWorks המאפשר המרת קוד MATLAB לקוד CUDA עבור GPU-ים של חברת Nvidia. על מנת לחסוך זמן יקר שכרוך ב-setup וחיבור לכרטיסי חומרה במהלך תהליך הפיתוח, בגרסה החדשה של ה-GPU Coder נוספו support packages לפלטפורמות Nvidia Jetson ו-Nvidia Drive.

 

  1. מהירות Inference – גם בגרסה החדשה נשמרה העליונות של ה-GPU Coder מבחינת קצבי Inference בהשוואה לסביבות החינמיות:

 

  1. תמיכה ביצירת קוד עבור GPU-ים של Nvidia, מעבדי Intel ופלטפורמות ARM מתוך מגוון רחב יותר של סוגי שכבות (טבלה מצורפת למטה. למציאת הרשימה המלאה עבור כל target יש להשתמש בפקודה getDeepLearningLayers).

 

  1. Network Assembly משכבות ומשקולות מיובאות, ללא צורך באימון – שימושי למשל למי שרוצה ליבא רשת מסביבת Deep Learning מבוססת Python ומייד להמיר אותה בצורה אוטומטית לקוד כמו קוד CUDA. בעזרת הממשק עם ONNX המוזכר למעלה אפשר לטעון לתוך MATLAB רשת שאומנה בסביבה מסוימת, וכעת לאחר הפעלת הפקודה assembleNetwork אפשר לייצר מהרשת הזו קוד באופן מיידי. כלומר אם בעבר היה צריך לאמן את הרשת המיובאת epoch אחד, עכשיו בעזרת פקודת assembleNetwork אפשר לייבא ומייד להשתמש.

 

  1. יכולות ויזואליזציה
  • נוספה הפונקציה confusionchart אשר מספקת דרך נוחה לחקור את החיזויים של הרשת לעומת התגיות הנכונות שאותן היא היתה אמורה לחזות (בבעיות סיווג). ניתן לשלוט על מאפייני ה-confusion matrix, לצפות בסיכומים סטטיסטיים, לבצע מיונים וכו'. למידע נוסף – יש ללחוץ פה.
  • ניתן לבצע ויזואליזציה של הפלט של שכבות ביניים ברשתות DAG

 

  1. רשתות מאומנות זמינות לשימוש – מאז הגרסה הקודמת נוספה תמיכה במגוון רשתות חדשות, כמו ResNet-18, DenseNet-201, Inception-ResNet-v2, SqueezeNet. הרשתות המאומנות הללו יכולות לשמש כנקודת התחלה עבור עבודה בגישת Transfer Learning, וניתן לטעון כל אחת מהן תוך שימוש בשורת קוד אחת. לרשימה המלאה של כל ה-Pre-trained Networks הזמינות – לחצו פה.
  1. ולידציית רשתות LSTM/BiLSTM עבור מידע time series בצורה אוטומטית במהלך האימון – מסייעת למניעת overfitting.

ויש כמובן עוד חידושים עליהם ניתן לקרוא בתיעוד.

 

לסיכום, היכולות החדשות ב-Deep Learning Toolbox, יחד עם היכולות שהיו קיימות בכלי בעבר, נותנות ל-MATLAB יתרונות רבים בהשוואה לחלופות החינמיות. ביניהם:

  • תיוג מהיר ונוח, באמצעות מגוון Apps. מאפשר לסמן bounding boxes בתמונות/וידאו או לבצע תיוג ברמת הפיקסל לצורך סגמנטציה סמנטית ואף לבצע אוטומציה לתהליך וכן לתייג קטעי אודיו.
  • מהירות אימון
  • מהירות Inference
  • אפשרות להמיר בצורה אוטומטית את קוד ה-MATLAB לקוד CUDA מהיר וחסכוני בזיכרון לצורך מימוש על מערכות Embedded או לקוד C עבוד מעבדים של אינטל ופלטפורמות ARM. אם אתם רוצים להתנסות בגרסת בטא של הפיצ'ר המאפשר המרה לקוד עבור FPGA – כתבו למטה.
  • נוחות עבודה – הודות לשימוש בסביבת פיתוח המיועדת למהנדסים ומדענים
  • תמיכה מלאה במערכת ההפעלה Windows בנוסף לתמיכה במערכות הפעלה אחרות
  • יכולות ויזואליזציה ודיבאגינג – צפיה ב-activations, הצגת Deep Dream Images, צפיה במשקולות, בחינה של התקדמות האימון בכיוון הנכון, תצוגה גרפית של הרשת לצורך איתור בעיות אפשריות לפני ביצוע האימון וכו'…
  • תיעוד מקיף וברור, כמיטב המסורת של סביבת MATLAB
  • תמיכה טכנית מקצועית בטלפון 03-7660111 לבעלי רישיון תחת חוזה שירות

 וכל זאת – מבלי להתפשר על האפשרות לייבא לתוך MATLAB מודלים שפותחו ואומנו בסביבות החינמיות ולייצא מודלים מ-MATLAB אליהן. אפשר לייבא מ-Keras, Caffe, Caffe2, PyTorch, Chainer  ו-CNTK ולייצא אל TensorFlow, Caffe2, CNTK, MXNet ו-CoreML.

 

מה הלאה?

ההשקעה של MathWorks בתחום ה-Deep Learning נמשכת, וצפויים חידושים משמעותיים גם בגרסת R2019a המתוכננת לחודש מרץ הקרוב. אם יש יכולות שאתם זקוקים להן והן עדיין לא נכללות בכלים – אתם מוזמנים לכתוב זאת למטה בתגובה ואשמח לבדוק עבורכם האם הן מתוכננות (ובמידה ולא – אעביר אותן לצוות הפיתוח על מנת שישקול לעבוד עליהן).

רוצים להתנסות בעבודה על Deep Learning בסביבת MATLAB ללא התחייבות, בזמנכם החופשי, ומבלי להתקין שום דבר על המחשב? אתם מוזמנים לנסות את ה-Hands On Tutorial החינמי באתר MathWorks. לא צריך רישיון ל-MATLAB בשביל לעבוד איתו, הכל מבוצע דרך הדפדפן. ה-Hands On אמור לקחת לכם כשעתיים, וניתן לעצור אותו בכל שלב ולהמשיך כאשר אתם רוצים. לכניסה – לחצו פה.