Nhƣ đã trình bày ở trên, kết quả phân cụm phụ thuộc nhiều vào lựa chọn các tham số ban đầu. Để điều khiển kết quả phân cụm sao cho không phụ thuộc nhiều vào các tham số ban đầu, đƣa tham số m vào hàm tính mật độ cho các điểm dữ liệu nhƣ sau: n j x x i m j i e P 1 1 2 (2.10)
Nếu x*k là vị trí tâm cụm thứ k, có mật độ là Pk* thì mật độ cho các điểm dữ liệu cịn lại đƣợc tính theo cơng thức:
1 2 * xi xk m k i i P P e P (2.11)
Đƣa ra kết quả phân cụm dựa vào độ phụ thuộc của điểm dữ liệu xi vào tâm cụm thứ k tính theo cơng thức:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 1 2 * xi xk m ik e (2.12)
Khi đó việc lựa chọn giá trị của tham số m sẽ ảnh hƣởng rất lớn tới kết quả
phân cụm. Nhƣ vậy với việc điều chỉnh tham số m cũng có thể thu đƣợc kết quả
phân cụm là tƣơng đối tốt mà không phụ thuộc nhiều vào việc lựa chọn bốn tham số ban đầu.
Hình dƣới đây là một ví dụ về phân cụm trừ mờ trong không gian hai chiều và kết quả là hai nhóm.
Hình 2.1: Hai nhóm dữ liệu của phân cụm trừ mờ
Thuật tốn FSC:
Input: Vùng dữ liệu X, các tham số ra, (hay rb), e, e và tham số m.
Output: Số lƣợng cụm và các tâm cụm. Các bước của thuật tốn:
Bƣớc 0: Tính mật độ ban đầu cho các điểm dữ liệu theo công thức (2.10). Bƣớc 1: Chọn điểm * 1 x có mật độ lớn nhất i n i P P 1 * 1 max làm tâm cụm thứ nhất.
Tính lại mật độ cho các điểm cịn lại theo công thức (2.11). Bƣớc k (k > 1): Đã tìm đƣợc tâm cụm thứ k là *
k
x có mật độ là Pk*. Tìm x* là điểm có mật độ lớn nhất P*.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
- Nếu P* e*Pk*: Chấp nhận x*là tâm cụm thứ (k + 1); Tính lại mật độ cho các điểm cịn lại theo cơng thức (2.11); Và sang bƣớc (k +1).
- Nếu P*e*Pk*: thuật toán dừng, kết quả thu đƣợc k tâm cụm. - Ngƣợc lại: + Nếu * 1 * min k a P P r d : Chấp nhận x*là tâm cụm thứ (k + 1); Tính lại mật độ cho các điểm cịn lại theo cơng thức (2.11); Và sang bƣớc (k +1).
+ Ngƣợc lại: Thiết lập P*0 và lặp lại bƣớc k.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Chƣơng 3.
ỨNG DỤNG PHƢƠNG PHÁP PHÂN CỤM TRỪ MỜ 3.1. Ứng dụng thuật tốn SC cho xây dựng hệ luật
3.1.1 Trích xuất luật với tính tốn xấp xỉ hàm
Để ứng dụng hàm tính tốn xấp xỉ, phân cụm dữ liệu đƣợc thực hiện trong không gian kết hợp đầu vào và đầu ra, nghĩa là mỗi điểm dữ liệu xi là một vector chứa cả giá trị vào và ra. Mỗi tâm cụm tìm đƣợc là một điểm dữ liệu nguyên mẫu minh họa cho hành vi đặc trƣng vào/ ra của hệ thống.
Gọi {x1*,x*2,...,xC*} là tập hợp C tâm cụm tìm đƣợc trong khơng gian M chiều. Đặt N thành phần đầu của chiều dữ liệu tƣơng ứng với các biến đầu vào và M – N thành phần sau tƣơng ứng với các biến đầu ra. Chúng ta phân tích mỗi vetor x*i
thành hai vector thành phần yi* và zi*, trong đó *
i
y chứa N phần tử đầu của x*i
(nghĩa là bằng với tâm cụm trong không gian đầu vào) và *
i
z bao gồm M – N phần tử sau (nghĩa là bằng với tâm cụm trong không gian đầu ra).
Ta coi mỗi tâm cụm x*i là một luật mờ mô tả hành vi hệ thống. Bằng trực quan, mỗi tâm cụm đại diện cho một luật:
Luật i: if {đầu vào gần với y*i} then {đầu ra gần với zi*}
Cho một vector vào y, khả năng thực hiện luật i đƣợc định nghĩa nhƣa sau:
2 * i y y i e Với 2 4 a r
, ra là bán kính cụm. Ta tính vector đầu ra z bằng cơng thức sau:
C i i C i i iz z 1 1 *
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Ta có thể xem mơ hình tính tốn này trong phạm vi của một hệ thống suy luận mờ sử dụng luật mờ if-then truyền thống. Mỗi luật có dạng nhƣa sau:
if {Y1 là Ai1 và Y2 là Ai2…} then {Z1là Bi1 và Z2 là Bi2…}
Trong đó, Yj là biến vào thứ j, Zj là biến ra thứ j; Aij là một hàm thành viên dạng lũy thừa của luật thứ i liên kết với đầu vào thứ j và Bij là hàm thành viên của luật thứ i liên kết với đầu ra thứ j. Với luật thứ i, đƣợc thể hiện bởi tâm cụm *
i x , Aij
đƣợc cho bởi công thức:
2 * ) ( ) ( Yj yij j ij Y e A
và Bij có thể là bất kỳ hàm thành viên đối xứng nào tập trung vào zij*, với y*ij là thành phần thứ j của yi*, zij* là thành phần thứ j của z*i.
Chiến lƣợc tính tốn của ta tƣơng đƣơng với một phƣơng pháp suy luận có sử dụng phép nhân nhƣ toán tử AND, trọng số kết quả của mỗi luật là mức độ hoàn thành của luật, và xác định giá trị đầu ra cuối cùng là trung bình trọng số của tất cả kết quả.
Một số cách tiếp cận để tối ưu hóa các luật:
- Một cách tiếp cận là ứng dụng phƣơng pháp gradient cơ bản để tối ƣu hóa các tham số z*ij và yij*. Cách tiếp cận này đƣa ra bởi Yager và Filev để tối ƣu hóa các luật khởi tạo thu đƣợc từ giải thuật Mountain.
- Một cách tiếp cận khác là cho tham số zij* là một hàm tuyến tính của các biến đầu vào, thay vì một hằng số đơn giản:
ij ij
ij G y h
z*
,
với Gij là một vector hệ số N thành phần và hij là một hằng số vô hƣớng. Các luật if-then trở thành dạng Takagi-Sugeno. Chiu đã đƣa ra cách tiếp cận này để tối ƣu hóa các luật thu đƣợc từ phƣơng pháp phân cụm trừ, chỉ tối ƣu hóa các hệ số trong biểu thức kết quả cho phép một mức độ đáng kể sự tối ƣu hóa mơ hình đƣợc thực hiện mà khơng cần thêm nhiều tính tốn phức tạp.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
- Một cách tiếp cận thứ ba cũng liên quan đến việc sử dụng định dạng luật Takagi-Sugeno, nhƣng nó kết hợp tối ƣu hóa các hàm thành viên tiền đề theo phƣơng pháp Gradient với tối ƣu hóa các biểu thức kết quả bằng đánh giá ít nhất là hàm bậc hai tuyến tính. Đây là ANFIS (Adaptive Network-Based Fuzzy Inference System) phƣơng pháp đƣợc phát triển bởi Jang. Khi hƣớng tiếp cận ANFIS đƣợc sử dụng để tối ƣu hóa các luật tƣơng tự, mơ hình kết quả chính xác hơn là thu đƣợc từ một trong hai hƣớng tiếp cận trên.
Mặc dù số lƣợng các cụm (hoặc các luật) tự động đƣợc xác định theo phƣơng pháp, chúng ta nên lƣu ý rằng ngƣời dùng xác định tham số ra (bán kính ảnh hƣởng của tâm cụm) ảnh hƣởng lớn đến số lƣợng các cụm thu đƣợc. Một bán kính ra lớn thì kết quả thƣờng ít cụm hơn và do đó có một mơ hình khơng mịn, trong khi đó một bán kính ra nhỏ có thể đƣa ra q nhiều cụm và một mơ hình khơng tổng quát.
3.1.2 Hệ thống suy diễn mờ (FIS) cho bài toán nút giao thông vùng ngoại ô
Bài tốn: Mơ hình hóa mối quan hệ giữa số lƣợng các chuyến đi bằng ô tô đƣợc phát sinh từ một khu vực với nhân khẩu học ở khu vực đó. Từ đó ƣớc lƣợng số chuyến đi bằng ô tô phát sinh từ khu vực này. Các dữ liệu về chuyến đi và nhân khẩu học đƣợc lấy từ 100 khu phân tích lƣu lƣợng ở quận New Castle, Delaware, Mỹ. Năm yếu tố nhân khẩu học đƣợc đề cập đến là: dân số (population), số lƣợng các đơn vị chỗ ở (number of dwelling units), quyền sở hữu phƣơng tiện giao thông (vehicle ownership), thu nhập trung bình của các hộ gia đình (median household income), và tổng số lao động (total employment). Nhƣ vậy, bài toán gồm 5 biến đầu vào (5 nhân tố nhân khẩu học) và 1 biến đầu ra (số chuyến xe phát sinh). Tìm hiểu demo với ngôn ngữ Matlab.
Dữ liệu: Dữ liệu từ 100 khu phân tích đƣợc thống kê và xây đựng file dữ liệu tripdata. Trong số 100 điểm dữ liệu ban đầu, sử dụng 75 điểm nhƣ dữ liệu huấn luyện (datin và datout) và 25 điểm nhƣ dữ liệu kiểm tra (cũng nhƣ cho các dữ liệu thử nghiệm để xác nhận mơ hình).
Khi tải dữ liệu tripdata sẽ tạo ra các biến, 2 biến là datin và datout. Trong đó, datin có 5 cột thể hiện 5 biến đầu vào và datout có 1 cột thể hiện 1 biến đầu ra.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Hình 3.1: Biểu đồ dữ liệu vào và dữ liệu ra
Để mơ hình hóa mối quan hệ giữa 5 biến đầu vào và 1 biến đầu ra, trƣớc tiên ta phải phân cụm dữ liệu là ma trận gồm 6 cột. Sử dụng thuật toán phân cụm trừ (SC) để xác định số lƣợng cụm và các tâm cụm, các tâm cụm tìm đƣợc sẽ dùng làm cơ sở để xây dựng hệ thống luật mờ.
Phân cụm dữ liệu sử dụng SC: Phân cụm trừ là một thuật toán nhanh, dịch một lần dùng để ƣớc lƣợng số lƣợng cụm và các tâm cụm của tập dữ liệu. Ở đây, sử dụng hàm subclust để thực hiện trên dữ liệu nhƣ sau:
[C,S] = subclust([datin datout], 0.5);
trong đó tham số thứ nhất là dữ liệu cần phân cụm, tham số thứ 2 là bán kính cụm.
Kết quả: Ma trận C lƣu trữ các tâm cụm, mỗi hàng của C là một tâm cụm. Trong trƣờng hợp này có 3 tâm cụm, thể hiện nhƣ sau:
Hình 3.2 Kết quả sau khi phân cụm
Biến S lƣu trữ giá trị thể hiện phạm vi ảnh hƣởng của một tâm cụm trong mỗi thành phần chiều dữ liệu. Tất cả các tâm cụm đều có chung tập giá trị này. Ở đây:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
S = 1.1621 0.4117 0.6555 7.6139 2.8931 1.4395
Đƣa ra hệ thống luật mờ:
Dùng hàm genfis2 tạo lên hệ thống FIS sử dụng SC. Hàm genfis2 sử dụng hàm subclust ở bên trong để phân cụm dữ liệu và sử dụng các tâm cụm cùng với bán kính cụm để xây dựng hệ thống FIS, hệ thống FIS sau đó đƣợc dùng để khai thác và hiểu các mẫu dữ liệu giao thông.
myfis=genfis2(datin,datout,0.5);
Tham số thứ nhất là các biến đầu vào trong ma trận datin, tham số thứ 2 là các biến ra trong ma trận datout và tham số thứ ba là bán kính cụm dùng để phân cụm trong subclust.
Hàm genfis2 chỉ định tên mặc định cho các đầu vào, các đầu ra và các hàm thành viên.
myfis = setfis(myfis, 'input',1,'name','population'); myfis = setfis(myfis, 'input',2,'name','dwelling units'); myfis = setfis(myfis, 'input',3,'name','num vehicles'); myfis = setfis(myfis, 'input',4,'name','income'); myfis = setfis(myfis, 'input',5,'name','employment'); myfis = setfis(myfis, 'output',1,'name','num of trips');
Một hệ thống FIS bao gồm các đầu vào, các đầu ra và các luật. Mỗi đầu vào và đầu ra có một số bất kỳ các hàm thành viên. genfis2 xây dựng hệ thống FIS để ghi lại vị trí và ảnh hƣởng của mỗi cụm trong không gian dữ liệu.
myfis là hệ thống FIS mà genfis2 đã tạo ra. Từ một tập dữ liệu gồm 5 biến đầu vào và 1 biến đầu ra, genfis2 tạo lên hệ thống FIS với 5 đầu vào và 1 đầu ra. Mỗi đầu vào và đầu ra lại có số hàm thành viên là số cụm mà subclust đã xác định. Nhƣ đã trình bày ở trên hàm subclust phân tập dữ liệu đang xét thành 3 cụm. Do đó, mỗi đầu vào và đầu ra sẽ đƣợc mô tả bằng 3 hàm thành viên. Tƣơng tự, số lƣợng các luật bằng với số lƣợng cụm và có 3 luật đƣợc tạo.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Biểu đồ thể hiện các hàm thành viên nhƣ sau:
Hình 3.3: Hàm thành viên tương ứng với biến vào số ơ tơ sở hữu
Hình 3.4: Hàm thành viên tương ứng với biến vào số lượng việc làm
Hình 3.5: Hàm thành viên tương ứng với biến vào thu nhập trung bình
Từ các biến đầu vào trên các Hình 3.3, 3.4 và 3.5 ta xác định đƣợc 3 luật mờ chỉ còn lại với 2 biến đầu vào là các cụm có ảnh hƣởng lớn đến số chuyến xe đi đó là số lƣợng xe cá nhân và tổng số việc làm trong khu. Bởi vì theo quá trình thu thập dữ liệu về nhân khẩu học cho thấy quá trình phân cụm sẽ tập trung vào các biến tác động đến số lƣợng chuyến xe đi là: Số lƣợng xe cá nhân và Số lƣợng việc làm. Các luật mờ sẽ có dạng sau:
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
<if car ownership is ... and employment is... then num.trips is>
Nếu <Số lƣợng xe cá nhân là...> và <Số việc làm là…> thì < Số chuyến xe sẽ
dự báo là...>
Luật 1: if car.ownership is cluster1 and employment is cluster1 then
num.trips = 0.95*car.ownership + 0.50 employment + 0.49
Luật 2: if car.ownership is cluster2 and employment is cluster2 then num.trips = 1.3*car.ownership + 1.8* employment - 0.17
Luật 3: if car.ownership is cluster3 and employment is cluster3 then
num.trips = 1.0*car.ownership + 1.5* employment - 0.6
3.2 Ứng dụng thuật toán FSC vào phân đoạn ảnh
3.2.1 Phân đoạn ảnh
Phân đoạn ảnh là một thao tác ở mức thấp trong tồn bộ q trình xử lý ảnh. Quá trình này thực hiện việc phân vùng ảnh thành các vùng rời rạc và đồng nhất với nhau. Các vùng ảnh đồng nhất này thông thƣờng sẽ tƣơng ứng với toàn bộ hay từng phần của các đối tƣợng thật sự bên trong ảnh. Vì thế, trong hầu hết các ứng dụng của lĩnh vực xử lý ảnh, thị giác máy tính, phân đoạn ảnh ln đóng một vai trị cơ bản và thƣờng là bƣớc tiền xử lý đầu tiên trong tồn bộ q trình trƣớc khi thực hiện các thao tác khác ở mức cao hơn nhƣ nhận dạng đối tƣợng, biểu diễn đối tƣợng, nén ảnh dựa trên đối tƣợng, hay truy vấn ảnh dựa vào nội dung…
Vào những thời gian đầu, các phƣơng pháp phân vùng ảnh đƣợc đƣa ra chủ yếu làm việc trên các ảnh mức xám do các hạn chế về phƣơng tiện thu thập và lƣu trữ. Ngày nay, cùng với sự phát triển về các phƣơng tiện thu nhận và biểu diễn ảnh, các ảnh màu đã hầu nhƣ thay thế hoàn toàn các ảnh mức xám trong việc biểu diễn và lƣu trữ thông tin do các ƣu thế vƣợt trội hơn hẳn so với ảnh mức xám. Do đó, các kỹ thuật, thuật giải mới thực hiện việc phân vùng ảnh trên các loại ảnh màu liên tục đƣợc phát triển để đáp ứng các nhu cầu mới. Các thuật giải, kỹ thuật này thƣờng đƣợc phát triển dựa trên nền tảng các thuật giải phân vùng ảnh mức xám đã có sẵn.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Các hƣớng tiếp cận phân đoạn ảnh
Phân đoạn ảnh là chia ảnh thành các vùng không trùng lặp. Mỗi vùng gồm một nhóm pixel đồng nhất theo một tiêu chí nào đó. Tiêu chí này phụ thuộc vào mục tiêu của q trình phân đoạn. Ví dụ nhƣ đồng nhất về màu sắc, mức xám, kết cấu, độ sâu của các layer… Sau khi phân đoạn mỗi pixel chỉ thuộc về một vùng duy nhất. Để đánh giá chất lƣợng của quá trình phân đoạn là rất khó. Vì vậy trƣớc khi phân đoạn ảnh cần xác định rõ mục tiêu của quá trình phân đoạn là gì. Xét một cách tổng qt, ta có thể chia các hƣớng tiếp cận phân đoạn ảnh thành ba nhóm chính nhƣ sau: