Trang 1 DÈng thÞ hiền thanh Ký thuật mỈng nÈron vẾ giải thuật di truyền trong khai phÌ dứ liệu vẾ thữ nghiệm ựng dừng Luận vẨn thỈc sý cẬng nghệ thẬng tin Trang 2 --- DÈng thÞ hiền t
tổng quan về khai phá dữ liệu và phát hiện tri thức trong CSDL
Tại sao cần phát hiện tri thức?
Trong hơn hai thập niên qua, lượng thông tin lưu trữ trên các thiết bị điện tử đã gia tăng mạnh mẽ, với tốc độ tích lũy dữ liệu bùng nổ Dự đoán cho thấy lượng thông tin toàn cầu sẽ tăng gấp đôi sau khoảng hai năm, kéo theo sự gia tăng nhanh chóng của kích thước cơ sở dữ liệu, bao gồm cả số bản ghi và số trường, thuộc tính trong mỗi bản ghi.
Dữ liệu khổng lồ là nguồn tài nguyên quý giá, với thông tin là yếu tố then chốt trong mọi hoạt động Tuy nhiên, để dữ liệu trở nên có ý nghĩa, cần phát hiện những tri thức tiềm ẩn giá trị bên trong Những tri thức này thường rất nhỏ so với khối lượng dữ liệu, khiến việc phát hiện chúng trở thành một thách thức lớn.
Việc phát hiện tri thức trong cơ sở dữ liệu (KDD) là quá trình xây dựng hệ thống có khả năng nhận diện các mẩu tri thức giá trị từ khối lượng dữ liệu khổng lồ Kỹ thuật khai phá dữ liệu (Data Mining) là công cụ chính trong quá trình này KDD nổi bật hơn so với các phương pháp phân tích truyền thống nhờ khả năng tự động hóa và dự đoán dựa trên dữ liệu quá khứ, giúp hỗ trợ quyết định hiệu quả hơn.
KDD đã chứng tỏ tính hữu dụng của nó trong môi trường cạnh tranh hiện nay và trở thành một hướng nghiên cứu chính trong khoa học máy tính và công nghệ tri thức Ban đầu, KDD chỉ được ứng dụng trong lĩnh vực thương mại và tài chính, nhưng hiện nay đã mở rộng ra nhiều lĩnh vực khác như viễn thông, giáo dục và y học KDD là nỗ lực nhằm giải quyết vấn đề tràn dữ liệu trong kỷ nguyên thông tin số.
Khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu
Khái niệm "phát hiện tri thức trong cơ sở dữ liệu" lần đầu tiên được giới thiệu vào năm 1989, nhấn mạnh rằng tri thức là sản phẩm cuối cùng của quá trình khai phá dữ liệu Quá trình này được định nghĩa là việc chắt lọc tri thức từ một lượng lớn dữ liệu, giúp biến đổi dữ liệu từ mức thấp thành các dạng cô đọng, tóm tắt và hữu ích hơn Một ví dụ minh họa cho quá trình này là việc khai thác vàng từ đá và cát, trong đó người khai thác tìm cách tách vàng ra khỏi những vật liệu không cần thiết.
Thuật ngữ “data mining” đề cập đến việc khai thác tri thức và thông tin giá trị từ một khối lượng lớn dữ liệu thô Quá trình này sử dụng nhiều kỹ thuật khác nhau để phát hiện thông tin tiềm ẩn trong các cơ sở dữ liệu lớn Ngoài ra, một số thuật ngữ tương tự như khai phá tri thức (knowledge mining), chắt lọc tri thức (knowledge extraction), phân tích dữ liệu/mẫu (data/pattern analysis), khảo cổ dữ liệu (data archaeology) và nạo vét dữ liệu (data dredging) cũng được sử dụng để mô tả các khía cạnh của data mining.
Tri thức được hiểu là mối quan hệ giữa các phần tử dữ liệu, và phát hiện tri thức là quá trình chiết xuất tri thức từ cơ sở dữ liệu trải qua nhiều giai đoạn khác nhau Khai phá dữ liệu sử dụng các thuật toán đặc biệt để trích xuất các mẫu và mô hình từ dữ liệu, đóng vai trò là một giai đoạn quan trọng trong quá trình phát hiện tri thức trong cơ sở dữ liệu.
Phát hiện tri thức trong cơ sở dữ liệu và khai phá dữ liệu là một kỹ thuật mới, đang phát triển nhanh chóng Đây là lĩnh vực đa ngành, liên quan đến nhiều lĩnh vực như lý thuyết thuật toán, Data Warehouse, OLAP và tính toán song song Tuy nhiên, nó chủ yếu dựa trên nền tảng của xác suất thống kê, cơ sở dữ liệu và học máy.
Quá trình pháT HIệN TRI THứC trong CƠ Sở Dữ LIệU
Thu thập và tiền xử lý dữ liệu
Trong quá trình thu thập dữ liệu cho bài toán, các cơ sở dữ liệu thường chứa nhiều thuộc tính nhưng lại không đầy đủ và không đồng nhất.
1 Hiểu và xác định vấn đề
2 Thu thập và tiền xử lý dữ li
3 Khai phá dữ liệu – Trích ra các mẫu/ các mô hình
4 Minh hoạ và đánh giá tri thức đợc phát hiện
5 Đa kết quả vào thực tế
Quá trình phát hiện tri thức trong cơ sở dữ liệu (CSDL) thường gặp khó khăn do sự không thống nhất trong ý kiến của các chuyên gia và sai số trong đo đạc dữ liệu Vì lý do này, giai đoạn thu thập và tiền xử lý dữ liệu trở nên vô cùng quan trọng, chiếm từ 70% đến 80% tổng chi phí của toàn bộ bài toán.
Giai đoạn thu thập và tiền xử lý dữ liệu bao gồm các công đoạn như lựa chọn, làm sạch, làm giàu và mã hoá dữ liệu Các bước này được thực hiện theo trình tự để tạo ra một cơ sở dữ liệu phù hợp cho các giai đoạn tiếp theo Tuy nhiên, quá trình này có thể được điều chỉnh tùy theo từng loại dữ liệu cụ thể.
1.2.2.1 Chọn lọc dữ liệu Đây là bớc chọn lọc các dữ liệu liên quan trong các nguồn dữ liệu khác nhau Các thông tin đợc chọn ra là những thông tin có nhiều liên quan đến lĩnh vực cần phát hiện tri thức đã xác định trong giai đoạn xác định vấn đề
Dữ liệu thực tế thường không đồng nhất, đặc biệt khi thu thập từ nhiều nguồn khác nhau Vì vậy, cần áp dụng các biện pháp xử lý để thống nhất dữ liệu nhằm phục vụ cho việc khai phá Giai đoạn làm sạch dữ liệu bao gồm các phép xử lý như điều hoà dữ liệu, xử lý giá trị khuyết, loại bỏ nhiễu và xử lý các ngoại lệ.
Việc thu thập dữ liệu không luôn đảm bảo tính đầy đủ, dẫn đến việc thiếu sót thông tin quan trọng Quá trình làm giàu dữ liệu nhằm bổ sung các thông tin ý nghĩa cho việc khai thác dữ liệu sau này Điều này bao gồm việc tích hợp và chuyển đổi dữ liệu từ nhiều nguồn khác nhau thành một kho thống nhất Các khuôn dạng dữ liệu khác nhau cũng được quy đổi và tính toán lại để tạo ra một kiểu thống nhất, thuận tiện cho phân tích Ngoài ra, một số thuộc tính mới có thể được xây dựng dựa trên các thuộc tính cũ.
1.2.2.4 Mã hoá Đây là giai đoạn mã hoá các phơng pháp dùng để chọn lọc, làm sạch, làm giàu dữ liệu thành các thủ tục, chơng trình hay các tiện ích nhằm tự động hoá việc kết xuất, biến đổi và di chuyển dữ liệu Các hệ thống con đó có thể đợc thực thi định kỳ để làm tơi dữ liệu phục vụ cho việc phân tích.
Khai phá dữ liệu
Giai đoạn khai phá dữ liệu bắt đầu khi dữ liệu đã được thu thập và xử lý Trong giai đoạn này, công việc chủ yếu là xác định bài toán khai phá dữ liệu, lựa chọn các phương pháp khai phá phù hợp với dữ liệu đã có và tách ra các tri thức cần thiết.
Các bài toán khai phá dữ liệu thường được chia thành hai loại chính: bài toán mô tả, nhằm nêu bật các đặc điểm chung của dữ liệu, và bài toán dự báo, bao gồm việc thực hiện các suy diễn dựa trên dữ liệu hiện có Tùy thuộc vào từng loại bài toán cụ thể, chúng ta sẽ lựa chọn các phương pháp khai phá dữ liệu phù hợp để đạt được kết quả tối ưu.
Minh hoạ và đánh giá
Các tri thức từ cơ sở dữ liệu cần được tổng hợp và biểu diễn dưới dạng dễ hiểu như đồ thị, cây, bảng biểu, hoặc các luật và báo cáo, nhằm hỗ trợ cho các quyết định khác nhau.
Do sự đa dạng của các phương pháp khai phá, kết quả thu được có thể có chất lượng khác nhau, vì vậy việc đánh giá kết quả là rất quan trọng Thông thường, các kết quả này sẽ được tổng hợp và so sánh thông qua biểu đồ, cùng với việc kiểm nghiệm và tinh lọc Để đánh giá tri thức, người ta thường dựa vào các tiêu chí nhất định.
Tri thức cần phải có độ đáng quan tâm, điều này thể hiện qua tính hữu dụng và tính mới lạ của nó Quá trình trích rút tri thức cũng cần phải được thực hiện một cách đặc biệt, không tầm thường, để đảm bảo giá trị và sự hấp dẫn của thông tin.
- Tri thức phải đủ độ tin cậy. Đây là công việc của các nhà chuyên gia, các nhà phân tích và ra quyết định.
Đa kết quả vào thực tế
Kết quả từ quá trình phát hiện tri thức có thể được ứng dụng trong nhiều lĩnh vực khác nhau Những kết quả này, bao gồm dự báo và mô tả, có thể được tích
Quá trình phát hiện tri thức từ cơ sở dữ liệu thường được thực hiện qua năm bước, tuy nhiên có thể cải tiến và nâng cấp cho từng ứng dụng cụ thể Trong đó, tiền xử lý dữ liệu và khai phá dữ liệu là hai bước quan trọng, chiếm phần lớn công sức và chi phí của toàn bộ bài toán Việc lựa chọn các phương pháp cho quá trình này phụ thuộc vào đặc điểm dữ liệu và yêu cầu của bài toán Dưới đây, chúng ta sẽ xem xét chi tiết hơn về quá trình khai phá dữ liệu.
các kỹ thuật Khai phá dữ liệu
Kiến trúc của hệ thống khai phá dữ liệu
Khai phá dữ liệu là một bước quan trọng trong việc phát hiện tri thức từ khối lượng lớn dữ liệu lưu trữ trong các cơ sở dữ liệu, kho dữ liệu hoặc các nơi lưu trữ khác Bước này có thể tương tác giữa người sử dụng và cơ sở tri thức, giúp đưa ra các mẫu đáng quan tâm cho người dùng, từ đó cung cấp tri thức mới trong cơ sở tri thức.
Kiến trúc của hệ thống khai phá dữ liệu có thể có các thành phần chính sau:
CSDL và kho dữ liệu là tập hợp các hệ thống lưu trữ dữ liệu, cho phép thực hiện các kỹ thuật làm sạch, tích hợp và lọc dữ liệu hiệu quả.
CSDL hay kho dữ liệu phục vụ là tập hợp các dữ liệu liên quan được lọc và làm sạch từ kho dữ liệu gốc, nhằm đáp ứng yêu cầu khai phá dữ liệu của người dùng.
- Cơ sở tri thức: là lĩnh vực tri thức đợc sử dụng để hớng dẫn việc tìm hợăc đánh giá các mẫu kết quả tìm đợc
CSDL hay kho dữ liệu phôc vô
Mô tơ khai phá dữ liệu (Data mining engine) Đánh giá mẫu Giao diện ngời dùng
Làm sạch dữ liệu Lọc dữ liệu
Hình 1.2: Kiến trúc của hệ thống khai phá dữ liệu
Mô tơ khai phá dữ liệu là một tập hợp các mô-đun chức năng, được thiết kế để thực hiện nhiều nhiệm vụ như mô tả đặc điểm, kết hợp, phân lớp và phân cụm dữ liệu.
Modul đánh giá mẫu là một thành phần quan trọng, sử dụng các độ đo và tương tác với các modul khai phá dữ liệu nhằm tìm kiếm các mẫu đáng quan tâm.
1.3.2 Quá trình khai phá dữ liệu và giải thuật khai phá dữ liệu
1.3.2.1 Quá trình khai phá dữ liệu
Các thuật toán khai phá dữ liệu thường được mô tả như những chương trình hoạt động trực tiếp trên tệp dữ liệu Quá trình khai phá dữ liệu được thể hiện qua một mô hình rõ ràng.
- Xác định nhiệm vụ: Xác định chính xác vấn đề cần đợc giải quyết
Xác định các nguồn dữ liệu liên quan là bước quan trọng để xây dựng giải pháp hiệu quả, dựa trên vấn đề cần giải quyết.
Thu thập và tiền xử lý dữ liệu là bước quan trọng trong quy trình khai thác dữ liệu, nhằm thu thập các dữ liệu liên quan và chuyển đổi chúng thành định dạng mà thuật toán có thể hiểu được Trong quá trình này, có thể gặp một số vấn đề như yêu cầu tạo ra nhiều bản sao của dữ liệu để đảm bảo tính chính xác và độ tin cậy trong phân tích.
Thu thập và tiền xử lý dữ liệu
Xác định dữ liệu liên quan
Thống kê và tóm tắt
Giải thuật khai phá Mẫu
Quá trình khai phá dữ liệu bao gồm việc chiết xuất thông tin vào các tệp và quản lý các tệp dữ liệu, thường xuyên phải lặp lại toàn bộ quy trình khi có sự thay đổi trong mô hình dữ liệu.
Chọn thuật toán khai phá dữ liệu phù hợp là bước quan trọng để phát hiện các mẫu có ý nghĩa Tùy thuộc vào nhiệm vụ cụ thể, dạng mẫu chiết xuất có thể khác nhau, bao gồm mô tả xu hướng, văn bản hoặc đồ thị thể hiện mối quan hệ trong mô hình.
1.3.2.2 Các thành phần của giải thuật khai phá dữ liệu
Giải thuật khai phá dữ liệu gồm ba thành phần chính:
Mô hình được biểu diễn bằng ngôn ngữ L nhằm mô tả các mẫu có thể khai thác Nếu mô hình quá hạn chế, khả năng học sẽ bị ảnh hưởng, dẫn đến việc không tạo
Đánh giá mô hình là quá trình xác định xem mẫu có đáp ứng các tiêu chuẩn phát hiện tri thức hay không Độ chính xác dự đoán được đánh giá thông qua phương pháp đánh giá chéo (cross validation) Chất lượng mô hình liên quan đến độ chính xác, độ mới, khả năng sử dụng và khả năng hiểu được Để đánh giá mô hình, có thể áp dụng các chuẩn thống kê và chuẩn logic.
• Phơng pháp tìm kiếm: Phơng pháp tìm kiếm gồm hai thành phần: tìm kiếm tham số và tìm kiếm mô hình
Trong quá trình tìm kiếm tham số, thuật toán cần xác định các tham số nhằm tối ưu hóa các tiêu chí đánh giá mô hình dựa trên dữ liệu quan sát được và mô hình đã được định trước.
Nhiệm vụ chính của khai phá dữ liệu
Đối với khai phá dữ liệu, có hai bài toán chính là:
- Bài toán mô tả (description): Đa ra mô hình biểu thị những tính chất chung nhất của dữ liệu mẫu
- Bài toán khai phá dự báo (prediction): Suy diễn dựa trên dữ liệu mẫu hiện có để đa ra một kết quả nào đó
Mục đích chính của khai phá dữ liệu là mô tả và dự báo, với các mẫu được phát hiện phục vụ cho hai mục đích này Bài toán dự báo sử dụng các biến trong cơ sở dữ liệu để chiết xuất mẫu, từ đó dự đoán các giá trị chưa biết hoặc giá trị tương lai của các biến quan trọng Trong khi đó, bài toán mô tả tập trung vào việc tìm kiếm các mẫu mô tả dữ liệu có thể hiểu được cho các ứng dụng thực tế Để đạt được hai mục đích này, nhiệm vụ chính của khai phá dữ liệu bao gồm nhiều vấn đề quan trọng.
Phân lớp là quá trình xác lập ánh xạ cho một tập dữ liệu vào các lớp đã được xác định trước.
• Hồi quy (Regression): Hồi quy tơng ứng với việc xác lập ánh xạ từ một tập dữ liệu vào một biến dự đoán có giá trị thực
Phân cụm (Clustering) là quá trình nhóm các đối tượng dữ liệu lại với nhau dựa trên sự tương đồng của chúng Các đối tượng được coi là tương đồng nếu thuộc về cùng một cụm và khác biệt nếu thuộc các cụm khác nhau Các cụm có thể tách rời, phân cấp hoặc gối lên nhau, cho phép một đối tượng dữ liệu có thể thuộc nhiều cụm khác nhau Một ứng dụng thực tiễn của phân cụm trong khai phá dữ liệu là phát hiện các nhóm khách hàng có hành vi tương tự trong cơ sở dữ liệu tiếp thị.
Hình 1.4 minh họa các mẫu trong quá trình khai thác dữ liệu với nhiệm vụ phân cụm Các mẫu này thể hiện nhóm khách hàng được phân chia thành ba nhóm chồng chéo Điều này cho thấy những khách hàng xuất hiện ở cả hai cụm có thể thuộc về hai trạng thái khác nhau.
• Tóm tắt (summarization): liên quan đến các phơng pháp tìm kiếm một mô tả tóm tắt cho một tập con dữ liệu
Mô hình hóa sự phụ thuộc (Dependency Modeling) liên quan đến việc xác định một mô hình nhằm mô tả sự phụ thuộc giữa các biến Các mô hình phụ thuộc có thể được phân loại thành hai mức độ khác nhau.
- Mức cấu trúc, là mô hình xác định các biến nào là phụ thuộc cục bộ với nhau (thờng ở dạng đồ hoạ)
- Mức định lợng là mô hình xác định độ lớn của sự phụ thuộc theo một thớc đo nào đó
Phát hiện sự thay đổi và sai lệch là quá trình xác định các thay đổi quan trọng trong dữ liệu so với các giá trị chuẩn đã được đo lường trước đó.
Các nhiệm vụ khác nhau đòi hỏi các loại thông tin và số lượng dữ liệu khác nhau Vì vậy, tùy thuộc vào từng nhiệm vụ cụ thể, việc thiết kế và lựa chọn thuật toán khai thác dữ liệu sẽ bị ảnh hưởng đáng kể.
Hình 1.4: Kết quả của phân cụm
Một số phơng pháp khai phá dữ liệu phổ biến
1.3.4.1 Phơng pháp quy nạp
Có hai kỹ thuật chính để thực hiện là suy diễn và quy nạp
Suy diễn là quá trình rút ra thông tin mới từ cơ sở dữ liệu (CSDL) dựa trên các sự kiện chính xác, giúp tạo ra tri thức mới từ thông tin cũ Phương pháp này thường sử dụng các luật suy diễn để chiết xuất mẫu, mang lại kết quả logic và hữu ích trong việc phân tích dữ liệu.
Phương pháp quy nạp là một kỹ thuật giúp suy ra thông tin từ cơ sở dữ liệu mà không cần dựa vào các tri thức đã biết trước Nó tự động tìm kiếm, tạo mẫu và sinh ra tri thức mới, mang lại những thông tin và kiến thức cấp cao về các đối tượng trong cơ sở dữ liệu Quy nạp tập trung vào việc phát hiện các mẫu trong dữ liệu, giúp nâng cao khả năng hiểu biết và phân tích.
Phơng pháp quy nạp thờng đợc nói đến trong kỹ thuật cây quyết định và tạo luật
1.3.4.2 Cây quyết định và tạo luật
Ví dụ: Bảng dữ liệu học trong ví dụ quyết định đi chơi tennis:
NgggggẾyẾyẾyẾyẾy QuaQuaQuaQuaQuang cảng cảng cảng cảng cảnhnhnhnhnh NhiệtNhiệtNhiệtNhiệtNhiệt Ẽờ Ẽờ Ẽờ Ẽờ Ẽờ ườ ẩmườ ẩmườ ẩmườ ẩm ườ ẩm GiọGiọGiọGiọ Giọ ChÈi ChÈi ChÈi ChÈi tennisChÈi tennistennistennistennis
D1 Nắng Nóng Cao Yêú Không
D2 Nắng Nóng Cao Mạnh Không
D3 âm u Nóng Cao Yêú Có
D4 Ma ấm áp Cao Yêú Có
D5 Ma Lạnh Bình thờng Yêú Có
D6 Ma Lạnh Bình thờng Mạnh Không
D7 âm u Lạnh Bình thờng Mạnh Có
D8 Nắng ấm áp Cao Yêú Không
D9 Nắng Lạnh Bình thờng Yêú Có
D10 Ma ấm áp Bình thờng Yêú Có
D11 Nắng ấm áp Bình thờng Mạnh Có
D12 âm u ấm áp Cao Mạnh Có
D13 âm u Nóng Bình thờng Yêú Có
D14 Ma ấm áp Cao Mạnh Không
Bảng 1.1: Dữ liệu học trong ví dụ quyết định đi chơi tennis
Từ bảng dữ liệu trên, ngời ta xây dựng đợc cây quyết định trợ giúp quyết định đi hay không đi chơi tennis nh sau:
Hình 1.5: Cây quyết định đi chơi tennis
Các luật được hình thành để suy diễn các mẫu dữ liệu có ý nghĩa thống kê, thường có dạng "Nếu P thì Q" Trong đó, P là mệnh đề đúng với một phần dữ liệu trong cơ sở dữ liệu (CSDL), còn Q là mệnh đề dự đoán dựa trên P.
Cây quyết định và luật là những công cụ mô tả đơn giản và dễ hiểu cho người sử dụng Tuy nhiên, chúng chỉ có thể biểu diễn một số chức năng nhất định, do đó, độ chính xác của mô hình bị giới hạn.
1.3.4.3 Phát hiện luật kết hợp
Phương pháp này được sử dụng để phát hiện các luật kết hợp giữa các thành phần dữ liệu trong cơ sở dữ liệu Kết quả của thuật toán khai phá dữ liệu là một tập hợp các luật kết, mỗi luật có dạng: X => Y (nếu có X thì có Y) Mỗi luật tìm được đi kèm với các tham số độ hỗ trợ và độ tin cậy, phản ánh mức độ quan tâm và sự chắc chắn của luật Độ hỗ trợ (Support) được tính bằng số bản ghi chứa X chia cho tổng số bản ghi, trong khi độ tin cậy (Confidence) được tính bằng số bản ghi chứa cả X và Y chia cho số bản ghi chứa X.
Khi phân tích cơ sở dữ liệu bán hàng, có thể nhận thấy rằng khách hàng mua máy tính thường có xu hướng đồng thời mua phần mềm quản lý tài chính Điều này được mô tả trong luật kết hợp, cho thấy mối liên hệ giữa các sản phẩm trong cùng một giao dịch.
“Máy tính => Phần mềm quản lý“
Theo thống kê, chỉ có 2% tổng số khách hàng đã mua máy tính, trong khi 60% trong số đó cũng đã chọn mua phần mềm quản lý.
Phát hiện luật kết hợp yêu cầu tìm tất cả các luật đáp ứng ngưỡng độ tin cậy và độ hỗ trợ đã định Để thực hiện điều này, thuật toán cần xác định các tập mục thường xuyên trước, sau đó sử dụng các tập mục này để tạo ra các luật kết hợp.
1.3.4.4 Phân nhóm và phân đoạn
Kỹ thuật phân nhóm và phân đoạn giúp chia dữ liệu thành các nhóm đồng nhất theo tiêu chí nhất định Mối quan hệ giữa các thành viên trong nhóm dựa trên mức độ tương đồng, từ đó hình thành các quy tắc ràng buộc Một phương pháp phân nhóm khác là xây dựng các hàm đánh giá thuộc tính của các thành phần, được gọi là phương pháp phân hoạch tối ưu.
Mẫu đầu ra của quá trình khai phá dữ liệu sử dụng kỹ thuật này là các tập mẫu chứa dữ liệu có chung tính chất được phân tách từ cơ sở dữ liệu Khi các mẫu được thiết lập, chúng có thể được sử dụng để tái tạo các tập dữ liệu ở dạng dễ hiểu hơn và cung cấp các nhóm dữ liệu cho các hoạt động phân tích Đối với cơ sở dữ liệu lớn, việc lấy ra các nhóm này rất quan trọng.
1.3.4.5 Các phơng pháp dựa trên mẫu
Sử dụng các mẫu miêu tả từ cơ sở dữ liệu (CSDL) để xây dựng mô hình dự đoán cho các mẫu mới bằng cách rút ra các thuộc tính tương tự từ các mẫu đã biết Các kỹ thuật áp dụng bao gồm phân lớp k láng giềng gần nhất (K-nearest neighbour), các thuật toán hồi quy, và hệ thống suy diễn dựa trên tình huống (case-based reasoning).
1.3.4.6 Mô hình phụ thuộc dựa trên đồ thị xác suất
Các mô hình đồ thị xác định sự phụ thuộc xác suất giữa các sự kiện thông qua mối liên hệ trực tiếp trên các cung của đồ thị Chúng xác định những biến nào phụ thuộc nhau một cách trực tiếp, thường được áp dụng cho các biến có giá trị rời rạc hoặc phân loại Ngoài ra, các mô hình này cũng có thể được mở rộng cho các trường hợp đặc biệt như mật độ Gaussian hoặc cho các biến có giá trị thực.
1.3.4.7 Mô hình học quan hệ
1.3.4.8 Khai phá dữ liệu văn bản (Text Mining)
Khai phá dữ liệu văn bản là quá trình tìm kiếm, phân tích và phân loại các dữ liệu văn bản không định dạng, với ứng dụng rộng rãi trong nghiên cứu thị trường, thu nhập và tình báo Phương pháp này giúp phân tích các câu trả lời cho câu hỏi mở trong khảo sát thị trường và tìm kiếm tài liệu phức tạp một cách hiệu quả.
Những u thế và khó khăn thách thức trong nghiên cứu và ứng dụng kỹ thuật khai phá dữ liệu
1.3.5.1 Ưu thế của khai phá dữ liệu so với các phơng pháp cơ bản
Khai phá dữ liệu là một lĩnh vực liên quan đến nhiều ngành học như hệ CSDL, thống kê và hiển thị trực quan Tùy thuộc vào cách tiếp cận, nó có thể áp dụng các kỹ thuật như mạng nơron, lý thuyết tập thô, tập mờ và biểu diễn tri thức Khai phá dữ liệu nổi bật với một số ưu điểm rõ rệt so với các phương pháp cơ bản khác.
Khai phá dữ liệu có lợi thế vượt trội so với phương pháp học máy bởi khả năng xử lý các cơ sở dữ liệu chứa nhiễu, dữ liệu không đầy đủ và biến đổi liên tục Trong khi đó, học máy chủ yếu được áp dụng cho các cơ sở dữ liệu đầy đủ, ít biến động và tập dữ liệu không quá lớn.
Phương pháp hệ chuyên gia khác biệt với khai phá dữ liệu ở chỗ, các ví dụ từ chuyên gia thường có chất lượng cao hơn và chỉ bao gồm những trường hợp quan trọng Hơn nữa, sự tham gia của con người là cần thiết để xác nhận giá trị và tính hữu ích của các mẫu phát hiện, từ đó đảm bảo quá trình phát hiện tri thức đạt hiệu quả tối ưu.
Phương pháp thống kê là nền tảng lý thuyết quan trọng trong khai phá dữ liệu, tuy nhiên, khi so sánh, có thể nhận thấy rằng phương pháp này vẫn tồn tại một số hạn chế mà khai phá dữ liệu đã khắc phục hiệu quả.
- Các phơng pháp thống kê chuẩn không phù hợp với các kiểu dữ liệu có cấu trúc trong rất nhiều các CSDL
- Các phơng pháp thống kê hoạt động hoàn toàn theo dữ liệu, nó không sử dụng tri thức sẵn có về lĩnh vực
- Kết quả phân tích của thống kê có thể sẽ rất nhiều và khó có thể làm rõ đợc
- Phơng pháp thống kê cần có sự hớng dẫn của ngời dùng để xác định phân tích dữ liệu nh thế nào và ở đâu
1.3.5.2 Những vấn đề khó khăn thách thức
Khai phá dữ liệu là một kỹ thuật mạnh mẽ trong việc khai thác tri thức, nhưng cũng gặp phải nhiều thách thức Những khó khăn này tạo ra rào cản lớn trong nghiên cứu và ứng dụng các phương pháp khai phá dữ liệu vào thực tiễn.
Các vấn đề về cơ sở dữ liệu ảnh hưởng đến hệ thống phát hiện tri thức chủ yếu xuất phát từ dữ liệu thô trong CSDL Quá trình khai phá dữ liệu gặp khó khăn do dữ liệu thực tế thường động, không đầy đủ, lớn và có nhiễu Ngoài ra, người dùng có thể không biết liệu dữ liệu có chứa thông tin cần thiết cho việc khai thác hay không, và cách xử lý sự dư thừa thông tin không phù hợp cũng là một thách thức.
Vấn đề dữ liệu lớn trong các cơ sở dữ liệu (CSDL) thường liên quan đến kích thước khổng lồ với hàng trăm trường và bảng chứa hàng triệu bản ghi, dẫn đến không gian lưu trữ lớn, từ gigabytes đến terabytes Điều này làm tăng độ phức tạp trong việc tìm kiếm và suy diễn, cũng như khả năng phát hiện mẫu giả trong quá trình khai thác dữ liệu Để khắc phục vấn đề này, các phương pháp hiện nay bao gồm việc thiết lập ngưỡng cho CSDL, lấy mẫu, áp dụng các phương pháp xấp xỉ, xử lý song song, giảm kích thước tác động của bài toán và sử dụng tri thức đã biết để xác định các biến không phù hợp.
Vấn đề dữ liệu động trong các cơ sở dữ liệu (CSDL) là một thách thức lớn do nội dung liên tục thay đổi theo thời gian, ảnh hưởng đến quá trình khai thác dữ liệu Những thay đổi nhanh chóng có thể làm cho các mẫu khai thác trước đó trở nên không còn giá trị Hơn nữa, các biến trong CSDL có thể bị thay đổi, xóa hoặc tăng lên theo thời gian Giải pháp cho vấn đề này là áp dụng các phương pháp tăng trưởng để nâng cấp các mẫu, đồng thời coi những thay đổi nhỏ là cơ hội để khai thác và tìm kiếm các mẫu đã thay đổi.
Vấn đề về tính không phù hợp của dữ liệu là một yếu tố quan trọng trong việc khai phá dữ liệu, khi dữ liệu không còn phù hợp với mục tiêu hiện tại Ngoài ra, tính ứng dụng của một thuộc tính cũng có thể liên quan đến một tập con cụ thể trong cơ sở dữ liệu.
Vấn đề thiếu các trường hoặc giá trị trong cơ sở dữ liệu (CSDL) có thể dẫn đến việc dữ liệu giá trị bị coi là lỗi Để khai thác dữ liệu hiệu quả, việc quan sát CSDL cần phát hiện đầy đủ các thuộc tính có thể sử dụng trong bài toán Nếu các thuộc tính không phản ánh đúng các tình huống quan tâm, điều này cho thấy có lỗi trong dữ liệu Đây là một vấn đề phổ biến trong CSDL kinh doanh, nơi mà các thuộc tính quan trọng có thể thiếu dữ liệu, gây cản trở cho quá trình khai thác dữ liệu.
Độ nhiễu và không chắc chắn trong dữ liệu, bao gồm độ chính xác và dung sai, là những yếu tố quan trọng ảnh hưởng đến quá trình khai phá dữ liệu.
Mối quan hệ phức tạp giữa các trường trong cơ sở dữ liệu thể hiện qua các thuộc tính và giá trị dữ liệu có cấu trúc phân cấp Sự tương tác giữa các thuộc tính này giúp diễn tả tri thức về nội dung của cơ sở dữ liệu, đòi hỏi các thuật toán phải có khả năng khai thác hiệu quả dữ liệu.
Một số vấn đề khác:
Quá phù hợp xảy ra khi thuật toán tìm kiếm các tham số tối ưu cho mô hình dựa trên một tập dữ liệu hữu hạn, dẫn đến tình trạng chỉ phù hợp với dữ liệu đã sử dụng mà không thể áp dụng cho dữ liệu mới Điều này làm giảm hiệu suất của mô hình khi gặp dữ liệu thử Để khắc phục tình trạng này, có thể áp dụng các phương pháp như đánh giá chéo, tuân thủ các nguyên tắc nhất định hoặc sử dụng các biện pháp thống kê khác.
Khả năng biểu đạt mẫu là yếu tố quan trọng trong nhiều ứng dụng, nơi mà việc truyền đạt thông tin một cách dễ hiểu cho con người là ưu tiên hàng đầu Do đó, các giải pháp thường được áp dụng bao gồm việc sử dụng đồ hoạ để diễn tả, xây dựng cấu trúc luật với các đồ thị có hướng, và biểu diễn thông tin bằng ngôn ngữ tự nhiên cùng với các kỹ thuật khác nhằm tối ưu hóa việc truyền tải tri thức và dữ liệu.
Việc tương tác với người sử dụng và tri thức sẵn có là rất quan trọng trong khai phá dữ liệu Nhiều công cụ và phương pháp hiện nay không dễ dàng kết hợp với tri thức đã biết, dẫn đến hạn chế trong việc áp dụng Sử dụng tri thức miền giúp cải thiện quy trình khai phá dữ liệu Các biện pháp như CSDL suy diễn có thể được áp dụng để phát hiện tri thức mới, từ đó hướng dẫn tìm kiếm và khai thác dữ liệu hiệu quả hơn, đồng thời sử dụng phân bố xác suất dữ liệu trước đó như một hình thức mã hóa dữ liệu sẵn có.
Mạng nơron trong khai phá dữ liệu
Khái niệm mạng nơron
Mạng nơron nhân tạo (Artificial Neural Network - ANN) là hệ thống được xây dựng để mô phỏng chức năng của mạng nơron sinh học, đặc biệt là của con người Trong bài viết này, khi đề cập đến mạng nơron, chúng tôi chỉ nói về mạng nơron nhân tạo, vì mạng nơron sinh học (Biological Neural Network - BNN) có cấu trúc phức tạp hơn nhiều Mạng nơron nhân tạo thực chất là các mô hình toán học do con người phát triển Mặc dù chưa có một định nghĩa tổng quát nào về mạng nơron, nhưng các nhà nghiên cứu trong lĩnh vực này thường đồng thuận với khái niệm cơ bản về chúng.
Mạng nơron là một hệ thống gồm nhiều nơron đơn giản được liên kết và hoạt động song song Chức năng của mạng phụ thuộc vào cấu trúc, trọng số liên kết giữa các nơron và quá trình xử lý bên trong Bên cạnh khả năng xử lý, hệ thống còn có khả năng học hỏi từ dữ liệu và tổng quát hóa kiến thức từ những gì đã học.
D-ơng Thị Hiền Thanh – CNTT 2006
Chúng ta sẽ phân tích mô hình nơron sinh học trước, sau đó chuyển sang mô hình nơron nhân tạo, giúp nhận diện sự tương quan giữa hai loại nơron này và nâng cao hiểu biết về mạng nơron nhân tạo.
Nơron sinh học và mạng nơron sinh học
Hệ thần kinh con người chứa khoảng 100 tỷ tế bào thần kinh, được gọi là nơron Mỗi nơron có khả năng kết nối với khoảng 10.000 nơron khác thông qua các khớp nối.
Hình 2.1: Cấu tạo của nơron
Mỗi nơ ron bao gồm ba phần chính: thân nơ ron, hệ thống dây thần kinh vào (dendrites) và sợi trục axon Thân nơ ron có nhiệm vụ tiếp nhận và phát ra các xung thần kinh, trong khi các dây thần kinh vào nhận tín hiệu từ các nơ ron khác Nhân nơ ron sinh ra tín hiệu ở đầu ra và truyền đến các nơ ron khác qua sợi trục Độ lớn của tín hiệu vào có thể thay đổi khi đi qua các khớp thần kinh trên các nhánh thụ giác, và tỷ lệ biến đổi tín hiệu này được gọi là độ khuyếch đại khớp, tương tự như các trọng số trong nơ ron nhân tạo.
Khíp nèi (Synaspe) Khíp nèi (Synaspe)
Tín hiệu vào từ nơron lân cận với cờng độ s
Khớp thần kinh với độ khuếch đại s
D-ơng Thị Hiền Tha CNTT 2006
Theo nghiên cứu sinh học, chức năng của hệ thần kinh không chỉ dựa vào vai trò của từng nơ ron mà còn phụ thuộc vào cách mà các nơ ron kết nối với nhau, tạo thành mạng nơ ron sinh học.
Tất cả các đặc điểm này được áp dụng triệt để để xây dựng một mạng nhân tạo, nhằm tạo ra mạng nơron tương tự nhất với mạng nơron sinh học.
Giải thuật di truyền trong khaI PHá Dữ LIệU
Những cải tiến của giải thuật di truyền
Kết luận chơng 2 Error! Bookmark not defined Chơng 3 tích hợp giải thuật di truyền với giải thuật huấn luyện mạng nơron truyền thẳng nhiều lớp 50
mạng nơron truyền thẳng nhiều lớp với giải thuật lan truyền ngợc sai số và một số cải tiến
Kiến trúc của mạng nơron truyền thẳng nhiều lớp
Cơ chế học của mạng nơ ron truyền thẳng nhiều lớp
Kết hợp giải thuật di truyền với giải thuật BP
Giải thuật GA trong huấn luyện mạng nơron truyền thẳng nhiều lớp
Kết luận chơng 3 Error! Bookmark not defined Chơng 4 ứng dụng trong bài toán dự báo dữ liệu 71 4.1 giới thiệu bài toán Error! Bookmark not defined
4.2 mô hình hoá bài toán, thiết kế dữ liệu và giải thuật Error! Bookmark not defined
4.2.1 Mô hình hoá bài toán Error! Bookmark not defined.
4.2.2 Thiết kế dữ liệu Error! Bookmark not defined.
4.2.3 Thiết kế giải thuật Error! Bookmark not defined.
4.3.chơng trình dự báo dữ liệu Error! Bookmark not defined
Kết luận chơng 4 Error! Bookmark not defined
KÕt luËn 99 Tài liệu tham khảo 100
Danh mục các từ viết tắt 3
Danh mục các hình vẽ và đồ thị 5
Chơng 1 khai phá dữ liệu và phát hiện tri thức trong csdl 8
1.1.tổng quan về khai phá dữ liệu và phát hiện tri thức trong CSDL 8
1.1.1 Tại sao cần phát hiện tri thức? 8
1.1.2 Khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu 9
1.2 Quá trình pháT HIệN TRI THứC trong CƠ Sở Dữ LIệU 10
1.2.2 Thu thập và tiền xử lý dữ liệu 10
1.2.4 Minh hoạ và đánh giá 12
1.2.5 Đa kết quả vào thực tế 13
1.3 các kỹ thuật Khai phá dữ liệu 13
1.3.1 Kiến trúc của hệ thống khai phá dữ liệu 13
1.3.3 Nhiệm vụ chính của khai phá dữ liệu 17
1.3.4 Một số phơng pháp khai phá dữ liệu phổ biến 19
1.3.5 Những u thế và khó khăn thách thức trong nghiên cứu và ứng dụng kỹ thuật khai phá dữ liệu 24
Chơng 2 kỹ thuật khai phá dữ liệu sử dụng mạng nơron và giải thuËt di truyÒn 21
2.1 Mạng nơron trong khai phá dữ liệu 28
2.1.2 Nơron sinh học và mạng nơron sinh học 29
2.1.3 Mô hình và quá trình xử lý trong nơron nhân tạo 30
2.1.4 Cấu trúc và phân loại mạng nơron 33
2.1.5 Học và lan truyền trong mạng 36
2.1.6 Đánh giá về mạng nơron 40
2.2 Giải thuật di truyền trong khaI PHá Dữ LIệU 42
2.2.1 Cơ bản về giải thuật di truyền 42
2.2.2 Một số cách biểu diễn lời giải của giải thuật di truyền 45
2.2.3 Các toán tử di truyền 46
2.2.4 Cơ sở toán học của giải thuật di truyền 52
2.2.5 Những cải tiến của giải thuật di truyền 54
Chơng 3 tích hợp giải thuật di truyền với giải thuật huấn luyện mạng nơron truyền thẳng nhiều lớp 50
3.2 mạng nơron truyền thẳng nhiều lớp với giải thuật lan truyền ngợc sai số và một số cải tiến 57
3.2.1 Kiến trúc của mạng nơron truyền thẳng nhiều lớp 57
3.2.2 Cơ chế học của mạng nơ ron truyền thẳng nhiều lớp 59
3.2.3 Thuật toán lan truyền ngợc sai số 60
3.2.2 Một số cải tiến của giải thuật BP 71
3.3.Kết hợp giải thuật di truyền với giải thuật BP 73
3.3.1 Giải thuật GAtrong huấn luyện mạng nơron truyền thẳng nhiều lớp 73
3.3.2 Ghép nối với giải thuật lan truyền ngợc sai số 75
Chơng 4 ứng dụng trong bài toán dự báo dữ liệu 71
4.2 mô hình hoá bài toán, thiết kế dữ liệu và giải thuật 80
4.2.1 Mô hình hoá bài toán 80
4.3.chơng trình dự báo dữ liệu 93
Danh mục các từ viết tắt
STT Từ viết tắt Nghĩa tiếng việt tiếng anh
1 ANN Mạng nơron nhân tạo Artficial Neural Network
2 BNN Mạng nơron sinh học Biological Neural Network
3 BP Giải thuật lan truyền ngợc của sai số Back- ropagation of rror P e
4 Csdl Cơ sở dữ liệu Data Base
5 dm Khai phá dữ liệu Data Mining
6 GA Giải thuật di truyền Genetic Algorithm
7 Kdd Phát hiện tri thức trong CSDL
Bảng 1.1: Dữ liệu học trong ví dụ quyết định đi chơi tennis 20
Bảng 2.1: Ví dụ dùng phép tái tạo 48
Bảng 2.2: Quá trình tái tạo 51
Bảng 2.3: Quá trình lai ghép 51
Bảng 3.1: Các hàm kích hoạt 69
Bảng 4.1: Số liệu thử nghiệm của bài toán dự báo 79
Danh mục các hình vẽ và đồ thị
Hình 1.1: Quá trình phát hiện tri thức trong CSDL 10
Hình 1.2: Kiến trúc của hệ thống khai phá dữ liệu 14
Hình 1.3: Quá trình khai phá dữ liệu 15
Hình 1.4: Kết quả của phân cụm 18
Hình 1.5: Cây quyết định đi chơi tennis 20
Hình 2.1: Cấu tạo của nơron 29
Hình 2.2: Thu nhận tín hiệu trong nơron 30
Hình 2.3: Mô hình của một nơron nhân tạo 31
Hình 2.5: Mạng nơron truyền thẳng nhiều lớp 35
Hình 2.7: Sơ đồ học tham số có giám sát 37
Hình 2.8: Sơ đồ học tăng cờng 38
Hình 2.9: Sơ đồ học không giám sát 38
Hình 3.1: Mạng nơron truyền thẳng 2 lớp 58
Hình 3.2: Sơ đồ hiệu chỉnh các trọng số của giải thuật BP 59
Hình 3.3: Sơ đồ mã hoá các trọng số của mạng nơron 74
Hình 3.4: Sơ đồ của giải thuật lai 76
Hình 4.1: Sơ đồ khối giải thuật Phân hệ 1 84
Hình 4.2: Sơ đồ khối giải thuật Phân hệ 1.1 86
Hình 4.3: Sơ đồ khối giải thuật Phân hệ 1.2 89
Hình 4.4: Sơ đồ khối giải thuật Phân hệ 2 91
Hình 4.5: Màn hình chính của chơng trình dự báo 93
Hình 4.6: Dữ liệu tệp huấn luyện 94
Hình 4.7: Màn hình nhập tham số cho mạng nơron 94
Hình 4.8: Màn hình nhập tham số cho giải thuật GA 95
Hình 4.9: Tìm kiếm bằng giải thuật GA 95
Hình 4.10: Huấn luyện bằng giải thuật BP 96
Hình 4.11: Màn hình dự báo 98
Trong những năm gần đây, máy tính đã trở thành công cụ thiết yếu trong việc lưu trữ và xử lý thông tin Sự phát triển mạnh mẽ của các thiết bị thu thập dữ liệu tự động đã tạo ra những kho dữ liệu khổng lồ Mặc dù lượng dữ liệu được thu thập và lưu trữ ngày càng gia tăng, nhưng người ra quyết định lại cần những thông tin bổ ích và tri thức rút ra từ nguồn dữ liệu, thay vì chỉ dựa vào dữ liệu thô để đưa ra quyết định.
Với sự phát triển nhanh chóng của công nghệ, các mô hình cơ sở dữ liệu truyền thống và ngôn ngữ thao tác dữ liệu không còn đáp ứng được yêu cầu hiện tại Để khai thác tri thức từ cơ sở dữ liệu, nhiều lĩnh vực nghiên cứu đã được phát triển, bao gồm tổ chức kho dữ liệu, hệ thống hỗ trợ ra quyết định, và các phương pháp khai phá dữ liệu Trong đó, khai phá dữ liệu và phát hiện tri thức đã trở thành những lĩnh vực nghiên cứu đầy tiềm năng và sôi động.
Luận văn nghiên cứu kỹ thuật mạng nơron và giải thuật di truyền trong khai phá dữ liệu, với trọng tâm là tích hợp giải thuật di truyền vào huấn luyện mạng nơron Dựa trên nghiên cứu này, luận văn phát triển chương trình dự báo dữ liệu sử dụng mạng nơron truyền thẳng, được huấn luyện bằng giải thuật lai GA.
Luận văn đợc trình bầy gồm 4 chơng với nội dung chính nh sau :
Khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu (CSDL) là một lĩnh vực quan trọng, bao gồm các khái niệm cơ bản, quy trình phát hiện tri thức và các nhiệm vụ chính Các phương pháp khai phá dữ liệu đa dạng, nhưng cũng gặp phải nhiều thách thức trong nghiên cứu và ứng dụng thực tiễn Việc hiểu rõ các vấn đề này giúp nâng cao hiệu quả của các kỹ thuật khai phá dữ liệu trong các lĩnh vực khác nhau.
Chương 2 tập trung vào nghiên cứu kỹ thuật khai phá dữ liệu thông qua mạng nơron và giải thuật di truyền, bao gồm việc lựa chọn cấu trúc mạng và các tham số, xây dựng giải thuật học và lan truyền trong mạng nơron, cũng như cách biểu diễn lời giải và các toán tử di truyền cơ bản cùng những cải tiến của giải thuật di truyền Đồng thời, chương này cũng đánh giá hiệu quả của việc sử dụng mạng nơron và giải thuật di truyền trong khai phá dữ liệu, từ đó hướng dẫn việc lựa chọn phương pháp khai phá phù hợp cho các vấn đề thực tế.
Chương 3 trình bày kiến trúc mạng nơron truyền thẳng nhiều lớp và giải thuật lan truyền ngược (BP), đồng thời nêu rõ các vấn đề liên quan đến việc áp dụng giải thuật BP Bên cạnh đó, chương cũng đề xuất giải pháp tích hợp giải thuật di truyền (GA) với giải thuật BP nhằm cải thiện quá trình huấn luyện mạng nơron truyền thẳng nhiều lớp.
Chương 4 trình bày bài toán ứng dụng dự báo lũ trên sông, từ đó tiến hành mô hình hóa bài toán và thiết kế thuật toán phù hợp Bài viết cũng đề cập đến việc thu thập dữ liệu và cài đặt chương trình thử nghiệm sử dụng công cụ mạng nơron truyền thẳng, được huấn luyện bằng giải thuật lai GA-BP.
Ch-ơng 1: khai phá dữ liệu và phát hiện tri thức trong CSDL
1.1 tổng quan về khai phá dữ liệu và phát hiện tri thức trong
1.1.1 Tại sao cần phát hiện tri thức?
Trong hơn hai thập niên qua, lượng thông tin lưu trữ trên các thiết bị điện tử đã tăng mạnh, với tốc độ tích lũy dữ liệu bùng nổ Dự đoán cho thấy, lượng thông tin toàn cầu sẽ tăng gấp đôi sau khoảng hai năm, kéo theo sự gia tăng nhanh chóng về kích thước cơ sở dữ liệu, bao gồm cả số bản ghi và số trường, thuộc tính trong mỗi bản ghi.
Dữ liệu khổng lồ là nguồn tài nguyên quý giá, vì thông tin đóng vai trò then chốt trong mọi hoạt động Tuy nhiên, để dữ liệu thực sự có ý nghĩa, cần phát hiện những tri thức tiềm ẩn có giá trị bên trong Những tri thức này thường rất nhỏ so với khối lượng dữ liệu, khiến việc phát hiện chúng trở nên khó khăn.
Việc xây dựng hệ thống phát hiện tri thức trong cơ sở dữ liệu (KDD) giúp nhận diện các mẩu tri thức giá trị từ khối dữ liệu khổng lồ Kỹ thuật khai phá dữ liệu (DM) là phương pháp xử lý cơ bản trong KDD Phân tích dữ liệu tự động và dự báo của KDD vượt trội hơn so với các phương pháp phân tích thông thường, dựa trên sự kiện trong quá khứ của các hệ thống hỗ trợ ra quyết định truyền thống.
KDD đã chứng tỏ tính hữu dụng của nó trong môi trường cạnh tranh hiện nay và trở thành một hướng nghiên cứu chính trong khoa học máy tính và công nghệ tri thức Ban đầu, phạm vi ứng dụng của KDD chỉ giới hạn trong thương mại và tài chính, nhưng hiện nay đã được mở rộng sang nhiều lĩnh vực khác như viễn thông, giáo dục và điều trị y học KDD đóng vai trò quan trọng trong việc giải quyết vấn đề tràn dữ liệu trong kỷ nguyên thông tin số.
1.1.2 Khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu
Khái niệm “phát hiện tri thức trong cơ sở dữ liệu” lần đầu tiên được giới thiệu vào năm 1989, nhấn mạnh rằng tri thức là sản phẩm cuối cùng của quá trình khai phá dữ liệu Phát hiện tri thức trong cơ sở dữ liệu được định nghĩa là quá trình chắt lọc tri thức từ một lượng lớn dữ liệu, tương tự như việc chuyển đổi dữ liệu từ mức thấp thành các dạng cô đọng và hữu ích hơn Một ví dụ minh họa cho quá trình này là việc khai thác vàng từ đá và cát, trong đó người khai thác cần chắt lọc vàng từ một khối lượng lớn đá và cát.
Thuật ngữ “data mining” đề cập đến việc khai thác tri thức và thông tin giá trị từ một khối lượng lớn dữ liệu thô Quá trình này bao gồm nhiều kỹ thuật nhằm phát hiện thông tin tiềm ẩn trong các cơ sở dữ liệu lớn Ngoài ra, các thuật ngữ như khai phá tri thức, chắt lọc tri thức, phân tích dữ liệu/mẫu, khảo cổ dữ liệu và nạo vét dữ liệu cũng mang ý nghĩa tương tự với data mining.
Tri thức được hiểu là mối quan hệ giữa các phần tử dữ liệu, và phát hiện tri thức là quá trình chiết xuất tri thức từ cơ sở dữ liệu thông qua nhiều giai đoạn khác nhau Khai phá dữ liệu sử dụng các thuật toán đặc biệt để trích xuất mẫu và mô hình từ dữ liệu, đóng vai trò là một giai đoạn quan trọng trong quá trình phát hiện tri thức trong cơ sở dữ liệu.
Phát hiện tri thức trong cơ sở dữ liệu và khai phá dữ liệu là một kỹ thuật mới đang phát triển nhanh chóng, thuộc lĩnh vực đa ngành Nó liên quan đến nhiều lĩnh vực như lý thuyết thuật toán, Data Warehouse, OLAP, và tính toán song song, nhưng chủ yếu dựa trên các nền tảng của xác suất thống kê, cơ sở dữ liệu và học máy.
1.2 Quá trình pháT HIệN TRI THứC trong CƠ Sở Dữ LIệU
mô hình hoá bài toán, thiết kế dữ liệu và giải thuật
chơng trình dự báo dữ liệu
Kết luận chơng 4 Error! Bookmark not defined
KÕt luËn 99 Tài liệu tham khảo 100
Danh mục các từ viết tắt 3
Danh mục các hình vẽ và đồ thị 5
Chơng 1 khai phá dữ liệu và phát hiện tri thức trong csdl 8
1.1.tổng quan về khai phá dữ liệu và phát hiện tri thức trong CSDL 8
1.1.1 Tại sao cần phát hiện tri thức? 8
1.1.2 Khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu 9
1.2 Quá trình pháT HIệN TRI THứC trong CƠ Sở Dữ LIệU 10
1.2.2 Thu thập và tiền xử lý dữ liệu 10
1.2.4 Minh hoạ và đánh giá 12
1.2.5 Đa kết quả vào thực tế 13
1.3 các kỹ thuật Khai phá dữ liệu 13
1.3.1 Kiến trúc của hệ thống khai phá dữ liệu 13
1.3.3 Nhiệm vụ chính của khai phá dữ liệu 17
1.3.4 Một số phơng pháp khai phá dữ liệu phổ biến 19
1.3.5 Những u thế và khó khăn thách thức trong nghiên cứu và ứng dụng kỹ thuật khai phá dữ liệu 24
Chơng 2 kỹ thuật khai phá dữ liệu sử dụng mạng nơron và giải thuËt di truyÒn 21
2.1 Mạng nơron trong khai phá dữ liệu 28
2.1.2 Nơron sinh học và mạng nơron sinh học 29
2.1.3 Mô hình và quá trình xử lý trong nơron nhân tạo 30
2.1.4 Cấu trúc và phân loại mạng nơron 33
2.1.5 Học và lan truyền trong mạng 36
2.1.6 Đánh giá về mạng nơron 40
2.2 Giải thuật di truyền trong khaI PHá Dữ LIệU 42
2.2.1 Cơ bản về giải thuật di truyền 42
2.2.2 Một số cách biểu diễn lời giải của giải thuật di truyền 45
2.2.3 Các toán tử di truyền 46
2.2.4 Cơ sở toán học của giải thuật di truyền 52
2.2.5 Những cải tiến của giải thuật di truyền 54
Chơng 3 tích hợp giải thuật di truyền với giải thuật huấn luyện mạng nơron truyền thẳng nhiều lớp 50
3.2 mạng nơron truyền thẳng nhiều lớp với giải thuật lan truyền ngợc sai số và một số cải tiến 57
3.2.1 Kiến trúc của mạng nơron truyền thẳng nhiều lớp 57
3.2.2 Cơ chế học của mạng nơ ron truyền thẳng nhiều lớp 59
3.2.3 Thuật toán lan truyền ngợc sai số 60
3.2.2 Một số cải tiến của giải thuật BP 71
3.3.Kết hợp giải thuật di truyền với giải thuật BP 73
3.3.1 Giải thuật GAtrong huấn luyện mạng nơron truyền thẳng nhiều lớp 73
3.3.2 Ghép nối với giải thuật lan truyền ngợc sai số 75
Chơng 4 ứng dụng trong bài toán dự báo dữ liệu 71
4.2 mô hình hoá bài toán, thiết kế dữ liệu và giải thuật 80
4.2.1 Mô hình hoá bài toán 80
4.3.chơng trình dự báo dữ liệu 93
Danh mục các từ viết tắt
STT Từ viết tắt Nghĩa tiếng việt tiếng anh
1 ANN Mạng nơron nhân tạo Artficial Neural Network
2 BNN Mạng nơron sinh học Biological Neural Network
3 BP Giải thuật lan truyền ngợc của sai số Back- ropagation of rror P e
4 Csdl Cơ sở dữ liệu Data Base
5 dm Khai phá dữ liệu Data Mining
6 GA Giải thuật di truyền Genetic Algorithm
7 Kdd Phát hiện tri thức trong CSDL
Bảng 1.1: Dữ liệu học trong ví dụ quyết định đi chơi tennis 20
Bảng 2.1: Ví dụ dùng phép tái tạo 48
Bảng 2.2: Quá trình tái tạo 51
Bảng 2.3: Quá trình lai ghép 51
Bảng 3.1: Các hàm kích hoạt 69
Bảng 4.1: Số liệu thử nghiệm của bài toán dự báo 79
Danh mục các hình vẽ và đồ thị
Hình 1.1: Quá trình phát hiện tri thức trong CSDL 10
Hình 1.2: Kiến trúc của hệ thống khai phá dữ liệu 14
Hình 1.3: Quá trình khai phá dữ liệu 15
Hình 1.4: Kết quả của phân cụm 18
Hình 1.5: Cây quyết định đi chơi tennis 20
Hình 2.1: Cấu tạo của nơron 29
Hình 2.2: Thu nhận tín hiệu trong nơron 30
Hình 2.3: Mô hình của một nơron nhân tạo 31
Hình 2.5: Mạng nơron truyền thẳng nhiều lớp 35
Hình 2.7: Sơ đồ học tham số có giám sát 37
Hình 2.8: Sơ đồ học tăng cờng 38
Hình 2.9: Sơ đồ học không giám sát 38
Hình 3.1: Mạng nơron truyền thẳng 2 lớp 58
Hình 3.2: Sơ đồ hiệu chỉnh các trọng số của giải thuật BP 59
Hình 3.3: Sơ đồ mã hoá các trọng số của mạng nơron 74
Hình 3.4: Sơ đồ của giải thuật lai 76
Hình 4.1: Sơ đồ khối giải thuật Phân hệ 1 84
Hình 4.2: Sơ đồ khối giải thuật Phân hệ 1.1 86
Hình 4.3: Sơ đồ khối giải thuật Phân hệ 1.2 89
Hình 4.4: Sơ đồ khối giải thuật Phân hệ 2 91
Hình 4.5: Màn hình chính của chơng trình dự báo 93
Hình 4.6: Dữ liệu tệp huấn luyện 94
Hình 4.7: Màn hình nhập tham số cho mạng nơron 94
Hình 4.8: Màn hình nhập tham số cho giải thuật GA 95
Hình 4.9: Tìm kiếm bằng giải thuật GA 95
Hình 4.10: Huấn luyện bằng giải thuật BP 96
Hình 4.11: Màn hình dự báo 98
Trong những năm gần đây, máy tính đã trở thành công cụ thiết yếu trong việc lưu trữ và xử lý thông tin Sự phát triển của các thiết bị thu thập dữ liệu tự động đã tạo ra những kho dữ liệu khổng lồ Mặc dù lượng dữ liệu thu thập và lưu trữ ngày càng tăng, nhưng người ra quyết định cần những thông tin hữu ích và tri thức rút ra từ dữ liệu, thay vì chỉ dựa vào dữ liệu thô để đưa ra quyết định.
Với sự phát triển nhanh chóng của công nghệ, các mô hình cơ sở dữ liệu truyền thống và ngôn ngữ thao tác dữ liệu đã trở nên không còn phù hợp Để khai thác tri thức từ cơ sở dữ liệu, các lĩnh vực nghiên cứu như tổ chức kho dữ liệu, hệ thống hỗ trợ ra quyết định, và đặc biệt là khai phá dữ liệu và phát hiện tri thức đã được phát triển mạnh mẽ Trong đó, khai phá dữ liệu và phát hiện tri thức đang trở thành một lĩnh vực nghiên cứu sôi động và đầy tiềm năng.
Luận văn nghiên cứu kỹ thuật mạng nơron và giải thuật di truyền trong khai phá dữ liệu, đặc biệt là việc tích hợp giải thuật di truyền với huấn luyện mạng nơron Dựa trên nền tảng này, luận văn phát triển chương trình dự báo dữ liệu sử dụng mạng nơron truyền thẳng, được huấn luyện bằng giải thuật lai GA.
Luận văn đợc trình bầy gồm 4 chơng với nội dung chính nh sau :
Chương 1 cung cấp cái nhìn tổng quan về khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu (CSDL) Bài viết đề cập đến các khái niệm cơ bản, quy trình phát hiện tri thức, nhiệm vụ chính của khai phá dữ liệu, cũng như các phương pháp áp dụng Ngoài ra, chương này cũng nêu ra những thách thức trong nghiên cứu và việc ứng dụng kỹ thuật khai phá dữ liệu vào thực tiễn.
Chương 2 tập trung vào nghiên cứu kỹ thuật khai phá dữ liệu thông qua mạng nơron và giải thuật di truyền, bao gồm việc lựa chọn cấu trúc mạng và các tham số, xây dựng giải thuật học và lan truyền trong mạng nơron, cùng với cách biểu diễn lời giải, các toán tử di truyền cơ bản và những cải tiến của giải thuật di truyền Chương này cũng đánh giá hiệu quả của việc áp dụng mạng nơron và giải thuật di truyền trong khai phá dữ liệu, từ đó hướng đến việc lựa chọn phương pháp khai thác phù hợp cho các vấn đề thực tiễn.
Chương 3 giới thiệu về kiến trúc mạng nơron truyền thẳng nhiều lớp và giải thuật lan truyền ngược (BP) Bài viết cũng đề cập đến các vấn đề liên quan đến việc sử dụng giải thuật BP trong huấn luyện mạng nơron Cuối cùng, chương này trình bày giải pháp tích hợp giải thuật di truyền (GA) với giải thuật BP nhằm cải thiện hiệu quả trong quá trình huấn luyện mạng nơron truyền thẳng nhiều lớp.
Chương 4 trình bày bài toán ứng dụng dự báo lũ trên sông, từ đó xây dựng mô hình hóa bài toán và thiết kế thuật toán Bài viết cũng đề cập đến việc thu thập dữ liệu và cài đặt chương trình thử nghiệm sử dụng công cụ mạng nơron truyền thẳng, được huấn luyện bằng giải thuật lai GA-BP.
Ch-ơng 1: khai phá dữ liệu và phát hiện tri thức trong CSDL
1.1 tổng quan về khai phá dữ liệu và phát hiện tri thức trong
1.1.1 Tại sao cần phát hiện tri thức?
Trong hơn hai thập niên qua, lượng thông tin lưu trữ trên các thiết bị điện tử đã gia tăng đáng kể, với tốc độ tích lũy dữ liệu bùng nổ Dự đoán cho thấy lượng thông tin toàn cầu sẽ tăng gấp đôi sau khoảng hai năm, kéo theo sự gia tăng nhanh chóng về kích thước cơ sở dữ liệu, cả về số lượng bản ghi lẫn số trường và thuộc tính trong mỗi bản ghi.
Dữ liệu khổng lồ là nguồn tài nguyên quý giá, vì thông tin là yếu tố then chốt trong mọi hoạt động Tuy nhiên, để dữ liệu thực sự có ý nghĩa, cần phát hiện những tri thức tiềm ẩn giá trị bên trong Những tri thức này thường rất nhỏ so với lượng dữ liệu, dẫn đến việc phát hiện chúng trở thành một thách thức lớn.
Việc phát hiện tri thức trong cơ sở dữ liệu (KDD) là quá trình xây dựng các hệ thống có khả năng tìm ra những mẩu tri thức giá trị trong khối dữ liệu khổng lồ Kỹ thuật khai phá dữ liệu (Data Mining) là một trong những phương pháp chính trong KDD Phân tích dữ liệu tự động và dự báo của KDD vượt trội hơn so với các phương pháp phân tích thông thường, dựa trên các sự kiện trong quá khứ của các hệ thống hỗ trợ ra quyết định truyền thống.
KDD đã chứng tỏ tính hữu dụng của nó trong môi trường cạnh tranh hiện nay, trở thành một hướng nghiên cứu chính trong lĩnh vực khoa học máy tính và công nghệ tri thức Ban đầu, KDD chỉ được ứng dụng trong thương mại và tài chính, nhưng hiện nay đã mở rộng ra nhiều lĩnh vực khác như viễn thông, giáo dục và y học KDD là nỗ lực nhằm giải quyết vấn đề tràn dữ liệu trong kỷ nguyên thông tin số.
1.1.2 Khai phá dữ liệu và phát hiện tri thức trong cơ sở dữ liệu
Khái niệm "phát hiện tri thức trong cơ sở dữ liệu" lần đầu tiên được giới thiệu vào năm 1989, nhấn mạnh tri thức là sản phẩm cuối cùng của quá trình khai phá dữ liệu Quá trình này được định nghĩa là việc chắt lọc tri thức từ một lượng lớn dữ liệu, với KDD được coi là sự chuyển đổi dữ liệu từ mức thấp thành các dạng cô đọng, tóm tắt và hữu ích hơn Một ví dụ điển hình là việc khai thác vàng từ đá và cát, nơi người khai thác tìm cách tách vàng ra khỏi những nguyên liệu thô này trong điều kiện có nhiều đá và cát.
Thuật ngữ "data mining" đề cập đến việc tìm kiếm tri thức và thông tin giá trị từ một lượng lớn dữ liệu thô Quá trình này bao gồm nhiều kỹ thuật nhằm phát hiện thông tin tiềm ẩn trong các cơ sở dữ liệu lớn Ngoài ra, một số thuật ngữ tương tự như "knowledge mining" (khai phá tri thức), "knowledge extraction" (chắt lọc tri thức), "data/pattern analysis" (phân tích dữ liệu/mẫu), "data archaeology" (khảo cổ dữ liệu) và "data dredging" (nạo vét dữ liệu) cũng được sử dụng để chỉ các khía cạnh khác nhau của việc khai thác dữ liệu.
Tri thức được hiểu là mối quan hệ giữa các phần tử dữ liệu, và phát hiện tri thức là quá trình chiết suất tri thức từ cơ sở dữ liệu thông qua nhiều giai đoạn khác nhau Khai phá dữ liệu sử dụng các thuật toán đặc biệt để trích xuất mẫu và mô hình từ dữ liệu, và đây chỉ là một giai đoạn trong quá trình phát hiện tri thức trong cơ sở dữ liệu.
Phát hiện tri thức trong cơ sở dữ liệu và khai phá dữ liệu là một kỹ thuật mới đang phát triển nhanh chóng Đây là một lĩnh vực đa ngành, liên quan đến nhiều lĩnh vực khác nhau như lý thuyết thuật toán, Data Warehouse, OLAP và tính toán song song Tuy nhiên, nó chủ yếu dựa trên nền tảng của xác suất thống kê, cơ sở dữ liệu và học máy.
1.2 Quá trình pháT HIệN TRI THứC trong CƠ Sở Dữ LIệU