HỘI NGHỊ KHOA HỌC – KỸ THUẬT LẦN THỨ 34
Đề tài
PHÂN CỤM DỮ LIỆU ỨNG DỤNG
TRONG PHÂN TÍCH DỮ LIỆU
CÔNG THỨC DƯỢC PHẨM
Báo cáo
viên
Hà Siu
1
NỘI DUNG CHÍNH
1. Giới thiệu đề tài
2. Cơ sở lý thuyết
3. Chương trình minh họa
4. Kết quả thực nghiệm
5. Kết luận và hướng phát triển
2
1.
Giới thiệu đề tài
3
Công thức dược phẩm
Thành
phần
Mới
Công
thức
dược
phẩm
Kinh
nghiệm
Liều
lượng
Tỉ
trọng
4
Nhiệm vụ nhà bào chế
Mâu thuẫn tiềm tàng
Kiểm tra lại
Phân tích lại
5
Các phương pháp nghiên cứu
Phương
Mâupháp
thuẫn
thống kê
cổ điển
-Tuyến tính
- Chậm
- Đơn giản
- Hiệu quả
tốt (95%)
tiềm tàng
vs
Các kỹ
thuật khai
phá dữ
liệu
- Phi tuyến
- Nhanh
- Phức tạp
- Hiệu quả
tốt (98%)
6
2.
Cơ sở lý thuyết
7
Phân cụm dữ liệu
• Phân cụm dữ liệu là kỹ thuật rất quan trọng trong khai phá dữ liệu
• Có rất nhiều định nghĩa khác nhau về kỹ thuật này
• Về bản chất có thể hiểu phân cụm là các quy trình tìm cách nhóm các
đối tượng đã cho vào các cụm (clusters), sao cho các đối tượng trong
thuẫn
tiềm và
tàng
cùng một cụmMâu
tương
tự nhau
các đối tượng khác cụm thì không
tương tự nhau
• Mục đích của phân cụm là tìm ra bản chất bên trong các nhóm của dữ
liệu
• Tuy nhiên, không có tiêu chí nào được xem là tốt nhất để đánh giá hiệu
quả của phân tích phân cụm, điều này phụ thuộc vào mục đích của phân
cụm như: giảm dữ liệu (data reduction), “cụm tự nhiên” (“natural
clusters”), cụm “có ích” (“useful” clusters), phát hiện phần tử ngoại lai
(outlier detection).
8
Công thức dược phẩm
• Dược phẩm hay thuốc là những chất dưới dạng đơn chất hoặc hỗn
hợp có nguồn gốc rõ ràng, được dùng cho người hoặc sinh vật để chẩn
đoán, phòng và chữa bệnh, hạn chế hoặc thay đổi điều kiện bệnh lý hay
sinh lý.
Mâu thuẫn tiềm tàng
• Thiết lập công thức dược phẩm là thiết lập các dạng công thức có liều
lượng khác nhau. Thiết lập công thức dược phẩm có thể được định
nghĩa là một tập hợp các hoạt động với mục tiêu tạo ra thuốc có thông
số kỹ thuật nhất định và đảm bảo việc duy trì các đặc điểm hiệu quả và
an toàn của thuốc. Mục tiêu chính của thiết lập công thức dược phẩm là
làm cho thuốc có thể vận chuyển dễ dàng trong cơ thể và tương thích
với bệnh nhân. Hiện nay mục tiêu mới được quan tâm trong thiết lập
công thức dược phẩm là sinh khả dụng của thuốc.
9
Thuật toán k-means
• K-means là thuật toán rất quan trọng và được sử dụng phổ
biến trong kỹ thuật phân cụm dữ liệu
• Ý tưởng chính của thuật toán k-means là tìm cách phân
nhóm các đối
tượng
Mâu
thuẫn(objects)
tiềm tàngđã cho vào k cụm (k là số các
cụm được xác định trước, k là số nguyên dương) sao cho
tổng bình phương khoảng cách giữa các đối tượng đến tâm
nhóm (centroid) là nhỏ nhất.
• Thuật toán k-means áp dụng cho các đối tượng được biểu
diễn bởi các điểm trong không gian vectơ d chiều U = {xi | i =
1, … , N}, với xi ∈ ℜ biểu thị đối tượng (hay điểm dữ liệu) thứ
i.
10
Thuật toán k-means
• Thuật toán k-means gom cụm toàn bộ các điểm dữ liệu trong U
thành k cụm C = {C1, C2,…, Ck} sao cho mỗi điểm dữ liệu xi nằm trong
một cụm duy nhất. Để biết điểm dữ liệu thuộc cụm nào người ta
gán cho nó một mã cụm. Các điểm có cùng mã cụm thì ở cùng cụm,
tiềmcụm
tàngthì ở trong các cụm khác nhau.
trong khi các Mâu
điểmthuẫn
khác mã
Một cụm có thể biểu thị bằng vectơ liên thuộc cụm v có độ dài N,
với vi là mã cụm của xi. Giá trị k là đầu vào của thuật toán. Giá trị k
dựa trên tiêu chuẩn tri thức trước đó.
• Trong các thuật toán gom cụm, các điểm được nhóm theo khái
niệm “độ gần” hay “độ tương tự”. Với k-means, phép đo mặc định
cho “độ tương tự” là khoảng cách Euclide.
11
Thuật toán k-means
• Thuật toán k-means thực hiện qua các bước chính sau:
1. Chọn ngẫu nhiên k tâm (centroid) cho k cụm (cluster). Mỗi cụm
được đại diện bằng các tâm của cụm.
2. Tính khoảng cách giữa các đối tượng (objects) đến k tâm
Mâukhoảng
thuẫn cách
tiềm Euclide).
tàng
(thường dùng
3. Nhóm các đối tượng vào nhóm gần nhất.
4. Xác định lại tâm mới cho các nhóm.
5. Thực hiện lại bước 2 cho đến khi không có sự thay đổi nhóm
nào của các đối tượng.
• Thuật toán k-means được phát triển bởi nhiều nhà nghiên cứu
khác nhau, điển hình là Lloyd (1957), Forgey (1965), Friedman
(1967), Rubin (1967), McQueen (1967).
12
Thuật toán k-means
Mâu thuẫn tiềm tàng
Hình 1: Lưu đồ thuật toán k-means
13
Logic mờ
• Trong logic cổ điển, hàm thành viên chỉ có một
trong hai giá trị là 1 (Đúng) hay 0 (Sai). Điều này
không phản ánh đầy đủ thế giới khách quan, vì
Mâu thuẫn tiềm tàng
giữa hai màu “trắng” và “đen” còn có màu “xám”.
• Trong logic mờ, hàm thành viên có thể cho các
giá trị ở giữa 0 và 1. Hàm thành viên càng tiến đến
1 thì giá trị của nó càng gần Đúng. Nhờ đó, logic
mờ có tính hiện thực hơn logic cổ điển.
14
Logic mờ
Mâu thuẫn tiềm tàng
(a)
(b)
Hình 2: Minh họa khái niệm logic cổ điển (a) và logic mờ (b)
15
3.
Chương trình minh họa
16
Cấu hình
•
Intel® Core™ i3-3227U CPU @ 1.90 GHz 1.90
GHz, 4.00 GB RAM
• Windows 7 32-bit
• C# 2013
• 2 module chính:
• Dữ liệu
• Phân cụm dữ liệu với thuật toán k-means
17
Bộ dữ liệu
•
•
•
•
•
Công thức viên nén matrix
Công trình của Bodea và Leucuta, năm 1997
13 công thức thực nghiệm
3 biến độc lập x1, x2 và x3
3 biến phụ thuộc y1, y2 và y3
18
Các biến số
Bảng 1: Các biến số của viên nén matrix
Biến độc lập
x1
tỉ lệ HPMC
x2
tỉ lệ CMCNa
x3
tỉ lệ propranolol HCL
Biến phụ thuộc
y1
% hoạt chất hòa tan sau 1 giờ
y2
% hoạt chất hòa tan sau 6 giờ
y3
% hoạt chất hòa tan sau 12 giờ
19
Dữ liệu cụ thể
Bảng 2: Dữ liệu thực nghiệm của viên nén matrix
x1
x2
x3
y1
y2
y3
1
0,34
0
0,66
0,152
0,683
0,992
2
0,2
0,46
0,34
0,104
0,545
0,902
3
0,2
0,14
0,66
0,112
0,612
0,986
4
0,66
0
0,34
0,122
0,448
0,712
5
0,446
0
0,553
0,148
0,585
0,866
6
0,506
0,153
0,34
0,074
0,388
0,68
7
0,2
0,353
0,446
0,098
0,576
0,925
8
0,35
0,15
0,5
0,084
0,512
0,856
9
0,35
0,15
0,5
0,087
0,518
0,862
10
0,35
0,15
0,5
0,084
0,507
0,851
11
0,35
0,15
0,5
0,089
0,525
0,87
12
0,353
0,306
0,34
0,052
0,352
0,672
13
0,553
0
0,446
0,143
0,518
0,792
20
Giao diện chương trình – Module 1: Dữ liệu
Hình 3: Giao diện module 1 – Dữ liệu
21
Giao diện chương trình – Module 2: Phân cụm dữ liệu
Hình 4: Giao diện module 2 – Phân cụm dữ liệu với thuật toán k-means
22
4.
Kết quả thực nghiệm
23
Thống kê
x1
x2
x3
y1
y2
y3
0,2
0
0,34
0,052
0,352
0,672
0,66
0,46
0,66
0,152
0,683
0,992
0,373692
0,154769
0,471154
0,103769
0,520692
0,843538
0,0177825
0,0193429
0,011648
0,133351
0,139079
0,107926
Giá trị
nhỏ nhất
Giá trị lớn
nhất
Trung
bình
Độ chính
0,000854024 0,00723929
0,0100212
xác
Độ lệch
chuẩn
0,0292237
0,085084
24
0,100106
Phân cụm dữ liệu bằng Weka
Thuộc tính
Dữ liệu ban đầu
Cụm 1
Cụm 2
Cụm 3
x1
0.3737
0.2
0.393
0.3872
x2
0.1548
0.14
0
0.1872
x3
0.4712
0.66
0.6065
0.4252
y1
0.1038
0.112
0.15
0.0937
y2
0.5207
0.612
0.634
0.4889
y3
0.8435
0.986
0.929
0.8122
Tổng số thực thể
13
1
2
10
Tỉ lệ
100%
8%
15%
77%
25