Báo cáo đồ án tốt nghiệp KHAI PHÁ dữ LIỆU VÀ PHÁT TRIỂN TRI THỨC

70 2.5K 15
Báo cáo đồ án tốt nghiệp KHAI PHÁ dữ LIỆU VÀ PHÁT TRIỂN TRI THỨC

Đ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

Báo cáo đồ án tốt nghiệp MỤC LỤC CHƯƠNG – TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÁT TRIỂN CHƯƠNG – TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÁT TRIỂN TRI THỨC .3 1.1 Phát tri thức: 1.2 Khai phá liệu: .5 1.2.1 Kiến trúc hệ thống khai phá liệu: .5 1.2.2 Quá trình khai phá: 1.2.3 Mục đích tác vụ khai phá liệu: 1.2.4 Một số phương pháp khai phá liệu: 10 1.2.5 Tại phải cần lựa chọn phương pháp khai phá liệu? 14 CHƯƠNG – MỘT SỐ PHƯƠNG PHÁP SONG SONG KHAI PHÁ DỮ LIỆU 18 2.1 Tổng quan xử lý song song : .18 2.1.1 Tổng quan: .18 2.1.2 Xử lý song song môi trường chia sẻ bộ: .20 2.1.3 Xử lý song song môi trường nhớ phân tán: 23 2.2 Giải thuật phân vùng liệu: .26 2.2.1 Giải thuật K-MEANS phân vùng liệu: 27 2.2.2 Cách xác định tâm vùng: 28 2.2.3 Vấn đề khởi tạo k-tâm giải thuật K-MEANS: 28 2.2.4 Độ phức tạp giải thuật K-MEANS: 29 2.2.5 Đánh giá giải thuật K-MEANS: 31 2.2.6 Thuật toán K-MEANS song song: 31 CHƯƠNG – NGHIÊN CỨU CƠ SỞ DỮ LIỆU “XƠ VỮA ĐỘNG MẠCH” 36 3.1 Giới thiệu toán: 36 3.2 Giới thiệu chung liệu: 36 3.3 Mô tả liệu: 40 3.4 Tiền xử lý liệu : 45 Báo cáo đồ án tốt nghiệp CHƯƠNG – CÀI ĐẶT VÀ THỬ NGHIỆM CHƯƠNG TRÌNH 53 4.1 Lựa chọn giải pháp: .53 4.1.1 Lựa chọn môi trường cài đặt: 53 4.1.2 Lựa chọn giải thuật sử dụng chương trình: 59 4.2 Phân tích thiết kế chức tốn: 60 4.2.1 Xác định yêu cầu toán: 60 4.2.2 Hệ thống phân loại bệnh nhân: .61 4.2.2.1 Chương trình phân nhóm bệnh nhân theo thuật tốn Kmeans song song: 61 4.2.3 Cài đặt chương trình Visual C++ OpenMP: 66 KẾT LUẬN VÀ KIẾN NGHỊ 68 TÀI LIỆU THAM KHẢO .70 MỞ ĐẦU Khai phá liệu lĩnh vực phát triển nhanh chóng ứng dụng lĩnh vực khác Những lĩnh vực ứng dụng tiêu Báo cáo đồ án tốt nghiệp biểu khai phá liệu kinh doanh thương mại, khoa học kỹ thuật Trong lĩnh vực ứng dụng đó, y học lĩnh vực mà khai phá liệu có đóng góp đáng kể trở thành giải pháp cho nhiều vấn đề y học Nhiều hệ thống phát tri thức y học phát triển thu nhiều nhiều lợi ích Vì tơi chọn đề tài để mong muốn nghiên cứu áp dụng vấn đề nhỏ lĩnh vực y học khai phá liệu nói chung Nội dung đề tài chia làm chương với bố cục sau: Chương Giới thiệu tổng quan kỹ thuật khai phá liệu phát tri thức Chương Nghiên cứu số phương pháp song song khai phá liệu Bao gồm định nghĩa mơ hình xử lý song song Các kỹ thuật xử lý song song môi trường nhớ chia sẻ nhớ phân tán Nghiên cứu thuật toán song song khai phá liệu hay dùng thuật toán KMEANS song song Chương Ứng dụng khai phá liệu y học “Bệnh xơ vữa động mạch” Bao gồm giới thiệu tốn phân nhóm bệnh nhân sở liệu “Bệnh xơ vữa động mạch”, cấu trúc sở liệu bước phân tích, tiền xử lý liệu để có liệu cho trình khai phá liệu chương trình Chương Cài đặt thử nghiệm chương trình, chương áp dụng thuật tốn khai phá liệu song song nghiên cứu sở liệu phân tích, xử lý, xây dựng chương trình Khai phá liệu sử dụng thuật tốn KMEANS song song CHƯƠNG – TỞNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÁT TRIỂN TRI THỨC Báo cáo đồ án tốt nghiệp Trong chương này, bài báo cáo trình bày tổng quan khai phá liệu phát tri thức 1.1 Phát tri thức: Thông tin yếu tố quan trọng sống ngày người Không vậy, thông tin nhân tố tạo thành công lĩnh vực biết sử dụng khai thác thơng tin có hiệu Thơng tin phải có ích người dùng tin, có tính thời cao…Điều đặt khai thác thông tin đâu? nào? …Câu trả lời từ kho liệu có sẵn, tìm thơng tin tiềm ẩn có giá trị mà trước chưa phát hiện, tìm quy luật yếu tố tác động lên chúng Thực cơng việc thực trình phát tri thức kho liệu mà kỹ thuật cho phép ta lấy tri thức kỹ thuật khai phá liệu (data mining) Tuân theo quy luật phát triển tự nhiên, người luôn thiếu thốn tri thức Dữ liệu kiện, tượng cụ thể hay khơng cụ thể, có cấu trúc hay phi cấu trúc Cịn với tri thức, khơng thể định nghĩa rõ ràng, xác, đó khái niệm rộng khó đưa định nghĩa xác Tuy nhiên ta thể có nói rằng, tri thức khai phá từ sở liệu tri thức biểu diễn, mơ tả (mà người hiểu được) ngơn ngữ bao gồm hay nhiều yếu tố mối quan hệ thuộc tính liệu Điều nói lên phát tri thức phát tri thức để phục vụ hoạt động người Do trình phát tri thức trình hoạt động, khai phá người dùng tin dựa vào sở vật chất công nghệ có Tri thức có nhờ vào cơng nghệ nói chung, có vai trị thiết yếu kho liệu (Data Warehousing) khai phá liệu (Data Mining) Báo cáo đồ án tốt nghiệp 1.2 Khai phá liệu: Khám phá tri thức CSDL bao gồm số cơng đoạn, chủ yếu khai phá liệu (Data Mining-DM) Mục đích khai phá liệu nhằm phát tri thức mới, tiềm ẩn có lợi, chưa biết tới khối liệu Chỉ thời gian ngắn ngủi năm vừa qua DM đạt bước tiến vượt bậc phương diện nghiên cứu lý thuyết lẫn xây dựng sản phẩm phần mềm thương mại hầu hết lĩnh vực khác đời sông kinh tế xã hội như: Tài chính, Ngân hàng, Thương mại, Y tế, Giáo dục, Khoa học-công nghệ Môi trường,… Thậm chí người ta cịn cho hệ quản trị sở liệu (CSDL) chiếm ưu thị trường, người phát triển phần mềm ứng dụng CSDL sử dụng hệ quản trị hỗ trợ cơng cụ (Tools) khai phá liệu có chất lượng Các tập đoàn IBM, ORACLE, INTEL, hay MICROSOFT, … có thực cấp thiết nhiều dự án phối hợp nghiên cứu triển khai xây dựng công cụ Với hai mục đích khai phá liệu Dự đốn (Prediction) Mơ tả (Description), người ta thường chọn hai phương pháp cho việc khai phá liệu: Dự đốn: địi hỏi sử dụng vài biến trường để dự đốn thơng tin tiềm ẩn giá trị tương lai biến thuộc tính mà ta quan tâm đến Mô tả: Tập trung làm bậc lên mơ hình kết mà người hiểu sâu thông tin liệu 1.2.1 Kiến trúc hệ thống khai phá liệu: Kiến trúc hệ thống khai phá liệu chia thành thành phần sau: Kho liệu tập sở liệu, kho liệu…các công cụ làm liệu tích hợp liệu thực chúng Cơ sở trí thức: yếu tố tri thức dùng để đánh giá mẫu kết khai phá Báo cáo đồ án tốt nghiệp Kỹ thuật khai phá: công cụ để thực nhiệm vụ: mô tả, kết hợp, phân lớp, phân nhóm liệu… Cơng cụ đánh giá mẫu: gồm số modul sử dụng độ đo tương tác với modul khai phá liệu để tập trung vào thuộc tính cần quan tâm Biểu diễn dạng đồ hoạ: Modul giao tiếp người dùng hệ thống khai phá liệu Hình 1: Kiến trúc hệ thống khai phá liệu 1.2.2 Quá trình khai phá: Khai phá liệu lĩnh vực có nhiệm vụ khảo sát liệu, chiết xuất tri thức, thu lượm thông tin, chí duyệt tìm kiếm liệu mà quan tâm Báo cáo đồ án tốt nghiệp đến…Là trình nhận biết mẫu liệu qua giai đoạn khác nhau, mẫu liệu phải có tính xác, hợp lý, tiềm ẩn có tính khám phá, hữu dụng, cốt lõi phải hiểu Khai phá liệu liên quan đến nhiều ngành, nhiều lĩnh vực: xác suất thống kê, trí tuệ nhân tạo, sở liệu, thuật tốn, tính tốn song song với tốc độ cao… Hay nói khai phá liệu việc khám phá liệu có ích, hữu dụng với người dùng thông tin Khai phá liệu thường modul chương trình hoạt động trực tiếp liệu, nhiên tồn việc khai phá gián tiếp, số phương pháp khai phá liệu sau: + Phương pháp xác suất thống kê (chọn mẫu) + Phương pháp trí tuệ nhân tạo (hay cịn gọi “học máy”) + Phương pháp phân đoạn (vùng, lớp) liệu (clustering) + Phương pháp nhận dạng (mơ hình) + Phương pháp sở liệu +… Phương pháp học máy phương pháp thống kê bước đầu thuật tốn nạp tồn tệp liệu vào nhớ Nếu mơ hình kho liệu lớn điều thách thức với người dùng(người khai phá liệu) Mơ hình khai phá liệu mơ sau: Hình 1.2: Mơ hình khai phá liệu Báo cáo đồ án tốt nghiệp + Xác định nhiệm vụ chính: Qua q trình hình thành tốn, cần xác định xác rõ ràng vấn đề cần giải gì? + Dữ liệu liên quan: Từ việc xác định rõ nhiệm vụ, bước xây dựng giải pháp dựa sở liệu liên quan đến toán đặt + Thu thập liệu liên quan tiền xử lý chúng: bước quan trọng trả lời câu hỏi: thuật tốn khai phá có hiểu cấu trúc dã liệu hay khơng ? Và hiểu phải xữ lý nào? + Chọn thuật khai phá liệu phù hợp thực xác đáp ứng nhu cầu mẫu cần quan tâm biểu diễn chúng dạng có ý nghĩa + Mẫu: Các mẫu kết quy trình khai phá Tức hiểu sử dụng tri thức tìm thơng qua hành động 1.2.3 Mục đích tác vụ khai phá liệu: Có hai nhiệm vụ dự đốn (prediction) mơ tả (description) Từ mẫu tìm kiếm được, dự đoán giá trị chưa biết giá trị tương lai Và tập trung mô tả vào việc tìm kiếm mẫu mơ tả liệu cho người hiểu + Phân lớp(Classification): việc học hàm ánh xạ từ mẫu liệu vào số lớp xác định trước Hồi quy(Regression): Là việc học hàm ánh xạ từ mẫu liệu thành biến dự đốn có giá trị thực + Phân nhóm(Clustering): Là việc mơ tả chung để tìm tập hay nhóm, loại mơ tả liệu Các nhóm tách phân cấp Có nghĩa liệu vừa thuộc nhóm vừa thuộc nhóm Báo cáo đờ án tốt nghiệp Hình 1.3: Ví dụ phân nhóm + Tổng hợp (Summarization): liên quan đến phương pháp tìm kiếm mơ tả tập liệu, thường áp dụng việc phân tích liệu có tính thăm dị báo cáo tự động + Mơ hình ràng buộc (Dependency Modeling): việc tìm kiếm mơ hình mơ tả phụ thuộc biến, thuộc tính theo hai mức: phụ thuộc cục vào cấu trúc mơ hình, phụ thuộc vào thước đo định lượng + Dị tìm biến đổi độ lệch (Change and Deviation Dectection): Chú ý vào thay đổi quan trọng liệu từ giá trị chuẩn xác định trước + Biểu diễn mơ hình (Model Representation): Là việc dùng ngơn ngữ L để mơ tả mẫu mơ hình khái phá Mơ tả mơ hình rõ ràng “học máy” tạo mẫu có mơ hình xác cho liệu Tuy nhiên mơ hình q lớn khả dự đốn “học máy” bị hạn chế Như làm cho việc tìm kiếm phức tạp việc hiểu mơ hình khơng đơn giản + Kiểm định mơ hình (Model Evaluation): Là việc đánh giá, ước lượng mơ hình chi tiết, chuẩn q trình xữ lý phát tri thức với ước lượng có Báo cáo đờ án tốt nghiệp dự báo xác hay khơng có thoả mãn sở logíc hay không? Ước lượng phải đánh giá chéo (cross validation) với việc mơ tả đặc điểm bao gồm dự báo xác, tính lạ, tính hữu ích, tính hiểu phù hợp với mơ hình Cả hai phương pháp logic thống kê chuẩn sử dụng mơ hình kiểm định + Phương pháp tìm kiếm (Search Method): Gồm có hai thành phần, (1)Trong bảng tham biến (phạm vi tìm kiếm tham số) thuật tốn phải tìm kiếm tham số phạm vi chuẩn mơ hình kiểm định tối ưu hố đưa tiêu chí (quan sát) liệu biểu diễn mơ hình định (2)- Mơ hình tìm kiếm, xuất đường vịng tồn phương pháp tìm kiếm: biểu diễn mơ hình phải thay đổi cho hệ gia phả mơ hình phải thông qua 1.2.4 Một số phương pháp khai phá liệu: a Phương pháp quy nạp(induction) Đây gồm hai kỹ thuật chính, suy diễn quy nạp - Suy diễn: Dựa dãy số kiện xác để suy tri thức từ tri thức có Kỹ thuật suy diễn thường phải dựa vào luật suy diễn - Quy nạp: Dựa vào sở liệu kho liệu có, phương pháp quy nạp tự tìm kiếm, tạo mơ hình, mẫu sinh tri thức diễn tả đối tượng sở liệu, liên quan trực tiếp đến mẫu liệu b Cây định Là phương pháp mô tả tri thức dạng đơn giản phân loại đối tượng có cấu trúc phân lớp Trong nút gắn nhãn thuộc tính là: + Một nút lá: Chỉ giá trị thuộc tính + Một nút trong: Hay gọi nút định, kiểm tra giá trị thuộc tính đơn nhánh đường qua cạnh tương ứng với giá trị thuộc tính 10 Báo cáo đờ án tốt nghiệp • Ngầm định có hàng rào (barrier) cuối đoạn song song Chỉ có tiến trình chủ tiếp tục thực thi qua điểm • Nếu có tiến trình kết thúc bên vùng song song (chưa đến điểm barrier), tất tiến trình khác (trừ tiến trình chủ) bị kết thúc điểm Điểm khơng xác định trước Có tiến trình vùng song song? • Số lượng tiến trình vùng song song định theo thông số sau, thông số nêu theo thứ tự ưu tiên:  Tham số truyền cho hàm omp_set_num_threads() để thiết lập số tiến trình   • Giá trị biến môi trường OMP_NUM_THREADS Số lượng CPU máy trạm Các tiến trình đánh số từ (tiến trình chủ) to N-1 Các tiến trình động: • Sử dụng hàm thư viện omp_get_dynamic() để biết số tiến trình động kích hoạt • Có phương pháp cho việc kích hoạt tiến trình động là:  Dùng thủ tục omp_set_dynamic(int val)  Đặt biến mơi trường OMP_DYNAMIC có giá trị TRUE Các vùng song song lồng nhau: • Sử dụng hàm thư viện omp_get_nested() để định chế độ cho phép đặt số tiến trình động kích hoạt bên vùng song song • Có phương pháp cho phép kích hoạt chế độ nội vùng song song là:   • Sử dụng thủ tục thư viện omp_set_nested(int val) Đặt biến mơii trường OMP_NESTED có giá trị TRUE Nếu hỗ trợ, vùng song song bên vùng khác, trả lại kết nhóm tiến trình tiến trình trả lại Các mệnh đề: 56 Báo cáo đờ án tốt nghiệp • Mệnh đề IF: Nếu ra, bắt buộc phải giá trị TRUE (FORTRAN) giá trị khác (C/C++) theo thứ tự nhóm tiến trình tạo Trường hợp ngược lại vùng đánh thứ tự tiến trình chủ Một số thủ tục hàm OpenMP: OMP_SET_NUM_THREADS: Mục đích: đặt số tiến trình chạy song song cho vùng song song tính từ vị trí hàm gọi, số tiến trình số nguyên dương Cú pháp hàm C++ sau: #include void omp_set_num_threads(int num_threads) Lưu ý: Thủ tục phải thực vị trí đoạn mã gọi thơng qua đặt biến mơi trường OMP_NUM_THREADS OMP_GET_NUM_THREADS Mục đích: Trả lại giá trị số tiến trình thời thực thi đoạn lệnh song song vị trí mà gọi đến Cú pháp hàm sau: #include int omp_get_num_threads(void) Lưu ý: Nếu hàm gọi vị trí đoạn mã lệnh giá trị trả OMP_GET_MAX_THREADS Mục đích: Trả lại số tiến trình lớn gọi hàm OMP_GET_NUM_THREADS Cú pháp hàm sau: #include int omp_get_max_threads(void) Lưu ý: Nói chung giá trị trả số tiến trình đặt biến môi trường OMP_NUM_THREADS thực hàm OMP_SET_NUM_THREADS() hàm thực thi đoạn mã lệnh song song 57 Báo cáo đồ án tốt nghiệp OMP_GET_THREAD_NUM Mục đích: Trả lại giá trị số hiệu tiến trình nhóm tiến trình chạy song song Số nhận giá trị từ đến OMP_GET_NUM_THREADS -1 Trong tiến trình tiến trình chủ (master thread) Cú pháp sử dụng sau: #include int omp_get_thread_num(void) Lưu ý: Khi thực hàm đoạn mã song song lồng đoạn mã giá trị trả OMP_GET_WTIME Mục đich: Cung cấp cách lấy thời gian thực thi máy Trả lại giá trị kiểu double-precision khoảng thời gian thực từ điểm khứ Thông thường thời gian lần gọi hàm lần lần gọi hàm lần thứ chứa thời gian tựhc đoạn mã Được thiết kế cho tiến trình, khơng chung tiến trình nhóm, điều dùng để so sánh tiến trình với tiến trình khác Cú pháp sử dụng sau: #include double omp_get_wtime(void) Lưu ý: dùng với OpenMP phiên 2.0 trở lên Các biến mơi trường: • OpenMP cung cấp biến mơi trường cho việc thực điều khiển đoạn mã lệnh song song • Tất biến mơi trường đặt tên chữ hoa (uppercase) Các giá trị gán cho biến môi trường phụ thuộc vào trường hợp Biến OMP_SCHEDULE Áp dụng cho lệnh DO, PARALLEL DO (Fortran) for, parallel for (C/C++) lệnh có mệnh đề lập lịch cho để thiết lập thời gian chạy (RUNTIME) 58 Báo cáo đồ án tốt nghiệp Giá trị biến định tuỳ thuộc vào đoạn mã vòng lặp lập lịch chạy vi xử lý Ví dụ: setenv OMP_SCHEDULE "guided, 4" setenv OMP_SCHEDULE "dynamic" Biến OMP_NUM_THREADS Thiết lập số tiến trình tối đa sử dụng chạy chương trình Ví dụ: setenv OMP_NUM_THREADS Biến OMP_DYNAMIC Cho phép kích hoạt vơ hiệu hố tính điều chỉnh động số tiến trình cho phép thực chạy đoạn mã vùng song song Giá trị TRUE FALSE Ví dụ: setenv OMP_DYNAMIC TRUE Biến OMP_NESTED Cho phép kích hoạt vơ hiệu hố tính xếp chồng vùng song song Giá trị biến TRUE FALSE Ví dụ: setenv OMP_NESTED TRUE Lưu ý: Đoạn mã thực thi bạn có khơng hỗ trợ tính xếp chồng vùng song song và/hoặc thiết lập động số tiến trình Nếu tính xếp chồng vùng song song kích hoạt, thơng thường vùng nhất, trường hợp vùng song song xếp chồng có tiến trình 4.1.2 Lựa chọn giải thuật sử dụng chương trình: Như trình bày chương 2, có nhiều phương pháp khai phá liệu song song, với loại đối tượng liệu phương pháp khai phá cho độ xác khác và việc cài đặt thuận tiện, nhanh chóng một đối với một khối dữ liệu lớn cũng rất quan trọng việc lựa chọn giải thuật phù hợp với liệu toán cần thiết Trong phạm vi nghiên cứu luận văn này, CSDL Stulong với thuộc tính liệu thu nhận từ file liệu giải thuật K-MEANS 59 Báo cáo đờ án tốt nghiệp song song tỏ thích hợp cho việc khai phá liệu tốn đặt liệu gồm thuộc tính số hố số hố số phân cụm cố định, biết trước, đồng thời việc cài đặt giải thuật tỏ dễ dàng và nhanh chóng Đây yếu tố khắc phục nhược điểm khơng biết trước số cụm thuật tốn KMEANS Vì vậy, giải thuật K-MEANS song song (Parallel KMEANS) chọn để mơ tả tốn khai phá liệu ứng dụng y học Về nguyên lý, có n đối tượng, đối tượng có m thuộc tính, ta phân chia đối tượng thành k nhóm dựa thuộc tính đối tượng việc áp dụng thuật tốn Coi thuộc tính đối tượng (đối tượng có m thuộc tính) toạ độ không gian m chiều biểu diễn đối tượng điểm khơng gian m chiều Thuật tốn K-MEANS song song mơi trường lập trình chia sẻ nhớ OpenMP 2.0 thực dựa thuật toán K-MEANS phân nhóm đối tượng dựa vào khoảng cách Euclid đối tượng cần phân nhóm đối tượng trung tâm nhóm Coi n đối tượng, đối tượng có m thuộc tính mảng chiều lưu giá trị thuộc tính Các phần tử mảng hàng giá trị thuộc tính đối tượng nên ta có mảng đối tượng mà Objects[n][m] Mảng liệu phân cụm cách song song tiến trình tạo chương trình 4.2 Phân tích thiết kế chức toán: 4.2.1 Xác định yêu cầu toán: Bài toán dựa vào khai phá liệu để tìm luật từ CSDL “Bệnh xơ vữa động mạch” để xác định bệnh nhân thuộc vào nhóm nhóm sau: • Nhóm bệnh nhân bình thường • Nhóm bệnh nhân nguy hiểm có nguy mắc bệnh Từ thông tin người dùng nhập vào chương trình sử dụng thuật tốn khai phá liệu để kết trả bệnh nhân nhóm 60 Báo cáo đờ án tốt nghiệp 4.2.2 Hệ thống phân loại bệnh nhân: 4.2.2.1 Chương trình phân nhóm bệnh nhân theo thuật tốn Kmeans song song: Dữ liệu sử dụng chương trình liệu qua trình tiền xử lý trước đưa vào sử dụng, trình gồm bước là: - Bổ sung giá trị thiếu thuộc tính giá trị trung bình giá trị thuộc tính - Rút gọn thay đổi tên thuộc tính cho phù hợp với ngơn ngữ Việt Nam giảm bớt thuộc tính khơng cần thiết biểu diễn rút gọn Chương trình thực phân nhóm theo thuật tốn KMEANS song song tập liệu phân nhóm từ trước (dữ liệu lấy từ file Entry CSDL Stulong tập liệu nhập thông số bệnh nhân tham gia nghiên cứu) Tất liệu file học bắt buộc đánh giá độ xác thuật tốn học cách so sánh nhóm bệnh nhân phân loại thuật tốn nhóm cũ phân từ trước Q trình phân nhóm đối tượng thực song song nhờ vào số luồng (threads) tạo Các luồng thực tính tốn mảng đối tượng đầu vào (chia sẻ nhớ) đánh dấu tính tốn đối tượng số hiệu luồng (thread num) để sau kết thúc đoạn song song luồng chủ (Master thread) thực tính tốn lại điểm trung tâm nhóm, kiểm tra điều kiện kết thúc thuật toán lặp lại q trình phân nhóm đối tượng điều kiện kết thúc thuật toán thoả mãn Quá trình khởi tạo liệu bao gồm bước sau: - Đọc liệu vào: Chương trình thực đọc toàn file liệu vào mảng hai chiều phần tử mảng hàng thuộc tính bệnh nhân, số hàng mảng hai chiều số bệnh nhân Cụ thể tốn có 40 thuộc tính bệnh nhân 1249 bệnh nhân - Thực phân vùng bệnh nhân theo thuật toán KMEANS song song: Lấy k (k = 2) phần tử mảng làm k điểm trung tâm ban đầu 61 Báo cáo đờ án tốt nghiệp thực thuật tốn KMEANS song song mảng hai chiều đối tượng bệnh nhân Chương trình thực duyệt từ đầu đến cuối mảng liệu đầu vào, với bệnh nhân (dữ liệu hàng mảng) tính độ lệch gần so với điểm trung tâm phân lớp để tìm nhóm mà bệnh nhân thuộc Cơng thức tính độ lệch mẫu liệu cơng thức tính khoảng cách Euclid xét độ lệch gần so với mẫu giá trị nhỏ khoảng cách Euclid #pragma omp parallel private(i,j,k,id_thr,color,dmin,dx) { id_thr=omp_get_thread_num(); #pragma omp for schedule(static,1) for(i=0;i

Ngày đăng: 19/06/2014, 20:41

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan