Thuật toán ISODATA

Một phần của tài liệu Luận văn thạc sĩ công nghệ thông tin Nhận diện chữ viết tay bằng mô hình markov ẩn (Trang 71)

Thuật toán ISODATA tƣơng tự thuật toán k-means, nhƣng kết hợp thêm một số thủ thuật heuristic để kiểm soát hoạt động của nó. Bắt đầu là số tâm nhóm k‟ đƣợc đặc tả. k‟ không cần giốn nhƣ số nhóm mong muốn k và có thể đƣợc thiết lập lại bằng cách lấy mẫu dữ liệu huấn luyện. Các bƣớc của thuật toán nhƣ sau:

1. Đặc tả các tham số:

k = số nhóm cần

N = tham số cho số mẫu trong một nhóm S = tham số độ lệch chuẩn

C = tham số gộp (lumping)

L = số các cặp cực đại của nhóm có thể gộp lại l = số lần lặp cực đại

2. Phân bố tất cả mẫu huấn luyện trong số k‟ nhóm hiện diện theo cùng quy luật nhƣ bƣớc 2 của thuật toán k-means.

3. Nếu một nhóm có ít hơn Nthành viên thì loại nó và giảm k‟ đi một. 4. Cập nhật mỗi tâm nhóm theo trung bình mẫu của các thành viên của nó.

5. Với mỗi nhóm Ci, tính khoảng cách trung bình i của các thành viên từ trung bình nhóm.

6. Tính khoảng cách trung bình toàn bộ (overall average distance) với mọi mẫu huấn luyện từ các trung bình nhóm tƣơng ứng của chúng.

 Nếu đây là lần lặp cuối cùng, đặt c = 0 và đi đến bƣớc 11.  Nếu k‟ k/ 2 đến bƣớc 8

 Ngƣợc lại tiếp tục

8. Tìm một vector lệch chuẩn = ( , ,…, )x‟cho mỗi nhóm sử dụng quan hệ:

= i=1,2,…,k (61)

Trong đó n là số chiều của mẫu, xik là thành phần thứ I của mẫu thứ l trong nhóm Cj, yij là thành phần thứ i của tâm nhóm Cj và Nj là số các mẫu trong nhóm Cj.

Mỗi thành phần của biểu diễn độ lệch chuẩn của các mẫu trong nhóm Ci theo trục tọa độ chính.

9. Tìm thành phần cực đại của cho mỗi nhóm.

10. Với nhóm Cj bất kỳ, > j, nếu ( i> và Ni >2( N+1)) hoặc k‟ k/ 2 thì chia Cj thành 2 nhóm Cj‟ và Cj-, xóa Cj và tăng k thêm 1.

11. Tính các khoảng cách Dij theo từng cặp giữa tất cả các tâm nhóm. 12. Sắp xếp theo thứ tự tăng các khoảng cách L nhỏ nhất mà nhỏ hơn c

13. Các khoảng cách Dij có thứ tự nhỏ nhất đƣợc xem xét một cách liên tục để kết các nhóm lại với nhau. Nếu cả Ci lẫn Cj đƣợc thu gọn theo một khoảng cách nhỏ nhất trong lần lặp này, thì một tâm nhóm mới y*

đƣợc tính toán theo:

y*= [ + ] (62)

Sau đó xóa các nhóm Ci và Cj và giảm k‟. Lƣu ý rằng chỉ xem xét kết theo từng cặp, theo kinh nghiệm lumping phức tạp hơn có thể cho những kết quả không thỏa mãn và mỗi nhóm chỉ có thể đƣợc kết một lần trong mỗi lần lặp.

14. Nếu đây là lần lặp cuối cùng thuật toán kết thúc. Ngƣợc lại một lần lặp mới có thể bắt đầu tại bƣớc thứ 1 nếu các tham số bất kỳ cần thay đổi tại bƣớc thứ 2 nếu chúng vẫn nhƣ nhau. Một vòng lặp mới đƣợc đếm khi nào thuật toán trở về bƣớc 1 hoặc 2.

Thuật toán k-means và ISODATA cực tiểu hóa sự khác biệt của dữ liệu mẫu trong mỗi nhóm. Tuy nhiên, khi ma trận hợp biến của mỗi nhóm không phải là ma trận đồng nhất, những sai sót không mong muốn có thể xuất hiện. Do đó, mục đích chính của việc sử dụng các mô hình kết nhóm phức tạp là để giảm bớt số tối ƣu cục bộ trong hàm tiêu chuẩn với hy vọng rằng điều này sẽ cho phép thuật toán tìm một tối ƣu toàn cục. Trong thực tế, phân nhóm tập hợp dữ liệu có thể đƣợc thực hiện theo một số cách đánh nhãn

ban đầu khác nhau và phân nhóm đƣa đến những giá trị tốt nhất của hàm tiêu chuẩn sau đó đƣợc chọn làm kết quả.

Kittler và Pairman trình bày một luật gán lại nhiều điểm tối ƣu sử dụng mô hình mật đô phân số Gauss của các nhóm. Mô hình Gauss cho phép biểu diễn các nhóm với các ma trận hợp biến không phải ma trận đồng nhất, và số điểm trong nhóm cũng có thể đƣợc kết hợp. Thêm vào đó, nếu dữ liệu đƣợc biết lấy từ một phân bố hỗn hợp, mô hình Gauss cho phép các tham số hỗn hợp đƣợc khôi phục một cách xấp xỉ.

Quá trình mà phƣơng pháp Kittler – Pairman dựa trên là cực tiểu hóa phần chồng lên nhau của các hàm mật độ điều kiện p[x/Ci], tính trọng bằng mối liên hệ giữa kích thƣớc nhóm tƣơng ứng của chúng: Ni/N. Nhƣ vậy hàm tiêu chuẩn cực đại hóa sẽ đƣợc định nghĩa nhƣ sau:

J = [ ]^(1/N), xj Ci (63)

Định nghĩa mô hình nhóm nhƣ là Gauss với vector trung bình N- chiều và ma trận hợp biến nxn:

p[x|Ci] = [(2 )N | ]^(-1/2) exp[- (x - )^ ] (64)

Bằng cách lấy logarithm (60) và tiếp tục đơn giản, một tiêu chuẩn sau khi đƣợc sửa đổi sẽ cực tiểu hóa có dạng nhƣ sau:

J = n + [ log| | - 2 log ] (65)

Kittler đƣa ra một luật quyết định đƣợc rút ra để cực đại hóa biến đổi J bằng cách xem xét việc di chuyển tất cả p điểm đồng nhất x từ Cj đến nhóm Cj-.

Gán xi Ci cho nhóm Cj chỉ khi:

(xi, Cp) = log| | + log[1 + (xi, Cp)] - 2 log – (n+2) log

(64)

và (xi, Cp) là khoảng cách Mahalanobis của nhiều điểm xi từ trung bình nhóm: (xi, Cp) = (xi - )^ (66)

Luật quyết định này đƣợc rút ra từ sự khác biệt trong tiêu chuẩn phân nhóm tạo nên bằng cách di chuyển nhiều điểm từ nhóm này sang nhóm khác, thay vì luật tƣơng tự điểm nhóm của Symons. hai phƣơng pháp này đƣợc so sánh trên dữ liệu tổng hợp trong và luật Post Transfer Advantage chứng tỏ có những tính chất tốt hơn – khởi tạo của hàm tiêu chuẩn không cần gần với tối ƣu toàn cục để đảm bảo hội tụ. Luật gán lại, có thể

đƣợc sử dụng với kiểu k-means hoặc ISODATA của thuật toán, mô hình các nhóm nhƣ những mật độ Gauss hợp biến đầy đủ (full-covariance) và xem xét nhiều điểm để giảm bớt số tối ƣu cục bộ trong hàm tiêu chuẩn với mục đích tìm tối ƣu toàn cục dễ dàng hơn. Luật chỉ tối ƣu với giả thuyết rằng các mô hình nhóm đƣợc cập nhật sau khi mỗi (nhiều) điểm đã đƣợc di chuyển. Chuyển p điểm đồng nhất xj từ nhóm Ci sang nhóm Cj tạo nên những thay đổi sau đối với các tham số nhóm:

i‟ = i + ( i- i) (67) j‟ = j - ( j- j) (68)

Vì mô hình Gauss của mỗi nhóm cần một ƣớc lƣợng của ma trận hợp biến, nên việc quan trọng là gán lại các điểm không xảy ra đối với phần mở rộng mà số điểm trong nhóm nằm dƣới số chiều. Nếu rơi vào trƣờng hợp đó, ma trận sẽ duy nhất và nó sẽ không thể tìm số nghịch đảo của nó để tính khoảng cách Mahalanobis của một điểm từ trung bình nhóm.

Young tổng kết một số điều kiện khác đã đƣợc rút ra liên quan đến số điểm cực tiểu trong một nhóm theo số chiều. Ông xem xét khoảng cách mahalanobis đƣợc tính với ma trận hợp biến đã đƣợc ƣớc lƣợng với một số mẫu giới hạn nhƣ một biến ngẫu nhiên. Bằng cách xác định phân bố của biến này, một quan hệ đƣợc rút ra giữa số mẫu trong nhóm và số chiều cao thu đƣợc một khoảng tin cậy cho trƣớc. Về số điểm cực đại trong nhóm, Cohn mô tả những giả lập theo kinh nghiệm nhằm ra những đề nghị thực tế trên lƣợng dữ liệu huấn luyện cần để đạt đƣợc một quá trình tổng quát hóa tốt từ codebook VQ.

Một ví dụ của nghiên cứu hiện nay trong việc sử dụng các mô hình Gauss để phân nhóm là Celeux và Govaert. Họ đề nghị tham số hóa ma trận hợp biến của nhóm bằng một phân tích eigenvalue:   T

i i iD A

 trong đó định nghĩa thể tích của nhóm, là ma trận trực giao xác định hƣớng của nó và là ma trận đƣờng chéo với định thức 1, xác định hình dạng của nó. Bằng cách cố định những tham số này, các tác giả rút ra một số tiêu chuẩn phân nhóm khác.

3.5.3 Kết luận

Tổng kết chƣơng này giới thiệu lý thuyết cơ sở về HMM cũng nhƣ lƣợng hóa vector và phân nhóm.

Chủ đề quan trọng nhất là các mô hình Markov ẩn, vì những mô hình thống kê nằm trong phần chủ yếu của phƣơng pháp đã đƣợc phát triển để biểu diễn các ảnh văn bản. Những mô hình khác đã đƣợc trình bày, và những thuật toán cụ thể để huấn luyện, cho điểm đã đƣợc mô tả. Một số phần mở rộng của những thuật toán đã đƣợc đƣa ra liên quan đến việc thực hiện một bộ phân lớp dựa trên HMM.

Phần định lƣợng vector, đã đƣợc trình bày cùng với phân nhóm: mô hình các vector đặc trƣng có giá trị liên tục với một HMM rời rạc. Mỗi vector đặc trƣng đƣợc xác định lƣợng với mục gần nhất trong codebook. Codebook đƣợc đƣa ra bằng cách phân nhóm một số vector huấn luyện.

CHƢƠNG IV

ỨNG DỤNG MÔ HÌNH MARKOV ẨN TRONG NHẬN DẠNG CHỮ VIẾT TAY

Một phần của tài liệu Luận văn thạc sĩ công nghệ thông tin Nhận diện chữ viết tay bằng mô hình markov ẩn (Trang 71)