3. ĐỊNH HƯỚNG XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM
3.3. Thực nghiệm
3.3.1. Thực nghiệm quá trình tính giá trị một số tham số đầu vào: 3.3.1.1. Thực nghiệm tìm số lần lặp lại.
Quá trình tăng số lần lặp có sinh ra quan hệ tỷ lệ rõ ràng của mạng. Tuy nhiên trong trường hợp cụ thể việc tăng số lần lặp có một số hiệu ứng bất lợi của nhiều số đưa vào dẫn đến nhận dạng sai. Từng phần riêng có thể thuộc tính của tham số tốc độ học. Nó là giới hạn tối ưu và mở rộng việc cập nhật kết quả trọng số trong trạng thái vòng tối ưu. Với việc tăng sự lặp đi lặp lại mạng sẽ thử lại tới trạng thái mong muốn và tiếp tục quay lại. Vì vậy cần có số lần lặp tối ưu với lỗi chấp nhận được.
Các giá trị khác số kí tự=124, tốc độ học=150, Sigmoid slope=0.014 Bảng 3.2 : Thực nghiệm tìm số lần lặp Kiểu font 300 600 900 Số kí tự lỗi. % lỗi Số kí tự lỗi. % lỗi Số kí tự lỗi. % lỗi Arial 4 4.44 3 3.33 1 1.11 Tahoma 1 1.11 0 0 0 0 Time NewRoman 0 0 0 0 1 1.11
Giá trị quyết định ở trên cho số lần lặp là 300 bởi vì đối với mạng neural có một đặc trưng là chấp nhận sai xót và lại khi sử dụng số lần lặp quá lớn với số lượng neural lớn và tập huấn luyện lớn thì ta cần rất nhiều thời gian cho việc huấn luyện dẫn đến tốn kém chi phí huấn luyện.
3.3.1.2. Thực nghiệm tìm đầu vào (số kí tự đưa vào).
Kích thước của trạng thái đầu vào cũng ảnh hưởng tới quá trình thực thi. Nó là tự nhiên, đó là nhiều giá trị của kí tự đầu vào thiết lập mạng là phụ thuộc vào quá trình huấn luyện sẽ dễ bị mắc lỗi. Thông thường sự phức tạp và tập hợp
đầu vào lớn cần mô hình mạng lớn với nhiều số của lần lặp lại. Cho tập hợp 120 đến 150 kí tự ta cần có mô hình mạng với một lớp ẩn có 500 neural.
Các giá trị khác số lần lặp=300, tốc độ học=150, Sigmoid slope=0.014. Bảng 3.3 : Thực nghiệm tìm số kí tự Kiểu font 50 90 124 Số kí tự lỗi. % lỗi Số kí tự lỗi. % lỗi Số kí tự lỗi. % lỗi Arial 0 0 4 0.044 6 0.048 Tahoma 0 0 2 0.022 4 0.032 Time NewRoman 0 0 2 0.022 4 0.032
Giá trị quyết định ở trên cho số kí tự đưa vào là 120 đến 160 vì với số lượng 50 hay 90 ký tự thì không thể hiện hết những ký tự đang được sử dụng hiện nay vấn đề lâu dài là tập 256 ký tự của bảng mã ASCII.
3.3.1.3. Thực nghiệm tìm tham số tốc độ học.
Sự thay đổi của tham số tốc độ học cũng ảnh hưởng tới sự thi hành của mạng khi cho số lần lặp định sẵn. Giảm giá trị của tham số này, mạng sẽ cập nhật lại trọng số. Nó làm giảm khả năng và học khó hơn khi nó cập nhật liên kết chậm hơn, sẽ tăng số lần lặp để đạt giá trị tối ưu. Vì vậy cần một giá trị tối ưu cho sự thi hành của mạng.
Các giá trị khác số kí tự=124, số lần lặp=300, Sigmoid slope=0.014. Theo kết quả trong bảng 3.4, giá trị tối ưu quyết định ở trên cho tham số tốc độ học là 150 vì nếu sử dụng các giá trị 50 hay 100 thì mạng học rất lâu và độ chính xác không cao đốI với các giá trị khác cho kết quả tương tự.
Bảng 3.4: Thực nghiệm tìm tốc độ học
Số kt lỗi. % lỗi Số kt lỗi. % lỗi Số kt lỗi. % lỗi
Arial 82 91.11 18 20 3 3.33
Tahoma 56 62.22 11 12.22 1 1.11
Time NewRoman 77 85.56 15 16.67 0 0
3.3.2. Thực nghiệm huấn luyện mạng.
Như chúng ta đã biết sự có nhiều yếu tố ảnh hưởng tới quá trình huấn luyện mạng như là: sự đa dạng của đầu vào: kích thước , phong cách…
Một điều cần thiết là chuẩn bị trình tự của các ảnh kí tự đầu vào trong một file ảnh đơn giản (*.bmp [bitmap] mở rộng), tương ứng với các kí tự trong file văn bản (*.cts [character trainer set] mở rộng) và lưư trữ hai file này trong cùng một thư mục (cả hai file này cùng tên nhưng khác phần mở rộng). Ứng dụng sẽ cung cấp cho người dùng một hộp thoại lựa chọn đường dẫn tới vị trí của file văn bản *.cts và sẽ đưa file ảnh tương ứng với chính nó.
Trong đồ án này một số tham số được lựa chọn sau: Tốc độ học = 150.
Hệ số góc Sigmoid= 0.014. Trọng số kết nối cơ sở= 30.
Số lần lại 300-600 tùy độ phức tạp của từng loại font. Trung bình ngưỡng của lỗi = 0.0002.
Mẫu dùng trong quá trình thực nghiệm huấn luyện:
Hình3.2: Ảnh đầu dùng để huấn luyện Đầu ra mong muốn:
Hình 3.3: File là đầu ra mong muốn