Quá trình huấn luyện và kiểm tra mơ hình

Một phần của tài liệu Xây dựng mô hình nhận dạng chữ viết tay trong các biểu mẫu có bố cục cố định (Trang 63 - 67)

3 Các công trình liên quan

4.3Quá trình huấn luyện và kiểm tra mơ hình

Trong phần này, chúng tơi tóm tắt kiến trúc và luồng dữ liệu trong giai đoạn huấn luyện và kiểm tra.

4.3.1 Huấn luyện

Trong quá trình huấn luyện, hệ thống sẽ lần lượt nhận vào từng cặp gồm hình và nhãn tương ứng của nó (Hình 4.11).

Mục đích của giai đoạn huấn luyện là tối ưu hóa các tham số của mơ hình bằng hàm mất mát thơng qua dữ liệu hình ảnh và nhãn của chúng đã được cung cấp. Sau đó, bộ tham số này được sử dụng để phục vụ cho quá trình kiểm tra trên dữ liệu mới.

Hình 4.11: Tổng quan q trình huấn luyện của mơ hình

4.3.2 Kiểm tra

Khơng giống với giai đoạn huấn luyện mơ hình, nhãn của dữ liệu sẽ khơng được cung cấp trong suốt quá trình kiểm tra. Tại giai đoạn này, tham số của mơ hình đã được học qua quá trình huấn luyện được sử dụng để dự đoán đầu ra với đầu vào là một ảnh chứa dữ liệu chữ (Hình 4.12).

Hướng tiếp cận 51

4.4 Hậu xử lý

Hậu xử lý (post-processing) là bước được thực hiện sau khi đã nhận được kết quả dự đốn từ mơ hình. Từ kết quả dự đốn đã có, chúng ta sẽ tiến hành xử lý trực tiếp trên đó để đạt được kết quả mong muốn (Hình 4.13).

Cụ thể đối với bài toán đang xử lý, sau khi đã nhận được kết quả dự đốn của mơ hình nhận dạng chữ viết tay tiếng Việt, chúng tơi nhận thấy rằng nhiều trường dữ liệu không đồng nhất với nhau về mặt định dạng. Ví dụ như dư khoảng cách hoặc dấu thanh đặt sai vị trí trong khi ngữ nghĩa của chúng là khơng khác nhau. Nhận thấy những điều đó, chúng tơi tiến hành chuẩn hóa các kết quả dự đốn được về một số quy tắc nhất định. Ví dụ đối với số điện thoại thì chúng tơi chỉ giữ lại các ký tự là số, khơng có khoảng cách giữa các số. Đối với một chuỗi bình thường, chúng tơi loại bỏ các kí tự thừa ở giữa các kí tự trong chuỗi. Một số trường hợp nhập nhằng cách đặt dấu thanh theo kiểu cũ và mới, ví dụ như “ịa” hay “ồ” thì chúng tơi cũng chuẩn hóa về cùng một cách.

Hình 4.13: Một số trường hợp trước và sau khi thực hiện hậu xử lý

Đối với các trường địa chỉ, về mặt lý thuyết chúng ta có thể chỉnh sửa kết quả dự đốn dựa vào kho dữ liệu địa chỉ chuẩn đã có. Tuy nhiên, với đặc thù của bài tốn đang xử lý thì hiện tại đang khó có thể giải quyết được vấn đề này. Bởi vì ở các trường địa chỉ, người viết viết khá tùy hứng, thay vì tại đó là một địa chỉ cụ thể thì người viết có thể viết là “Tại tòa nhà ABC” hoặc gần một vị địa điểm nào đó hoặc một nội dung bất kì nhưng những thơng tin này trong cơ sở dữ liệu thì khơng sẵn có. Từ đó, chúng tơi chưa có cơ sở chính xác để xử lý tại trường dữ liệu này.

CHƯƠNG 5 THÍ NGHIỆM 5.1 Phương pháp đánh giá

Để đánh giá độ chính xác của hệ thống thì hai phương pháp tỉ lệ lỗi từ (Word Error Rate - WER) vàtỉ lệ lỗi ký tự(Character Error Rate - CER) được sử dụng phổ biến nhất, cả hai phương pháp này đều dựa trên việc tính khoảng cách Levenshtein.

Khoảng cách này có nhiệm vụ tính số lượng thao tác tối thiểu cần thiết để biến đổi chuỗi này thành chuỗi kia, việc tính khoảng cách này được thực hiện một cách hiệu quả thông qua giải thuật quy hoạch động. Một số thao tác có thể có là:

• Thêm (Insertion): Thêm một kí tự vào chuỗi.

• Xóa (Deletion): Xóa một kí tự của chuỗi.

• Thay thế (Substitution): Thay thế một kí tự này bằng một kí tự khác.

Bởi vì số lượng phần tử có thể thêm là khơng giới hạn nên độ đo có thể lớn hơn 1.0. Cơng thức của việc tính khoảng cách được định nghĩa như sau:

ED(pred, label) =nsubstitution+ninsertion+ndeletion (5.1) Trong đó, nsubstitution, ninsertion, ndeletion lần lượt là số lượng từ cần được thay thế, số lượng từ cần được thêm vào, và số lượng từ cần được xóa đi để biến kết quả dự đốn thành chuỗi nhãn (label). Đơi khi, khoảng cách đượcnormalized bằng số lượng từ trong chuỗi nhãn (nitems).

N ED(pred, label) = ED(pred, label)

Thí nghiệm 53

5.1.1 Tỉ lệ lỗi từ

Tỉ lệ lỗi từ (Word Error Rate - WER) là một phương pháp đánh giá hiệu suất phổ biến cho những tác vụ như nhận diện giọng nói, nhận diện chữ viết hay dịch máy. Khó khăn chung cho việc đo lường và đánh giá đó là độ dài của chuỗi dự đốn được có thể khác so với chiều dài nhãn của nó.

Word Error Rate được định nghĩa như sau:

W ER= 1

nwords × X

(pred,label)∈P

ED(pred, label) (5.3)

Trong đó, nwords là số lượng từ trong tập P của toàn bộ tập dữ liệu. Ở mức độ dịng, các từ có thể được phân biệt với nhau bằng một dấu cách. Cần lưu ý rằngWER (adsbygoogle = window.adsbygoogle || []).push({});

có thể lớn hơn 1.0 và khi đánh giá mơ hình có độ đo WER càng thấp thì mơ hình sẽ càng tốt.

Ví dụ: Chúng ta có P = (“ngun”, “nguyễn”), (“”, “Tháng”), (“thứ”, “thứ”) với

Pi= (predict, target). Thì WER sẽ là:

W ER= 1

3ì(1 + 1 + 0) = 2

3 (5.4)

Gii thớch:

ã nwords là 3,“nguyễn”, “Tháng”, “thứ”.

• Có 1sự thay thế cho cặp đầu tiên, thêm 1 từ cho cặp thứ hai, và khơng có thao tác nào cho cặp cuối cùng.

5.1.2 Tỉ lệ lỗi ký tự

Cũng giống như WER, tỉ lệ lỗi ký tự (Character Error Rate - CER) cũng là một

phương pháp đánh giá hiệu suất phổ biến cho những tác vụ có đầu ra là một chuỗi văn bản. CER được tính dựa trên số lượng tối thiểu các phép tính để chuyển đổi từ chuỗi dự đoán được sang chuỗi nhãn. Như vậy cơng thức tính CER tiêu chuẩn cũng sẽ tương tự như WER:

CER= 1

ncharacters × X (pred,label)∈P

ED(pred, label) (5.5)

Trong đó,ncharacters là số lượng ký tự trong tập P của toàn bộ tập dữ liệu. Lưu ý rằng ký tự ở đây có thể bao gồm cả khoảng trắng (space), dấu câu hay ký tự đặc biệt khác.

Khi kết quả dự đốn của một văn bản có CER tốt, điều này khơng đồng nghĩa với việcWER cũng sẽ tốt theo. Một ví dụ đơn giản cho trường hợp này đó là giả sử chúng ta có một chuỗi nguồn là “Have beautifulll bay” và chuỗi nhãn là “Have a beautiful day!”. Như vậy ở chuỗi nguồn ta cần xóa đi hai ký tự “l”. Đồng thời thêm vào một ký

Thí nghiệm 54

tự “!” ở cuối câu và thay thế một ký tự “b” thành “d” thì khi đó ta đã biến đổi được từ chuỗi nguồn sang chuỗi nhãn rồi. Điều này chứng tỏ rằng nó sai khơng quá nhiều so với đánh giá ở mức độ từ. Cũng tương tự như độ đoWER, mơ hình sẽ càng tốt khi

có kết quả độ đoCER càng thấp.

Ví dụ: Chúng ta có P = (“nguên”, “nguyễn”), (“Thánng”, “Tháng”), (“thứ”, “thứ”)

với Pi = (predict, target). Thì CER sẽ là:

CER= 1

6 + 5 + 3 ì(2 + 1 + 0) = 3 14

Gii thớch:

ã 6, 5, 3 trong 1

6+5+3 lần lượt là chiều dài của “nguyễn”, “Thánng”, “thứ”.

• 2, 1, 0 lần lượt là khoảng cách Levenshtein của các cặp (“ngyên”, “nguyễn”), (“”, “Tháng”), (“thứ”, “thứ”).

• Chúng ta cần thêm một chữ ‘y’ và thay thế ‘ê’ bằng ‘ễ’ để chuyển từ “nguên” thành “nguyễn”.

• Chúng ta cần xóa chữ ‘n’ để chuyển từ “Thánng” thành “Tháng”. (adsbygoogle = window.adsbygoogle || []).push({});

• Khơng cần bất kì sự chuyển đổi nào trong trường hợp cuối cùng.

5.2 Tập dữ liệu

Một phần của tài liệu Xây dựng mô hình nhận dạng chữ viết tay trong các biểu mẫu có bố cục cố định (Trang 63 - 67)