Scope
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يدير مجموعات من الخصائص ذات الصلة عند إنشاء عمليات Tensorflow، مثل بادئة الاسم الشائع.
Scope
عبارة عن حاوية للخصائص الشائعة المطبقة على TensorFlow Ops. يقوم رمز المستخدم العادي بتهيئة Scope
وتوفيره لفئات بناء العملية. على سبيل المثال:
Scope scope = new Scope(graph);
Constant c = Constant.create(scope, 42);
تحصل فئة بناء العملية على نطاق، وتستخدمه لتعيين الخصائص على عمليات Tensorflow الأساسية. على سبيل المثال:
// 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, ...);
كائنات النطاق ليست آمنة لمؤشر الترابط.
الأساليب العامة
OperationBuilder | |
بيئة التنفيذ | بيئى () إرجاع بيئة التنفيذ المستخدمة بواسطة هذا النطاق. |
خيط | makeOpName (الاسم الافتراضي للسلسلة) أنشئ اسمًا فريدًا لعامل التشغيل، باستخدام الاسم الافتراضي المقدم إذا لزم الأمر. |
نِطَاق | |
نِطَاق | مع الاسم (سلسلة opName) قم بإرجاع نطاق جديد يستخدم الاسم المقدم للعملية. |
نِطَاق | withSubScope (سلسلة ChildScopeName) إرجاع نطاق جديد حيث سيكون للعمليات المضافة بادئة الاسم المقدمة. |
الطرق الموروثة
من فئة java.lang.Object منطقية | يساوي (كائن arg0) |
الدرجة النهائية<?> | الحصول على كلاس () |
كثافة العمليات | رمز التجزئة () |
الفراغ النهائي | إعلام () |
الفراغ النهائي | إعلام الكل () |
خيط | إلى السلسلة () |
الفراغ النهائي | انتظر (طويل arg0، int arg1) |
الفراغ النهائي | انتظر (طويل arg0) |
الفراغ النهائي | انتظر () |
المقاولون العامون
النطاق العام (بيئة التنفيذ )
قم بإنشاء نطاق جديد عالي المستوى.
حدود
بيئة | بيئة التنفيذ التي يستخدمها النطاق. |
---|
الأساليب العامة
يضيف كل معامل في controlDependeency كمدخل تحكم إلى المنشئ المقدم.
حدود
منشئ | OperationBuilder لإضافة مدخلات التحكم إليها |
---|
بيئة التنفيذ العامة ()
إرجاع بيئة التنفيذ المستخدمة بواسطة هذا النطاق.
سلسلة makeOpName العامة (الاسم الافتراضي للسلسلة)
أنشئ اسمًا فريدًا لعامل التشغيل، باستخدام الاسم الافتراضي المقدم إذا لزم الأمر.
يتم استدعاء هذا عادةً فقط من خلال فئات بناء المشغلين.
تنشئ هذه الطريقة اسمًا فريدًا، مناسبًا لنطاق الاسم الذي يتحكم فيه هذا المثيل. قد يبدو رمز بناء المشغل النموذجي
scope.env().opBuilder("Const", scope.makeOpName("Const"))...
ملاحظة: إذا قمت بتوفير فئة بناء عامل تشغيل مركب (على سبيل المثال، فئة تقوم بإنشاء مجموعة من العمليات ذات الصلة عن طريق استدعاء كود بناء عامل تشغيل آخر)، فإن الاسم المقدم سيكون بمثابة نطاق فرعي لجميع عوامل التشغيل الأساسية.
حدود
الاسم الافتراضي | اسم المشغل الأساسي. |
---|
رميات
IllegalArgumentException | إذا كان الاسم الافتراضي غير صالح. |
---|
النطاق العام مع تبعيات التحكم (عناصر تحكم Iterable< Operand <?>>)
إرجاع نطاق جديد حيث سيكون للعمليات المضافة تبعيات التحكم المتوفرة.
العمليات التي تم إنشاؤها باستخدام هذا النطاق سيكون لها حافة تحكم من كل عنصر من عناصر التحكم المتوفرة. كافة الخصائص الأخرى موروثة من النطاق الحالي.
حدود
الضوابط | تبعيات التحكم للعمليات التي تم إنشاؤها باستخدام النطاق الذي تم إرجاعه |
---|
المرتجعات
- نطاق جديد مع تبعيات التحكم المقدمة
النطاق العام مع الاسم (String opName)
قم بإرجاع نطاق جديد يستخدم الاسم المقدم للعملية.
العمليات التي تم إنشاؤها ضمن هذا النطاق سيكون لها اسم النموذج name/opName[_suffix]
. يتيح لك هذا تسمية عامل تشغيل محدد بشكل أكثر وضوحًا.
يجب أن تتطابق الأسماء مع التعبير العادي [A-Za-z0-9.][A-Za-z0-9_.\-]*
حدود
اسم العملية | اسم عامل التشغيل في النطاق الذي تم إرجاعه |
---|
المرتجعات
- نطاق جديد يستخدم opName للعمليات.
رميات
IllegalArgumentException | إذا كان الاسم غير صالح |
---|
النطاق العام مع SubScope (سلسلة ChildScopeName)
إرجاع نطاق جديد حيث سيكون للعمليات المضافة بادئة الاسم المقدمة.
العمليات التي تم إنشاؤها باستخدام هذا النطاق سيكون لها name/childScopeName/
كبادئة. سيكون الاسم الفعلي فريدًا في النطاق الذي تم إرجاعه. كافة الخصائص الأخرى موروثة من النطاق الحالي.
يجب أن يتطابق اسم النطاق الفرعي مع التعبير العادي [A-Za-z0-9.][A-Za-z0-9_.\-]*
حدود
ChildScopeName | اسم النطاق التابع الجديد |
---|
رميات
IllegalArgumentException | إذا كان الاسم غير صالح |
---|
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، وعينات التعليمات البرمجية مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers الإلكتروني. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين. تم ترخيص جزء من المحتوى بموجب numpy license.
تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Scope\n\npublic final class **Scope** \nManages groups of related properties when creating Tensorflow Operations, such as a common name\nprefix.\n\nA `Scope` is a container for common properties applied to TensorFlow Ops. Normal user\ncode initializes a `Scope` and provides it to Operation building classes. For example:\n\n Scope scope = new Scope(graph);\n Constant c = Constant.create(scope, 42);\n \nAn Operation building class acquires a Scope, and uses it to set properties on the underlying\nTensorflow ops. For example:\n\n // An operator class that adds a constant.\n public class Constant {\n public static Constant create(Scope scope, ...) {\n scope.graph().opBuilder(\n \"Const\", scope.makeOpName(\"Const\"))\n .setAttr(...)\n .build()\n ...\n }\n }\n \n**Scope hierarchy:**\n\nA `Scope` provides various `with()` methods that create a new scope. The new scope\ntypically has one property changed while other properties are inherited from the parent scope.\n\nAn example using `Constant` implemented as before:\n\n Scope root = new Scope(graph);\n\n // The linear subscope will generate names like linear/...\n Scope linear = Scope.withSubScope(\"linear\");\n\n // This op name will be \"linear/W\"\n Constant.create(linear.withName(\"W\"), ...);\n\n // This op will be \"linear/Const\", using the default\n // name provided by Constant\n Constant.create(linear, ...);\n\n // This op will be \"linear/Const_1\", using the default\n // name provided by Constant and making it unique within\n // this scope\n Constant.create(linear, ...);\n \nScope objects are **not** thread-safe.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n### Public Constructors\n\n|---|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| | [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#Scope(org.tensorflow.ExecutionEnvironment))([ExecutionEnvironment](/versions/r2.11/api_docs/java/org/tensorflow/ExecutionEnvironment) env) Create a new top-level scope. |\n\n### Public Methods\n\n|-------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [OperationBuilder](/versions/r2.11/api_docs/java/org/tensorflow/OperationBuilder) | [applyControlDependencies](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#applyControlDependencies(org.tensorflow.OperationBuilder))([OperationBuilder](/versions/r2.11/api_docs/java/org/tensorflow/OperationBuilder) builder) Adds each Operand in controlDependencies as a control input to the provided builder. |\n| [ExecutionEnvironment](/versions/r2.11/api_docs/java/org/tensorflow/ExecutionEnvironment) | [env](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#env())() Returns the execution environment used by this scope. |\n| String | [makeOpName](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#makeOpName(java.lang.String))(String defaultName) Create a unique name for an operator, using a provided default if necessary. |\n| [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope) | [withControlDependencies](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#withControlDependencies(java.lang.Iterable\u003corg.tensorflow.Operand\u003c?\u003e\u003e))(Iterable\\\u003c[Operand](/versions/r2.11/api_docs/java/org/tensorflow/Operand)\\\u003c?\\\u003e\\\u003e controls) Returns a new scope where added operations will have the provided control dependencies. |\n| [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope) | [withName](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#withName(java.lang.String))(String opName) Return a new scope that uses the provided name for an op. |\n| [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope) | [withSubScope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope#withSubScope(java.lang.String))(String childScopeName) Returns a new scope where added operations will have the provided name prefix. |\n\n### Inherited Methods\n\nFrom class java.lang.Object \n\n|------------------|---------------------------|\n| boolean | equals(Object arg0) |\n| final Class\\\u003c?\\\u003e | getClass() |\n| int | hashCode() |\n| final void | notify() |\n| final void | notifyAll() |\n| String | toString() |\n| final void | wait(long arg0, int arg1) |\n| final void | wait(long arg0) |\n| final void | wait() |\n\nPublic Constructors\n-------------------\n\n#### public\n**Scope**\n([ExecutionEnvironment](/versions/r2.11/api_docs/java/org/tensorflow/ExecutionEnvironment) env)\n\nCreate a new top-level scope. \n\n##### Parameters\n\n| env | The execution environment used by the scope. |\n|-----|----------------------------------------------|\n\nPublic Methods\n--------------\n\n#### public [OperationBuilder](/versions/r2.11/api_docs/java/org/tensorflow/OperationBuilder)\n**applyControlDependencies**\n([OperationBuilder](/versions/r2.11/api_docs/java/org/tensorflow/OperationBuilder) builder)\n\nAdds each Operand in controlDependencies as a control input to the provided builder. \n\n##### Parameters\n\n| builder | OperationBuilder to add control inputs to |\n|---------|-------------------------------------------|\n\n#### public [ExecutionEnvironment](/versions/r2.11/api_docs/java/org/tensorflow/ExecutionEnvironment)\n**env**\n()\n\nReturns the execution environment used by this scope. \n\n#### public String\n**makeOpName**\n(String defaultName)\n\nCreate a unique name for an operator, using a provided default if necessary.\n\nThis is normally called only by operator building classes.\n\nThis method generates a unique name, appropriate for the name scope controlled by this\ninstance. Typical operator building code might look like\n\n scope.env().opBuilder(\"Const\", scope.makeOpName(\"Const\"))...\n \n**Note:** if you provide a composite operator building class (i.e, a class that creates a\nset of related operations by calling other operator building code), the provided name will act\nas a subscope to all underlying operators.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n##### Parameters\n\n| defaultName | name for the underlying operator. |\n|-------------|-----------------------------------|\n\n##### Returns\n\n- unique name for the operator. \n\n##### Throws\n\n| IllegalArgumentException | if the default name is invalid. |\n|--------------------------|---------------------------------|\n\n#### public [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope)\n**withControlDependencies**\n(Iterable\\\u003c[Operand](/versions/r2.11/api_docs/java/org/tensorflow/Operand)\\\u003c?\\\u003e\\\u003e controls)\n\nReturns a new scope where added operations will have the provided control dependencies.\n\nOps created with this scope will have a control edge from each of the provided controls. All\nother properties are inherited from the current scope.\n\n\u003cbr /\u003e\n\n##### Parameters\n\n| controls | control dependencies for ops created with the returned scope |\n|----------|--------------------------------------------------------------|\n\n##### Returns\n\n- a new scope with the provided control dependencies \n\n#### public [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope)\n**withName**\n(String opName)\n\nReturn a new scope that uses the provided name for an op.\n\nOperations created within this scope will have a name of the form `name/opName[_suffix]`. This lets you name a specific operator more meaningfully.\n\nNames must match the regular expression `[A-Za-z0-9.][A-Za-z0-9_.\\-]*`\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n##### Parameters\n\n| opName | name for an operator in the returned scope |\n|--------|--------------------------------------------|\n\n##### Returns\n\n- a new Scope that uses opName for operations. \n\n##### Throws\n\n| IllegalArgumentException | if the name is invalid |\n|--------------------------|------------------------|\n\n#### public [Scope](/versions/r2.11/api_docs/java/org/tensorflow/op/Scope)\n**withSubScope**\n(String childScopeName)\n\nReturns a new scope where added operations will have the provided name prefix.\n\nOps created with this scope will have `name/childScopeName/` as the prefix. The actual\nname will be unique in the returned scope. All other properties are inherited from the current\nscope.\n\nThe child scope name must match the regular expression `[A-Za-z0-9.][A-Za-z0-9_.\\-]*`\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n##### Parameters\n\n| childScopeName | name for the new child scope |\n|----------------|------------------------------|\n\n##### Returns\n\n- a new subscope \n\n##### Throws\n\n| IllegalArgumentException | if the name is invalid |\n|--------------------------|------------------------|"]]