Các nhãn lßp căa tÁp dā liáu hu¿n luyán đÃu phÁi đ°ÿc xác định tr°ßc khi xây dăng mô hình, vì vÁy ph°¢ng pháp này còn đ°ÿc gọi là học có giám sát supervised learning khác vßi phân nhóm d
Táng quan và khám phá tri thức và khai phá dā liáu
Giới thiệu chung về khám phá tri thāc và khai phá dữ liệu
Nền tảng của khoa học dữ liệu bao gồm việc thu thập, phân tích và truyền thông thông tin, trong đó dữ liệu và tri thức hiện đại đóng vai trò quan trọng Khám phá tri thức và khai thác dữ liệu đang trở thành một lĩnh vực mới mẻ để nghiên cứu và ứng dụng.
Dữ liệu thường được coi là một chuỗi các bit, số và ký hiệu, mang ý nghĩa khi được gửi đến một chương trình nhất định Các bit này thường được sử dụng để đo thông tin, loại bỏ phần thừa, lặp lại và rút gọn tối thiểu để đặc trưng cho dữ liệu Tri thức được xem như thông tin tích hợp, bao gồm các sự kiện và mối quan hệ giữa chúng, thông qua nhận thức, khám phá hoặc nghiên cứu Nói cách khác, tri thức có thể được coi là dữ liệu ở mức độ cao của sự trừu tượng và tổng quát.
Khám phá tri thức trong cơ sở dữ liệu là quy trình nhận diện các mẫu hoặc cấu trúc trong dữ liệu thông qua các tính năng như phân tích, tổng hợp, hình thức, khái quát và khả năng hiểu biết.
Khai phá dữ liệu là một bước quan trọng trong quá trình khởi phát tri thức, bao gồm các giải thuật khai thác dữ liệu chuyên dụng, đòi hỏi một số quy định
Nói cách khác, māc tiêu căa Khai phá dā liáu là tìm kiÁm các m¿u hoặc mô hỡnh tòn t¿i trong CSDL nh°ng ẩn trong khối l°ÿng lòn dā liỏu.
Quá trình khám phá tri thāc
Quy trình khám phá tri thức tiÁn hành qua 6 giai đo¿n, xem hình 1.1 [8]:
1 Gom dā liỏu: TÁp hÿp dā liỏu là b°òc đÁu tiờn trong quỏ trỡnh khai phỏ dā liỏu Đõy là b°òc đ°ÿc khai thỏc trong một c só dā liỏu, một kho dā liỏu và thÁm chớ cỏc dā liỏu từ cỏc nguòn ứng dāng Web
2 Trích lọc dā liáu: â giai đọan này dā liáu đ°ÿc lăa chọn hoặc phân chia theo một số tiêu chuẩn nào đó phāc vā māc đích khai thác, ví dā chọn t¿t cÁ nhāng em học sinh cú điểm Trung bỡnh học kỳ lòn hÂn 8.0 và cú giòi tớnh nā
3 Làm s¿ch, tiÃn xÿ lý và chuẩn bị tr°òc dā liỏu: Giai đo¿n thứ ba này là giai đo¿n hay bị sao lóng, nh°ng thăc tÁ nú là một b°òc r¿t quan trọng trong quỏ trỡnh khai phá dā liáu Một số lỗi th°áng mắc phÁi trong khi gom dā liáu là tính không đă
Số hóa dữ liệu là một quá trình quan trọng, giúp loại bỏ các giá trị vô nghĩa và không có khả năng kết nối Ví dụ, điểm trung bình 12.4 có thể được xem là thông tin dư thừa nếu không được xử lý một cách chặt chẽ Việc xử lý dữ liệu không hợp lý có thể dẫn đến những kết quả sai lệch nghiêm trọng, vì vậy cần phải làm sạch, xử lý và chuẩn bị dữ liệu trước khi sử dụng.
4 Chuyển đái dā liáu: TiÁp theo là giai đo¿n chuyển đái dā liáu, dā liáu đ°a ra có thể sÿ dāng và điÃu khiển đ°ÿc bãi viác tá chức l¿i nó, tức là dā liáu s¿ đ°ÿc chuyển đái và d¿ng phù hÿp cho viác khai phá b¿ng cách thăc hián các thao tác nhóm hoặc tÁp hÿp
5 Khai phỏ dā liỏu: Đõy là b°òc mang tớnh t° duy trong khai phỏ dā liỏu õ giai đo¿n này nhiÃu thuÁt toán khác nhau đã đ°ÿc sÿ dāng để trích ra các m¿u từ dā liáu ThuÁt toán th°áng dùng là nguyên tắc phân lo¿i, nguyên tắc kÁt, v.v
6 Đỏnh giỏ cỏc luÁt và biểu diòn tri thức: õ giai đo¿n này, cỏc m¿u dā liỏu đ°ÿc chiÁt xu¿t ra bãi phÁn mÃm khai phá dā liáu Không phÁi b¿t cứ m¿u dā liáu nào cũng đÃu hāu ích, đôi khi nó còn bị sai lách Vì vÁy, cÁn phÁi °u tiên nhāng tiêu chuẩn đánh giá để chiÁt xu¿t ra các tri thức (Knowlege) cÁn chiÁt xu¿t ra Đánh giá să hāu ớch căa cỏc m¿u biểu diòn tri thức dăa trờn một số phộp đo Sau đú sÿ dāng cỏc kỹ thuÁt trỡnh diòn và trăc quan hoỏ dā liỏu để biểu diòn tri thức khai phỏ đ°ÿc cho ng°ái sÿ dāng
H ì nh 1.1: Quá trình khám phá tri th ā c
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 13
Quá trình khai phá dữ liệu
Khai phá dā liáu là một giai đo¿n quan trọng trong quá trình khám phá tri thức
Vá bán chất là giai đoạn quan trọng để tìm ra những thông tin mới và tiềm ẩn trong cơ sở dữ liệu, giúp cho mô tả và dự đoán chính xác hơn.
Dự đoán là quá trình phân tích dữ liệu nhằm phát hiện các quy luật ẩn chứa từ các mối liên hệ giữa các thuộc tính của dữ liệu Qua đó, nó giúp xác định các mẫu và dự đoán giá trị chưa biết hoặc giá trị tương lai của các biến quan tâm.
Hình 1.2: Quá trình khai phá dữ liệu
- Xác định nhiám vā: Xác định chính xác các v¿n đà cÁn giÁi quyÁt
- Xác định các dā liáu liên quan: Dùng để xây dăng giÁi pháp
Thu thập và tiền xử lý dữ liệu là bước quan trọng trong quá trình khai phá dữ liệu, yêu cầu thu thập các dữ liệu liên quan và xử lý chúng để thuật toán có thể hiểu Quá trình này thường gặp nhiều khó khăn, như việc dữ liệu cần được phân loại rõ ràng, quản lý tập hợp dữ liệu hiệu quả, và việc lặp lại toàn bộ quy trình khi mô hình dữ liệu thay đổi.
Thuật toán khai phá dữ liệu là quá trình lựa chọn và áp dụng các phương pháp để phát hiện những mẫu có ý nghĩa trong dữ liệu Những mẫu này được biểu diễn thông qua các luật kết hợp và cây quyết định, giúp tăng cường hiểu biết về nội dung và cấu trúc của dữ liệu Việc khai thác dữ liệu không chỉ giúp phát hiện xu hướng mà còn cung cấp những thông tin giá trị cho các quyết định chiến lược.
Các ph°¢ng pháp khai phá dā li á u
Phân lớp và dự đoán (Classification & Prediction)
Quá trình phân loại dữ liệu bao gồm việc đặt các mẫu vào các lớp đã xác định trước, nhằm xác định các hàm ảnh hưởng đến các mẫu dữ liệu một cách chính xác Ví dụ, một ngân hàng có thể phân loại khách hàng thành hai nhóm: có nợ hay không nợ, từ đó giúp họ quyết định cho vay hay không cho vay Quá trình này thường bao gồm hai bước: xây dựng mô hình và sử dụng mô hình để phân loại dữ liệu.
Bước 1: Một mô hình sẽ được xây dựng dựa trên việc phân tích các mẫu dữ liệu sẵn có Mỗi mẫu tương ứng với một lớp, được xác định bởi một thuộc tính gọi là thuộc tính lớp Các mẫu dữ liệu này còn được gọi là tập dữ liệu huấn luyện Các nhóm lớp của tập dữ liệu huấn luyện phải được xác định trước khi xây dựng mô hình, vì vậy phương pháp này còn được gọi là học có giám sát, khác với phân nhúm dữ liệu là học không có giám sát.
Bước 2: Sử dụng mô hình để phân lớp dữ liệu Trước hết, chúng ta cần tính độ chính xác của mô hình Nếu độ chính xác đạt yêu cầu, mô hình sẽ có khả năng dự đoán chính xác cho các mẫu dữ liệu mới trong tương lai.
In classification techniques, various methods can be employed, including Decision Trees, k-Nearest Neighbors, Neural Networks, Genetic Algorithms, Bayesian Networks, and Rough and Fuzzy Sets Each of these approaches offers unique advantages for data analysis and pattern recognition, making them essential tools in machine learning and artificial intelligence.
Lu ậ t k ế t h ợ p (Association Rules)
Luật kết hợp là một phương pháp biểu diễn tri thức có tính tương đối đơn giản Mục tiêu của phương pháp này là phát hiện và đưa ra các mối liên hệ giữa các giá trị dữ liệu trong cơ sở dữ liệu Một trong những ứng dụng nổi bật của kỹ thuật khai thác dữ liệu là luật kết hợp tìm ra những mẫu ẩn.
Tuy luật kết hợp là một dạng luật khá đơn giản nhưng lại mang nhiều ý nghĩa quan trọng Thông tin mà loại luật này cung cấp rất có lợi trong các hoạt động hỗ trợ ra quyết định Tìm kiếm đặc trưng luật kết hợp và khai thác thông tin từ cơ sở dữ liệu tác nghiệp là một trong những hướng tiếp cận chính của lĩnh vực khai phá dữ liệu.
Khai thác mẫu tuần tự (Sequential / Temporal patterns)
Tăng cường khai thác luật kết hợp, đồng thời bổ sung tính thứ tự và tính thời gian Một luật mô tả mẫu tuần tự có dạng X → Y phản ánh sự xuất hiện của
Số hóa bởi Trung tâm Học liệu – ĐHTN, việc xuất hiện các biến cố X và Y có thể dẫn đến những ảnh hưởng đáng kể Hướng tiếp cận này cần được báo cáo một cách chi tiết để đảm bảo tính chính xác và minh bạch trong quá trình nghiên cứu.
Phân nhóm- đoạn (Clustering / Segmentation)
Mục tiêu chính của việc phân nhóm dữ liệu là tổ chức các đối tượng tương tự nhau vào các nhóm sao cho mức độ tương đồng giữa các đối tượng trong cùng một nhóm là lớn nhất, trong khi mức độ tương đồng giữa các đối tượng ở các nhóm khác nhau là nhỏ nhất Các nhóm có thể tách biệt hoặc phân cấp chồng lên nhau, và số lượng các nhóm là không xác định trước Một đối tượng cụ thể có thể thuộc về nhiều nhóm khác nhau Khác với phân loại dữ liệu, phân nhóm dữ liệu không yêu cầu phải định nghĩa trước các mẫu dữ liệu huấn luyện.
Phân nhóm dā liáu có thể được xem như một phương pháp học bằng quan sát, trong khi phân loại dā liỏu là học bằng ví dụ Trong phương pháp này, bạn không thể biết trước kết quả của các nhóm thu được khi bắt đầu quá trình, do đó cần có chuyên gia trong lĩnh vực để đánh giá Phân nhóm còn được gọi là học không giám sát Phân nhóm dā liáu được ứng dụng rộng rãi trong phân đoạn thị trường, phân đoạn khách hàng, nhận diện mẫu, và phân loại trang web Ngoài ra, phân nhóm dā liáu cũng có thể được sử dụng như một bước tiền xử lý cho các thuật toán khai thác dữ liệu khác.
Hồi quy (Regression)
Hồi quy là quá trình học một hàm số từ một mẫu dữ liệu để tạo ra biến dự đoán có giá trị liên tục Nhiệm vụ của hồi quy thường là phân loại, với điểm khác biệt chính là thuộc tính để dự báo có tính liên tục chứ không rời rạc Việc dự báo các giá trị số thường sử dụng các phương pháp thống kê cổ điển như hồi quy tuyến tính Tuy nhiên, phương pháp mô hình hóa cũng có thể được sử dụng như cây quyết định.
Tổng hợp hóa (Summarization)
Là công việc liên quan đến các phương pháp tìm kiếm mô tả đặc trưng của một lớp đối tượng Kỹ thuật mô tả khái niệm và tổng hợp hóa thường được áp dụng trong phân tích dữ liệu có tính thăm dò và báo cáo tác động Nhiệm vụ chính là sinh ra các mô tả đặc trưng cho một lớp Mô tả loại này là một kiểu tổng hợp, tóm tắt các đặc tính chung của tất cả hay hầu hết các mục của một lớp Các mô tả đặc trưng thể hiện theo luật cú như sau: "Nếu một mục thuộc về lớp đã chỉ trong tiền đề thì mục đó có tất cả các thuộc tính đã nêu trong kết luận."
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 16
Mô hình hóa s ự ph ụ thu ộ c (dependency modeling)
Mô hình mô tả sự phụ thuộc giữa các biến và thuộc tính được chia thành hai mức: mức cấu trúc và mức định lượng Mức cấu trúc thường được thể hiện qua đồ thị, trong đó các biến phụ thuộc vào các biến khác Mức định lượng mô hình mô tả mức độ phụ thuộc giữa các biến, và những phụ thuộc này thường được biểu thị thông qua các quy luật.
Nêu đúng nguyên tắc, nếu tiền đề đúng thì kết luận cũng sẽ đúng Cả tiền đề và kết luận đều có thể là các giá trị thuộc tính trong một mối quan hệ logic Trong thực tế, tiền đề thường là tập hợp các giá trị thuộc tính, trong khi kết luận chỉ đại diện cho một thuộc tính cụ thể Hiện nay, hệ thống có thể phát hiện các luật phân lớp, trong đó tất cả các luật cần phải có một thuộc tính cụ thể được chỉ ra trong kết luận.
Quan hỏa phá thuộc có thể biểu diễn dưới dạng mạng tin cây Bayes Đây là đồ thị có hướng, không chu trình Các nút biểu diễn thuộc tính và trọng số của liên kết giữa các nút đó.
Phân cām dā liáu
Phân cụm dữ liệu là gì
Phân cụm dữ liệu là một kỹ thuật trong khai thác dữ liệu nhằm phát hiện các cụm, mẫu dữ liệu tiềm ẩn và quan trọng trong tập dữ liệu lớn, từ đó cung cấp thông tin và tri thức hỗ trợ cho việc ra quyết định.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 17
Phân cám dữ liệu là quá trình nhóm các đối tượng tương tự vào các cụm sao cho các đối tượng trong cùng một cụm có tính chất đồng nhất, trong khi các đối tượng thuộc các cụm khác nhau không có tính chất tương đồng Đây là một ví dụ của phương pháp học không có thầy, khác với phân loại dữ liệu, phân cám dữ liệu không yêu cầu định nghĩa trước các mẫu dữ liệu huấn luyện Do đó, phân cám dữ liệu có thể được coi là một cách học bằng quan sát, trong khi phân loại dữ liệu là học bằng ví dụ Hơn nữa, phân cám dữ liệu còn có thể được sử dụng như một bước tiến quan trọng cho các thuật toán khai thác dữ liệu khác như phân loại và mô tả đặc điểm, có tác dụng trong việc phát hiện ra các cụm.
Chỳng ta cú thể th¿y điÃu này vòi một vớ dā đÂn giÁn nh° sau:
Hình 1.3: Ví dụ về phân cụm dữ liệu
Trong bài viết này, chúng ta sẽ xác định bốn cảm giác dựa trên các dữ liệu đã cho Các tiêu chí để phân cảm trong trường hợp này là khoảng cách: hai hoặc nhiều đối tượng thuộc nhóm cảm giác được "đóng gói" theo một khoảng cách nhất định Điều này được gọi là phân cảm dựa trên khoảng cách.
Một kiểu phân cám dā liáu khác là phân cám dā liáu dựa vào khái niệm, trong đó hai hay nhiều đối tượng thuộc cùng nhóm màu có một định nghĩa khái niệm chung cho tất cả các đối tượng đó Điều này có nghĩa là các đối tượng trong nhóm phải phù hợp với nhau theo những khái niệm đã được định nghĩa, không phải theo những biến pháp đơn giản tăng thêm.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 18
Các m ụ c tiêu c ÿ a phân c ụ m d ữ li ệ u
Mục tiêu của phân cụm dữ liệu là xác định các nhóm nội tại trong một bộ dữ liệu không có nhãn Tuy nhiên, để xác định điều gì tạo thành một cụm tốt, cần có các tiêu chuẩn rõ ràng Không có tiêu chuẩn tuyệt đối nào cho một cụm tốt, mà nó phụ thuộc vào mục đích cuối cùng của phân cụm dữ liệu Do đó, người dùng cần cung cấp các tiêu chuẩn phù hợp để đảm bảo kết quả của phân cụm dữ liệu đáp ứng nhu cầu của họ.
Trong việc tìm kiếm đối tượng, chúng ta cần chú ý đến các nhóm đồng nhất trong các cảm tác nhiên và mục tiêu thuộc tính không biết của chúng Điều này bao gồm việc tìm kiếm các nhóm hầu ích và phù hợp, cũng như tìm kiếm các đối tượng bất thường trong dữ liệu, như có biết, ngoại lai và nhiều.
Hình 1.4: Ví dụ phân cụm các ngôi nhà dựa trên khoảng cách
Trong phân tích cảm xúc, việc xử lý dữ liệu không chính xác là một thách thức lớn, thường do quá trình thu thập thiếu chính xác hoặc thiếu đầy đủ Để cải thiện chất lượng dữ liệu, cần thiết phải xây dựng chiến lược để loại bỏ hoặc khắc phục các dữ liệu sai lệch trước khi chuyển sang giai đoạn phân tích Các đối tượng dữ liệu không chính xác, không đồng nhất hoặc thiếu thông tin có thể ảnh hưởng đến kết quả Một kỹ thuật phổ biến là thay thế giá trị thuộc tính của các đối tượng dữ liệu bằng giá trị thuộc tính tương ứng Bên cạnh đó, việc tìm kiếm các đối tượng ngoại lai cũng là một phương pháp quan trọng trong phân tích cảm xúc, giúp xác định nhóm nhỏ các đối tượng dữ liệu khác biệt so với các dữ liệu trong cơ sở, từ đó tránh ảnh hưởng tiêu cực đến quá trình và kết quả phân tích.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 19
Hình 1.5: Ví dụ phân cụm các ngôi nhà dựa trên kích cở
Theo các nghiên cứu hiện nay, chưa có phương pháp phân cụm tổng quát nào có thể giải quyết hoàn toàn tất cả các dạng cấu trúc của dữ liệu Hiện tại, các phương pháp phân cụm thường có cách thức biểu diễn cấu trúc dữ liệu khác nhau, và mỗi cách thức biểu diễn sẽ tương ứng với một thuật toán phân cụm phù hợp Do đó, phân cụm dữ liệu vẫn là một vấn đề khó khăn và phức tạp, vì phải giải quyết nhiều vấn đề cơ bản một cách trọn vẹn và phù hợp với nhiều dạng dữ liệu khác nhau Điều này đặc biệt đúng đối với dữ liệu hỗn hợp, đang ngày càng gia tăng trong các lĩnh vực quản trị dữ liệu, và đây cũng là một trong những thách thức lớn trong lĩnh vực khai phá dữ liệu.
Các phương pháp phân cụm dữ liệu
Các kỹ thuật phân cụm hiện nay có nhiều phương pháp tiếp cận và ứng dụng trong phân tích dữ liệu, với hai mục tiêu chính là chất lượng của các cụm thu được và tốc độ thực hiện của thuật toán Các phương pháp phân cụm có thể được phân loại thành: phân cụm phân hoạch, phân cụm phân cấp, phân cụm dựa trên mật độ, phân cụm dựa trên lưới, phân cụm dựa trên mô hình và phân cụm có ràng buộc dữ liệu.
1.3.4.1 Phương pháp phân cụm phân cấp
Phương pháp dưới lên (Bottom up) bắt đầu từ việc phân tích từng đối tượng riêng biệt, sau đó tiến hành nhóm các đối tượng này theo một tiêu chí nhất định, thường là khoảng cách giữa hai trung tâm Phương pháp này giúp tạo ra sự hiểu biết sâu sắc hơn về các mối quan hệ và tương tác giữa các đối tượng trong một hệ thống.
Quá trình số hóa được thực hiện bởi Trung tâm Học liệu – ĐHTN, cho phép các nhóm hòa nhập vào một nhóm cao nhất trong cây phân cấp hoặc kết thúc khi các điều kiện được thỏa mãn Cách tiếp cận này là một chiến lược quan trọng trong quá trình phân cấp.
Hình 1.6 Các chiến lược phân cụm phân cấp
Phương pháp trên xuống (Top Down) bắt đầu từ việc phân tích tổng thể và sau đó tách nhỏ các đối tượng thành những phần cụ thể hơn Mỗi vòng lặp thành công sẽ chia một cảm xúc lớn thành các cảm xúc nhỏ hơn dựa trên giá trị của một phép đo nào đó Điều này có thể áp dụng cho từng đối tượng hoặc cho toàn bộ khi các điều kiện dừng được thỏa mãn Cách tiếp cận này thể hiện chiến lược chia để trị trong quá trình phân tích cảm xúc.
1.3.4.2 Phương pháp phân cụm dựa trên mật độ
Kỹ thuật này nhóm các đối tượng dữ liệu trên mặt độ xác định, trong đó mặt độ là số lượng đối tượng lân cận của một đối tượng dữ liệu theo một nghĩa nhất định Khi một dữ liệu đã được xác định, nó sẽ tác động để phát triển thêm các đối tượng dữ liệu mới, với số lượng các đối tượng lân cận này phải lớn hơn một ngưỡng đã được xác định trước Phương pháp phân cảm dựa trên mặt độ của các đối tượng nhằm xác định các cảm dữ liệu có thể phát hiện ra các cảm dữ liệu vô hình bất kỳ.
Kỹ thuật này có khả năng khắc phục các vấn đề ngoại lai hoặc giá trị nhiễu rất tốt, tuy nhiên việc xác định các tham số mật độ của thuật toán lại rất khó khăn Các tham số này có tác động lớn đến kết quả phân cảm.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 21
Hình 1.7: Ví dụ về phân cụm theo mật độ (1)
Phân cụm theo mật độ là một phương pháp quan trọng trong phân tích dữ liệu, với các thuật toán tiêu biểu như DBSCAN (KDD’96), DENCLUE (KDD’98), CLIQUE (SIGMOD’98) và OPTICS (SIGMOD’99) Những thuật toán này giúp xác định các nhóm dữ liệu có mật độ cao, từ đó phát hiện ra cấu trúc và mẫu trong tập dữ liệu.
1.3.4.3 Phương pháp phân cụm phân hoạch
Kỹ thuật phân hoạch tập hợp dữ liệu thành k nhóm giúp xác định số các cảm đặc thiết lập Số các cảm đặc thiết lập là các đặc trưng được chọn trước Phương pháp này hiệu quả trong việc tìm các cảm hình cấu trong không gian Euclidean Ngoài ra, phương pháp này cũng dựa vào khoảng cách giữa các điểm để xác định các điểm dữ liệu nào có quan hệ gần nhau và các điểm nào không có quan hệ hoặc có quan hệ xa nhau Tuy nhiên, phương pháp này không thể xử lý các cảm có hình dạng kỳ quặc hoặc các cảm có mật độ điểm dữ liệu đặc.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 22 dā liỏu có độ phức tạp lớn khi xác định nghiệm tối ưu toàn cục cho vấn đề phân cụm dā liáu, do phải tìm kiếm tất cả các cách phân hoạch có thể Vì vậy, việc tìm giải pháp tối ưu cho vấn đề này bằng cách sử dụng một hàm tiêu chuẩn để đánh giá chất lượng của cụm là cần thiết, nhằm hỗ trợ cho quá trình tìm kiếm phân hoạch dā liáu Ý tưởng chính của thuật toán phân cụm phân hoạch tối ưu là sử dụng chiến lược tham lam (Greedy) để tìm kiếm nghiệm Các thuật toán tiêu biểu trong phương pháp tiếp cận theo phân cụm phân hoạch bao gồm: K-means, K-medoids, CLARA (Clustering Large Applications), và CLARANS (Clustering Large Applications based on Randomized Search).
1.3.4.4 Phương pháp phân cụm dựa trên lưới
Kỹ thuật phân cám dựa trên lòi thích hợp với dữ liệu nhiều chiều, tập trung vào cấu trúc dữ liệu lòi để phân cám Phương pháp này chủ yếu áp dụng cho lớp dữ liệu không gian, nhằm biến hóa dữ liệu thành các cụm tạo thành cấu trúc dữ liệu lòi Các thao tác phân cám chỉ tương tác với các đối tượng trong từng cụm, không phải các đối tượng dữ liệu Cách tiếp cận này không di chuyển các đối tượng trong các cụm mà xây dựng nhiều mức phân cấp của nhóm các đối tượng trong một ô Phương pháp này tương tự như phương pháp phân cám phân cấp nhưng không trộn các cụm, giải quyết yêu cầu cấu trúc dữ liệu nhiều chiều mà phương pháp phân cám dựa trên mặt độ không giải quyết được Ưu điểm của phương pháp phân cám dựa trên lòi là thời gian xử lý nhanh và độc lập với số đối tượng dữ liệu trong tập dữ liệu ban đầu, thay vào đó phụ thuộc vào số cụm trong mỗi chiều của không gian lòi.
Cấu trúc phân cụm dựa trên lưới Điển hình trong phương pháp tiếp cận theo phân cụm dạng cây được áp dụng thông qua các thuật toán như STING (STatistical INformation Grid approach) do Wang và Yang phát triển.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 23
Muntz (1997), WAVECLUSTER bãi Sheikholeslami, Chatterjee và Zhang (1998), CLIQUE (Clustering In QUEst) bãi Agrawal, Gehrke, Gunopulos, Raghavan (1998)
1.3.4.5 Phương pháp phân cụm dựa trên mô hình
Phòng này tập trung vào việc khám phá các phương pháp xấp xỉ hiệu quả cho các tham số mô hình nhằm tối ưu hóa việc khớp với dữ liệu Chúng có thể áp dụng chiến lược phân cụm phân tích hoặc phân cụm phân cấp, dựa trên cấu trúc hoặc mô hình mà họ định hình và cách thức điều chỉnh các mô hình này để nhận diện các phân cụm.
Hình 1.10: Ví dụ về phân cụm dựa trên mô hình
Phương pháp phân cụm dựa trên mô hình cố gắng kết hợp các dữ liệu vào mô hình toán học, với giả định rằng dữ liệu được tạo ra từ một hỗn hợp phân phối xác suất cơ bản Các thuật toán phân cụm dựa trên mô hình có hai cách tiếp cận chính: mô hình thống kê và mạng nơ-ron Phương pháp này tương tự như phương pháp phân cụm dựa trên mật độ, vì chúng phát triển các cụm riêng biệt nhằm cải thiện các mô hình đã được xác định trước đó, nhưng đôi khi không bắt đầu với một số cụm cố định và không sử dụng cùng một khái niệm mật độ cho các cụm Điển hình trong phương pháp tiếp cận theo phân cụm dựa trên mô hình là các thuật toán như EM, COBWEB, CLASSIT, AutoClass (Cheeseman và Stutz, 1996).
1.3.4.6 Phương pháp phân cụm có dữ liệu ràng buộc
Việc phát triển các phương pháp dữ liệu không gian trên cơ sở dữ liệu lớn mang lại nhiều lợi ích cho việc phân tích thông tin địa lý Tuy nhiên, hầu hết các thuật toán hiện có chỉ cung cấp rất ít cách thức cho người dùng để xác định các ràng buộc.
GiÁi thuÁt di truyÃn
Lịch sử cÿa giải thuật di truyền
Thuật toán di truyền, một lĩnh vực nghiên cứu bắt nguồn từ những năm 50-60 của thế kỷ XX, được khởi xướng bởi Alex Fraser, người đã chỉ ra mối liên hệ giữa sự tiến hóa của sinh vật và chương trình tin học John Henry Holland là người đã phát triển ý tưởng này và xây dựng phương pháp giải quyết vấn đề dựa trên sự tiến hóa của con người Ông đã tổng hợp các khái niệm này trong cuốn sách "Adaptation in Natural and Artificial Systems" xuất bản năm 1975 Dựa trên lý thuyết cơ bản và thuật toán di truyền của Holland, Keneth De Jong đã triển khai và chứng minh những đóng góp quan trọng trong việc tạo ra nền tảng toán học cho lý thuyết thuật toán di truyền Sau này, John Koza tiếp tục phát triển và mở rộng thuật toán di truyền, góp phần vào sự tiến bộ của lĩnh vực này.
Lần đầu tiên, Holland nghiên cứu các thuật giả này và nhận thấy chúng hoàn toàn không có tên Nguồn gốc của phương pháp này xuất phát từ các gen di truyền, vì vậy Holland đã đặt tên cho nó là "thuật giả di truyền".
Tóm t ắ t gi ả i thu ậ t di truy ề n
Kỹ thuật giải di truyền (GA) là phương pháp tối ưu hóa, giúp giải quyết các bài toán phức tạp thông qua việc mô phỏng quá trình tiến hóa của các sinh vật Dựa trên thuyết tiến hóa của Darwin, GA hoạt động trong các điều kiện môi trường đã được quy định, nhằm tìm ra giải pháp tối ưu nhất cho vấn đề đặt ra.
GA là một thuÁt giÁi, nghĩa là māc tiêu căa GA không nh¿m đ°a ra lái giÁi chính xác tối °u mà là đ°a ra lái giÁi t°¢ng đối tối °u [1][7]
Theo giáo sư John Holland, bài toán được đặt ra là chuyển đổi và biểu diễn các thông số thành các chuỗi bit với chiều dài cố định Những thông số này có thể là biến của một hàm hoặc hệ số của một biểu thức toán học Các chuỗi bit này được gọi là genome, tương ứng với mỗi cá thể, và mỗi genome đều có chiều dài cố định Tóm lại, một lời giải được biểu diễn bằng một chuỗi bit, tương tự như mỗi cá thể được quy định bởi gen của nó Do đó, trong thuật toán di truyền, một cá thể chỉ có một gen duy nhất và một gen cũng chỉ phản ánh một cá thể duy nhất.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 26
Trong quá trình phát sinh quần thể ban đầu, chúng ta tạo ra một tập hợp các chuỗi bit ngẫu nhiên, được gọi là quần thể ban đầu Dựa trên một hàm nhất định, chúng ta xác định giá trị độ thích nghi (Fitness), phản ánh mức độ "tốt" của các cá thể Do tính ngẫu nhiên, độ thích nghi của quần thể ban đầu là không xác định Để cải thiện độ thích nghi, chúng ta tạo ra quần thể mới thông qua hai thao tác chính Thao tác đầu tiên là sao chép một nhóm cá thể tốt từ quần thể trước và chuyển sang quần thể sau (selection), đảm bảo rằng độ thích nghi của quần thể mới luôn đạt một mức độ hợp lý Các cá thể được chọn thường là những cá thể có độ thích nghi cao nhất.
Thao tác thứ hai trong quá trình tối ưu hóa là tạo ra các cá thể mới bằng cách thực hiện các thao tác sinh sản trên một số cá thể đặc chọn từ thế hệ trước, thường là những cá thể có độ thích nghi cao Có hai loại thao tác sinh sản: lai tạo (crossover) và đột biến (mutation) Trong thao tác lai tạo, gen của hai cá thể đặc chọn trong thế hệ trước được phối hợp với nhau theo một số quy tắc nhất định để tạo thành hai gen mới.
Thao tác chọn lọc và lai tạo giúp tạo ra thế hệ mới, nhưng đôi khi do đặc tính của thế hệ ban đầu không phong phú và không phù hợp, khiến các cá thể không đạt được hiệu quả tối ưu Điều này làm cho việc tìm ra giải pháp tối ưu trở nên khó khăn Thao tác đột biến có thể giúp giải quyết vấn đề này bằng cách tạo ra một cá thể hoàn toàn mới thông qua việc biến đổi ngẫu nhiên một hoặc nhiều thành phần gen của cá thể hiện có Tuy nhiên, thao tác này chỉ được phép xảy ra với tần suất rất thấp (thường khoảng 0.01), vì nếu không sẽ gây ra sự xáo trộn và làm mất đi những cá thể đã được chọn lọc và lai tạo có tính thích nghi cao, dẫn đến thuật toán không còn hiệu quả.
Thá hỏ mòi đóng vai trò quan trọng trong việc tạo ra môi trường lý tưởng cho đám mây, nhằm xác định độ thích nghi và duy trì sự phát triển của nó Việc
Tóm lại: Một thuÁt giÁi di truyÃn (hay một ch°¢ng trình tiÁn hóa b¿t kỳ) giÁi một bài toỏn cā thể phÁi gòm năm thành phÁn sau đõy:
- Cỏch biểu diòn nhiòm sắc thể cho lỏi giÁi bài toỏn
- Cách khãi t¿o quÁn thể ban đÁu
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 27
- Hàm l°ÿng giá đóng vai trò môi tr°áng, đánh giá các lái giÁi theo mức độ thích nghi căa chúng
- Các phép toán di truyÃn
- Cỏc tham sốkhỏc(kớch th°òc quÁn thể,Pc , Pm …)
- Input: một bài toán tối °u max f(x) trong không gian x € X
- Output: một nghiám tốt căa f, x0 € X f(x0) đ¿t lân cÁn max
1 Khởi tạo một quần thểban đầu với n cá thể
2 Lặp m buớc, mỗi bước phát sinh một quần thể mới theo quy trình sau
- Chọn ngẫu nhiên một cặp hai cá thể cha mẹ B và M theo xác xuất Pl
- Sinh hai cá thể mới C1 và C2 từ B và M
- Thay thế C1 và C2 cho B và M
- Chọn ngẫu nhiên một cá thể X theo xác xuất Pd
- Tính lại độ thích nghi cÿa các cá thể
- Chọn các cá thể có độ thích nghi tốt đưa vào quá trình mới
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 28
Hình 2.1:Sơ đồ tổng quát cÿa giải thuật di truyền
Khãi t¿o ng¿u nhiên quÁn thể P(0)
Tính độ thích nghi các cá thể c căa P(0)
P’(t) Chọn lọc đ°ÿc P(t-1) Lai ghép P(t-1) đ°ÿc Q(t) Đột biÁn Q(t) đ°ÿc R(t)
Tính độ thích nghi các cá thể Chọn lọc P(t) từ R(t), P(t-1) QuÁn thể mòi P(t) ĐiÃu kián dừng
QuÁn thể đă tốt KÁt thúc Đ
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 29
Cách biểu diễn bài toán trong giải thuật di truyền (hay chọn cách biểu diễn cấu trúc dữ liệu cho bài toán)
Để giải quyết một bài toán trong lĩnh vực kỹ thuật di truyền, việc chọn cấu trúc dữ liệu phù hợp là thao tác quan trọng nhất Trong kỹ thuật di truyền, chúng ta thường sử dụng một trong ba loại cấu trúc dữ liệu: chuỗi nhị phân, chuỗi số thập phân và cấu trúc cây Trong số đó, chuỗi nhị phân và chuỗi số thập phân thường được sử dụng nhiều hơn.
2.1.3.1 Biểu diễn Gen bằng chuỗi nhị phân
Quy tắc biểu diễn gen qua chuỗi nhị phân yêu cầu chọn chuỗi nhị phân ngắn nhất nhưng vẫn thể hiện đầy đủ kiểu gen Để biểu diễn chuỗi nhị phân, có thể sử dụng các cách như mảng byte, mảng bit và mảng INTEGER Mảng byte và mảng bit hiện tại ít được sử dụng, trong khi mảng INTEGER thường được ưa chuộng để tối ưu truy xuất Do đó, bài viết này sẽ chỉ tập trung vào mảng INTEGER.
VD: Nhiòm sắc thể x ta biểu diòn b¿ng 1 chuỗi 15 bit
MÁng integer nén để tối °u truy xu¿t
Trong các máy tính hiện đại, đơn vị truy xuất dữ liệu quan trọng nhất không còn là byte mà là bội số của byte, được gọi là độ dài từ (word length) Hiện nay, các máy Pentium có độ dài từ là 4 byte.
Để tối ưu hóa tốc độ truy xuất dữ liệu, chúng ta cần hiểu rõ về kiểu dữ liệu INTEGER trong lập trình Độ dài của kiểu INTEGER phụ thuộc vào kiến trúc máy tính và trình biên dịch Ví dụ, trên hệ điều hành DOS, kiểu INTEGER thường có độ dài 2 byte, trong khi trên Windows 9x như Delphi hay Visual C++, nó có thể là 4 byte Để đảm bảo chương trình hoạt động hiệu quả trên nhiều nền tảng khác nhau, chúng ta nên sử dụng hàm sizeof() để xác định độ dài của kiểu dữ liệu mà chúng ta đang sử dụng.
Biểu diòn số thčc b¿ng chuỗi nhò phõn
Tuy cú nhiÃu chọn lăa nh°ng thụng th°ỏng, để biểu diòn một số thăc x, ng°ỏi ta chỉ dùng công thức đ¢n giÁn, táng quát sau :
GiÁ sÿ ta muốn biểu diòn số thăc x n¿m trong khoÁng [min, max] b¿ng một chuỗi nhị phân A dài L bit Lúc đó, ta s¿ chia miÃn [min, max] (l°ÿng hóa) thành 2 L -
1 vựng Trong đú, kớch th°òc một vựng là :
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 30
Độ chính xác của số thập phân được biểu diễn bằng cách xác định giá trị nhỏ nhất mà chuỗi nhị phân dài L bit có thể biểu diễn Giá trị của số thập phân x được tính thông qua công thức: x = min + Decimal() * g, trong đó g là độ chính xác của số thập phân.
Trong đó Decimal () là hàm để tính giá trị thÁp phân nguyên d°¢ng căa chuỗi nhị phân A theo quy tắc đÁm Hàm này đ°ÿc tính theo công thức sau:
Vòi ai là bit thứ i trong chuỗi nhị phõn tớnh từ phÁi sang trỏi (bit phÁi nh¿t là bit 0)
VD: Bài toán tối °u số
Tỡm giỏ trị lòn nh¿t căa hàm f(x) = x*sin(10*pi*x) + 1 vòi x € [-1,2]
Sử dụng vector để biểu diễn giá trị xác suất của biến x Chiều dài vector phụ thuộc vào độ chính xác cần có; trong trường hợp này, chúng ta tính toán độ chính xác cần thiết.
Giá trị của x có chiều dài 2 - (-1) = 3; do đó, yêu cầu và độ chính xác cần 6 số lẻ, nhằm chia khoảng [-1, 2] thành ít nhất 3*10^6 khoảng có kích thước bằng nhau Điều này có nghĩa là cần có 22 bit cho biểu diễn nhị phân (nhị phân sắc thể).
2097152 = 2 21 < 3 000000 < 2 22 = 4194304 Ánh x¿ chuỗi nhị phân (b21b20…b0) từ c¢ số 2 sang c¢ số 10:
Tìm số thăc x t°¢ng ứng x = -1 + x’*
22 vòi -1 là lõn cÁn d°òi căa miÃn giỏ trị và 3 là chiÃu dài căa miÃn
Thớ dā, nhiòm sắc thể (1000101110110101000111) biểu diòn số 0.637197 vỡ x’ = (1000101110110101000111)2 = 228896710 và x = -1.0 + 2288967* 3/4194303
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 31
Ta cÁn căc đ¿i hóa hàm sau đây: f(x1, x2) = 21.5 + x1* sin(4*pi*x1) + x2 * sin(10*pi*x2) Vòi -3.0 ≤ x1 ≤ 12.1 và 4.1 ≤ x2 ≤ 5.8
Giá trị sÿ ta cần xác định cho mỗi biến là 4 số lẻ Miền giá trị biến x1 có chiều dài 15.1, được tính từ -3 đến 12.1 Điều kiện chính xác yêu cầu miền [-3, 12.1] được chia thành các khoáng có kích thước bằng nhau, với tối thiểu là 15.1 * 10000 khoáng Điều này có nghĩa là cần 18 bit để đại diện cho nhiều sắc thể.
2 17 ≤ 151000 ≤ 2 18 MiÃn căa biÁn x2 có chiÃu dài 5.8 – 4.1 = 1.7; điÃu kián chính xác đòi hỏi đo¿n [4.1, 5.8] cÁn đ°ÿc chia thành cỏc khoÁng cú kớch th°òc b¿ng nhau, ớt nh¿t là 1.7 *
10000 khoÁng ĐiÃu này cú nghĩa là cÁn 15 bit kÁ tiÁp căa nhiòm sắc thể:
2 14 ≤ 17000 ≤ 2 15 ChiÃu dài toàn bộ nhiòm sắc thể (vect lỏi giÁi) lỳc này là m +18 = 33 bit;
18 bit đÁu tiên mã hóa x1, và 15 bit còn l¿i (từ 19 ðÁn 33) mã hóa x2
Ta hóy xột một nhiòm sắc thể làm thớ dā:
18 bit đÁu tiờn, 010001001011010000, biểu diòn x1 = -3.0 + decimal(0100010010110100002) *
15 bit kÁ tiÁp 111110010100010, biểu diòn x2 = 4.1 + decimal(1111100101000102)*
Nh° vÁy, nhiòm sắc thể (010001001011010000111110010100010) T°Âng ứng vòi = Độ thich nghi căa nhiòm sắc thể này là: f(1.052426, 5.755330) = 20.252640
2.1.3.2 Biểu diễn gen bằng chuỗi số thực Đối vòi nhāng v¿n đà bài toỏn cú nhiÃu tham số, viỏc biểu diòn gen b¿ng chuỗi số nhịphân đôi lúc s¿ làm cho kiểu gen căa cá thể trã nên quá phức t¿p D¿n đÁn viác thi hành các thao tác trên gen trã nên kém hiáu quÁ Khi đó, ng°ái ta s¿ chọn biểu diòn kiểu gen d°òi d¿ng một chuỗi số thăc Tuy nhiờn, chọn biểu diòn kiểu gen b¿ng chuỗi số thăc, b¿n cÁn l°u ý quy tắc sau: Quy tắc biểu diễn kiểu gen bằng chuỗi số
Biểu diễn kiểu gen bằng số thực cần phải tối ưu hóa không gian cho từng thành phần gen.
Quy tắc này nhấn mạnh việc tiết kiệm không gian bộ nhớ cho các thành phần gen Bài toán đề cập đến ba thành phần: thành phần X có giá trị trong khoảng [1.0, 2.0], thành phần Y nguyên trong khoảng [0, 15] và thành phần Z trong khoảng [5, 8] Việc chọn biểu diễn kiểu gen bằng chuỗi ba thành phần số thực không phải là lựa chọn tối ưu, vì mỗi số thực cần 6 byte, tổng cộng sẽ tốn ít nhất 18 byte cho ba số Do đó, trong trường hợp này, nên chọn biểu diễn bằng chuỗi nhị phân, sử dụng khoảng 10 bit cho thành phần X với độ chính xác khoảng 0.001.
4 bit cho thành phÁn Y và 2 bit cho thành phÁn Z Táng cộng chỉ chiÁm có 16 bit = 2 byte Chỳng ta đó tiÁt kiỏm đ°ÿc r¿t nhiÃu bộ nhò!
2.1.3.3 Biểu diễn gen bằng cấu trúc cây
Một loại cây thường được sử dụng trong thuật giải truyền là cây hai nhánh, trong đó hai nhánh được dựng lên để phân biệt với loại cây nhị phân, thường dùng trong sắp xếp và tìm kiếm.
3.1.3.4 Nguyên lý vềxác định tính thích nghi
Tính tốt của một cá thể (lái giỏi) trong một quần thể chỉ là một cơ sở để xác định tính thích nghi của cá thể đó Nguyên lý này có vẻ phức tạp khi chúng ta hiểu rõ các khái niệm trong thuật giải di truyền Một lái giỏi có thể có khả năng bị kẹt trong các thế hệ sau, nhưng vẫn có tiềm năng tạo ra thế hệ lái giỏi tối ưu Thường thì, lái giỏi ở thế hệ hiện tại có xác suất tạo ra lái giỏi tối ưu cao hơn so với lái kém Do đó, độ tốt của lái giỏi được xem là yếu tố căn bản để xác định tính thích nghi Tính thích nghi của lái giỏi cũng chính là xác suất để cá thể đó được chọn lọc hoặc lai ghép trong quá trình sinh ra thế hệ kế tiếp Chúng ta sẽ lần lượt tìm hiểu ba phương pháp để xác định tính thích nghi của một cá thể.
3.1.3.5 Độ thích nghi tiêu chuẩn
Hàm māc tiêu là công cụ đánh giá chất lượng của một cá thể hoặc lái giÁi, dựa vào một tham số là gen của cá thể đó Giá trị của số thắc được trả ra từ hàm māc tiêu cho phép xác định độ tốt của cá thể; trong trường hợp tối ưu hóa lớn, giá trị thắc càng lớn thì cá thể càng tốt, và ngược lại, trong tối ưu hóa nhỏ, giá trị thắc càng nhỏ thì cá thể càng tốt.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 33
Giá trị sinh trong một thế hệ có N cá thể, trong đó cá thể thứ i được ký hiệu là ai Hàm mục tiêu được xác định là hàm G Độ thích nghi của một cá thể ai được tính dựa trên độ thích nghi tiêu chuẩn.
ChÁng h¿n, xột một thÁ hỏ gòm cú 6 cỏ thể vòi độ tốt (giỏ trị càng lòn thỡ cỏ thể càng tốt) lÁn l°ÿt cho trong bÁng sau:
Theo công thức trên, táng t¿t cÁ G căa 6 phÁn tÿ là : 17.5
Nh° vÁy, độ thớch nghi căa phÁn tÿ a1: F(a1) = 5.3 / 17.5 ằ 0.303 Độ thích nghi căa phÁn tÿ a2: F(a2) = 2.1 / 17.5 = 0.12
Ta có bÁng kÁt quÁ cuối cùng nh° sau :
Mã hóa (encoding)
Mó húa nhiòm sắc thể là b°òc đÁu tiờn để giẩi quyÁt v¿n đà b¿ng giÁi thuÁt di truyÃn Mã hóa là v¿n đà quan trọng nh¿t
2.1.4.2 Mã hóa bằng số nhị phân (Binary Encoding)
Mã hóa b¿ng số nhị phân là ph°¢ng pháp chính Bãi vì là ph°¢ng pháp đÁu tiên GA dung để mã hóa và nó đ¢n giÁn
Mỗi nhiòm sắc thể đ°ÿc biểu diòn b¿ng chuỗi bit 0 hoặc 1
Nhiòm sắc thể A 101100101100101011100101 Nhiòm sắc thể B 111111100000110000011111
Ví dụ mã hóa nhiễm sắc thể bằng chuỗi nhị phân
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 36
Mô húa số thắc biểu diễn cho nhiều sắc thể với số lượng gen nhỏ Còn với lượng gen lớn, phương pháp này thường không giải quyết được nhiều vấn đề tự nhiên và các phép sửa chữa sau lai ghép và đột biến.
2.1.4.3 Mã hóa vị trí (Permutation Encoding)
Nhāng v¿n đà dăa trên thứ tă có thể dùng mã hóa vị trí, ví dā nh° bài toán ng°ái du lịch hoặc thao tác thứ tă v¿n đÃ
Trong mó húa vị trớ mỗi nhiòm sắc thể đ°ÿc biểu diòn b¿ng chuỗi số nguyờn theo một vị trí trình tă nh¿t định
Nhiòm sắc thể A 1 5 3 2 6 4 7 9 8 Nhiòm sắc thể B 8 5 6 7 2 3 1 4 9
Ví dụ mã hóa nhiễm sắc thể theo vị trí
Mã hóa vị trí có thể áp dụng trong nhiều vấn đề đã có tính trình tự Một số phép lai ghép và đột biến yêu cầu sự nhất quán, cho một số vấn đề nhất định.
2.1.4.4 Mã hóa theo giá trị (Value Encoding)
Mã hóa theo giá trị có thể áp dụng cho nhiều vấn đề, đặc biệt là với những giá trị phức tạp như giá trị thắc Việc sử dụng mã hóa nhị phân để giải quyết vấn đề này gặp nhiều khó khăn.
Nhiòm sắc thể C (back), (back), (right), (forward), (left)
Ví dụ mã hóa nhiễm sắc thể theo giá trị
Mã hóa theo giá trị là phương pháp hiệu quả cho nhiều vấn đề đặc biệt Tuy nhiên, phương pháp này thường gặp khó khăn trong việc phát triển một số vấn đề lai ghép và đột biến có thể xảy ra.
2.1.4.5 Cây mã hóa (Tree Encoding)
Cây mã hóa là công cụ quan trọng trong chương trình tiến hóa và biểu thức lập trình Trong cây mã hóa, mỗi nhiễm sắc thể được biểu diễn như một cây, với các hàm và lệnh trong ngôn ngữ lập trình.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 37
Nhiòm sắc thể A Nhiòm sắc thể B
Hình 2.2: Nhiễm sắc thể bằng cây
Cây mã hóa là cấu trúc quan trọng trong các chương trình tiễn hóa, cho phép mã hóa hiệu quả Ngôn ngữ lập trình LISP thường được sử dụng để tìm kiếm và xử lý dữ liệu, với các chương trình sự kiện được biểu diễn dưới dạng cây Điều này giúp việc quản lý và truy vấn dữ liệu trở nên dễ dàng hơn, đồng thời hỗ trợ việc biến đổi và xây dựng cây một cách linh hoạt.
Các phương pháp chọn(Selection)
Chọn lọc cá thể dựa trên mức độ thích nghi của chúng là một phương pháp quan trọng để xác định cá thể tốt nhất Để thực hiện điều này, cần đánh giá độ thích nghi của từng cá thể bằng cách gán mỗi cá thể một giá trị điểm thích nghi Kết quả đánh giá sẽ được tổng hợp từ các số điểm này, và cá thể có điểm số thấp nhất hoặc cao nhất sẽ được coi là cá thể tốt nhất.
Theo thuyết Darwin, sự sống phát triển thông qua quá trình chọn lọc tự nhiên, dẫn đến sự tồn tại của những cá thể mạnh mẽ hơn Có nhiều phương pháp để chọn lọc các nhiễm sắc thể tốt nhất, giúp cải thiện giống loài Dưới đây là một số phương pháp tiêu biểu trong số đó.
Chọn lọc Roulette (Roulette Wheel Selection)
Cỏc cỏ thể đ°ÿc chọn theo độ thớch nghi căa chỳng Nhiòm sắc thể tốt hÂn cú c¢ hội cao h¢n để tham dă vào thÁ há tiÁp theo
ThuÁt giÁi chọn lọc roulette (Davis, [1991,8]) nh° sau:
Tính táng độ thích nghi căa mọi thành viên trong quÁn thể; gọi kÁt quÁ là độ thích nghi táng cộng (total fitness)
Phát sinh n là một yếu tố ngẫu nhiên từ 0 và độ thích nghi tổng thể (total fitness) Sự xuất hiện của thành viên đầu tiên trong quần thể có độ thích nghi lớn hơn hoặc bằng n sẽ bổ sung vào độ thích nghi của các thành viên đứng trước trong quần thể.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 38
2.1.6.1 Chọn lọc xếp hạng (Rank Selection)
Phương pháp này sắp xếp cá thể dựa trên độ thích nghi của chúng Cá thể kém nhất có giá trị 1, tiếp theo là 2, và cá thể tốt nhất có độ thích nghi bằng N, trong đó N là số lượng nhiễm sắc thể trong quần thể.
2.1.6.2 Chọn lọc cạnh tranh( Tournament Selection)
* Chọn lọc c¿nh tranh 2 (2- Tournament Selection)
Hai nhiễm sắc thể khác nhau được chọn ngẫu nhiên và so sánh với nhiễm sắc thể tồn tại Nếu nhiễm sắc thể I1 không tốt hơn nhiễm sắc thể I2, tức là f(I1) ≤ f(I2), thì nhiễm sắc thể I1 sẽ bị loại bỏ khỏi quần thể Quá trình này lặp lại cho N nhiễm sắc thể còn lại.
* Chọn lọc c¿nh tranh 3 (3- Tournament Selection)
Ba nhiễm sắc thể khác nhau được chọn ngẫu nhiên và so sánh với nhiễm sắc thể tồn tại Nếu f(I1) ≤ f(I2) và f(I1) ≤ f(I3), thì nhiễm sắc thể I1 sẽ bị loại ra khỏi quần thể Quá trình này lặp lại cho N nhiễm sắc thể còn lại.
2.1.6.3 Các phương pháp lai tạo (crossover) và đột biến (mutation)
Lai ghép và đột biến là hai phép toán quan trọng trong giải thuật di truyền, được áp dụng rộng rãi trong nhiều lĩnh vực Phép lai ghép và đột biến thực hiện trên mã hóa và các biến thể khác nhau Có nhiều phương pháp lai ghép và đột biến, trong bài viết này, chúng ta sẽ chỉ đề cập đến một số phương pháp tiêu biểu.
2.1.6.4 Binary Encoding (mã hóa nhị phân)
Lai ghộp một vị trí (Single point crossover) là phương pháp trong di truyền học, nơi chúng ta cắt hai nhiễm sắc thể cha mẹ tại một vị trí xác định và sau đó kết hợp lại để tạo thành nhiễm sắc thể con.
Phép toán 11001011 + 11011111 = 11001111 minh họa cho quá trình lai ghép hai vị trí chéo (Two point crossover) Từ hai nhiễm sắc thể cha mẹ, chúng ta cắt tại hai vị trí xác định và sau đó ghép chúng lại với nhau để tạo thành nhiễm sắc thể con.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 39
11001011 + 11011111 = 11011111 Lai ghộp đòng d¿ng(Uniform crossover) – Nhāng bit đ°ÿc copy ng¿u nhiờn từ nhiòm sắc thể cha thứ nh¿t sang nhiòm sắc thể cha thứ hai và ng°ÿc l¿i
11001011 + 11011101 = 11011111 Lai ghép số học (Arithmetic crossover) – Một vài phép tính số học đ°ÿc thăc hiỏn khi lai ghộp để t¿o ra nhiòm sắc thể con (AND,OR,NOT…)
Chốn bit (Bit inversion) – chọn một số bit sau đú chốn vào nhiòm sắc thể cha, t¿o ra nhiòm sắc thể mòi
2.1.6.5 Permutation Encoding (Mã hóa vị trí)
Lai ghép một vị trí (single point crossover) là phương pháp chọn một vị trí cụ thể trên hai nhiễm sắc thể cha mẹ để thực hiện quá trình lai ghép Sau khi chọn vị trí, các phần của nhiễm sắc thể sẽ được kết hợp lại, tạo ra nhiễm sắc thể con Điều này cho phép tạo ra nhiều biến thể khác nhau từ quá trình lai ghép, mở ra cơ hội cho sự đa dạng di truyền.
Thay đái thứ tă (Order changing )- Chọn hai vị trí sau đó đái vị trí cho nhau
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 40
2.1.6.6 Value Encoding (mã hóa theo giá trị)
T¿t cÁ các ph°¢ng pháp lai ghép trong mã hóa nhị phân đÃu có thể dùng đ°ÿc ãđây
Ta thay đỏi giỏ trị thăc căa một hoặc vài giỏ trị trong nhiòm sắc thể
2.1.6.7 Tree Encoding (Cây mã hóa)
Tree crossover – Ta chọn một vị trớ trong nhiòm sắc thể cha mẹ sau đú ghộp vòi nhau đ°ÿc nhiòm sắc thể mòi
Thay đổi toán tử và số trong GA mã hóa số là một quá trình quan trọng Để thực hiện, bạn cần chọn note và sau đó thay đổi nó Bài toán tối ưu hóa tối đa f(x1, x2,…, xn) được xem xét trên miền D thuộc không gian R m.
Trong bài toán này, một cách tự nhiên, thuật toán di truyền (GA) mã hóa số thực, mỗi cá thể được biểu thị dưới dạng một vector Rn, trong đó các phần tử phải thuộc miền xác định D Mỗi quần thể có kích cỡ m (có m cá thể) có thể được biểu diễn như một ma trận thực cấp m Thuật toán GA sử dụng số thực có nhiều phương pháp toán học để lai ghép khác nhau Dưới đây là một số phương pháp lai ghép thường dùng.
Vòi hai cỏ thể cha mẹ p1 = (x1,x2,…,xn) và p2 = (y1,y2,…,yn) cỏc cỏ thể con đ°ÿc sinh ra nh° sau c1= ap1 + (1-a)p2 c2=(1-a)p1 + ap2 a: là số l¿y ng¿u nhiên trong khoÁng [0,1]
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 41
Phép lai này nâng cao một điểm của GA kinh điển Với một vị trí chọn ngẫu nhiên (1 < k < n), các cá thể con được sinh ra như sau: c1 = (x1, x2, , xk, yk+1, , yn) và c2 = (y1, y2, , yk, xk+1, , xn).
Phép lai này tạo ra một vectơ ngẫu nhiên r = (r1, r2, …, rn) với các giá trị ri chỉ có thể là 0 hoặc 1 Từ đó, cá thể con được sinh ra với hai chuỗi: c1 = (z1, z2, …, zn), trong đó zi = xi nếu ri = 1 và zi = yi nếu ri = 0; và c2 = (u1, u2, …, un), trong đó ui = xi nếu ri = 0 và ui = yi nếu ri = 1.
Phép lai ghép tạo ra một cá thể con từ hai cá thể cha mẹ, trong đó mỗi thành phần của cá thể con được chọn ngẫu nhiên từ khoảng [min(xi, yi) – I.α, max(xi, yi) + I.α].
I= max(xi, yi) – min(xi, yi)
Tham số α th°áng đ°ÿc chọn là 0.5 Khi đó toán tÿ này th°áng đ°ÿc gọi là BLX-0.5.
Các toán tử trong giải thuật di truyền
Việc chọn lọc các cá thể trong một quần thể dựa vào độ thích nghi của từng cá thể là rất quan trọng Các cá thể có độ thích nghi cao thường có nhiều khả năng được chọn lọc, đặc biệt là những cá thể khỏe mạnh có khả năng sinh sản tốt Hàm thích nghi có thể không phải là hàm tuyến tính, không liên tục và không kháng vi Giá trị của hàm thích nghi P(t) bao gồm n cá thể {x[1], x[2], , x[n]}, trong đó n là cỡ của quần thể Đối với cá thể x[*], ta tính độ thích nghi f(x[*]), và tổng độ thích nghi của toàn bộ quần thể được tính bằng F = f(x[1]) + f(x[2]) + + f(x[n]).
Mỗi lÁn chọn lọc, ta thăc hiỏn hai b°òc sau:
B°òc 1: Sinh một giỏ trị thớch nghi ng¿u nhiờn là một số thăc q trong khoÁng
B°òc 2: x[k] là cỏ thể đ°ÿc chọn nÁu k là số nhỏ nh¿t sao cho tỏng độ thớch nghi căa k cá thể đÁu tiên không nhỏ h¢n q, tức là f(x[1])+f(x[2])+ +f(x[k]) >= q
Rõ ràng, việc lựa chọn vòi cỏch phù hợp sẽ giúp các cây cỏ có khả năng thích nghi cao hơn, dẫn đến sự phát triển mạnh mẽ và bền vững Các cây cỏ có độ thích nghi cao thường có thể sống sót và phát triển tốt trong nhiều điều kiện khác nhau.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 42 Nhiều cá thể có độ thích nghi thấp có thể không tồn tại trong các thế hệ sau do sự cạnh tranh và áp lực từ môi trường.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 43
Sau khi hoàn tất quá trình thăm dò và chọn lọc các cá thể, chúng ta tiến hành toán tử lai ghép Với kích thước quần thể là n, xác suất lai ghép được đưa
Vòi mỗi cỏ thể, ta thăc hiỏn hai b°òc sau đõy:
B°òc 1: Sinh ra một xỏc su¿t lai ghộp là số thăc r nào đú trong đo¿n [0, 1] B°òc 2: NÁu r < pc thỡ cỏ thể đú đ°ÿc chọn để lai ghộp
Từ các cá thể được chọn để lai ghép, chúng ta sẽ cặp đôi một cách ngẫu nhiên Trong trường hợp nhiễm sắc thể là các chuỗi nhị phân có độ dài cố định, giả sử là m, chúng ta có thể thực hiện phép lai ghép theo cách sau:
Vòi mỗi cặp, sinh ra một vị trớ ng¿u nhiờn làm điểm bắt đÁu ghộp là một số nguyên p trong đo¿n [0, m-1]
Tỏng quỏt, giÁ sÿ cú hai cặp nhiòm sắc thể căa hai cỏ thể đ°ÿc chọn lai ghộp: a = (a[1], , a[p], a[p+1], , a[m]) b = (b[1], , b[p], b[p+1], , b[m])
Cặp này đ°ÿc thay thÁ bãi hai đo¿n con căa nhau từ vị trí thứ p+1: aTT = (a[1], , a[p], b[p+1], , b[m]) bTT = (b[1], , b[p], a[p+1], , a[m])
Đột biến gen là sự thay đổi trong cấu trúc của một số gen trong nhiễm sắc thể sau khi lai ghép Xác suất xảy ra đột biến gen là một yếu tố quan trọng, thường được xác định là xác suất thấp Việc nghiên cứu sự xuất hiện của các đột biến này trên các cá thể giúp hiểu rõ hơn về quá trình di truyền và sự phát triển của sinh vật.
Tỏng quỏt vòi nhiòm sắc thể là chuỗi nhị phõn Vòi mỗi vị trớ i trong nhiòm sắc thể: a = (a[1], , a[p], a[p+1], , a[m])
Ta sinh ra một số ngẫu nhiên π trong khoảng [0,1] Đột biến a được xác định như sau: aTT = (aTT[1], , aTT[*], , aTT[m]), trong đó: aTT[*] = a[*] nếu π >= pm và aTT[*] = 1TTa[*] nếu π < pm.
Sau quỏ trỡnh chọn lọc, lai ghộp, đột biÁn, một thÁ hỏ mòi đ°ÿc sinh ra Cụng viỏc cũn l¿i căa thuÁt toỏn là chỉ viỏc lặp l¿i cỏc b°òc trờn
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 44
Sinh sÁn vụ tớnh: sÿ dāng phộp đột biÁn để sinh ra cỏ tể mòi khỏc cha mẹ
Các tham số cần sử dụng trong giải thuật di truyền
Kích thước quần thể (PopSize) là số lượng cá thể có thể duy trì qua mỗi thế hệ trong quá trình tiến hóa của thuần hóa di truyền Xác suất đột biến (Pm) là xác suất xảy ra đột biến của gen, trong khi xác suất lai (Pc) là xác suất một cá thể được chọn cho phép lai ghép.
Điề u ki ệ n k ế t thúc thu ậ t gi ả i di truy ề n
Thoát ra khỏi quá trình tiến hóa quần thể, chúng ta cần xem xét các cách kết thúc vấn đề với những kết quả khác nhau, miễn là đạt được mức yêu cầu Một số trạng thái hợp thông thường như sau:
KÁt thúc theo kÁt quÁ: Một khi đ¿t đÁn mức giá trị yêu cÁu thì ch¿m dứt ngay quá trình thăc hián
Kết thúc dã vào số tháng há: Chọn số tháng há, quá trình sẽ dừng đúng ngay số tháng đó theo quy định trước, không cần biết kết quả tháng nào.
Tính theo thái gian: Không cÁn biÁt đã bao nhiêu thÁ há hay kÁt quÁ thÁ nào, chỉ dăa vào số giá quy định mà kÁt thúc
Tá hÿp: Dùng nhiÃu ph°¢ng án khác nhau cho v¿n đÃ.
Nguyên lý hoạt động cÿa giải thuật di truyền
Kỹ thuật gien di truyền dựa trên nền tảng lý thuyết biểu diễn chuỗi nhị phân và lý thuyết sắp đặt Một sắp đặt là một chuỗi, dài bằng chuỗi nhiễm sắc thể, các thành phần của nó có thể nhấn mạnh một trong các giá trị của tập ký tự biểu diễn gen hoặc một ký tự đột biến.
ThuÁt toán phân cām sÿ dāng giÁi thuÁt di truyÃn
Một số giải thuật cơ bản trong phân cụm dữ liệu
2.2.1.1 Các giải thuật phân cụm phân hoạch
Thuật toán này dựa trên độ đo khoảng cách của các đối tượng dữ liệu trong không gian Trong thực tế, nó đo khoảng cách tới giá trị trung bình của các đối tượng dữ liệu trong không gian Nó được xem như là trung tâm của không gian Như vậy, nó có khả năng tạo ra một
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 45 Quá trình tập trung vào các trung tâm cảm biến ban đầu diễn ra thông qua việc lặp lại các bước, bao gồm việc xác định các trọng tâm cảm, đăng ký các thành viên của cảm, và tính toán lại trọng tâm cảm Quá trình này sẽ dừng lại khi các trung tâm hội tụ.
Hình 2.2 Minh họa trường hợp tách dữ liệu thành 3 cụm
Māc đích căa giÁi thuÁt k-means là sinh k cām dā liáu {C1, C2, , Ck} từ một tÁp dā liỏu chứa n đối t°ÿng trong khụng gian d chiÃu Xi = {xi1, xi2, , xid}, i1ứn
, sao cho hàm tiêu chuẩn:
Trong đó: mi : là trọng tâm căa cām Ci
D: là khoÁng cách giāa hai đối t°ÿng
KhoÁng cách giāa hai đối t°ÿng đ°ÿc xác định theo khoÁng cách Euclidean:
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 46
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 47
GiÁi thuÁt k-meas bao gòm cỏc b°òc c bÁn sau:
Input: Số cām k và các trọng tâm cām m j k j 1
Output: các cām C i (1 i k ) và hàm tiêu chuẩn E đ¿t giá trị tối thiểu
ban đÁu trong không gian Rd (d là số chiÃu căa dā liáu) Viác lăa chọn này có thể là ng¿u nhiên hoặc theo kinh nghiám
Bước 2: Tính toán khoảng cách Đối với mỗi điểm Xi (1 ≤ i ≤ k), tiến hành tính toán khoảng cách đến từng trọng tâm mj (1 ≤ j ≤ k) Sau đó, xác định trọng tâm gần nhất cho mỗi điểm.
B°òc 3: CÁp nhÁt l¿i trỏng tõm Đỗi vòi mỗi (1 i k ) cÁp nhÁt trọng tõm cām m j b¿ng cỏch xỏc định trung bình cộng các vect¢ đối t°ÿng dā liáu ĐiÁu kián dćng:
Lặp l¿i cỏc b°òc 2, 3 cho đÁn khi cỏc trọng tõm căa cām khụng thay đỏi
Giải thuật k-means được chứng minh là hội tụ và có độ phức tạp tính toán là O((3nkd)rT flop), trong đó n là số đối tượng dữ liệu, k là số cụm dữ liệu, d là số chiều, τ là số vòng lặp, và T flop là thời gian để thực hiện một phép tính cơ bản như phép nhân, chia K-means phân tích phân cụm đơn giản, do đó có thể áp dụng cho tập dữ liệu lớn Tuy nhiên, nhược điểm của k-means là chỉ áp dụng cho dữ liệu có thuộc tính số và hình cấu, và nó cũng rất nhạy cảm với nhiễu và các điểm ngoại lai trong dữ liệu Chất lượng phân cụm của giải thuật k-means phụ thuộc nhiều vào các tham số đầu vào như số cụm k và các trọng tâm khởi tạo ban đầu Trong trường hợp các trọng tâm khởi tạo ban đầu quá gần nhau, chất lượng của k-means sẽ rất thấp, nghĩa là các cụm dữ liệu được phân bố rất lệch so với các cụm trong thực tế Hiện tại chưa có một giải pháp tối ưu nào để chọn các tham số đầu vào, giải pháp thường được sử dụng nhất là thử nghiệm với các giá trị đầu vào k khác nhau và sau đó chọn giải pháp tốt nhất.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 48
Ngoài thuật toán K-means, phân cụm phân hoạch còn bao gồm một số thuật toán khác như PAM, CLARA và CLARANS.
2.2.1.2 Các giải thuật phân cụm phân cấp
Giải thuật CURE khắc phục vấn đề liên quan đến các phân tán ngoại lai trong phân cụm, điều này rất quan trọng khi xử lý các hình dạng và kích thước tảng dữ liệu khác nhau Giải thuật này định nghĩa một tập hợp cố định các điểm đại diện nằm rải rác trong không gian dữ liệu và được chọn để mô tả các cụm hình thành Các điểm này được sử dụng để lựa chọn các đối tượng nằm rải rác cho cụm và sau đó có thể di chuyển chúng về trung tâm cụm bằng cách sử dụng các yếu tố co cụm Quá trình này được lặp lại, cho phép đo lường tỷ lệ gia tăng của cụm Tại mỗi bước của giải thuật, hai cụm có cặp các điểm đại diện gần nhau được hòa nhập, với mỗi điểm trong cặp thuộc về mỗi cụm khác nhau.
Hình 2.3 Khái quát giải thuật CURE
Nhờ vào khả năng xử lý các cảm biến có hình dạng không phải là hình cầu, công nghệ này cho phép CURE khám phá và phân tích hiệu quả các cảm giác khác nhau Việc có nhiều điểm đổi diện giúp giảm tác động của các phản xạ ngoại lai, từ đó cải thiện độ chính xác trong quá trình thu thập dữ liệu Giải thuật này hoạt động hiệu quả trong những trường hợp có sự hiện diện của các yếu tố ngoại lai, đồng thời làm cho việc hiểu và phân tích các hình dạng không đồng nhất trở nên dễ dàng hơn Hơn nữa, nó tỏ ra hiệu quả với cơ sở dữ liệu lớn mà vẫn đảm bảo chất lượng của các cảm biến.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 49
CURE là một phương pháp khai thác dữ liệu hiệu quả cho các cơ sở dữ liệu lớn, sử dụng mẫu ngẫu nhiên và phân tích Mỗi mẫu được xác định ngẫu nhiên trước khi tiến hành phân tích, và sau đó thực hiện phân cảm trên từng phân hoại Quá trình này cho phép thu thập các cảm nhận từ các phân hoại đã phân tích, từ đó tạo ra các cảm nhận con mong muốn Tuy nhiên, mẫu ngẫu nhiên không nhất thiết phải đại diện cho toàn bộ tập dữ liệu.
GiÁi thuÁt CURE đ°ÿc thăc hiỏn qua cỏc b°òc c bÁn sau:
Bướ c 1: Chọn một m¿u ng¿u nhiên từ tÁp dā liáu ban đÁu
Bước 2: Phân tích mẫu này thành nhiều nhóm dữ liệu có kích thước bằng nhau Ý tưởng chính ở đây là phân tích mẫu thành p nhóm dữ liệu bằng nhau, kích thước của mỗi phân tích là n’/p (n’ là kích thước của mẫu).
Bướ c 3: Phân cām các điểm căa mỗi nhóm: Thăc hián PCDL cho các nhóm cho đÁn khi mỗi nhúm đ°ÿc phõn thành n’/pq cām (vòi q > 1)
Bước 4: Loại bỏ các phần tử ngoại lai Trước hết, khi các cám đặc hình thành cho đám, hãy giảm số cám xuống một phần so với số cám ban đầu Sau đó, trong trường hợp các phần tử ngoại lai được lấy mẫu, cần kiểm soát quá trình pha khói để tạo màu đồng nhất, giải thuật sẽ tự động loại bỏ các nhóm nhỏ.
Bước 5: Phân cắm các cảm không gian là quá trình xác định các đối tượng đối diện cho các cảm di chuyển và hướng trung tâm cảm, tức là chúng ta cần chú ý đến các đối tượng gần trung tâm hơn.
Bước 6: Đánh dấu dữ liệu vòi các nhóm tầng ứng Độ phức tạp tính toán của thuật toán CURE là O(n² log(n)) CURE là giải thuật tin cậy trong việc khóm phỏ ra các cụm vòi hình thức bất kỳ và có thể áp dụng tốt đối với dữ liệu có phân tán ngoại lai và trên các tập dữ liệu hai chiều Tuy nhiên, nó lại rất nhạy cảm với các tham số như số lượng đối tượng đại diện, tỷ lệ các phân tán đại diện.
Ngoài giải thuật CURE, phân cụm phân cấp còn bao gồm một số thuật toán khác như BIRCH, AGNES, DIANA, ROCK và CHAMELEON.
2.2.1.3 Các giải thuật phân cụm dựa trên mật độ
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 50
Giải thuật phân cụm phổ biến nhất hiện nay là DBSCAN (Density-Based Spatial Clustering of Applications with Noise), được phát triển bởi Ester, P Kriegel và J Sander vào năm 1996 Giải thuật này tìm kiếm các đối tượng có số lượng đối tượng lân cận lớn hơn một ngưỡng tối thiểu Một cụm được xác định bằng tập hợp các đối tượng liên thông mật độ với các lân cận của nó DBSCAN áp dụng cho các tập dữ liệu không gian lớn đa chiều Định nghĩa 1: Các lân cận của một điểm P với ngưỡng Eps, ký hiệu NEps(p), được xác định như sau: NEps(p) = {q ∈ D | khoảng cách Dist(p,q) < Eps}, trong đó D là tập dữ liệu cho trước.
Hình 2.4 Lân cận cÿa P với ngưỡng Eps
Một điểm p muốn n¿m trong một cām C nào đó thì NEps(p) thì có tối thiểu
Theo định nghĩa trên, điểm thắc mắc nằm trong cụm mây điều kiện là điểm thuộc vào cụm Những điểm nằm ngoài cụm thì không thuộc điều kiện đó Để tránh trường hợp này, có thể đưa ra một tiêu chuẩn khác để xác định một điểm thuộc vào một cụm, cụ thể là: Nếu một điểm p muốn thuộc vào một cụm C, thì phải tồn tại một điểm q sao cho p nằm trong NEps(q) và số điểm trong NEps(q) phải lớn hơn số điểm tối thiểu Điều này có thể được định nghĩa một cách hình thức như sau: Định nghĩa 2: Mật độ - đạt được trực tiếp (Directly Density - reachable).
Một điểm p đ°ÿc gọi là mÁt độ-đÁn đ°ÿc trăc tiÁp từ điểm q vòi ng°ỡng Eps và MinPts trong tÁp đối t°ÿng D nÁu:
1) pNEps(q) Vòi NEps(q) là tÁp con căa D
2) ||NEps(q)|| MinPts ĐiÃu kián đối t°ÿng nhân
Giải thuật phân cụm dựa trên giải thuật di truyền
2.2.2.1 Giải thuật tổng quát cho phân cụm sử dụng giải thuật di truyền
3 Tính toán độ thích nghi cho P(t)
5 NÁu kÁt thỳc vũng lặp thỡ thăc hiỏn b°òc 10
10 Đ°a ra kÁt quÁ và dừng giÁi thuÁt
Cá nhân đì dián và phép mã hóa biến đái là những giải pháp quan trọng trong không gian giải pháp tối ưu hóa tìm kiếm Các cá nhân được coi là vectơ trong không gian giải pháp, đại diện cho các hình thức của chuỗi Một cá nhân đì dián cung cấp một giải pháp cho vấn đề cụ thể Giải thuật di truyền có khả năng tìm ra giải pháp tối ưu và giải pháp gần đúng cho vấn đề sau khi áp dụng các phép toán di truyền trên các cá nhân.
Có hai phương pháp mã hóa đáng chú ý: mã hóa nhị phân và mã hóa số thực Không gian tìm kiếm trong mã hóa nhị phân hạn chế hơn so với mã hóa số thực, nhưng việc lai ghép và đột biến diễn ra thuận tiện hơn Quần thể ban đầu được khởi tạo ngẫu nhiên Đầu tiên, các trung tâm K cần được mã hóa trong mỗi nhiễm sắc thể được khởi tạo ngẫu nhiên từ không gian ban đầu Sau đó, quá trình này được lặp đi lặp lại cho các cá thể trong quần thể Đối với các cá thể k và đối tượng có kích thước n, có n*k vị trí trong một nhiễm sắc thể.
Ví dā: Cho 10 điểm dā liáu ban đÁu P, P1,…, P10
T¿o quÁn thể gòm 4 cỏ thể, mỗi cỏ thể gòm 3 cām
Ta thu đ°ÿc quÁn thể vòi cỏ thể đ°ÿc t¿o ng¿u nhiờn gòm 4 cỏ thể sau:
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 58
2.2.2.3 Tính toán độ thích nghi
Quá trình tính toán độ thích nghi bao gồm hai giai đoạn: đầu tiên, các cảm giác được hình thành theo các trung tâm cảm giác được mô hóa trong nhiều sắc thể đang được xử lý Sau khi các cảm giác hình thành, các trung tâm cảm giác được mô hóa trong nhiều sắc thể được thay thế bằng các điểm trung bình của các cảm giác tương ứng Các hàm thích nghi được định nghĩa như sau: f' = 1 / μ, do đó, để tối đa hóa hàm chức năng, cần tối thiểu hóa hàm μ như sau: õ =.
Ci là trọng tâm cām thứ i xj là giá trị căa phÁn tÿ j zi là giá trị căa phÁn tÿ i trong k trọng tâm cām k là số cām cÁn t¿o
Quá trình lựa chọn đặc sỹ đang diễn ra nhằm tìm ra giải pháp tối ưu cho bãi nhăng cá nhân với độ thích nghi cao hơn Phương pháp lựa chọn đặc sỹ đang được áp dụng như một cách để tập trung tìm kiếm trong những khu vực có nhiều thuận lợi hơn trong không gian tìm kiếm.
Các kiểu thă tāc lăa chọn nh° sau:
Roulette Wheel Selection (lča chán bánh xe quay vòng)
Các nhiễm sắc thể của cha mẹ được chọn lọc dựa trên độ thích nghi của chúng Trong quá trình này, mỗi nhiễm sắc thể chiếm một vị trí trên bánh xe quay, với kích thước tương ứng với độ thích nghi của nhiễm sắc thể Khi bánh xe quay ngẫu nhiên, nhiễm sắc thể ứng với các vị trí mà bánh xe dừng lại sẽ được chọn là nhiễm sắc thể của cha mẹ đầu tiên Quá trình này được lặp đi lặp lại để tìm kiếm nhiễm sắc thể cha mẹ khác Hạn chế của việc chọn bánh xe quay là các cá nhân thích nghi có thể chiếm ưu thế cao trong quá trình chọn lọc dẫn đến sự đa dạng và hội tụ.
Rank Selection (lča chán thą h¿ng)
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 59
Sắp xếp các nhiễm sắc thể theo độ thích nghi và lựa chọn các nhiễm sắc thể dựa trên thứ hạng sẽ tạo cơ hội tốt hơn cho sự chọn lọc Tuy nhiên, phương pháp này có thể có tốc độ hội tụ chậm hơn so với phương pháp tiếp cận bánh xe quay vòng.
Tournament selection (lča chán lo¿i dÁn)
Một tập hợp các nhiễm sắc thể đặc biệt được lựa chọn ngẫu nhiên Nhiễm sắc thể thích hợp từ tập hợp này được đặt vào vị trí chuẩn bị cho quá trình lai ghép Quá trình này được lặp đi lặp lại cho đến khi đạt được số lượng nhiễm sắc thể cần thiết để thực hiện lai ghép.
Trong phương pháp này, nhiễm sắc thể thích hợp được chỉ định để xác định một số nhiễm sắc thể đặc biệt, nhằm tối ưu hóa quá trình di truyền Các nhiễm
Crossover là quá trình trao đổi thông tin giữa hai nhiễm sắc thể của bố mẹ để tạo ra hai nhiễm sắc thể con, giúp tăng tốc độ tìm kiếm sự biến đổi trong
Một số phép toán lai ghép:
Single Point Crossover (Lai ghép t¿i một điểm)
Trong phương pháp này, một vị trí đặc biệt được chọn ngẫu nhiên, tại đó các nhiễm sắc thể của cha mẹ được chia thành hai phần Các phần của nhiễm sắc thể này được trao đổi tại vị trí đó và tạo ra hai nhiễm sắc thể mới.
Nhiòm sắc thể Cha-mẹ Nhiòm sắc thể con
Hình 2.10 Lai ghép tại 1 điểm
Two Point Crossover (Lai ghép t¿i hai điểm)
Trong ph°¢ng pháp này, hai vị trí đ°ÿc lăa chọn ng¿u nhiên Các thành phÁn giāa hai cha mẹ sau đú đ°ÿc trao đỏi để t¿o ra 2 con mòi
Nhiòm sắc thể Cha-mẹ Nhiòm sắc thể con
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 60
Hình 2.11 Lai ghép tại 1 điểm
Uniform Crossover (Lai ghộp đòng nh¿t)
Trong phương pháp này, gen độc được sao chép từ một trong hai cha mẹ với tỷ lệ 0,5 để tạo ra mặt nạ sử dụng cho lai ghép Các giá trị mới được tạo ra theo các bit độc chỉ định, có thể lấy từ A hoặc B.
Mặt n¿ lai ghép: 1100101 0 Nhiòm sắc thể Cha-mẹ Nhiòm sắc thể con
Hình 2.12 Lai ghép đồng nhất 2.2.2.6 Mutation (đột biến)
Đột biến gen là quá trình thay đổi cấu trúc của nhiễm sắc thể bằng cách thay đổi ngẫu nhiên một vị trí nào đó, dẫn đến sự thay đổi giá trị gen tại các vị trí được chọn ngẫu nhiên Quá trình này làm tăng tính đa dạng di truyền, giúp các nhà khoa học khám phá các khu vực gen quan trọng hiện nay Đối với biểu diễn nhị phân của nhiễm sắc thể, một vị trí đột biến sẽ làm thay đổi giá trị của nó Mặt khác, số liệu trong đoạn [0, 1] được tạo ra từ phân bố đồng đều Nếu giá trị của một gen tại vị trí v bị đột biến, giá trị mới sẽ được xác định.
NÁu khói t¿o quÁn thể đ°ÿc biểu diòn theo số thăc thỡ giỏ trị t¿i một nhiòm sắc thể t¿i vị trí i có thể đ°ÿc đột biÁn theo cách sau:
Xi: là giỏ trị t¿i một vị trớ đột biÁn i trờn nhiòm sắc thể rand(0, 1): l¿y ng¿u nhiên một số thăc n¿m trong khoÁng từ 0 đÁn 1
Các vị trí đột biến của gen (đối với biểu diễn có thể là bit) và (đối với biểu diễn có thể là số thập phân) có thể xuất hiện ở bất kỳ vị trí nào và trên các cá thể thì các vị trí đột biến này không giống nhau Hoặc, trên các cá thể của quần thể, sự thống nhất về vị trí đột biến đã được chỉ định sẵn.
Ngoài ra, còn có nhiÃu cách đột biÁn số thăc khác nhau tùy thuộc vào bài toán
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 61 cā thể và kinh nghiám căa ng°ái thăc hián bài toán.
So sánh hiáu quÁ căa thuÁt toán Kmeans và thuÁt toán Kmeans sÿ dāng giÁi thuÁt
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 T° 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 (objects) đó cho vào K cām (K là số cỏc cām đ°ÿc xỏc đinh tr°òc, K 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 đ°ÿc mô tÁ nh° sau:
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 (th°áng dùng khoÁng cách Euclidean)
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
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 62
Ví dụ minh họa thuật toán K-Means:
Giá sÿ ta có bốn loại thuốc A, B, C, D, mỗi loại thể hiện hai đặc trưng X và Y Mục đích của chúng ta là phân loại các thuốc này thành hai nhóm (K=2) dựa trên các đặc trưng của chúng.
Object Feature 1(X): weight index Feature 1(Y): pH
Bước đầu tiên trong quá trình phân nhóm là xác định tâm (centroid) cho hai nhóm Chúng ta chọn A làm tâm của nhóm thứ nhất với tọa độ c1 (1,1) và B làm tâm của nhóm thứ hai với tọa độ c2 (2,1).
Bước 2 Tính khoÁng cách từ các đối t°ÿng đÁn tâm căa các nhóm (KhoÁng cách Euclidean)
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 63
Mỗi cột trong ma trận khoáng cách (D) đại diện cho một đối tượng, với cột đầu tiên tương ứng với đối tượng A, cột thứ hai với đối tượng B, và tiếp tục như vậy Hàng đầu tiên trong ma trận thể hiện khoáng cách giữa các đối tượng của nhóm thứ nhất (c1), trong khi hàng thứ hai biểu diễn khoáng cách giữa các đối tượng của nhóm thứ hai (c2).
Ví dā, khoÁng cách từ lo¿i thuốc C=(4,3) đÁn tâm c1(1,1) là 3.61 và đÁn tâm c2(2,1) là 2.83 đ°ÿc tính nh° sau: ứ ự ứ ự ứ ự ứ ự ứ ự
Bước 3 Nhóm các đối t°ÿng vào nhóm gÁn nh¿t
Ta th¿y r¿ng nhúm 1 sau vũng lặp thứ nh¿t gòm cú 1 đối t°ÿng A và nhúm 2 gòm cỏc đối t°ÿng cũn l¿i B,C,D
Bước 5 Tớnh l¿i khoÁng cỏch từ cỏc đối t°ÿng đÁn tõm mòi
Bước 6 Nhóm các đối t°ÿng vào nhóm
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 64
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 65
Bước 7 Tớnh l¿i tõm cho nhúm mòi
Bước 8 Tớnh l¿i khoÁng cỏch từ cỏc đối t°ÿng đÁn tõm mòi
Bước 9 Nhóm các đối t°ÿng vào nhóm
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 66
Ta th¿y G 2 = G 1 (Không có să thay đái nhóm nào căa các đối t°ÿng) nên thuÁt toán dừng và kÁt quÁ phân nhóm nh° sau:
Thuật toán K-Means có ưu điểm là đơn giản, dễ hiểu và cài đặt Tuy nhiên, một số hạn chế của K-Means là hiệu quả của thuật toán phụ thuộc vào việc chọn số nhóm K (phải xác định trước) và chi phí cho việc thực hiện tính toán tăng cao khi số cụm K và dữ liệu phân cụm lớn.
Thuật toán Kmean sử dụng giải thuật di truyền
Input: Số cām k, kớch th°òc căa quÁn thể, tÁp dā liỏu D chứa n đối t°ÿng, số thÁ hỏ muốn t¿o tMax
Output: Một tÁp hÿp K cām
Mỗi nhiòm sắc thể đ°ÿc t¿o b¿ng cỏch chọn ng¿u nhiờn k phÁn tÿ trong tÁp dā liáu để làm k trọng tâm cām
1 Đối vòi mỗi nhiòm sắc thể a Đ°a phÁn tÿ trong D vào cām vòi trọng tõm cām gÁn nh¿t b Tính toán l¿i k trọng tâm cām là trung bình k cām vừa t¿o và thay thÁ vào nhiòm sắc thểđú. c Tớnh toỏn độ thich snghi cho nhiòm sắc thể hiỏn t¿i
2 T¿o thÁ hỏ cỏc nhiòm sắc thể mòi sÿ dāng cỏc phộp toỏn lăa chọn, lai ghép và đột biÁn
Tỏch ra k cām đối vòi nhiòm sắc thể trong quÁn thể căa thÁ hỏ t¿o ra sau cựng cú độ thớch nghi lòn nh¿t ĐiÃu kián dừng:
Lặp l¿i cỏc b°òc 2 cho đÁn khi thÁ hỏ t=Max
Khi thực hiện bước 1 trong hướng dẫn này, việc khởi tạo ngẫu nhiên không phải là một quyết định ngẫu nhiên trong tập dữ liệu để tạo ra trọng tâm cảm xúc, mà nó sẽ dẫn đến sự xuất hiện của các trọng số trên một triệu sắc thể.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 67, việc xác định các trọng tâm cảm trùng nhau là rất quan trọng Giá trị giải thuật chỉ chạy một thí nghiệm và tại các vị trí trọng tâm cảm trùng nhau mà không bị đột biến hay lai ghép sẽ cho kết quả thu được một số cảm trùng nhau Do đó, trong bước 1, chúng ta cần khởi tạo ngẫu nhiên các phân tử và không cho các phân tử này trùng nhau trên một nhiễm sắc thể Độ thích nghi lớn nhất của nhiễm sắc thể là tổng khoảng cách từ trọng tâm cảm trong nhiễm sắc thể tới các điểm dữ liệu ban đầu là nhỏ nhất so với các nhiễm sắc thể khác.
Vớ dụ: Cho bộ dā liỏu gòm 6 đối t°ÿng dā liỏu 2 chiÃu x, y nh° sau: Đối t°ÿng dċ liáu X Y
Bộ giữ liệu chuyển gồm 6 phần tử
Chọn số lượng cá thể của quần thể là 4 và yêu cầu tách ra làm 2 cụm 4 cá thể được chọn ngẫu nhiên từ bộ dữ liệu Mỗi cụm sẽ có sự phân tách cảm và cấp nháp lại trọng tâm cảm Sau đó, giá trị thích nghi được tính toán là tổng khoáng cách từ mỗi trọng tâm cảm tới các điểm dữ liệu tương ứng thuộc cụm đó.
Khãi t¿o cỏc nhiòm sÃc thể Cỏc trỏng tõm cām mòi thu đ°ÿc (*) Xcen
Xcen1 Ycen1 Xcen2 Ycen2 Giỏ trò thích nghi
Khởi tạo các nhiễm sắc thểvà tính độ thích nghi
(*): Tỏng khoÁng cỏch từ cỏc trọng tõm cām tòi cām dā liỏu t°Âng ứng
Cỏc cỏ thể mòi thu đ°ÿc b¿ng cỏch sắp xÁp theo thứ h¿ng, sÿ dāng lai ghộp t¿i một điểm ó giāa và đột biÁn trờn cỏc trọng tõm mòi
3 Nhāng b°òc này đ°ÿc thăc hiỏn lặp l¿i cho đÁn khi thỏa món điÃu kiỏn dừng ĐiÃu kián dừng trong ví dā này là ã thÁ há thứ 3
SÃp x¿p, lča chántheo thą h¿ng Lai ghép t¿i 1 điểm Đột bi¿n
Các nhiễm sắc thể mới thu được bằng cách sử dụng lựa chọn, lai ghép và đột biến
Khói t¿o cỏc nhiòm sÃc thể Cỏc trỏng tõm cām mòi thu đ°ÿc (*)
Xcen1 Ycen1 Xcen2 Ycen2 Xcen1 Ycen1 Xcen2 Ycen2 Giỏ trò thớch
Các nhiễm sắc thểđầu vào và độ thích nghi cho thế hệ thā 2
Khói t¿o cỏc nhiòm sÃc thể Cỏc trỏng tõm cām mòi thu đ°ÿc
(*) Xcen1 Ycen1 Xcen2 Ycen2 Xcen1 Ycen1 Xcen2 Ycen2 Giỏ trò thớch
Các nhiễm sắc thểđầu vào và độ thích nghi cho thế hệ thā 3
Sau khi đáp ứng điều kiện dừng, cá thể có giá trị thích nghi thấp nhất được chọn để thực hiện phân tách cảm đối Kết quả thu được hai cảm giác: c1(1,4,5) và c2(2,3,6) với Centroid 1=(S, 14) và Centroid 2=(22, 20).
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 69
So sánh giữa k-means và k-means sử dụng giải thuật di truyền
BÁng d°òi đõy s¿ đ°a ra so sỏnh và hai giÁi thuÁt trờn:
K-means K-means s ử d ụ ng gi ả i thu ậ t di truy ề n
- ĐÁu vào: k, bộ dā liáu, k cām trung tâm đ°ÿc lăa chọn ng¿u nhiên
- ĐÁu vào: k, bộ dā liỏu, p, P nhiòm sắc thể đ°ÿc chọn ng¿u nhiên, Tmax
- Māc tiêu: GiÁm thiểu táng bình ph°¢ng khoÁng cách
- Māc tiêu: GiÁm thiểu táng khoÁng cách từ mỗi điểm dā liáu đÁn trọng tâm căa cām
- ĐiÃu kián dừng: Không có să thay đỏi trong trung tõm cām mòi
- ĐiÃu kián dừng: Số lÁn lặp đ¿t giá trị tối đa
- Cuối cùng nhóm có thể hội tā và giá trị tối °u cāc bộ
- GiÁi thuÁt di truyÃn là nÃn tÁng trờn ph°Âng phỏp tiÁp cÁn toàn cāc vòi giỏ trị tiÃm ẩn song song
+ n: là số điểm dā liáu
+ d: kớch th°òc dā liỏu
- Độ phức t¿p: O(Tmax*p*n*k*d) Trong đó:
+ n: số điểm dā liáu + k: số cām
+ d: kớch th°òc dā liỏu + Tmax: số lÁn lặp + P: kích cỡ dân số
So sánh K-means và K-means có sử dụng giải thuật di truyền
Từ bÁng trên có thể đ°a ra một số nhÁn xét sau:
Thuật toán di truyền thường được áp dụng trong không gian tìm kiếm có kích thước lớn, do đó, chúng ít bị rơi vào các cực trị tối ưu cục bộ so với các phương pháp khác.
Thuật toán di truyền là một phương pháp tối ưu hóa hiệu quả, cho phép chúng ta biểu diễn nhiễm sắc thể (NST) để giải quyết nhiều bài toán khác nhau Nếu một bài toán có phương pháp mã hóa NST, chúng ta chỉ cần viết lại hàm tính độ thích nghi cho bài toán đó để đạt được kết quả tối ưu.
- Thái gian tính toán căa thuÁt toán di truyÃn chÁm h¢n các ph°¢ng pháp khác
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 70
THČC NGHIàM PHÂN CĀM DĊ LIàU VÀ SINH VIÊN
Mô t Á bài toán
Cơ sở dữ liệu
C¢ sã dā liáu đ°ÿc l°u trā trong SQL Server 2008
- HOCSINHSINHVIEN(MaHocSinh, TenHocSinh, GioiTinh, NgaySinh, NoiSinh ) l°u trā Lý lịch học sinh
- LOP(MaLop, TenLop, MaKhoiLop, MaNamHoc, SiSo) l°u trā Danh sách cỏc lòp
- DIEM(ID, HovaTen, M_1, M_2, M_3, M_4, M_5) l°u trā điểm rèn luyán
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 71
Hình 3.1 Cơ sở dữ liệu học sinh sinh viên
3.2 Xây dčng ch°¢ng trình.
- NhÁp dā liáu vào SQL Server 2008 trã lên
- Ch°¢ng trình đ°ÿc ch¿y trên Visual Studio 2012 trã lên
3.2.1 Các chāc năng cÿa chương trình
Trong luận văn, tác giả đã sử dụng ngôn ngữ lập trình C# để xây dựng chương trình áp dụng giải thuật di truyền nhằm phân loại dữ liệu sinh viên trường Cao đẳng Y Tế Yên Bái.
- Đọc số liáu phân cām
- Xây dăng c¿u trúc dā liáu
- Chọn số cām đánh giá
- Chọn các môn đánh giá điểm rèn luyán
- Phân tích kÁt quÁđểđ°a ra các nhÁn xét, đánh giá
Dựa trên kết quả khảo sát và thống kê, chương trình đã xây dựng một hệ thống hoàn chỉnh nhằm giải quyết bài toán khảo sát, đánh giá và thống kê yêu cầu đã được đề ra Dưới đây là giao diện kết quả của chương trình ứng dụng đã được cài đặt và chạy.
Hình 3.2 Giao diện chương trình
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 72
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 73
Hình 3.3 Màn hình khởi động
Phân cām dā liáu: thăc hián viác phân cām dā liáu
Hình 3.4 Màn hình phân cụm dữ liệu
Gòm cỏc chức năng chớnh:
• Phân cām theo điểm các đánh giá rèn luyán
• Hai đánh giá hoặc hai nhóm đánh giá cùng lúc
Trong một cuộc khảo sát tại Trường Cao đẳng Y tế Yên Bái, 24 học sinh, sinh viên đã được đánh giá về ý thức học tập Kết quả phân tích được chia thành ba nhóm chính, nhằm phản ánh rõ nét về thái độ và tinh thần học tập của các em.
Cām 1: Trong cām này điểm trung bình căa 6 phÁn tÿ học sinh, sinh viên đ¿t điểm học tÁp vòi tõm cām là 7.95, chiÁm tỷ lỏ 25%
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 74
Cām 2: õ đõy ta th¿y cú 7 phÁn tÿ học sinh, sinh viờn đ¿t điểm học tÁp vòi tâm cām là 7.97, chiÁm tỷ lá 29,1%
Cām 3: Ta th¿y cú 11 phÁn tÿ học sinh, sinh viờn đ¿t điểm học tÁp vòi tõm cām là 8.14 là điểm cao nh¿t chiÁm tỷ lá 45,8%
Theo bảng phân tích, chúng ta có thể đánh giá được ý thức học tập của học sinh, sinh viên trong quá trình rèn luyện Điều này giúp phát hiện những học sinh, sinh viên yếu kém để có biện pháp bồi dưỡng, hỗ trợ học tập nhằm đạt kết quả cao hơn.
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 75
1 Nhċng k¿t quÁ chính căa luÁn vn
- Trình bày khái niám c¢ sã lý thuyÁt căa khai phá dā liáu và phân cām dā liáu
- Giòi thiỏu giÁi thuÁt chung cho giÁi thuÁt phõn cām sÿ dāng giÁi thuÁt di truyÃn
- Thăc hián cài đặt thÿ nghiám giÁi thuÁt phân cām Kmeans sÿ dāng giÁi thuÁt di truyÃn
2 H°òng phỏt triển căa luÁn vn
Trên c¢ sã các kÁt quÁ đã đ¿t đ°ÿc, có thể tiÁp tāc nghiên cứu một số v¿n đà nh° sau:
- Xây dăng tiÁp các ch°¢ng trình thÿ nghiám các thuÁt toán phân cām và các giÁi thuÁt phân cām có sÿ dāng giÁi thuÁt di truyÃn
- Tỡm thờm cỏc ứng dāng giÁi thuÁt vào thăc tiòn
Mặc dù em đã nỗ lực hết mình, nhưng do hạn chế về thời gian và kiến thức trong lĩnh vực nghiên cứu, luận văn của em vẫn không tránh khỏi những khuyết điểm
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc.tnu.edu.vn 76
[1] Nguyòn Đỡnh Thỳc (2000)