Áp dụng mạng cho nhiều quan sát/hàng dữ liệu
Giờ bạn sẽ định nghĩa một hàm tên predict_with_network() để tạo dự đoán cho nhiều quan sát dữ liệu, đã được nạp sẵn là input_data. Như trước, weights cũng đã được nạp sẵn. Ngoài ra, hàm relu() mà bạn đã định nghĩa ở bài tập trước cũng đã được nạp sẵn.
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
Hướng dẫn bài tập
- Định nghĩa một hàm tên
predict_with_network()nhận hai đối số -input_data_rowvàweights- và trả về một dự đoán từ mạng làm đầu ra. - Tính các giá trị đầu vào và đầu ra cho mỗi node, lưu lần lượt là:
node_0_input,node_0_output,node_1_input, vànode_1_output.- Để tính giá trị đầu vào của một node, nhân các mảng liên quan với nhau và tính tổng.
- Để tính giá trị đầu ra của một node, áp dụng hàm
relu()lên giá trị đầu vào của node đó.
- Tính đầu ra của mô hình bằng cách tính
input_to_final_layervàmodel_outputtheo cùng cách bạn đã tính giá trị đầu vào và đầu ra cho các node. - Dùng vòng lặp
forđể lặp quainput_data:- Dùng
predict_with_network()của bạn để tạo dự đoán cho từng hàng củainput_data-input_data_row. Thêm (append) mỗi dự đoán vàoresults.
- Dùng
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.
# Define predict_with_network()
def predict_with_network(input_data_row, weights):
# Calculate node 0 value
node_0_input = ____
node_0_output = ____
# Calculate node 1 value
node_1_input = ____
node_1_output = ____
# Put node values into array: hidden_layer_outputs
hidden_layer_outputs = np.array([node_0_output, node_1_output])
# Calculate model output
input_to_final_layer = ____
model_output = ____
# Return model output
return(model_output)
# Create empty list to store prediction results
results = []
for input_data_row in input_data:
# Append prediction to results
results.append(____)
# Print results
print(results)