אזהרה: API זו ברמה נמוכה יוסרה בגרסה עתידית של TensorFlow לאחר ההחלפה יציבה.

Scope

היקף מעמד סופי ציבור

מנהל קבוצות של מאפיינים קשורים בעת יצירת Tensorflow Operations, כגון קידומת שם נפוץ.

Scope מיכל עבור מאפיינים נפוצים להחיל Ops TensorFlow. קוד משתמש רגיל שמאתחל Scope ומספק אותו לשיעורי בניין מבצע. לדוגמה:

Scope scope = new Scope(graph);
 Constant c = Constant.create(scope, 42);
 

מחלקת בניית Operation רוכשת Scope ומשתמשת בו כדי להגדיר מאפיינים ב-Tensorflow ops הבסיסיים. לדוגמה:

// An operator class that adds a constant.
 public class Constant {
   public static Constant create(Scope scope, ...) {
      scope.graph().opBuilder(
        "Const", scope.makeOpName("Const"))
        .setAttr(...)
        .build()
      ...
   
 }
 }

היררכיית היקף:

Scope מספק שונה with() שיטות שיוצרות היקף חדש. בהיקף החדש בדרך כלל מאפיין אחד שונה בעוד שמאפיינים אחרים עוברים בירושה מהיקף האב.

באמצעות דוגמה Constant מיושם כמו קודם:

Scope root = new Scope(graph);

 // The linear subscope will generate names like linear/...
 Scope linear = Scope.withSubScope("linear");

 // This op name will be "linear/W"
 Constant.create(linear.withName("W"), ...);

 // This op will be "linear/Const", using the default
 // name provided by Constant
 Constant.create(linear, ...);

 // This op will be "linear/Const_1", using the default
 // name provided by Constant and making it unique within
 // this scope
 Constant.create(linear, ...);
 

חפצי היקף אינם חוט בטוח.

בונים ציבוריים

היקף ( ExecutionEnvironment env)
צור היקף חדש ברמה העליונה.

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

OperationBuilder
applyControlDependencies ( OperationBuilder בונה)
מוסיף כל אופרנד ב-controlDependencies כקלט בקרה לבונה המסופק.
ביצוע סביבת
env ()
מחזירה את סביבת הביצוע המשמשת את ההיקף הזה.
חוּט
makeOpName (String defaultName)
צור שם ייחודי לאופרטור, תוך שימוש בברירת המחדל שסופקה במידת הצורך.
תְחוּם
withControlDependencies (Iterable < האופרנד <? >> שולטת)
מחזירה היקף חדש שבו לפעולות שנוספו יהיו תלות הבקרה שסופקו.
תְחוּם
withName (String opName)
החזר היקף חדש המשתמש בשם שצוין עבור אופציה.
תְחוּם
withSubScope (String childScopeName)
מחזירה היקף חדש שבו פעולות שנוספו יקבלו את קידומת השם שסופקה.

שיטות בירושה

בונים ציבוריים

היקף הציבור ( ExecutionEnvironment env)

צור היקף חדש ברמה העליונה.

פרמטרים
env סביבת הביצוע המשמשת את ה-scope.

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

הציבור OperationBuilder applyControlDependencies ( OperationBuilder בונה)

מוסיף כל אופרנד ב-controlDependencies כקלט בקרה לבונה המסופק.

פרמטרים
בּוֹנֶה OperationBuilder להוספת תשומות בקרה

הציבור ExecutionEnvironment env ()

מחזירה את סביבת הביצוע המשמשת את ההיקף הזה.

הציבור מחרוזת makeOpName (String defaultName)

צור שם ייחודי לאופרטור, תוך שימוש בברירת המחדל שסופקה במידת הצורך.

זה נקרא בדרך כלל רק על ידי כיתות בניית מפעיל.

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

scope.env().opBuilder("Const", scope.makeOpName("Const"))...
 

הערה: אם אתה מספק בכיתת בניית מפעיל מרוכבים (כלומר, מח' שיוצרת מערכת של פעולות הקשורות ידי התקשרות קוד בניית מפעיל אחר), שם ספקו תשמש subscope לכול מפעילים הבסיסיים.

פרמטרים
defaultName שם לאופרטור הבסיסי.
החזרות
  • שם ייחודי למפעיל.
זורק
חריג טיעון לא חוקי אם שם ברירת המחדל אינו חוקי.

הציבור היקף withControlDependencies (Iterable < האופרנד <? >> שולטת)

מחזירה היקף חדש שבו לפעולות שנוספו יהיו תלות הבקרה שסופקו.

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

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

ציבור היקף withName (String opName)

החזר היקף חדש המשתמש בשם שצוין עבור אופציה.

תפעול נוצר במסגרת זו יהיה שם טופס name/opName[_suffix] . זה מאפשר לך לתת שם לאופרטור ספציפי בצורה משמעותית יותר.

השמות חייבים להתאים הביטוי הרגיל [A-Za-z0-9.][A-Za-z0-9_.\-]*

פרמטרים
opName שם לאופרטור בהיקף המוחזר
החזרות
  • Scope חדש המשתמש ב-opName עבור פעולות.
זורק
חריג טיעון לא חוקי אם השם לא חוקי

ציבור היקף withSubScope (String childScopeName)

מחזירה היקף חדש שבו פעולות שנוספו יקבלו את קידומת השם שסופקה.

Ops יצר עם היקף זה יהיה name/childScopeName/ כקידומת. השם בפועל יהיה ייחודי בהיקף המוחזר. כל שאר המאפיינים עוברים בירושה מההיקף הנוכחי.

השם היקף הילד חייב להתאים הביטוי הרגיל [A-Za-z0-9.][A-Za-z0-9_.\-]*

פרמטרים
childScopeName שם עבור היקף הילד החדש
החזרות
  • תת-היקף חדש
זורק
חריג טיעון לא חוקי אם השם לא חוקי