mạng artificial neural network.?

  1. Trí tuệ nhân tạo

Chào anh chị, em mới nhập môn có một số câu hỏi nhờ sự giúp đỡ của các tiền bối đi trước ạ.

1: Trong các bài báo mà em đọc được thường chia tệp dữ liệu thành 3 tập. training (70%), testing (20%), validate (10%). Vậy mình lấy cơ sở nào để phân chia dữ liệu như vậy ạ? mình có thể phân chia theo tỷ lệ khác được không?

2: Việc chuẩn hóa dữ liệu có phải là bắt buộc không? và khi nào thì mình phải chuẩn hóa dữ liệu? em thấy dữ liệu có thể chuẩn hóa từ (-1,1) hoặc (0,1). Vậy thì với tập dữ liệu mang tính chất như nào thì mình chọn khoảng chuẩn hóa hợp lý ạ?

rất mong được sự giúp đỡ của các tiền bối ạ.

Từ khóa: 

trí tuệ nhân tạo

[1] k có chuẩn nào cả. Ngta hay chia như vậy và thấy kết quả ổn nên lấy nhiều :))
[2] tuỳ vào bài toán và dữ liệu hiện có có mà phải chuẩn hoá hay k. Vd thuật toán chỉ nhận x,y,z mà ta có a,b,c thì phải chuẩn hoá
Trả lời
[1] k có chuẩn nào cả. Ngta hay chia như vậy và thấy kết quả ổn nên lấy nhiều :))
[2] tuỳ vào bài toán và dữ liệu hiện có có mà phải chuẩn hoá hay k. Vd thuật toán chỉ nhận x,y,z mà ta có a,b,c thì phải chuẩn hoá

[1] Phân chi như thế nào là tùy bạn. Mức 70-10-20 là khá hợp lý, vì nếu train thấp sẽ không đại diện được tính chất của tập dữ liêu. Tập test quá ít sẽ rất khó phát hiện overfitting.

[2] Normalize dữ liêuj để tránh sự dominate của một thuộc tính nào đấy do sự sai khác nhau về đơn vị (unit). Ví dụ so sánh kích thước một vật, W và H tính bằng m, trong khi D tính bằng mm sẽ khiến cho hàm loss sẽ bị ảnh hưởng bởi giá trị D nhiều hơn là W và H (với giả định vật có tính chất hình hộp ko hướng dẹt). Tùy vào bài toán, giá trị và tính chất thuộc tính mà xác định phương pháp normailize. Không phải bài toán/thuộc tính nào cũng cần normalize