Bắt đầu ngayBắt đầu miễn phí

Mạng nơ-ron nhiều lớp

Trong bài này, bạn sẽ viết mã để thực hiện lan truyền xuôi cho một mạng nơ-ron với 2 tầng ẩn. Mỗi tầng ẩn có hai nút. Dữ liệu đầu vào đã được nạp sẵn dưới tên input_data. Các nút ở tầng ẩn thứ nhất có tên node_0_0node_0_1. Trọng số của chúng đã được nạp sẵn lần lượt là weights['node_0_0']weights['node_0_1'].

Các nút ở tầng ẩn thứ hai có tên node_1_0node_1_1. Trọng số của chúng đã được nạp sẵn lần lượt là weights['node_1_0']weights['node_1_1'].

Sau đó, chúng ta tạo đầu ra của mô hình từ các nút ẩn bằng các trọng số đã nạp sẵn là weights['output'].

Ch1Ex10

Bài tập này là một phần của khóa học

Nhập môn Deep Learning với Python

Xem khóa học

Hướng dẫn bài tập

  • Tính node_0_0_input bằng trọng số weights['node_0_0']input_data đã cho. Sau đó áp dụng hàm relu() để lấy node_0_0_output.
  • Làm tương tự cho node_0_1_input để lấy node_0_1_output.
  • Tính node_1_0_input bằng trọng số weights['node_1_0'] và các đầu ra từ tầng ẩn thứ nhất - hidden_0_outputs. Sau đó áp dụng hàm relu() để lấy node_1_0_output.
  • Làm tương tự cho node_1_1_input để lấy node_1_1_output.
  • Tính model_output bằng trọng số weights['output'] và mảng đầu ra từ tầng ẩn thứ hai hidden_1_outputs. Không áp dụng hàm relu() cho đầu ra này.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

def predict_with_network(input_data):
    # Calculate node 0 in the first hidden layer
    node_0_0_input = (____ * ____).sum()
    node_0_0_output = relu(____)

    # Calculate node 1 in the first hidden layer
    node_0_1_input = ____
    node_0_1_output = ____

    # Put node values into array: hidden_0_outputs
    hidden_0_outputs = np.array([node_0_0_output, node_0_1_output])
    
    # Calculate node 0 in the second hidden layer
    node_1_0_input = ____
    node_1_0_output = ____

    # Calculate node 1 in the second hidden layer
    node_1_1_input = ____
    node_1_1_output = ____

    # Put node values into array: hidden_1_outputs
    hidden_1_outputs = np.array([node_1_0_output, node_1_1_output])

    # Calculate model output: model_output
    model_output = ____
    
    # Return model_output
    return(model_output)

output = predict_with_network(input_data)
print(output)
Chỉnh sửa và Chạy Mã