ai-454Đọc toàn bộ đề miễn phí

Một hàng của ma trận kề chuẩn hoá

Mạng nơ-ron đồ thị (GCN) trước khi lan truyền thông điệp thường chuẩn hoá ma trận kề theo

AICơ bản12 phút

Tiến độ của tôi ở bài này

Điểm và code bạn nộp được lưu vào tài khoản sau khi chấm bài.

Đang tải điểm của bạn…

Kiến thức và chủ đề

numpygraph-neural-networknormalized-adjacencyentry-ramp

Kiến thức tiên quyết: python-basics, graph-basics.

Nội dung đề bài

Mô tả bài toán

Mạng nơ-ron đồ thị (GCN) trước khi lan truyền thông điệp thường chuẩn hoá ma trận kề theo công thức đối xứng  = D^(-1/2) A D^(-1/2), trong đó D là ma trận bậc (đường chéo). Việc chuẩn hoá giữ cho độ lớn đặc trưng không phình ra ở các đỉnh bậc cao.

Yêu cầu

Viết hàm normalized_adjacency_row(adjacency, node) trả về hàng node của  dưới dạng danh sách số thực.

Quy ước nộp bài

Nộp hàm normalized_adjacency_row trong solution.py. Hệ thống gọi hàm trực tiếp và so giá trị với sai số 1e-6; không đọc stdin và không in ra stdout.

Input

  • adjacency: ma trận kề đối xứng (danh sách các danh sách), adjacency[i][j] bằng 1

nếu có cạnh i-j.

  • node: chỉ số đỉnh cần lấy hàng.

Output

Danh sách giá trị Â[node][j] = adjacency[node][j] / sqrt(deg[node] * deg[j]), với deg[k] là tổng hàng k.

Ràng buộc

  • node phải nằm trong [0, n); nếu không thì ném ValueError.
  • Nếu đỉnh có bậc 0 thì ném ValueError (không chia cho 0).
  • Chỉ dùng NumPy cho phép chia và căn bậc hai.

Ví dụ 1

Input

normalized_adjacency_row(adjacency=[[0, 1, 0, 0], [1, 0, 1, 0], [0, 1, 0, 1], [0, 0, 1, 0]], node=0)

Output

[0.0, 0.7071067811865476, 0.0, 0.0]

Ví dụ 2

Input

normalized_adjacency_row(adjacency=[[0, 1, 0, 0], [1, 0, 1, 0], [0, 1, 0, 1], [0, 0, 1, 0]], node=1)

Output

[0.7071067811865476, 0.0, 0.5, 0.0]

Giải thích

Với đường đi 0-1-2-3 thì deg = [1, 2, 2, 1]. Hàng của đỉnh 0 chỉ có cạnh tới 1: Â[0][1] = 1 / sqrt(1 * 2) = 0.7071067811865476, nên hàng là [0.0, 0.7071067811865476, 0.0, 0.0].

3 cấp độ gợi ýMở dần khi bạn thật sự cần hỗ trợ.
Phân tích lời giảiGiải thích hướng tư duy và thuật toán.
Code tham khảoDùng để đối chiếu sau khi tự làm.

Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.

Nhóm Zalo