CHƯƠNG 3: QUY TRÌNH VẬN HÀNH VÀ PHÂN BỔ TÀI NGUYÊN
3.6. Thời gian tính toán-truyền tải và Năng lượng tiêu hao
Mô hình Federated Learning đòi hỏi nhiều vòng lặp đào tạo liên tục, trong mỗi vòng lặp, các thiết bị đòi hỏi một nguồn năng lượng và thời gian nhất định để tính toán tham số. Vấn đề trên sẽ được cụ thể hóa trong nội dung dưới đây.
Như đã nói ở trên, trong mỗi vòng lặp toàn cầu 𝑡, máy chủ chia sẻ mô hình toàn cầu ở vòng lặp trước đó cho các thiết bị địa phương, các User sẽ tải xuống mô hình 𝑤(t − 1). Về cơ bản, ta có thể bỏ qua khoảng thời gian mà Server truyền mô hình cho các User, bởi lẽ công suất phát của máy chủ lớn hơn rất nhiều cho với công
Copies for internal use only in Phenikaa University
suất phát của các máy cục bộ, do đó thời gian mà máy chủ truyền về các thiết bị địa phương này sẽ rất nhanh chóng, không đáng kể, vì vậy có thể bỏ qua.
Để trực quan hơn, giả sử rằng quá trình giao tiếp không có lỗi, tức là không phát sinh bất kì sự cố làm tắc nghẽn đường truyền nào, thì tổng thời gian trong một vòng lặp bao gồm: Thời gian tính toán và Độ trễ truyền tải.
Hình 3.4: Tổng thời gian của một vòng lặp toàn cầu
3.6.1. Quá trình tính toán:
Do dữ liệu cục bộ của mỗi vòng lặp toàn cầu là không đổi, do đó thời gian tính toán của các User tại mỗi vòng lặp là như nhau. Gọi thời gian tính toán cho máy cục
bộ là 𝑙𝑖𝑐 (Computation Lantency). Thời gian tính toán (bằng giây) của một thiết bị cục
bộ phụ thuộc vào các thành phần của máy tính và số lượng vòng lặp SGD cục bộ:
𝑙𝑖𝑐 = 𝜏𝑐𝑖 𝐷𝑖
𝑓𝑖
trong đó: 𝜏 là số bước SGD tính toán của User 𝑖, 𝑓𝑖 biểu thị tần số chu kỳ CPU của User, 𝐷𝑖 biểu thị kích thước của minibatch dữ liệu (tính bằng bit) và 𝑐𝑖 biểu thị số chu
kỳ CPU mà User yêu cầu để xử lý một mẫu dữ liệu trong quá trình đào tạo mô hình cục bộ.
Trong quá trình đào tạo dữ liệu cục bộ, User 𝑖 đều tiêu hao một mức độ năng lượng nhất định. Năng lượng tiêu hao của User 𝑖 (tính bằng Jun) để đào tạo dữ liệu trong mỗi vòng lặp toàn cầu 𝑡 là:
𝐸𝑖𝑐 = 𝜏𝑐𝑖𝐷𝑖(𝑓𝑖)2
Copies for internal use only in Phenikaa University
3.6.2. Quá trình truyền tải:
Giả sử trong quá trình truyền tải, ta áp dụng quy tắc “Đa truy cập phân chia
theo tần số”, hay FDMA (Frequency Division Multiple Access). Đây là một trong các
kỹ thuật sử dụng trong viễn thông và mạng di động để cho phép nhiều thiết bị hoặc người dùng truy cập và sử dụng mạng cùng một lúc bằng cách chia sẻ tần số. Dải tần
số được sử dụng để truyền dữ liệu chia thành các băng tần con. Mỗi băng tần con được gọi là một kênh. Mỗi thiết bị hoặc người dùng được gán một kênh tần số cụ thể để truyền và nhận dữ liệu. Khi một User muốn gửi hoặc nhận thông tin, User đó sẽ sử dụng kênh tần số đã được gán cho mình. Các kênh tần số có thể hoạt động cùng một lúc và độc lập với nhau.
Theo đó, qua FDMA, mỗi kênh tần số sẽ có một “Sức chứa” hay Channel
Capacity nhất định. Đây là một độ đo cho biết khả năng truyền dữ liệu tối đa qua một kênh tần số cụ thể trong điều kiện xác định. Channel Capacity của User thứ 𝑖 trong mỗi vòng lặp toàn cầu 𝑡 được biểu diễn bằng đơn vị bits per second (bps) như sau:
𝐶𝑖(𝑡) = 𝑊𝑖log2(1 +𝑃𝑖𝑡|ℎ𝑖|2
𝑊𝑖𝑁0 ) Trong đó:
• 𝑊𝑖 là băng thông được cấp cho User 𝑖 như đã nói ở trên
• 𝑃𝑖𝑡 là công suất truyền tải của User 𝑖 ở vòng lặp toàn cầu thứ 𝑡
• ℎ𝑖 đại diện cho hệ số kênh đường lên giữa máy chủ và User 𝑖
• 𝑁0 biểu thị mật độ phổ công suất (PSD) của nhiễu cộng.
Theo định lý mã hóa kênh, nếu tốc độ truyền cao hơn dung lượng kênh thì sẽ xảy ra tình trạng mất đường truyền và máy chủ không giải mã được dữ liệu chính xác.
Để tải lên thành công các tham số huấn luyện với khoảng thời gian cụ thể, hay nói cách khác, để đảm bảo truyền hết dữ liệu trong một khoảng thời gian cho trước thì User 𝑖 phải đáp ứng điều kiện:
Copies for internal use only in Phenikaa University
𝑙𝑖𝑢𝑝𝐶𝑖(𝑡) ≥ 𝑆𝑖 Trong đó:
• 𝑆𝑖 là kích thước của tham số đã được lượng tử hóa của User 𝑖
• 𝑙𝑖𝑢𝑝 là thời gian truyền tải của User 𝑖
Năng lượng truyền tải của User 𝑖 được tính theo công thức:
𝐸𝑖𝑢𝑝 = 𝑃𝑖𝑡𝑙𝑖𝑢𝑝
3.6.3. Tổng thời gian và Năng lượng tiêu thụ trong mỗi vòng lặp:
Các User 𝑖 cùng truyền tải dữ liệu đồng thời, do đó, độ trễ của một vòng lặp chính bằng tổng thời gian tính toán-truyền tải của User nào có giá trị lớn nhất. Như vậy, trong mỗi vòng lặp toàn cầu, ta có tổng thời gian tính toán-truyền tải của User 𝑖 là:
𝑙𝑖(𝑡) = 𝑙𝑖𝑐+ 𝑙𝑖𝑢𝑝
Trên đây là toàn bộ quá trình hoạt động của một mô hình phân bổ tài nguyên Học liên kết. Sang phần tiếp theo, tôi xin được phép mô tả chi tiết hơn về quá trình chuẩn bị dữ liệu cũng như thiết lập hệ thống thực nghiệm.
Copies for internal use only in Phenikaa University