يدير مجموعات من الخصائص ذات الصلة عند إنشاء عمليات Tensorflow ، مثل بادئة الاسم الشائع.
A Scope
هو وعاء لخصائص مشتركة تطبق على TensorFlow العمليات. رمز المستخدم العادي تهيئة على 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()
...
}
}
التسلسل الهرمي للنطاق:
A 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, ...);
كائنات نطاق ليست ذات ألوان.
المقاولون العامون
الطرق العامة
عملية باني | applyControlDependencies ( OperationBuilder باني) يضيف كل عامل في controlDependencies كمدخل تحكم للمنشئ المقدم. |
التنفيذالبيئة | الحياة الفطرية () إرجاع بيئة التنفيذ التي يستخدمها هذا النطاق. |
سلسلة | makeOpName (سلسلة defaultName) قم بإنشاء اسم فريد لعامل التشغيل ، باستخدام الاسم الافتراضي المقدم إذا لزم الأمر. |
نطاق | withControlDependencies (Iterable < المعامل <>> الضوابط) يُرجع نطاقًا جديدًا حيث ستحتوي العمليات المضافة على تبعيات التحكم المتوفرة. |
نطاق | withName (سلسلة opName) قم بإرجاع نطاق جديد يستخدم الاسم المقدم لمرجع. |
نطاق | withSubScope (سلسلة childScopeName) يُرجع نطاقًا جديدًا حيث سيكون للعمليات المضافة بادئة الاسم المقدمة. |
الطرق الموروثة
المقاولون العامون
النطاق العام ( ExecutionEnvironment الحياة الفطرية)
قم بإنشاء نطاق مستوى أعلى جديد.
العوامل
الحسد | بيئة التنفيذ التي يستخدمها النطاق. |
---|
الطرق العامة
الجمهور OperationBuilder applyControlDependencies ( OperationBuilder باني)
يضيف كل عامل في controlDependencies كمدخل تحكم للمنشئ المقدم.
العوامل
باني | OperationBuilder لإضافة مدخلات التحكم إلى |
---|
جمهور سلسلة makeOpName (سلسلة defaultName)
قم بإنشاء اسم فريد لعامل التشغيل ، باستخدام الاسم الافتراضي المقدم إذا لزم الأمر.
عادة ما يتم استدعاء هذا فقط بواسطة فئات بناء المشغل.
تنشئ هذه الطريقة اسمًا فريدًا ، مناسبًا لنطاق الاسم الذي يتحكم فيه هذا المثيل. نموذجي قانون البناء المشغل قد تبدو
scope.env().opBuilder("Const", scope.makeOpName("Const"))...
ملاحظة: إذا قمت بتوفير عامل بناء من الدرجة المركبة (أي الطبقة التي تخلق مجموعة من العمليات ذات الصلة بالدعوة رمز آخر بناء المشغل)، الاسم المقدم سيكون بمثابة subscope لجميع المشغلين الأساسية.
العوامل
الاسم الافتراضي | اسم المشغل الأساسي. |
---|
عائدات
- اسم فريد للمشغل.
رميات
غير الشرعيين استثناء حجة | إذا كان الاسم الافتراضي غير صالح. |
---|
العام نطاق withControlDependencies (Iterable < المعامل <>> الضوابط)
يُرجع نطاقًا جديدًا حيث ستحتوي العمليات المضافة على تبعيات التحكم المتوفرة.
سيكون للعمليات التي تم إنشاؤها باستخدام هذا النطاق ميزة تحكم من كل عنصر من عناصر التحكم المتوفرة. يتم توريث كافة الخصائص الأخرى من النطاق الحالي.
العوامل
ضوابط | تبعيات التحكم للعمليات التي تم إنشاؤها باستخدام النطاق الذي تم إرجاعه |
---|
عائدات
- نطاق جديد مع تبعيات التحكم المقدمة
العام نطاق withName (سلسلة opName)
قم بإرجاع نطاق جديد يستخدم الاسم المقدم لمرجع.
والعمليات التي تم إنشاؤها ضمن هذا النطاق يكون اسم النموذج name/opName[_suffix]
. يتيح لك هذا تسمية عامل معين بشكل أكثر جدوى.
يجب أن الأسماء تطابق التعبير العادي [A-Za-z0-9.][A-Za-z0-9_.\-]*
العوامل
الاسم | اسم عامل في النطاق الذي تم إرجاعه |
---|
عائدات
- نطاق جديد يستخدم opName للعمليات.
رميات
غير الشرعيين استثناء حجة | إذا كان الاسم غير صالح |
---|
العام نطاق withSubScope (سلسلة childScopeName)
يُرجع نطاقًا جديدًا حيث سيكون للعمليات المضافة بادئة الاسم المقدمة.
والعمليات التي تم إنشاؤها باستخدام هذا النطاق يكون name/childScopeName/
كما البادئة. سيكون الاسم الفعلي فريدًا في النطاق الذي تم إرجاعه. يتم توريث كافة الخصائص الأخرى من النطاق الحالي.
اسم نطاق الطفل يجب أن تتطابق التعبير العادي [A-Za-z0-9.][A-Za-z0-9_.\-]*
العوامل
childScopeName | اسم النطاق الفرعي الجديد |
---|
عائدات
- نطاق فرعي جديد
رميات
غير الشرعيين استثناء حجة | إذا كان الاسم غير صالح |
---|