1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo đồ án môn học máy học (MACHINE LEARNING) đề tài PHÂN LOẠI CHỮ VIẾT TAY TIẾNG VIỆT có dấu

24 1,2K 7

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 1,85 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

NỘI DUNG BÁO CÁOVÀ TRÍCH XUẤT ĐẶC TRƯNG TRAINING VÀ ĐÁNH GIÁ CÁC MODEL ỨNG DỤNG VÀ HƯỚNG CẢI THIỆN 02 CÁC NGHIÊN CỨU TRƯỚC... GIỚI THIỆU ĐỀ TÀI - Bài toán thuộc lớp bài toán phân loại,

Trang 1

BÁO CÁO ĐỒ ÁN MÔN HỌC: MÁY HỌC (MACHINE LEARNING)

ĐỀ TÀI: PHÂN LOẠI CHỮ VIẾT TAY TIẾNG VIỆT CÓ DẤU

Lớp: CS114.L22.KHCL

CS114.L21.KHCL

Sinh viên thực hiện: Đỗ Trọng Khánh – 19521676

Võ Phạm Duy Đức – 19521383 Trịnh Công Danh – 19521326

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH

ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Giảng viên hướng dẫn: Lê Đình Duy

Phạm Nguyễn Trường An

Trang 2

NỘI DUNG BÁO CÁO

VÀ TRÍCH XUẤT ĐẶC TRƯNG

TRAINING VÀ ĐÁNH GIÁ CÁC MODEL

ỨNG DỤNG VÀ HƯỚNG CẢI THIỆN

02 CÁC NGHIÊN

CỨU TRƯỚC

Trang 3

1 GIỚI THIỆU ĐỀ

TÀI

- Bài toán thuộc lớp bài toán phân loại, có tổng cộng 89 lớp đại diện cho 89 chữ cái tiếng Việt viết thường bao gồm cả các dấu phụ (sắc, huyền, hỏi, ngã, nặng)

- Đầu vào của bài toán là một tấm ảnh chứa một chữ cái tiếng Việt viết thường

- Đầu ra là kết quả dự đoán chữ cái tương ứng với tấm ảnh đó

Phân loại chữ cái viết tay là đề tài nghiên cứu khá

phổ biến Nhưng chữ cái Tiếng Việt hiện nay vẫn

chưa được nghiên cứu nhiều Đó là lí do nhóm

quyết định thực hiện đề tài này

Trang 4

2 CÁC NGHIÊN CỨU

TRƯỚC Nghiên cứu của các giảng viên trường đại học Duy Tân

1 Mô tả bộ dữ liệu

- Bộ dữ liệu chuẩn MNIST: Bộ dữ liệu MNIST bao gồm

60.000 mẫu huấn luyện và 10.000 mẫu khác để nhận

dạng, mỗi mẫu là một ảnh kích thước 28 x 28

- Bộ dữ liệu chữ viết tay tiếng Việt: Bộ dữ liệu chữ viết tay

tiếng Việt (VietData) bao gồm 89 lớp chữ cái in hoa, mỗi

lớp chọn ra 200 mẫu, như vậy bộ dữ liệu VietData tổng

cộng 17.800 mẫu

2 Phương pháp nghiên cứu

- Tác giả xây dựng mô hình nhân dạng chữ viết tay rời rạc dựa trên phương pháp phân lớp SVM - Support Vector Machines Công việc được thực hiện dựa trên 2 bước:

+ Bước 1: Xây dựng mô hình huấn luyện+ Bước 2: Phân lớp nhận dạng

Trang 5

3 Kết quả thực nghiệm

- Trên b d li u MNIST:ộ ữ ệ

+ Mô hình SVM đ c s d ng v i hàm nhân RBF ượ ử ụ ớ

và các tham s C = 10 (tham s hàm ph t), Cache = ố ố ạ

1000 (kích th c vùng nh đ l u tr các vect t a).ướ ớ ể ư ữ ơ ự

- Trên b d li u ch vi t tay ti ng Vi t:ộ ữ ệ ữ ế ế ệ

+ Vi c th c nghi m trên d li u ch vi t tay ti ng Vi t ệ ự ệ ữ ệ ữ ế ế ệ

đ c ti n hành theo ph ng th c th m đ nh chéo (Cross-ượ ế ươ ứ ẩ ịValidation)

4 Nhận xét

- SVM là m t ph ng pháp h c máy tiên ti n có c s toán h c ch t ch và đ t đ chính xác phân l p cao ộ ươ ọ ế ơ ở ọ ặ ẽ ạ ộ ớ

- H n ch khác c a SVM là hu n luy n đòi h i không gian nh l n ạ ế ủ ấ ệ ỏ ớ ớ

- B n ch t c a ph ng pháp SVM là phân l p nh phân nên vi c m r ng kh năng c a SVM đ gi i quy t các ả ấ ủ ươ ớ ị ệ ở ộ ả ủ ể ả ế

bài toán phân lo i nhi u l p là v n đ khó và c n r t nhi u nghiên c u.ạ ề ớ ấ ề ầ ấ ề ứ

2 CÁC NGHIÊN CỨU

TRƯỚC

Trang 6

3 MÔ TẢ BỘ DỮ

LIỆU

- Dữ liệu được thu thập từ hơn 30 người tình nguyện Nhóm sẽ góp chung dữ liệu với nhóm bạn

Đặng Văn Minh để làm Trainning set và Validation set Sau đó sẽ thu thập thêm dữ liệu để làm

tập Test set dành riêng cho nhóm để đánh giá độ chính xác của mô hình.

- Nhóm sẽ chuẩn bị những mẫu giấy A4 và sẽ nhờ người viết tay những con chữ vào các ô giấy

Mẫu dữ liệu Mẫu dữ liệu đã được viết

Trang 7

3 MÔ TẢ BỘ DỮ

LIỆU

Các bước thực hiện

B c 1: ướ S d ng ử ụ cv2 edge detection đ c t g n nh ng kho ng tr ng d th a đ thu n ti n trong vi c ể ắ ọ ữ ả ắ ư ừ ể ậ ệ ệ

l c các ô ch ọ ữ

Trang 8

3 MÔ TẢ BỘ DỮ LIỆU

Bước 2: Lọc từng ô chữ sau khi đã được cắt gọn.

Trang 9

3 MÔ TẢ BỘ DỮ LIỆU

Bước 3: Sau khi đã có được vị trí của các hàng và vị trí của các từng ô trong mỗi hàng Nhóm tiến

hành duyệt từng ô chữ và lưu vào drive.

Trang 11

3 MÔ TẢ BỘ DỮ LIỆU

Test set v i ớ 3.512 m u

đ c thu th p riêng bi t ượ ậ ệ

v i hai t p trên ớ ậ

- Sau khi phân loại và gán nhãn cho dữ liệu, có tổng cộng 29.211 mẫu với 89 class, trung bình mỗi

class sẽ có khoảng 328 tấm ảnh.

- Nhóm chia dữ liệu thu thập được thành 3 tập:

Training set với 20.740

mẫu, các mẫu từ training set

và validation set được thu

thập từ nhiều người viết

khác nhau.

Validation set với 5.229 mẫu,

không được dùng để huấn

luyện mô hình mà dùng để đánh giá mô hình sau khi train.

Trang 12

4 XỬ LÍ DỮ LIỆU VÀ TRÍCH XUẤT

ĐẶC TRƯNG

 - Các nh trong t p train và t p validation đ u đ c chuy n thành nh nh phân (tr ng đen) và x lý nhi u.ả ậ ậ ề ượ ể ả ị ắ ử ễ

- C t b t các kho ng tr ng d th a xung quanh ch và th ng kê đ c min c a width và height là ắ ớ ả ắ ư ừ ữ ố ượ ủ (4, 15).

 - Ti p theo ti n hành th resize v kích th c ế ế ử ề ướ (4, 15) m t vài hình, nh n th y hình không còn đ c rõ Do đó nhóm quy t ộ ậ ấ ượ ế

đ nh xoá các hình có ị width < 14 và height = 15.

Tiền Xử lý dữ liệu

- Sau đó resize v kích th c 14x16 đ tránh ề ướ ể

m t s ch nh y, h không đ c rõ và b h ộ ố ữ ư ượ ị ư

Trang 13

- Hình ảnh được chia thành các ô nhỏ nối tiếp nhau,

mỗi ô có kích thước 2 x 2 pixel Sẽ có 4 giá trị hướng

và 4 giá trị độ lớn ứng với mỗi ô

- Mỗi ô vuông trong ảnh có kích thước 2x2 pixel và mỗi ô sẽ có 4 giá trị hướng và 4 giá trị độ lớn như sau:

Trang 14

- Tiếp theo, thực hiện vote giá trị độ lớn của mỗi pixel có khoảng hướng có cùng vị trí tọa độ vào 1

trong 9 bin sau khi xác định được hướng của pixel thuộc pin tương ứng.

Công thức linear interpolation

Giá trị phương gradient bằng x tương ứng với độ lớn gradient y có cùng vị trí tọa độ (x thuộc [ , ]) Khi đó:

Trang 15

- Chuẩn hóa vector histogram theo block gồm 4 ô, mỗi ô 2 x 2 pixel.

- Sau đó dịch block đó sang 1 ô và ta sẽ thực hiện chuẩn hóa cho block đó Đầu vào là một ảnh có kích thước 14x16, áp dụng thuật toán tính HOG với kích thước cells là 2x2 chúng ta sẽ thu được một lưới ô vuông có kích thước 14/2 = 7 ô theo chiều rộng và 16/2 = 8 ô theo chiều dài Sau khi khối block có kích thước 2x2 trải qua 6 bước theo chiều rộng và 7 bước theo chiều và ghép nối tiếp các vector có

36 phần tử lại với nhau ta sẽ có một vector có 36 x 6 x 7 = 1512

phần tử Đây là vector HOG đại diện cho toàn bộ hình ảnh

4 XỬ LÍ DỮ LIỆU VÀ TRÍCH XUẤT

ĐẶC TRƯNG

Trang 16

5 TRAINING VÀ ĐÁNH GIÁ CÁC

MODEL

- V i bài toán phân lo i ch vi t tay ti ng vi t, nhóm em s dùng các model sau đ hu n luy n: ớ ạ ữ ế ế ệ ẽ ể ấ ệ

+  Logistic Regression

+  Support vector machine (SVM)

+  Multi layer Perceptron (MLPClassifier)

- Đ đánh giá k t qu , chúng em s s d ng cách tính accuracy, accuracy càng cao thì mô hình càng t t ể ế ả ẽ ử ụ ố

1 Th c nghi m trên Logistic Regression ự ệ

- Thời gian train: 2m 23s

- Thời gian test (tập validation và tập test): 39s

Trang 18

5 TRAINING VÀ ĐÁNH GIÁ CÁC

MODEL

Dự đoán class ‘ẫ’ bằng model Logistic Regression

Dự đoán class ‘ẩ’ bằng model Logistic Regression

Dự đoán class ‘ỗ’ bằng model Logistic Regression

Dự đoán class ‘ỵ’ bằng model Logistic Regression

Trang 19

5 TRAINING VÀ ĐÁNH GIÁ CÁC

MODEL

2 Th c nghi m trên ự ệ Support vector machine (SVM)

- Thời gian train: 18m 12s

- Thời gian test (tập validation và tập test): 8m 16s

Trang 20

5 TRAINING VÀ ĐÁNH GIÁ CÁC

MODEL

- Nhận xét:

Các mẫu dữ liệu mà model dự đoán sai (dựa trên điểm f1-score): đ (36%)

Ảnh minh họa cho các trường hợp class bị dự đoán sai:

Dự đoán class ‘đ’ bằng model Support vector machine (SVM)

3 Th c nghi m trên ự ệ Multi layer Perceptron (MLPClassifier)

- Thời gian train: 8m 41s

- Thời gian test (tập validation và tập test): 45s

Trang 21

5 TRAINING VÀ ĐÁNH GIÁ CÁC

MODEL

- Đánh giá k t quế ả

+ Kết quả trên tập validation:

Trang 22

5 TRAINING VÀ ĐÁNH GIÁ CÁC

MODEL

Dự đoán class ‘ỗ’ bằng model MLP Dự đoán class ‘ỵ’ bằng model MLP

* Nh n xét chung cho các model ậ :

- Các mô hình đ u cho k t qu t t (đ u trên 60%), đi m accuracy cao nh t đ t đ n 71%.ề ế ả ố ề ể ấ ạ ế

- Mô hình MLP - Classifier cho k t qu t t nh t trên c 2 t p validation và test.ế ả ố ấ ả ậ

- Class ‘ ’ b d đoán sang class ‘y’ và ‘ ’ khá nhi u.ỵ ị ự ỷ ề

Trang 23

6 HƯỚNG CẢI THIỆN VÀ ỨNG

DỤNG

- Ứng dụng: ứng dụng thực tế của bài toán nhận dạng chữ viết tay tiếng Việt là

chấm bài thi trắc nghiệm.

- Đối với bài toán thực tế dạng này, bài toán ta sẽ được chia thành 2 bài toán

nhỏ hơn:

+ Bài toán xác định (Detection).

+ Bài toán nhận dạng (Classification).

- Các hướng cải thiện bài toán:

+ Accuracy các model nhóm em chọn cho kết quả chung là khá cao nhưng có nhiều class vẫn dự

đoán sai, nên phải học và tìm hiểu thêm nhiều model tốt hơn nữa.

+ Tìm hiểu thêm các phương pháp rút trích đặc trưng khác ngoài rút trích đặc trưng HOG.

+ Cải thiện cách thu thập dữ liệu và tiền xử lý ảnh vì có nhiều ảnh bị nhiễu khá nhiều.

+ Tăng thêm kích thước dữ liệu cho bài toán.

Tờ phiếu trắc nhiệm thông thường

Trang 24

XIN CẢM ƠN!

Ngày đăng: 18/08/2021, 18:24

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w