Shape

כיתת גמר ציבורית Shape

הצורה של Tensor או NdArray .

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

שדות

ציבורי סטטי ארוך UNKNOWN_SIZE הגודל של ציר לא ידוע או סך הגודל הלא ידוע עבור צורה לא ידועה.

שיטות ציבוריות

צוּרָה
צרף (ארוך אחרון מימד)
מחזירה צורה חדשה, עם ממד אחרון חדש נוסף.
צוּרָה
לצרף ( צורה אחרת)
מחזירה צורה חדשה, עם מימדים של צורות אחרות מצורפות.
אָרוֹך[]
asArray ()
מחזיר עותק הגנתי של הצירים של הצורה הזו.
בוליאני
שווה (Object obj)
שווה יישום עבור Shapes.
בוליאני
hasUnknownDimension ()
מחזירה אם לממד אחד או יותר של Shape זה יש גודל לא ידוע.
int
צוּרָה
ראש ()
מחזירה צורה חד מימדית עם ממד ראשון התואם לממד הראשון של צורה זו.
בוליאני סטטי
הוא תואם (עמום ארוך, ארוך אחר עמום)
בדוק כדי לראות אם שני ממדי צורות תואמים.
בוליאני
isCompatibleWith ( צורת צורה )
קובע אם צורה אחרת תואמת לצורה זו.
בוליאני
isMatrix ()
מחזירה אם הצורה הזו היא צורה של מטריצה
בוליאני
isScalar ()
מחזירה אם הצורה הזו מייצגת סקלאר.
בוליאני
הוא לא ידוע ()
מחזירה אם מספר הממדים של Shape זה אינו ידוע.
בוליאני
isVector ()
מחזירה אם הצורה הזו היא צורה של וקטור.
int
numDimensions ()
מחזירה את מספר הממדים של צורה זו.
צורה סטטית
של (ארוך... מידות מידות)
צור צורה המייצגת ערך סקלרי או N-ממדי.
צוּרָה
prepend ( צורה אחרת)
מחזירה צורה חדשה, עם ממדים של צורה אחרת.
צוּרָה
prepend (ארוך firstDimension)
מחזירה צורה חדשה, עם מימד ראשון חדש נוסף.
צורה סטטית
סקלרי ()
יוצר צורה המייצגת ערך סקלרי.
אָרוֹך
גודל (int i)
גודל הממד עם האינדקס הנתון.
אָרוֹך
גודל ()
מחזירה את המספר הכולל של אלמנטים שיהיו לטנזור עם צורה זו.
צוּרָה
תת-צורה (int start, int end)
החזר צורה end - begin עם מידות התואמות לצורה זו begin ועד end .
צוּרָה
זנב ()
מחזירה צורה חדשה, כשהממד הראשון של הצורה הזה הוסר.
צוּרָה
לקחת (int n)
מחזירה צורה N-ממדית עם הממדים התואמים ל-n הממדים הראשונים של צורה זו
צוּרָה
takeLast (int n)
מחזירה צורה N-ממדית עם הממדים התואמים ל-n הממדים האחרונים של צורה זו.
חוּט
toString ()
תיאור תמציתי של הצורה המיועדת לניפוי באגים.
צורה סטטית
לא ידוע ()
יוצר צורה המייצגת מספר לא ידוע של ממדים.

שיטות בירושה

שדות

ציבורי סטטי ארוך UNKNOWN_SIZE

הגודל של ציר לא ידוע או סך הגודל הלא ידוע עבור צורה לא ידועה.

שיטות ציבוריות

צרף צורה ציבורית (ארוך אחרון מימד)

מחזירה צורה חדשה, עם ממד אחרון חדש נוסף. כדי שהקריאה הזו תצליח, isUnknown() חייב להיות false .

פרמטרים
lastDimension הממד שיש להוסיף
מחזיר
  • צורה חדשה עם ממדי הצורה הזו ואחריה הממד הנתון, לעולם לא ריק

צרף צורה ציבורית ( צורה אחרת)

מחזירה צורה חדשה, עם מימדים של צורות אחרות מצורפות. הן עבור הצורה הזו והן עבור הצורה האחרת, isUnknown() חייב להחזיר false. למשל @code Shape.of(3,4).append(Shape.of(1,2)) => Shape.of(3,4,1,2) }

פרמטרים
אַחֵר צורה אחרת, אסור להיות null , אסור להיות לא ידוע
מחזיר
  • צורה חדשה המורכבת ממידות הצורה הזו ואחריה ממדי הצורה הנתונה

public long[] asArray ()

מחזיר עותק הגנתי של הצירים של הצורה הזו. שינויים במערך המוחזר כדי לא לשנות את מצב הצורה הזו. מחזירה null אם isUnknown() נכון.

שווה ערך בוליאני ציבורי (Object obj)

שווה יישום עבור Shapes. שתי צורות נחשבות שוות אם:

  • מספר הממדים מוגדר ושווה עבור שניהם
  • הגודל של כל מימד מוגדר ושווה עבור שניהם

אם לכל אחת מהצורה יש ממדים לא ידועים (גם אם הם זהים בשניהם) או אם לכל אחת מהצורה יש מספר לא ידוע של ממדים (גם אם שניהם מחזירים true עבור isUnknown() ), הם לא נחשבים שווים! עם זאת, צורה תמיד תשתווה לעצמה, גם אם היא לא ידועה או מכילה ממדים לא ידועים.

ציבורי בוליאני hasUnknownDimension ()

מחזירה אם לממד אחד או יותר של Shape זה יש גודל לא ידוע.

public int hashCode ()

ראש צורה ציבורי ()

מחזירה צורה חד מימדית עם ממד ראשון התואם לממד הראשון של צורה זו.

בוליאני סטטי ציבורי תואם (עמום ארוך, ארוך אחר עמום)

בדוק אם שני ממדי צורות תואמים.

המידות תואמות אם אחד הממדים הוא Shape.UNKNOWN_SIZE או ששני הממדים שווים

פרמטרים
עָמוּם הממד הראשון
אחרDim הממד השני
מחזיר
  • נכון, אם שני הממדים תואמים

בוליאני ציבורי תואם עם (צורת צורה )

קובע אם צורה אחרת תואמת לצורה זו.

שתי צורות המוגדרות באופן חלקי תואמות אם קיימת צורה מוגדרת במלואה ששתי הצורות יכולות לייצג. לפיכך, תאימות מאפשרת לקוד הסקת הצורה לנמק על צורות מוגדרות חלקית. לְדוּגמָה:

  • Shape.unknown() תואם לכל הצורות.
  • Shape(UNKNOWN_SIZE, UNKNOWN_SIZE) תואם לכל הצורות הדו-ממדיות, כגון Shape(32, 784) וגם Shape.unknown() . זה לא תואם, למשל, Shape(UNKNOWN_SIZE) או Shape(UNKNOWN_SIZE, UNKNOWN_SIZE, UNKNOWN_SIZE) .
  • Shape(32, UNKNOWN_SIZE) תואם לכל הצורות הדו-ממדיות בגודל 32 בממד ה-0, וגם Shape(UNKNOWN_SIZE, UNKNOWN_SIZE) ו- Shape.unknown() . הוא אינו תואם, למשל, Shape(32) , Shape(32, UNKNOWN_SIZE, 1) או Shape(64, UNKNOWN_SIZE) .
  • Shape(32, 784) תואם לעצמו, וגם Shape(32, UNKNOWN_SIZE) , Shape(UNKNOWN_SIZE, 784) , Shape(UNKNOWN_SIZE, UNKNOWN_SIZE) ו- Shape.unknown() . זה לא תואם, למשל, Shape(32, 1, 784) או Shape(UNKNOWN_SIZE) .

יחס התאימות הוא רפלקסיבי וסימטרי, אך לא טרנזיטיבי. לדוגמה, Shape(32, 784) תואם ל- Shape.unknown() ו- Shape.unknown() תואם ל- Shape(4, 4) , אך Shape(32, 784) אינו תואם ל- Shape(4, 4) .

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

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

פרמטרים
צוּרָה הצורה השנייה
מחזיר
  • נכון, אם שתי הצורות תואמות.

isMatrix בוליאני ציבורי ()

מחזירה אם הצורה הזו היא צורה של מטריצה

בוליאני ציבורי isScalar ()

מחזירה אם הצורה הזו מייצגת סקלאר.

בוליאני ציבורי אינו ידוע ()

מחזירה אם מספר הממדים של Shape זה אינו ידוע.

isVector בוליאני ציבורי ()

מחזירה אם הצורה הזו היא צורה של וקטור.

public int numDimensions ()

מחזירה את מספר הממדים של צורה זו. -1 אם לא ידוע, 0 עבור סקלר, 1 עבור וקטור, 2 עבור מטריצה ​​וכו'.

צורה סטטית ציבורית של (ארוך... מידות מידות)

צור צורה המייצגת ערך סקלרי או N-ממדי.

יוצר צורה המייצגת ערך סקלרי או N-ממדי (N הוא לפחות 1), עם הגודל שצוין עבור כל ממד. A -1 מציין שגודל הממד המתאים אינו ידוע. אם לא מסופקים גדלים, נוצרת צורה המייצגת סקלאר. לְדוּגמָה:

// A 2-element vector.
 Shape vector = Shape.of(2);

 // A 2x3 matrix.
 Shape matrix = Shape.of(2, 3);

 // A matrix with 4 columns but an unknown number of rows.
 // This is typically used to indicate the shape of tensors that represent
 // a variable-sized batch of values. The Shape below might represent a
 // variable-sized batch of 4-element vectors.
 Shape batch = Shape.of(-1, 4);

 // A scalar. For readability, you should prefer calling Shape.scalar()
 Shape scalar = Shape.of()
 

פרמטרים
מידות מידות מספר האלמנטים בכל מימד של צורה זו, אם יש, או UNKNOWN_SIZE אם לא ידוע.
מחזיר
  • צורה חדשה

צורה ציבורית מראש ( צורה אחרת)

מחזירה צורה חדשה, עם ממדים של צורה אחרת. הן עבור הצורה הזו והן עבור הצורה האחרת, isUnknown() חייב להחזיר false. למשל Shape.of(3,4).prepend(Shape.of(1,2)) => Shape.of(1,2,3,4)

פרמטרים
אַחֵר צורה אחרת, אסור להיות null , אסור להיות לא ידוע
מחזיר
  • צורה חדשה המורכבת מהממדים של הצורה הנתונה ואחריה ממדי הצורה הזו, לעולם לא אפס

צורה ציבורית מראש (ארוך firstDimension)

מחזירה צורה חדשה, עם מימד ראשון חדש נוסף. כדי שהקריאה הזו תצליח, isUnknown() חייב להיות false .

פרמטרים
ממד ראשון הממד שיש להקדים
מחזיר
  • צורה חדשה עם הממד הנתון תחילה, ואחריה הממדים של הצורה הזו, לעולם לא בטלה

סקלרי צורה סטטית ציבורית ()

יוצר צורה המייצגת ערך סקלרי.

מחזיר
  • צורה ללא ממדים שעבורה isScalar() נכון, לעולם לא null.

גודל ארוך ציבורי (int i)

גודל הממד עם האינדקס הנתון.

אם isUnknown() הוא true או שלגודל הממד עם האינדקס הנתון יש גודל לא ידוע, UNKNOWN_SIZE מוחזר.

פרמטרים
אֲנִי האינדקס של הממד כדי לקבל את הגודל עבורו. אם לצורה הזו יש מספר ידוע של ממדים, עליה להיות < numDimensions() . המדד עשוי להיות שלילי, ובמקרה זה המיקום נספר מסוף הצורה. לדוגמה: size(-1) מחזיר את הגודל של הממד האחרון, size(-2) את הגודל של הממד השני עד האחרון וכו'.
מחזיר
  • גודל הממד עם האינדקס הנתון אם ידוע, UNKNOWN_SIZE אחרת.

גודל ארוך ציבורי ()

מחזירה את המספר הכולל של אלמנטים שיהיו לטנסור עם צורה זו.

אם isUnknown() הוא true או hasUnknownDimension() הוא true, UNKNOWN_SIZE מוחזר.

מחזיר
  • המספר הכולל של אלמנטים שיהיו לטנזור עם צורה זו אם ניתן לחשב אותו, אחרת UNKNOWN_SIZE .

Public Shape subShape (int start, int end)

החזר צורת מימד end - begin עם ממדים התואמים את הצורה הזו begin ועד end .

פרמטרים
לְהַתְחִיל היכן להתחיל את תת הצורה.
סוֹף איפה לסיים את תת-צורה, בלעדי.
מחזיר
  • תת הצורה התחום בהתחלה ובסוף.

זנב צורה ציבורי ()

מחזירה צורה חדשה, כשהממד הראשון של הצורה הזה הוסר.

Public Shape take (int n)

מחזירה צורה N-ממדית עם הממדים התואמים ל-n הממדים הראשונים של צורה זו

פרמטרים
נ מספר הממדים המובילים שיש לקבל, חייב להיות <= מאשר numDimensions()
מחזיר
  • צורה N-ממדית כאשר n הממדים הראשונים תואמים ל-n הממדים הראשונים של צורה זו

public Shape takeLast (int n)

מחזירה צורה N-ממדית עם הממדים התואמים ל-n הממדים האחרונים של צורה זו.

פרמטרים
נ מספר הממדים העוקבים שיש לקבל, חייב להיות <= מאשר numDimensions()
מחזיר
  • צורה n-ממדית כשהמידות תואמות ל-n הממדים האחרונים של צורה זו, לעולם לא אפס

מחרוזת ציבורית למחרוזת ()

תיאור תמציתי של הצורה המיועדת לניפוי באגים.

צורה סטטית ציבורית לא ידועה ()

יוצר צורה המייצגת מספר לא ידוע של ממדים.

מחזיר
  • צורה שעבורה isUnknown() נכון, לעולם לא null.