Có khá nhiều tranh cãi xung quanh vấn đề tiền xử lý dữ liệu trước khi xây dựng mô hình Mạng thần kinh. Đặc biệt là vấn đề phân phối chuẩn của dữ liệu. Ruey-Shiang Guh (2002) cho rằng Mạng thần kinh vẫn hoạt động tốt cho dù dữ liệu có phân phối không chuẩn; nhưng ngược lại, Irina Klevecka và Janis Lelis (2008) và một số nhà nghiên cứu khác thì không cùng quan điểm với Ruey-Shiang Guh. Theo các nhà nghiên cứu này, trong trường hợp dữ liệu có phân phối không chuẩn thì các ước lượng trung bình và độ biến thiên sẽ bị bóp méo. Vì thế, các ước lượng này sẽ không được dùng để tính khoảng tin cậy hay khoảng dự báo của mô hình.
Thêm vào đó, nếu dữ liệu không có phân phối chuẩn thì khó có thể mong đợi phần dư cũng có phân phối chuẩn. Khi dữ liệu có phân phối không chuẩn thì chúng ta nên loại bỏ các giá trị ngoại lai (những quan sát không thường xuyên và không theo quy luật thống kê của các quan sát còn lại). Các nhà nghiên cứu này còn cho rằng mặc dù Mạng thần kinh được ứng dụng rộng rãi trong phân tích chuỗi thời gian, nhận dạng mẫu hình, phân loại mẫu hình nhưng những tính chất thống kê của chuỗi dữ liệu cũng có ảnh hưởng quan trọng đến kết quả dự báo không thua kém gì so với việc lựa chọn Mạng thần kinh phù hợp và phương pháp học của nó. Vì vậy, một trong những nhiệm vụ quan trọng trong nghiên cứu là tiền xử lý dữ liệu để tạo điều kiện thuận lợi cho việc nghiên cứu và làm tăng độ tin cậy cho các dự báo từ mô hình. Nhìn chung, các nhà nghiên cứu đều ủng hộ quan điểm nên tiền xử lý dữ liệu trước khi đưa vào mô hình. Guoqiang Zhang (1998) không tìm thấy sự khác nhau đáng kể khi sử dụng dữ liệu thô và dữ liệu chuẩn hóa dựa trên kết quả thực nghiệm với tỷ giá hối đoái. Tuy nhiên, Wei Huang (2004) cho rằng mặc dù việc chuẩn hóa dữ liệu là không bắt buộc nhưng thỉnh thoảng chúng ta không thể không chuẩn hóa, ví dụ nếu Mạng thần kinh sử dụng các hàm truyền như hàm Xích ma, hàm Hyperbol thì Mạng thần kinh chỉ tạo ra dữ liệu đầu ra nằm trong khoảng giới hạn của các hàm này, cụ thể như khoảng (0; 1) đối với hàm Xích ma, và khoảng (-1; 1) đối với hàm Hyperbol. Vì thế, dữ liệu cho giai đoạn huấn luyện và kiểm tra phải được chuẩn hóa. Bên cạnh đó, Irina Klevecka và Janis Lelis (2008) đề nghị tất cả các dữ liệu đầu vào và đầu ra được dùng cho mô hình Mạng thần kinh truyền thẳng nên được chuẩn hóa trong một giới hạn nhất định, thường là trong giới hạn của hàm truyền. Nếu không chuẩn hóa thì những giá trị dự báo của mô hình kém chính xác.
Giai đoạn tiền xử lý dữ liệu là khá quan trọng. Việc xử lý dữ liệu nhằm để tối thiểu hóa độ nhiễu, loại bỏ tính xu hướng. Không những thế, Mạng thần kinh sẽ học nhanh hơn và cho kết quả tốt hơn nếu dữ liệu được xử lý trước khi dùng cho huấn luyện. Thực tế, khó xây dựng mô hình tốt từ bộ dữ liệu thiếu, hoặc không chuẩn (có nhiều độ nhiễu) hoặc dữ liệu không nhất quán. Việc tiền xử lý nhằm hạn chế những số liệu bất thường trong chuỗi dữ liệu. Chẳng hạn, nếu có những biến đầu vào nằm trong khoảng (1; 10.000) và những biến đầu vào nằm trong khoảng (0,0001; 0,1) thì Mạng thần kinh sẽ phải sử dụng những trọng số khá nhỏ cho những biến đầu vào đầu tiên và những trọng số khá lớn cho các biến đầu vào thứ hai. Tuy Mạng thần kinh có thể tìm thấy trọng số phù hợp cho các biến đầu vào này nhưng điều này là không dễ.
Có khá nhiều cách để xử lý dữ liệu, trong đó được sử dụng phổ biến trong cả kinh tế lượng truyền thống và Mạng thần kinh là lấy sai phân bậc nhất và lấy logarit tự nhiên. Việc lấy sai phân giúp loại bỏ tính xu hướng. Khi dữ liệu gốc có mức độ phân tán cao hay có một số quan sát bất thường thì có thể chuyển dữ liệu sang dạng logarit. Bên cạnh đó, các nhà nghiên cứu còn làm trơn dữ liệu bằng cách lấy trung bình di động, sử dụng đường xu hướng và lọc các dao động.Trên thực tế, quá trình tiền xử lý dữ liệu thường dựa trên phương pháp thử và sai.
Guoqiang Zhang (1998) giới thiệu một số công thức chuẩn hóa dữ liệu phổ biến như:
Chuyển hóa đơn giản
Chuyển hóa dữ liệu trong khoảng (a;b)
Chuyển hóa thống kê
̅
Với xn là dữ liệu đã chuẩn hóa, x0 là dữ liệu thô ban đầu; xmin, xmax, ̅ và s lần lượt là giá trị nhỏ nhất, giá trị lớn nhất, giá trị trung bình và độ lệch chuẩn của chuỗi dữ liệu chuẩn hóa.
Việc lựa chọn giới hạn cho dữ liệu chuẩn hóa thông thường phụ thuộc vào giới hạn của hàm kích hoạt. Trong khi đó, một vài nhà nghiên cứu khác lại chọn giới hạn trong khoảng (0,2; 0,8) (Tang và Fishwick, 1993) hay khoảng (0,1; 0,9) (Srinivasan, 1994)
vì họ cho rằng các hàm kích hoạt phi tuyến chỉ đạt được đến giới hạn khi biến đầu vào có giá trị vô hạn [được trích bởi Guoqiang Zhang, 1998].
Đối với phần mềm NeuroSolutions 6.01 (bản dùng thử) mà chúng tôi sử dụng trong bài nghiên cứu này, cho phép người sử dụng dễ dàng chuẩn hóa dữ liệu thô để tạo thuận lợi cho quá trình huấn luyện cũng như gia tăng hoạt động dự báo của Mạng thần kinh. Việc chuẩn hóa có thể thực hiện cho tất cả các chuỗi dữ liệu hoặc cho từng chuỗi dữ liệu tùy theo sự lựa chọn của người sử dụng. Chẳng hạn như, mô hình mà chúng ta muốn xây dựng có tất cả là 7 chuỗi dữ liệu đầu vào và 1 chuỗi dữ liệu đầu ra, chúng ta có thể lựa chọn hoặc chuẩn hóa tất cả các chuỗi này theo cùng một công thức tính hoặc chuẩn hóa từng chuỗi một.
Việc chuẩn hóa này được tính toán dựa vào biên trên (Upper bound), biên dưới (Lower bound) được mô hình tự mặc định, hoặc dựa vào sự lựa chọn của nguời dùng và giá trị lớn nhất, nhỏ nhất của chuỗi dữ liệu. Thông thường biên độ này nằm trong khoảng giới hạn của hàm truyền mà dữ liệu sẽ đi qua. Dữ liệu sau khi chuẩn hóa sẽ nằm trong vùng biên độ này. Việc chuẩn hóa dữ liệu sẽ được tính toán như sau:
Đầu tiên, mô hình tính toán biên độ (Amplitude) và độ lệch (Offset) cho chuỗi dữ liệu i, ký hiệu lần lượt là Amp (i) và Off (i)
Chuỗi dữ liệu chuẩn hóa được tính toán như sau
Trong đó: Data’ (i) là dữ liệu sau chuẩn hóa của chuỗi i Data (i) là dữ liệu trước chuẩn hóa của chuỗi i
Giá trị lớn nhất (i) là giá trị lớn nhất của chuỗi huấn luyện thứ i Giá trị nhỏ nhất (i) là giá trị nhỏ nhất của chuỗi huấn luyện thứ i
Thông thường khi tính toán giá trị dự báo đầu ra hoặc xuất dữ liệu thì mô hình sẽ tự động chuyển hóa dữ liệu trở lại ban đầu bằng cách tính ngược lại từ công thức ở trên (trong phần mềm thường gọi là máy dò (Probe)).
Ngoài ra, phần mềm còn cho phép thu nhỏ dữ liệu (Scale) trong một vùng nhất định do người sử dụng lựa chọn. Nó tương tự như chuẩn hóa dữ liệu, chỉ khác ở chỗ là phần mềm cho phép người sử dụng được phép điều chỉnh các giá trị Amp (i) và Off (i). Như vậy, việc chuẩn hóa dữ liệu được thực hiện theo mặc định của phần mềm NeuroSolutions 6.01 nên chúng tôi không cần phải chuẩn hóa dữ liệu trước mà chỉ cần sử dụng dữ liệu thô để xây dựng mô hình dựa trên phần mềm này.