Professional Documents
Culture Documents
Hà Nội 2022
I. HỌC TĂNG CƯỜNG
Học tăng cường là phương pháp học thông qua tương tác với môi trường. Mô hình
của học tăng cường gồm có 3 thành phần chính: tác tử (agent), môi trường (environment)
và giá trị phản hồi (reward). Quá trình học là một quá trình lặp đi lặp lại (iteration) các
hành động (action). Sau khi thực hiện mỗi hành động thì agent nhảy từ vị trí (hay trạng
thái - state) này sang vị trí (trạng thái) khác, và đồng thời nhận được giá trị phản hồi
(reward) từ hành động cũ. Dựa vào các giá trị phản hồi nhận được agent có thể điều chỉnh
luật chọn hành động (policy) của mình trong các bước tiếp theo. Việc điều chỉnh và tối
ưu hóa luật chọn hành động dựa vào các giá trị phản hồi chính là quá trình học tăng
cường. Rõ ràng là quy luật chọn lựa hành động của agent thu được sau quá trình học càng
gần tối ưu nếu quá trình học càng kéo dài và số lượng các tình huống mà agent gặp phải
là càng nhiều.
Ta gọi giá trị “return” là tổng của các giá trị phản hồi tính từ thời điểm hiện
tại cho đến khi agent đạt đến đích, hoặc đến cuối giai đoạn (nếu quá trình học được
chia thành nhiều giai đoạn - episode).
Rt = rt+1 + rt+2+…+rT
Trong đó T là bước cuối cùng trước khi đến đích.
Thực nghiệm cho thấy nếu ta giảm dần mức độ quan trọng của các bước ở
các thời điểm xa với thời điểm hiện tại thì quá trình học sẽ hội tụ nhanh hơn. Điều
đó có nghĩa là ta cần thêm vào hệ số khấu hao γ. Giá trị phản hồi ở thời điểm cách
hiện tại bao nhiêu bước thời gian thì sẽ được nhân với giá trị khấu hao γ bấy nhiêu
lần. Như vậy giá trị “return” sẽ được tính như sau:
Mọi thuật toán của học tăng cường đều dựa trên hàm giá trị. Hàm giá trị
cung cấp giá trị dự đoán mức độ “tốt” của agent ở vị trí hiện tại trong quá trình tìm
đến đích. Hàm này chính là giá trị “return” ước tính tại từng vị trí (hay cặp vị trí -
hành động) ứng với một luật chọn hành động (policy) xác định nào đó. Ta có thể
xác định hàm giá trị theo vị trí hay theo cặp giá trị vị trí - hành động.
Hàm giá trị theo vị trí (state - value function) V ứng với luật chọn hành động
π tại vị trí s được xác định như sau:
Hàm giá trị theo cặp vị trí - hành động (action - state value function) Q được
xác định như sau:
Quá trình học tăng cường là quá trình tìm kiếm policy tối ưu, có nghĩa là quá
trình điều chỉnh giá trị của hàm giá trị về giá trị tối ưu. Quá trình điều chỉnh được
thực hiện bởi việc lặp đi lặp lại một số lượng lớn bước thực hiện các hành động,
Có nghĩa là giá trị các hàm V* và Q* chính là giá trị của các hàm V và Q
ứng với luật chọn hành động tối ưu (cho ra giá trị V(s) hay Q(s, a) lớn nhất tại mỗi
vị trí s) [2].
Các loại thuật toán học tăng cường thông thường gồm có lập trình động
(dynamic programming), Monte-Carlo và phương pháp TD (temporal-difference).
Tuy nhiên các phương pháp lập trình động và Monte-Carlo không hiệu quả do đòi
hỏi bộ nhớ quá lớn, hoặc mô hình phải xác định hay khó hội tụ nên ít khi cho ra kết
quả tối ưu. Phương pháp TD là sự kết hợp của những phương pháp kể trên và cho
phép giải quyết được nhiều bài toán thực tế bởi vì phương pháp này không đòi hỏi
môi trường xác định và có khả năng hội tụ cao. Một biến thể của phương pháp TD
được gọi là Q-learning, là phương pháp học kiểu TD theo hướng off-policy, rất
hiệu quả trong việc giải quyết các bài toán tìm đường.
II. MỘT SỐ NÉT CƠ BẢN VỀ NHẬN DẠNG ẢNH
Nhận dạng ảnh là giai đoạn cuối cùng của các hệ thống xử lý ảnh. Trong lý
thuyết nhận dạng nói chung và nhận dạng ảnh nói riêng có 3 cách tiếp cận khác nhau:
- Nhận dạng dựa vào phân hoạch không gian.
- Nhận dạng cấu trúc.
- Nhận dạng dựa vào kỹ thuật mạng nơ ron.
1. Nhận dạng ảnh
Nhận dạng là quá trình phân loại các đối tượng được biểu diễn theo một mô
hình nào đó và gán cho chúng vào một lớp (gán cho đối tượng một tên gọi) dựa
theo những quy luật và các mẫu chuẩn. Nhận dạng ảnh là một quá trình phân hoạch
ảnh thành các đối tượng ảnh con, chúng được gán vào từng lớp nhãn để được đối
sánh với mẫu và đối sánh theo các quy luật biết trước nào đó. Có hai khái niệm
được nói tới:
+ Không gian biểu diễn đối tượng
Các đối tượng khi quan sát hay thu thập được, thường được biểu diễn bởi tập
các đặc trưng hay đặc tính. Như trong trường hợp xử lý ảnh, ảnh sau khi được tăng
cường để nâng cao chất lượng, phân vùng và trích chọn đặc trưng, sẽ được biểu diễn
bởi các đặc trưng như biên, miền đồng nhất, vv...Người ta thường phân các đặc
trưng này theo các loại như: đặc trưng tô pô, đặc trưng hình học và đặc trưng chức
năng. Việc biểu diễn ảnh theo đặc trưng nào là phụ thuộc vào ứng dụng tiếp theo.
Nguyễn Anh Cường 5/15
Ở đây ta đưa ra một cách hình thức việc biểu diễn các đối tượng. Giả sử đối
tượng ảnh X được biểu diễn bởi n thành phần (n đặc trưng): X = {x1, x2,..., xn},
mỗi xi biểu diễn một đặc tính. Không gian biểu diễn đối tượng thường gọi tắt là
không gian đối tượng X được định nghĩa:
X = {X1, X2,..., Xm}
trong đó mỗi Xi biểu diễn một đối tượng.
Không gian này có thể là vô hạn.
Để tiện xem xét chúng ta chỉ xét tập X là hữu hạn.
+ Không gian diễn dịch
Không gian diễn dịch là tập các tên gọi của đối tượng. Kết thúc quá trình
nhận dạng ta xác định được tên gọi cho các đối tượng trong tập không gian đối
tượng hay nói là đã nhận dạng được đối tượng. Một cách hình thức gọi (là tập tên
đối tượng:
= {w1, w2,...,wk} với wi, i = 1, 2,..., k là tên các đối tượng
Quá trình nhận dạng đối tượng f là một ánh xạ f: X ---> với f là tập các
quy luật để định một phần tử trong X ứng với một phần tử trong . Nếu tập các
quy luật và tập tên các đối tượng là biết trước như trong nhận dạng chữ viết (có 26
lớp từ A đến Z), người ta gọi là nhận dạng có thày (có giám sát). Trường hợp thứ
hai là nhận dạng không có thày (không có giám sát), trong trường hợp này việc
nhận dạng có khó khăn hơn.
2. Mô hình trong quá trình nhận dạng ảnh
+ Mô hình tham số: Sử dụng một véctơ để đặc tả đối tượng, mỗi phần tử
của véctơ mô tả một đặc tính của đối tượng. Thí dụ như trong các đặc trưng chức
năng, người ta sử dụng các hàm cơ sở trực giao để biểu diễn. Và như vậy ảnh sẽ
được biểu diễn bởi một chuỗi các hàm trực giao. Giả sử C là đường bao của ảnh và
C(i,j) là điểm thứ i trên đường bao, i = 1, 2,..., N (đường bao gồm N điểm).
Giả sử tiếp:
x0 = xi
y0 = yi
là toạ độ tâm điểm. Như vậy, moment trung tâm bậc p, q của đường bao là:
pq = (xi-x0)p(yi-y0)q
Véctơ tham số trong trường hợp này chính là các moment ij với i=1, 2,...,p
và j=1, 2,...,q. Còn trong số các đặc trưng hình học, người ta hay sử dụng chu
tuyến, đường bao, diện tích và tỉ lệ T = 4S/p2, với S là diện tích, p là chu tuyến.
+ Mô hình cấu trúc: Sử dụng một bộ kí hiệu kết thúc Vt, một bộ kí hiệu
không kết thúc gọi là Vn. Ngoài ra có dùng một tập các luật sản xuất để mô tả cách
Nguyễn Anh Cường 6/15
xây dựng các đối tượng phù hợp dựa trên các đối tượng đơn giản hơn hoặc đối
tượng nguyên thuỷ (tập Vt). Trong cách tiếp cận này, ta chấp nhận một khẳng định
là: cấu trúc một dạng là kết quả của việc áp dụng luật sản xuất theo theo những
nguyên tắc xác định bắt đầu từ một dạng gốc bắt đầu. Một cách hình thức, ta có thể
coi mô hình này tương đương một văn phạm G = (Vt, Vn, P, S)
với: Vt là bộ ký hiệu kết thúc,
Vn là bộ ký hiệu không kết thúc,
P là luật sản xuất,
S là dạng (ký hiệu bắt đầu).
3. Bản chất của quá trình nhận dạng
Quá trình nhận dạng gồm 3 giai đoạn chính:
- Lựa chọn mô hình biểu diễn đối tượng.
- Lựa chọn luật ra quyết định (phương pháp nhận dạng) và suy diễn quá trình học.
- Học nhận dạng.
Khi mô hình biểu diễn đối tượng đã được xác định, có thể là định lượng (mô
hình tham số) hay định tính (mô hình cấu trúc), quá trình nhận dạng chuyển sang
giai đoạn học. Học là giai đoạn rất quan trọng. Thao tác học nhằm cải thiện, điều
chỉnh việc phân hoạch tập đối tượng thành các lớp. Quá trình này có hai dạng, đó là
học có thầy và học không có thầy. Học có thầy là phương pháp nhận dạng dựa trên
các kiến thức biết trước để thực hiện thành công các thao tác phân biệt và phân
hoạch ảnh. Đặc điểm mấu chốt của kỹ thuật này là sử dụng một thư viện chứa đựng
các mẫu chuẩn có sẵn. Đối tượng ảnh cần nhận dạng được đối sánh với mẫu chuẩn
để xem nó thuộc loại nào. Khi đó công việc chủ yếu là thiết kế một hệ thống để có
thể đối sánh đối tượng ảnh với mẫu chuẩn và ra quyết định gán chúng vào một lớp
nhãn tương ứng.Việc nhận dạng chính là tìm ra quy luật và các thuật toán để có thể
gán đối tượng vào một lớp hay nói một cách khác gán cho đối tượng một tên.
Học không có thầy là kỹ thuật nhận dạng phải tự định ra các lớp khác nhau
và phải xác định các tham số đặc trưng cho từng lớp. Theo phương pháp học này
thì số lớp và các đặc trưng của từng lớp không được biết trước nên công việc đối
sánh ảnh phải tiến hành bằng mọi cách nhằm gộp nhóm có thể và chọn lựa cách
phân tích và phân đoạn tốt nhất và nâng cấp dần để đạt được một phương án xử lý
nhận dạng hiệu quả.
Nhìn chung, dù là mô hình nào và kỹ thuật nhận dạng ra sao, một hệ thống
nhận dạng có thể tóm tắt theo sơ đồ sau:
(Ở đây: π=3.14; tập ảnh X, moment trung tâm m và bán kính gauss σ).
Khi đó, phương pháp Bayes dựa vào xác suất có điều kiện để xây dựng hàm
phân hoạch cho đối tượng: Gọi P(X/Ci) là xác suất để có X xuất hiện tại lớp C i;
P(Ci/X) là xác suất có điều kiện để X thuộc lớp Ci (với X là đối tượng nhận dạng và
Ci là các lớp đối tượng). Công thức tính xác suất có điều kiện của Bayes được viết:
Với ak(i)(x,1) là số điểm ảnh của ký tự ak(i) đếm theo chiều dọc tại vị trí (x,1).
Do ta luôn đưa về một kích thước mxn và phải thực hiện bước tiền xử lý nên
dữ liệu của ký tự chắc chắn có sự sai lệch, đổi lại việc xử lý dữ liệu sẽ đơn giản và
hiệu quả hơn so với các cách lưu trữ khác.
b) Nhận dạng ký tự
Để nhận dạng một ký tự trước hết ta cũng phải thực hiện bước tiền xử lý dữ
liệu của ký tự cần nhận dạng để đưa về một kích thước xác định theo dữ liệu tri
thức mà ta đang lưu trữ (dữ liệu của các ký tự ta đã cho máy tính học). Sau đó, với
mỗi lớp ta có thể tính toán thông qua độ lệch (khoảng cách) của ký tự cần nhận
dạng so với dữ liệu của ký tự mẫu.
+ Với lớp 1, gọi d1k là độ lệch, µ1k là hàm phụ thuộc của dữ liệu ký tự k so
với ký tự cần nhận dạng. Khi đó µ1k được tính theo công thức:
µ1k = 1- d1k
Để xác định độ lệch d ta có thể dựa vào một nhận xét sau: Giả sử ma trận
lưu trữ dữ liệu tri thức có kích thước mxn. Tại các vị trí (x,y) mà ở đó có µ 1ak (x,y)
≥ delta hoặc µ1(x,y) =1, giá trị của dữ liệu mẫu của ký tự k là µ 1ak (x,y), và giá trị
của ký tự cần nhận dạng là µ1(x,y). Khi đó độ lệch giá trị tại vị trí (x,y) là
+ Với lớp 2, µ2k và d2k lần lượt được tính theo công thức:
µ2k =1 - d2k
µ3k =1 - d3k
Như vậy sau khi tính toán toàn bộ µ1k, µ2k, µ3k, ta sẽ tìm được µ1kmax, µ2kmax,
µ3kmax, (có độ lệch bé nhất) lớn hơn một giá trị Beta1, Beta2, Beta3 nào đó (0 ≤ µ 1k,
µ2k, µ3k ≤ 1). Lúc này ta có thể tính hàm phụ thuộc µk của theo công thức
µk = µ1kmax
µk = max{ µ1kixµ2kixµ3ki}
Và cuối cùng ta tính được µkmax lớn hơn hay bằng Beta ( ) thì k chính là ký
tự nhận dạng được, còn nếu µkmax < Beta thì ký tự đó coi như không nhận dạng
được trong dữ liệu mẫu mà ta đã học được.
c) Học tăng cường
Khi dữ liệu mẫu của có thể bổ sung được hoặc nhận dạng sai một ký tự, ta
cũng có thể thực hiện học bổ sung, tăng cường nhằm hiệu chỉnh lại bảng dữ liệu tri
thức. Vấn đề đặt ra là, nếu như một mẫu được nhân bản nhiều lần thì coi như việc
học đó sẽ chú trọng theo mẫu đó là chính. Việc cập nhật lại bảng dữ liệu tri thức
như vậy hệ số sẽ phân bố theo xu hướng những dữ liệu nào là phổ biến hơn là
những dữ liệu ít được cập nhật. Việc tăng cường học đi học lại một vài dữ liệu
quen thuộc sẽ dẫn đến những dữ liệu có sự phổ biến thấp sẽ ảnh hưởng đến kết quả
nhận dạng ít hơn.
Mỗi bộ dữ liệu theo từng cá nhân sẽ cần được học riêng và cho phép nhận
dạng riêng cho cá nhân đó. Khi chuyển đổi dạng dữ liệu là phần chữ viết khác,
thay vì học tăng cường, ta nên lưu sang một CSDL tri thức mới, điều này sẽ tránh
được sự hỗn độn và lai tạp nhiều kiểu dữ liệu tránh được sự nhầm lẫn đáng tiếc.
d) Ví dụ mẫu trong chương trình minh họa.
Bộ mẫu và bộ test lấy từ học viên Lê Anh (vẽ tay) để nhận dạng
[ 1 ] Ngô Hữu Phúc Bộ slide bài giảng Trí tuệ Nhân tạo
[ 2 ] Đào Thanh Tĩnh Bộ slide bài giảng Xử lý ảnh
[ 3 ] Lê Minh Hoàng Giải thuật và lập trình
[ 4 ] Kenet H. Rosen Toán học rời rạc và ứng dụng trong tin học
[ 5 ] Hoàng Kiếm Trí tuệ nhân tạo
[ 6 ] Nguyễn Thanh Thủy Trí tuệ nhân tạo
[ 7 ] http://www.khmt.123.st, Website của K23 CNTT, Học viện Kỹ thuật Quân sự.
[ 8 ] http://www.fit.lqdtu.edu.vn, Website của Khoa CNTT, Học viện Kỹ thuật Quân sự.
[ 9 ] Richard O. Duda, Peter E. Hart, David G. Stork (2001) Pattern classification
(2nd edition), Wiley, New York..
[ 10 ]Dietrich Paulus and Joachim Hornegger (1998) Applied Pattern Recognition
(2nd edition), Vieweg
[ 11 ]J. Schuermann: Pattern Classification: A Unified View of Statistical and
Neural Approaches, Wiley&Sons, 1996
[ 12 ]Sholom Weiss and Casimir Kulikowski (1991) Computer Systems That
Learn, Morgan Kaufmann