این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

tff.simulation.TransformingClientData

مشاهده منبع در گیتهاب

تبدیل داده های مشتری، به طور بالقوه با اضافه کردن شبه مشتریان گسترش است.

به ارث برده از: ClientData

هر مشتری از raw_client_data است "گسترده" به برخی از تعدادی از شبه مشتریان. هر شناسه مشتری یک رشته عبارت است از ID مشتری اصلی به علاوه یک عدد صحیح الحاق است. به عنوان مثال، شناسه کلاینت خام "client_a" ممکن است به شبه مشتری شناسه "client_a_0"، "client_a_1" و "client_a_2" گسترش یافته است. یک تابع FN (X) نقشه Datapoint با X به یک Datapoint با جدید، که در آن سازنده FN توسط سرویس گیرنده (خام) و شاخص من پارامتر. به عنوان مثال اگر x یک تصویر، و سپس make_transform_fn ( "client_a"، 0) (x) را ممکن است هویت، در حالی که make_transform_fn ( "client_a"، 1) (x) را می تواند یک چرخش تصادفی از تصویر با زاویه تعیین شده توسط است هش "client_a" و "1". به طور معمول توسط کنوانسیون شاخص 0 مربوط به تابع هویت اگر هویت پشتیبانی می شود.

raw_client_data ClientData به گسترش است.
make_transform_fn یک تابع که بازده یک قابل فراخوانی است که نقشه های Datapoint با X به یک Datapoint با X جدید. make_transform_fn به عنوان make_transform_fn (raw_client_id، من) که در آن من عدد صحیح است نامیده می شود، و باید یک FN تابع (x) را بازگشت -> x است. به عنوان مثال اگر x یک تصویر، و سپس make_transform_fn ( "client_a"، 0) (x) را ممکن است هویت، در حالی که make_transform_fn ( "client_a"، 1) (x) را می تواند یک چرخش تصادفی از تصویر با زاویه تعیین شده توسط است هش "client_a" و "1". اگر transform_fn_cons بازده None ، هیچ تحولی انجام شده است. به طور معمول توسط کنوانسیون شاخص 0 مربوط به تابع هویت اگر هویت پشتیبانی می شود.
num_transformed_clients تعداد کل مشتریان تبدیل به تولید است. اگر آن را یک عدد صحیح K متعدد از تعدادی از مشتریان واقعی است، وجود خواهد داشت دقیقا K شبه مشتریان هر مشتری واقعی، با شاخص ها 0 ... K-1. باقیمانده گرم خواهد شد از مشتریان واقعی برای اولین بار گرم تولید شده و داده خواهد شد شاخص k است.

client_ids لیستی از شناسه های رشته برای مشتریان در این مجموعه داده.
dataset_computation tff.Computation پذیرش ID مشتری، بازگشت یک مجموعه داده.

ClientData پیاده سازی هایی که پشتیبانی نمی dataset_computation باید افزایش NotImplementedError اگر این ویژگی قابل دسترسی است.

element_type_structure اطلاعات نوع عنصر از مجموعه داده های مشتری.

عناصر با مجموعه داده در این بازگشت ClientData شی.

مواد و روش ها

create_tf_dataset_for_client

مشاهده منبع

ایجاد یک جدید tf.data.Dataset حاوی مثال های آموزشی مشتری.

استدلال
client_id رشته برای مشتری مورد نظر سرویس گیرنده.

بازگشت
tf.data.Dataset شی.

create_tf_dataset_from_all_clients

مشاهده منبع

ایجاد یک جدید tf.data.Dataset شامل تمام نمونه مشتری.

این تابع برای آموزش استفاده متمرکز، مدل های غیر توزیع (num_clients = 1) در نظر گرفته شده. این می تواند به عنوان یک نقطه از مقایسه در برابر مدل های فدرال مفید است.

در حال حاضر، اجرای تولید یک مجموعه داده است که شامل تمام نمونه هایی از یک مشتری تنها در نظم، و برروی آن بکشید تا به طور کلی اضافی باید انجام شود.

استدلال
seed اختیاری، یک دانه برای تعیین جهت که در آن مشتریان در مجموعه داده پیوست پردازش شده است. دانه می تواند هر 32 بیتی عدد صحیح بدون علامت و یا یک رشته از چنین اعداد صحیح است.

بازگشت
tf.data.Dataset شی.

datasets

مشاهده منبع

بازده tf.data.Dataset برای هر مشتری به صورت تصادفی.

این تابع برای ساخت یک آرایه ایستا داده های مشتری به سطح بالا محاسبات فدرال ارائه شود استفاده شده است.

استدلال
limit_count اختیاری، حداکثر تعداد مجموعه داده به بازگشت.
seed اختیاری، یک دانه برای تعیین جهت که در آن مشتریان در مجموعه داده پیوست پردازش شده است. دانه می تواند هر 32 بیتی عدد صحیح بدون علامت و یا یک رشته از چنین اعداد صحیح است.

from_clients_and_fn

مشاهده منبع

سازه های یک ClientData بر اساس تابع داده شده.

استدلال
client_ids لیست غیر خالی از client_ids که ورودی های معتبر به create_tf_dataset_for_client_fn هستند.
create_tf_dataset_for_client_fn تابعی که طول می کشد یک سرویس گیرنده از لیست بالا، و برمی گرداند tf.data.Dataset .

بازگشت
ClientData .

preprocess

مشاهده منبع

اعمال preprocess_fn به داده هر مشتری.

train_test_client_split

مشاهده منبع

بازگرداندن یک جفت (قطار، آزمون) ClientData .

این روش پارتیشن مشتریان از client_data به دو ClientData اشیاء با مجموعه متلاشی شدن از ClientData.client_ids . همه مشتریان در آزمون ClientData تضمین شده است به مجموعه داده های غیر خالی، اما آموزش ClientData ممکن است مشتریان با داده.

استدلال
client_data پایه ClientData به تقسیم می شود.
num_test_clients چگونه بسیاری از مشتریان را به نگه دارید برای تست. این می تواند در بسیاری از (client_data.client_ids) لن - 1، از آنجایی که ما نمی خواهیم به تولید خالی ClientData .

بازگشت
یک جفت (train_client_data، test_client_data)، که در آن test_client_data است num_test_clients به طور تصادفی، موضوع به محدودیت انتخاب هر یک از آنها باید حداقل 1 دسته ای در مجموعه داده است.

را بالا می برد
ValueError اگر num_test_clients را نمیتوان توسط satistifed client_data ، یا بیش از حد بسیاری از مشتریان مجموعه داده خالی است.