Đối với lĩnh vực giáo dục, khai phá dữ liệungoài dùng để phân tích đối tượng, đưa ra các phương án tuyển sinh phù hợp,khai phá dữ liệu còn có thể ứng dụng trực tiếp vào việc phân tích ứn
Trang 1Lời cảm ơn 7
1.1 Quy trình phân tích và khai phá dữ liệu 13
1.1.1 Xác định mục tiêu và đặt câu hỏi 14
1.1.2 Chuẩn bị dữ liệu 15
1.1.3 Tiền xử lý dữ liệu 16
1.1.4 Khai phá dữ liệu 17
1.1.5 Đánh giá kết quả 19
1.2 Một số bài toán phổ biến trong khai phá dữ liệu 20
1.2.1 Bài toán hồi quy 20
1.2.2 Bài toán dự đoán chuỗi thời gian 20
1.2.3 Bài toán phân lớp và phân cụm 21
1.3 Mạng nơ-ron nhân tạo 22
1.4 Logic mờ 25
1.4.1 Logic mờ và hàm thuộc 25
1.4.2 Mờ hóa dữ liệu 26
1.4.3 Luật mờ và hệ suy diễn mờ 33
Trang 22 Xây dựng giải pháp xử lý cho bài toán phân tích chất lượng nước
2.1 Tổng quan bài toán 35
2.1.1 Tổng quan nghiên cứu 36
2.1.2 Đặc tả bài toán chi tiết 37
2.2 Phân tích, thiết kế mô hình 40
2.2.1 Tổng quan mô hình 40
2.3 Xây dựng mô hình phân tích 41
2.3.1 Xây dựng mô hình chuỗi thời gian 41
2.3.2 Xây dựng mô hình hồi quy truyền thống 43
2.3.3 Xây dựng mô hình học sâu 45
2.3.4 Xây dựng mô hình học sâu mờ 47
2.3.5 Xây dựng mô hình học sâu ANFIS 48
2.4 Đánh giá kết quả mô hình 51
2.4.1 Thang đo đánh giá 51
2.4.2 Đánh giá kết quả thực nghiệm 52
2.5 Xây dựng ứng dụng web phân tích và dự đoán tảo nở 58
3 Một số ứng dụng của mạng mờ - tự mã hóa 60 3.1 Mạng tự mã hóa và ứng dụng 60
3.2 Mạng học sâu mờ - tự mã hóa 63
3.3 Ứng dụng mạng mờ - tự mã hóa trong bài toán phân lớp và phát hiện bất thường 65
3.3.1 Xác định ngưỡng bất thường 65
3.3.2 Bài toán phát hiện bất thường trong môi trường mạng 67 3.3.3 Dữ liệu truy vấn Web 69
3.3.4 Đánh giá kết quả 71
3.4 Ứng dụng mạng mờ - tự mã hóa trong bài toán hoàn thiện dữ liệu thiếu 72
3.4.1 Tổng quan bài toán 72 3.4.2 Bài toán phân tích chất lượng không khí ở Việt Nam 74
Trang 33.5 Tổng quan về bộ dữ liệu 753.5.1 Đánh giá kết quả tìm dữ liệu thiếu 77
Trang 41.1 Quy trình phân tích dữ liệu 13
1.2 Kiến trúc chung của một mạng nơ-ron 23
1.3 Cấu trúc một nơ-ron 24
1.4 Mô phỏng hàm thuộc tam giác 27
1.5 Mô phỏng hàm thuộc tứ giác 28
1.6 Mô phỏng hàm thuộc Bell 28
1.7 Mô phỏng hàm thuộc L 29
1.8 Mô phỏng hàm thuộc Zmf 30
1.9 Mô phỏng hàm thuộc Gamma tuyến tính 30
1.10 Mô phỏng hàm thuộc Smf 31
1.11 Mô phỏng hàm thuộc Sigma 32
1.12 Mô phỏng hàm thuộc Gauss 32
1.13 Các thành phần của hệ suy diễn mờ 34
2.1 Mô hình thiết kế tổng quan 40
2.2 Mô hình mạng ANFIS [12] 49
2.3 Mô tả các chỉ số đánh giá hệ phân lớp 51
2.4 Giao diện ứng dụng web 59
2.5 Kết quả trả về từ mô hình tuyến tính trên ứng dụng Web 59
2.6 Kết quả trả về từ mô hình học sâu trên ứng dụng Web 59
3.1 Mô hình mạng Autoencoder [39] 61
3.2 Mô phỏng mạng Fuzzy-Autoencoder 64
Trang 52.1 Tương quan giữa các thành đặc trưng trong bài toán chất
lượng nước 532.2 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, hương pháp RNN 542.3 Bảng tổng hợp kết quả hồi quy TSI-chla của các phương pháp 562.4 Bảng tổng hợp kết quả bài toán phân lớp 573.1 So sánh hiệu năng của mô hình RDA với các phương pháp
khác trên bộ CSIC 713.2 So sánh hiệu năng của các mô hình trên bộ BKLA 713.3 Số lượng dữ liệu bị mất trên bộ dữ liệu chất lượng không khí 763.4 Tỷ lệ dữ liệu bị mất trên bộ dữ liệu chất lượng không khí 763.5 Bảng tổng hợp kết quả hồi quy dữ liệu bù 773.6 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp LSTM 803.7 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp GRU 813.8 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp SVR 823.9 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp hồi quy tuyến tính 833.10 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp cây hồi quy (DTR) 84
Trang 63.11 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp SARIMAX 853.12 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp ANFIS 863.13 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp Fuzzy-RNN 873.14 Sự ảnh hưởng của mô hình khi thay đổi các thuộc tính đầu
vào, phương pháp Fuzzy-LSTM 88
Trang 7Lời cảm ơn
Đầu tiên, em xin gửi lời cảm ơn chân thành nhất đến TS Nguyễn Thị ThuHương, cô đã luôn đồng hành và hỗ trợ em rất nhiều trong quá trình hoànthiện và bảo vệ luận văn
Tiếp theo, em xin tỏ lòng biết ơn sâu sắc đến TS Lê Chí Ngọc đã giúp đỡ
em rất nhiều trong quá trình làm luận văn của mình Thầy đã bỏ nhiều thờigian quan tâm, giảng giải cho em hiểu mọi khúc mắc, giúp em có thể tiếp tụcnghiên cứu và hoàn thành luận văn này Sự chỉ bảo tận tình của thầy là sự trợgiúp lớn nhất giúp em trong quá trình học thạc sĩ
Em xin cảm ơn tới các giáo sư, tiến sĩ, cán bộ giảng dạy tại viện ToánỨng Dụng và Tin Học, Đại học Bách Khoa Hà Nội Các thầy đã hỗ trợ em rấtnhiều trong quá trình hoàn thành luận văn cũng như chương trình cao học tạiviện Các thầy, cô đã cho em nhiều bài học quý giá, không chỉ trong lĩnh vựcnghiên cứu mà còn là trong cuộc sống, những bài học sẽ đi cùng em trong cả
sự nghiệp sau này
Em cũng xin gửi cảm ơn tới Trung tâm An toàn An ninh thông tin, đạihọc Bách Khoa Hà Nội, đặc biệt là giám đốc trung tâm, TS Trần Quang Đức
Em xin cảm ơn trung tâm đã tạo điều kiện cho em được làm việc và nghiêncứu tại trung tâm trong suốt thời gian học cao học tại trường Em xin cảm ơncác thầy, các anh nghiên cứu sinh ở trung tâm đã hỗ trợ em rất nhiều trongquá trình học tập và làm luận văn
Cuối cùng, em xin được gửi lời cảm ơn những tới cha mẹ, sự cổ vũ độngviên của cha mẹ là nguồn động lực rất lớn giúp em theo đuổi con đường họcthuật, hoàn thành được luận văn này,
Luận văn của em còn có nhiều sai sót, rất mong nhận được những ý kiến
từ các thầy cô để em có thể hoàn thiện kiến thức của mình, cũng như tiếp tụchướng nghiên cứu này
Trang 8Tóm tắt luận văn
Trong luận văn này, em sẽ trình bày phương pháp tiếp cận mờ trong khaiphá dữ liệu Cấu trúc luận văn bao gồm ba chương Trong Chương 1, em sẽtrình bày về các kiến thức cơ sở học logic mờ vào khai phá dữ liệu, làm tiền
đề cho các khai phá về sau Trong Chương 2 và 3, em sẽ trình bày những ứngdụng đạt được từ các phương pháp đã nêu Cụ thể, Chương 2 sẽ trình bày
về việc ứng dụng logic mờ trong chuỗi thời gian để giải quyết bài toán phântích chất lượng nước, để giải quyết vấn đề phú dưỡng và sự nở hoa đột biến ởtảo, gây nhiều vấn đề về môi trường Bài toán được triển khai thông qua việctrích chọn các đặc trưng ảnh hưởng đến chất lượng nước, sau đó dùng cácphương pháp học máy và chuỗi thời gian kết hợp với logic mờ trên các đặctrưng để phân tích và giải quyết bài toán Phần cuối của Chương 2 sẽ trìnhbày về cách đưa mô hình lên một ứng dụng Web hoàn chỉnh, giúp người dùng
có thể dễ dàng tương tác Chương 3 sẽ trình bày về một số ứng dụng của logic
mờ trong một số bài toán học sâu đặc thù, sử dụng mạng mạng tự mã hóa(Autoencoder), bao gồm bài toán phát hiện bất thường và bài toán bổ sungcác dữ liệu thiếu Phần kết luận tổng kết lại những vấn đề chính yếu đượctrình bày trong luận văn Trong quá trình nghiên cứu, luận văn đã đạt đượccác kết quả khả quan, với minh chứng là các công bố khoa học đi kèm
Hà Nội, ngày 24 tháng 12 năm 2021
Trương Tiến Dũng
Trang 9Lời mở đầu
Công nghệ thông tin xuất hiện và phát triển đã đem đến một bước ngoặtlớn trong lịch sử con người Mục đích tiên quyết của công nghệ thông tinchính là dùng công nghệ để xử lý, biến đổi dữ liệu thành tri thức con người
có thể sử dụng trực tiếp được, từ đó hỗ trợ con người trong việc ra quyết định
và xử lý vấn đề một cách nhanh chóng
Với sự phát triển và bùng nổ của công nghệ thông tin và mạng xã hội Conngười đang sống trong một thế giới bao quanh là dữ liệu Dữ liệu lớn, nhu cầuphân tích và khai phá dữ liệu ngày càng nhiều Có thể thấy, trong những nămgần đây, phân tích dữ liệu được ứng dụng trong hầu hết tất cả các lĩnh vựctrong cuộc sống Đối với lĩnh vực kinh tế, phân tích dữ liệu giúp con người xử
lý được các bài toán về cân đối thu chi, gợi ý chiến lược kinh doanh từ các dữliệu đã có trong doanh nghiệp Bài toán phân tích hành vi người dùng cũng
là một bài toán đang được các doanh nghiệp quan tâm với mục đích tối ưuhóa cách thức bán hàng Các hình thức phân tích hành vi ngày càng được sửdụng tinh vi hơn trong những năm gần đây: Bắt đầu là những bài toán sử dụngluật kết hợp, dựa vào lịch sử mua hàng của khách hàng để chọn ra những cặphàng được mua đồng thời, đến các bài toán về sử dụng camera để phân tíchhành vi của khách, phân tích khách tập trung ở khu vực nào, hay chọn lựa cácsản phẩm nào, tất cả đều được thu thập và phân tích sao cho thu được mộtchiến lược kinh doanh tối ưu nhất Đối với lĩnh vực giáo dục, khai phá dữ liệungoài dùng để phân tích đối tượng, đưa ra các phương án tuyển sinh phù hợp,khai phá dữ liệu còn có thể ứng dụng trực tiếp vào việc phân tích ứng viên,đóng góp trực tiếp vào quá trình phỏng vấn và tuyển sinh
Phân tích dữ liệu còn được đặc biệt ứng dụng trong nhiều bài toán mangtính đặc thù cao Ví dụ như các bài toán đi vào lĩnh vực công nghiệp sản xuất,như phân tích chất lượng sản phẩm, kiểm thử rủi ro, hay các bài toán về phântích đặc thù môi trường, như phân tích chất lượng không khí, phân tích chấtlượng nước Lĩnh vực y học, trong những năm gần đây, cũng có khá nhiềuthành tựu trong ứng dụng khai phá dữ liệu Ví dụ như tập đoàn Vingroup ở
Trang 10Việt Nam đã cho ra đời nhiều ứng dụng trong lĩnh vực này, bao gồm phân tíchhình ảnh với một số bệnh trong y tế, đồng thời cho ra đời trợ ý ảo nhằm hỗtrợ các tác vụ thủ tục cho bác sĩ, giúp các bác sĩ có thể tập trung vào chuyênmôn hơn.
Phân tích dữ liệu, mục đích cuối cùng cũng là từ dữ liệu đầu vào, rút ratri thức cho con người ở quá trình đầu ra Quá trình này không phải chỉ xuấthiện trong kỷ nguyên gần đây, mà con người đã làm việc này trong suốt chiểudài phát triển của con người, ứng dụng những dữ liệu đã có trong tự nhiên để
có thể làm giàu tri thức của con người Con người luôn mặc định rằng chúng
ta biết sự chuyển động của các vật là do kiến thức vật lý và hóa học, họ biếtđược mặt trời mọc ở đằng đông là do kiến thức địa lý, biết được con người sẽchết khi tim ngừng đập là do sinh học, Nhưng liệu những điều mặc định
đó có đúng? Thực chất thì bản thân con người không thể nào nhận biết và
xử lý các thông tin chưa bao giờ gặp Con người chỉ có thể thu được các trảinghiệm, kiến thức mới về thế giới này thông qua việc quan sát nhiều lần đểtìm hiểu về sự vật đó Chúng ta biết được lửa nóng, nước sôi có thể gây bỏng
do tự trải nghiệm hoặc học hỏi từ người khác, chúng ta biết được mặt trời mọc
ở đằng đông, mặt trời lên đến đỉnh sẽ là trưa là do đã quan sát nó nhiều lần
Sự phản ánh lại hiện thực trên thế giới này vào não bộ đều bắt nguồn từ quátrình chúng ta quan sát lại nhiều lần mà nhận ra, hay nói cách khác, con người
sử dụng thống kê, sử dụng toán học để nhận biết mọi thứ Các môn khoa học
lý, hóa, sinh, hay địa chỉ giúp chúng ta hiểu về sự vật, hiện tượng đã qua quátrình quan sát và phân tích lâu dài, chứ không thể đem lại cho con người khảnăng nhận biết kiến thức mới trong tự nhiên ngay lập tức
Toán học, hay cụ thể hơn là xác suất và thống kê, là nền tảng của học máy
và khai phá dữ liệu, nhưng rộng hơn, là nền tảng đề con người có thể nhậnbiết được mọi thứ Bản chất của xác suất thống kê chính là quan sát một sự vậtnhiều lần, phân nhỏ sự kiện với từng điều kiện, từng nhóm thuộc tính khácnhau và ghi lại kết quả tương ứng Đối với quá trình thống kê, kết quả thuđược thường là mối liên hệ giữa các sự vật, hiện tượng với nhau Cách đơngiản nhất để có được kết quả này là xét ngưỡng, ví dụ như: “Nếu chỉ số AQI
Trang 11lớn hơn 150 thì không khí bị ô nhiễm nghiêm trọng”, hay “Nếu cân nặng lớnhơn 90kg thì có thể coi là béo phì (với người Việt Nam)” Các quy luật chúng
ta tưởng như bình thường như: “Nhiều mây thì sẽ mưa, mưa sẽ kéo theo sấmchớp, mưa to sẽ có lũ lụt” cũng đều đến từ việc con người quan sát nắng mưaqua nhiều thế hệ mà có được Thậm chí câu ca dao của cha ông ta: “Chuồnchuồn bay thấp thì mưa, bay cao thì nắng, bay vừa thì râm” cũng là một dạngkhoa học thống kê, được đúc kết ra từ nhiều lần quan sát Bên cạnh đó, cácvấn đề về khoa học thống kê không chỉ đề cập đến các hiện tượng tự nhiên
mà còn đến cập đến chính xã hội loài người Tử vi và chiêm tinh học chính
là hai ví dụ điển hình nhất cho điều này Tất cả nhưng câu mà thầy bói nói rađều có cơ sở khoa học đến từ sự quan sát và đúc kết qua nhiều thế hệ, dù vẫncòn đó những dấu hỏi về độ tin cậy
Tổng kết lại, phân tích dữ liệu là quá trình chuyển đổi dữ liệu thành cáctri thức, áp dụng được trong cuộc sống Một quá trình phân tích dữ liệu khoahọc và lôgic, bắt buộc phải dựa trên nền tảng phân tích toán học, với nền tảng
là xác xuất và thống kê Song song với đó, quá trình phân tích dữ liệu, yêucầu kiến thức của các chuyên gia trong nhiều lĩnh vực Muốn giải quyết, phântích một vấn đề, người chuyên gia phải thật sự hiểu nguyên lý hoạt động củavấn đề đó, tránh sự lệch lạc trong quá trình phân tích, và giải quyết vấn đề.Khác với phân tích dữ liệu, khai phá dữ liệu thuần túy sử dụng toán học
để giải quyết vấn đề, chấp nhận sự sai lệch về nhận thức với dữ liệu Khai phá
dữ liệu có thể được coi như một bước hỗ trợ, đưa ra các tri thức thô, trực quanhóa dữ liệu dựa trên nhiều phương pháp khác nhau, có thể bao gồm hồi quy,phân lớp, phân cụm, nhằm giúp chuyên gia có được những tri thức ở dạngthô, là tiền đề để rút ngắn và tối ưu quá trình phân tích dữ liệu Đối với cácphương pháp khai phá hiện đại như học máy, học sâu, logic mờ cũng là mộtnền tảng lý thuyết quan trọng bên cạnh xác suất và thống kê Thuật ngữ logic
mờ được giới thiệu và đề xuất năm 1969 với lý thuyết tập mờ của Lotfi Zadeh[63], nhưng đã được nghiên cứu từ những năm 1920, xuất phát từ logic đa giatri (infinite-value logic) đề xuất bời Lukasiewicz và cộng sự [46] Logic mờđược lấy ý tưởng từ việc con người có thể nhận thức một vấn đề ngay cả khi
Trang 12không có đủ thông tin cần thiết Các mô hình hoặc tập luật mờ là các phươngtiện toán học đại diện cho sự mơ hồ và thiếu thông tin Những mô hình này
có khả năng nhận dạng, mô tả, giải thích dựa vào dữ liệu thiếu Đối với cácphương pháp khai phá dữ liệu như học máy, học sâu, về bản chất là dự đoánkhả năng xảy ra trong tương lai của một sự vật, hiện tượng nào đó, một cách
mơ hồ thông qua một hộp đen trọng số được hình thành trong quá trình "học"cũng là một kế thừa thực tiếp từ logic-mờ Trong thực tế, có rất nhiều bài toánvới dạng dữ liệu là không rõ rằng, buộc phải dùng logic mờ để mờ hóa, giúpmáy tính đọc được dữ liệu một cách tổng quát và cho kết quả tối ưu hơn
Từ đó, trong luận văn này, em sẽ làm rõ các vấn đề đã nêu, cách sử dụnglogic mờ trong việc giải quyết các bài toán học máy, học sâu Đồng thời đivào các ứng dụng cụ thể để chứng minh tình khả thi và vượt trội của phươngpháp
Trang 13Cơ sở lý thuyết
1.1 Quy trình phân tích và khai phá dữ liệu
Một quy trình phân tích dữ liệu thường bao gồm những bước như sau:
Hình 1.1: Quy trình phân tích dữ liệu
Có thể thấy, khai phá được sử dụng như một phần trong toàn bộ quá trìnhphân tích, tập trung vào cách biến đổi dữ liệu đã chuẩn hóa thành tri thức,được chia ra nhiều phương pháp khác nhau [20]
Trang 141.1.1 Xác định mục tiêu và đặt câu hỏi
Xác định mục tiêu, là một trong những nhiệm vụ quan trọng nhất trongkhai phá dữ liệu Xác định mục tiêu, hay tầm nhìn của một dự án, chính làyếu tố quyết định thành bài của dự án đó
Thật vậy, với muôn vàn các phương pháp phân tích và xử lý dữ liệu khácnhau, nếu như không thể xác định rõ mục tiêu từ đầu, rất thể chúng ta sẽ bịchìm đắm trong các phương pháp đó, nghĩa là chúng ta cứ thử, cứ chạy, cứphân tích nhưng không biết mình đang làm gì, khi nào mới kết thúc,
Để có thể phân tích một cách hiểu quả, cần có một tầm nhìn tốt, và tất cảcác kết quả nên được dựa theo tầm nhìn đó, giữ người phân tích luôn sát vớimục tiêu ban đầu là cách để việc phân tích dữ liệu trở nên hiểu quả
Khi đã có mục tiêu cụ thể, cần đi vào chi tiết từng bước, thông qua việcđặt các câu hỏi, đưa dữ liệu vào đúng ngữ cảnh và hoàn cảnh cụ thể, để có thểtìm ra hướng đi đúng đắn nhất Các câu hỏi nên có bao gồm nguồn dữ liệu
từ đâu? Chọn mẫu như thế nào? Kết quả đầu ra cụ thể là gì? Biểu thị như thếnào?
Để hiểu hơn về tầm quan trọng của việc đặt câu hỏi , em xin phép sử dụngmột ví dụ như sau: trong Chiến tranh Thế giới thứ hai, khi mà quân đội Ngakiểm tra các máy bay trở về, họ thấy phần bụng máy bay bị hỏng hóc nhiềunhất, nên cho người gia tăng vào phần này, mà quên mất rằng những chiếcmáy bay đã trở về lại không đại diện cho những chiếc máy bay bị bắn trênchiến trường, phần hư hỏng ở bụng không quyết định một máy bay có tồn tạitrở về hay không, nên việc gia cố gần như là vô nghĩa Có thể thấy, trườnghợp vừa nêu, việc phân tích đã sai ngay từ khi chọn mẫu dữ liệu, dẫn đến dùphân tích có tốt đến đâu, kết quả vẫn xa rời thực tiễn
Nói qua về các định kiến, định kiến cũng là một phần để con người thửnghiệm thống kê và khoa học thực nghiệm, với mục đích kiểm chứng lại tínhđúng sai của chính các định kiến Hay nói rõ hơn, định kiến chính là ướclượng ban đầu của chuyên gia nhằm tiên định về những sự việc có thể xảy
ra Thông thường, khi làm khoa học thực nghiệm, các thông tin nhận được
Trang 15thường nằm trong ba dạng Dạng thông tin đầu tiên sẽ là các thông tin ủng
hộ định kiến của chúng ta, dạng thứ hai sẽ đi ngược lại những định kiến vàcuối cùng, sẽ luôn xuất hiện những thông tin mà chúng ta chưa bao giờ nghĩtới Khi kiểm thử tính an toàn của dây an toàn từ những năm 50 của thế kỉ
XX để đo lường khả năng giảm thiểu tai nạn của chúng, người ta phát hiện
ra rằng đúng là đeo dây an toàn sẽ cho tỉ lệ tử vong thấp hơn trong một sốtrường hợp Tuy nhiên các số liệu cũng cho thấy nếu nạn nhân là trẻ em, việcđeo dây an toàn lại khiến tỷ lệ tử vọng tăng cao Ngoài ra, các nhà khoa họccòn phát hiện được một thông tin mà chưa bao giờ họ nghĩ tới: việc sử dụngcửa sổ trời cũng có thể là nguyên nhân tăng cao tỷ lệ tử vong
Có thể thấy, việc đặt câu hỏi và những giả định là vô cùng cần thiết trongquá trình phân tích dữ liệu
• Dữ liệu phân lớp: Các giá trị của một thuộc tính phân lớp là biểu tượnghoặc tên của sự vật Mỗi giá trị đại diện cho một số loại thể loại, mãhoặc trạng thái, và do đó các thuộc tính phân lớp cũng được gọi là phânloại Các giá trị không có bất kỳ thứ tự có ý nghĩa Trong khoa học máytính, các giá trị còn được gọi là liệt kê
• Dữ liệu thứ tự: Một thuộc tính thứ tự là một thuộc tính với các giá trị
có thể có một thứ tự có ý nghĩa hoặc xếp hạng trong số đó, nhưng độlớn giữa các giá trị kế tiếp không được biết đến Thuôc tính phân lớp
Trang 16được đại diện bởi mốt và trung vị, giá trị trung bình không cần được sửdụng.
• Dữ liệu giá trị khoảng: Các thuộc tính khoảng được đo trên thang đocủa các đơn vị có kích thước bằng nhau Các giá trị của các thuộc tínhkhoảng có thứ tự và có thể dương, 0 hoặc âm Do đó, ngoài việc cungcấp một bảng xếp hạng các giá trị, các thuộc tính như vậy cho phép ta
so sánh và định lượng sự khác biệt giữa các giá trị Bởi vì các thuộctính khoảng là số, ta có thể tính toán giá trị trung bình của chúng, ngoàitính trung vị và mốt có thể được sử dụng
• Dữ liệu thuộc giá trị tỉ lệ: Thuộc tính tỷ lệ thu nhỏ là thuộc tính số cóđiểm 0 thực sự Nghĩa là, nếu một phép đo được chia tỷ lệ, ta có thểnói về một giá trị là bội (hoặc tỷ lệ) của một giá trị khác Ngoài ra, cácgiá trị được sắp xếp theo thứ tự và ta cũng có thể tính toán sự khác biệtgiữa các giá trị, cũng như trung bình, trung vị và mốt
• Dữ liệu chuỗi và chuỗi thời gian: Chuỗi thời gian trong thống kê, xử lýtín hiệu, kinh tế lượng và toán tài chính là một chuỗi các điểm dữ liệu,được đo theo từng khoảng khắc thời gian liền nhau theo một tần suấtthời gian thống nhất Một số khái niệm liên quan tới chuỗi thời gianCác dữ liệu có thể được lấy được từ nhiều nguồn khác nhau, như nguồn
cở sở dữ liệu, các tệp thống kê dạng bảng như CSV, excel, hay rộng hợn làtrong kho dữ liệu Tùy từng trường hợp cụ thể, có những bài toán chưa có dữliệu, buộc người phân tích phải đi thu thập dữ liệu từ trong thực tế, để có thể
xử lý bài toán
1.1.3 Tiền xử lý dữ liệu
Tiền xử lý dữ liệu là quá trình chuyển dữ liệu thô, thu thập từ nhiều nguồn
về cùng một định dạng, cũng như thực hiện một số phương pháp biến đổi đơngiản với dữ liệu đầu vào Một trong những vấn đề quan trọng nhất của tiền xử
lý dữ liệu là làm sạch dữ liệu [20]
Trang 17Khi phân tích dữ liệu thường xảy ra trường hợp nhiều bộ dữ liệu không cógiá trị được ghi lại cho một số thuộc tính do nguyên nhân chủ quan như tácnhân con người hay nguyên nhân khách quan như sai sót trong quá trình nhập
dữ liệu, dẫn đến việc phải tìm kiếm một phương pháp nào đó để bù vào các
dữ liệu bị mất Tiền xử lý dữ liệu còn bao gồm các quá trình về chuẩn hóa dữliệu về các dạng tương ứng, phù hợp từng thuật toán triển khai khác nhau
dụ, khai phá kiến thức từ dữ liệu, khai phá kiến thức, phân tích dữ liệu/môhình Khai phá dữ liệu được triển khai dựa trên nền tảng xác xuất thống kê vàmáy học
Học máy (Machine Learning) nghiên cứu về cách thức máy tính điện tử
có thể học (hoặc nâng cao khả năng vận hành) dựa trên dữ liệu [20] Mộtmảng nghiên cứu chính của máy học liên quan đến việc lập trình máy tínhcho phép nó có thể tự động học để có thể nhận dạng các quy luật phức tạp
và đưa ra những quyết định thông minh dựa vào dữ liệu Ví dụ, một bài toánkinh điển trong máy học đó là lập trình một chiếc máy tính sao cho nó có thể
tự động nhận dạng các mã địa chính viết tay trên các bức thư sau khi đượchuấn luyện với một tập các ví dụ có sẵn
Trang 18Học không giám sát
Học không giám sát (Unsupervised Learning) là một lớp các thuật toánmáy học cho phép máy tính học từ những dữ liệu không hoặc chưa được gánnhãn [20] Phân cụm có thể được coi là một thuật toán như vậy Trong thực
tế, ta có thể sử dụng phân tích phân cụm để khám phá ra các lớp nằm trong
dữ liệu Ví dụ, một giải pháp học không giám sát có thể nhận vào một tậpcác ảnh của các chữ số viết tay từ 0 đến 9 Giả sử ta tìm được tổng cộng 10cụm bằng một thuật toán phân cụm nào đó Các cụm này có thể tương ứngvới mười chữ số từ 0 đến 9; tuy nhiên, mô hình được huấn luyện với bộ dữliệu đó không thể cho chúng ta biết ý nghĩa của các cụm tìm được là gì, do
dữ liệu dùng cho việc huấn luyện không hề được gán nhãn
ví dụ cho quá trình huấn luyện mô hình, giám sát quá trình học của mô hìnhđược chọn
Học bán giám sát
Học bán giám sát (Semi-supervised Learning) là một lớp các bài toán máyhọc sử dụng cả dữ liệu được và không được gán nhãn khi huấn luyện mô hình.Với một cách tiếp cận cụ thể, các điểm dữ liệu được gán nhãn được sử dụng
để huấn luyện cho mô hình phân lớp và dữ liệu không gán nhãn được sử dụng
để tinh chỉnh các đường biên quyết định dùng để phân tách các lớp Một ví dụ
về bài toán phân lớp nhị phân, ta có thể coi các điểm dữ liệu xuất hiện trongbài toán chỉ có thể thuộc về một trong hai lớp: âm tính và dương tính
Trang 191.1.5 Đánh giá kết quả
Đánh giá mẫu dữ liệu, hay còn gọi là đánh giá thông tin thu được từ quá
trình khai thác, xác định mức độ chính xác, khả năng đem lại giá trị thực sự,
để trả lời cho câu hỏi ‘mẫu dữ liệu/thông tin thu được có cần quan tâm để pháttriển chiến lược, triển khai vào thực tế không?’ Ví dụ cụ thể của bước này làxây dựng các giả thuyết và tiến hành kiểm định, dựa trên mức độ tin cậy vàkết quả kiểm định để xem xét Nếu kết quả phân tích không hợp lý, có sai sót,cần quay kiểm tra lại các bước ở trên, còn nếu kết quả phân tích đã hợp lý, độtin cậy cao thì tiếp tục bước sau cùng dưới đây
Không phải tất cả các mô hình được tạo ra bởi các quy trình khai thác
dữ liệu đều tốt Điều gì làm cho một mô hình tốt có thể khác nhau từ ngườidùng đến người dùng Do đó, kỹ thuật là cần thiết để đánh giá sự tốt của các
mô hình phát hiện dựa trên các biện pháp chủ quan Những ước tính giá trịcủa các mẫu đối với một lớp người dùng nhất định, dựa trên niềm tin hoặc
kỳ vọng của người dùng Hơn nữa, bằng cách sử dụng các biện pháp tốt hoặchạn chế do người dùng chỉ định để hướng dẫn quá trình khám phá, ta có thểtạo ra các mẫu tốt hơn và giảm không gian tìm kiếm
Hiển thị kết quả
Trực quan hóa dữ liệu nhằm mục đích truyền đạt dữ liệu rõ ràng và hiệu
quả thông qua đại diện đồ họa Trực quan hóa dữ liệu đã được sử dụng rộngrãi trong nhiều ứng dụng Ví dụ, tại nơi làm việc để báo cáo, quản lý hoạtđộng kinh doanh và theo dõi tiến độ của nhiệm vụ Phổ biến hơn, ta có thểtận dụng các kỹ thuật trực quan để khám phá các mối quan hệ dữ liệu mà nếukhông dễ quan sát bằng cách nhìn vào dữ liệu thô Ngày nay, mọi người cũng
sử dụng trực quan hóa dữ liệu để tạo ra đồ họa thú vị
Diễn dịch kết quả
Kiến thức hoặc thông tin, mà ta có được thông qua quá trình khai thác dữliệu, cần phải được trình bày theo cách mà các bên liên quan có thể sử dụng
Trang 20nó khi họ muốn Dựa trên các yêu cầu kinh doanh, giai đoạn triển khai có thểđơn giản như tạo báo cáo hoặc phức tạp như quy trình khai thác dữ liệu có thểlặp lại trong toàn tổ chức Trong giai đoạn triển khai, các kế hoạch triển khai,bảo trì và giám sát phải được tạo ra để thực hiện và cũng hỗ trợ trong tươnglai.
1.2 Một số bài toán phổ biến trong khai phá dữ
liệu
Bài toán hồi quy được thực hiện nhằm mục đích dự đoán một hoặc nhiềutính chất chưa xác định của sự vật dựa vào những tính chất đã biết Trong bàitoán hồi quy, xu hướng giải quyết thường bắt đầu bằng việc kiểm thử một sốtính chất đã có của sự vật, xác định mỗi liên hệ giữa các trường dữ liệu vớinhau, sau đó cố gắng tìm được một công thức hồi quy, dưới dạng đã học, để
có thể tìm được trường dữ liệu cần thiết dựa vào các dữ liệu đã có Phân tíchhồi quy là một phương pháp đơn giản nhưng hiệu quả, được áp dụng trongnhiều bài toán khác nhau, từ các bài toán mang đậm chất kỹ thuật đến các bàitoán mang tính xã hội cao
Chuỗi thời gian là một quá trình ngẫu nhiên {Xt, t ∈ T} phụ thuộc theobiến thời gian t ∈ T được biểu thị qua dãy các quan sát [19] Chuỗi thời gian
có thế là liên tục hoặc rời rạc phụ thuộc vào tập T là đếm được hay khôngđếm được Chuỗi thời gian là rời rạc nếu các quan sát được thực hiện trên tậpthời gian T đếm được, ngược là chuỗi thời gian liên tục Các ứng dụng thực
tế thường sử dụng các chuỗi thời gian rời rạc với khoảng thời gian cách đều(phút, giờ, ngày, tuần, tháng, quý, năm, ) Ví dụ, các chỉ số nhiệt độ, dòngchảy của sông, nồng độ của một quá trình hóa học, v.v có thể được ghi lại
Trang 21thành một chuỗi thời gian liên tục Mặt khác, dân số của một thành phố cụthể, sản xuất của một công ty, tỷ giá hối đoái giữa hai loại tiền tệ khác nhau
có thể đại diện cho chuỗi thời gian rời rạc Dữ liệu được quan sát trong mộtchuỗi thời gian rời rạc được giả định là được đo như một biến liên tục bằngcách sử dụng thang số thực Hơn nữa, một chuỗi thời gian liên tục có thể dễdàng chuyển đổi thành chuỗi thời gian rời rạc bằng cách hợp nhất dữ liệu vớinhau trong một khoảng thời gian xác định [19]
Một chuỗi thời gian ghi lại giá trị của một biến đơn thì được gọi gọi làchuỗi thời gian đơn chiều Nhưng nếu chuỗi thời gian ghi lại giá trị của nhiềuhơn một biến thì nó là chuỗi thời gian đa chiều
Phân tích chuỗi thời gian bao gồm các phương pháp phục vụ việc phântích dữ liệu dạng chuỗi thời gian với mục đích trích xuất các đặc trưng vềthống kê cũng như các đặc trưng hữu ích khác của dữ liệu Dự đoán chuỗithời gian là việc sử dụng một mô hình để tiến hành đưa ra những dự đoán chocác giá trị trong tương lai dựa vào các dữ liệu quá khứ quan sát được
Một cách tự nhiên, dữ liệu chuỗi thời gian có đặc tính sắp xếp theo thứ
tự thời gian trong đó Phân tích chuỗi thời gian khác với phân tích dữ liệu vềkhông gian với các quan sát thường liên quan đến vị trí địa lý Một mô hìnhngẫu nhiên cho một chuỗi thời gian sẽ thường phản ánh một sự thật rằng cácquan sát gần nhau theo gian sẽ có liên quan chặt chẽ hơn những quan sát cách
xa nhau Thêm vào đó, các mô hình chuỗi thời gian thường tận dụng đặc tínhthứ tự một chiều của thời gian, do đó những dữ liệu tại một thời điểm nào đó
sẽ có liên quan đến dữ liệu ghi nhận được trong quá khứ thay vì là của tươnglai
Phân lớp là quá trình tìm một mô hình (hoặc hàm số) cho việc mô tả vàphân tách các lớp dữ liệu của một bộ dữ liệu nào đó Mô hình được tạo ra dựatrên những thống kê của một tập gồm các dữ liệu huấn luyện (những điểm dữliệu đã được gán nhãn để xác định lớp mà nó thuộc về) Nhiệm vụ của mô
Trang 22hình sẽ là dự đoán nhãn của các đối tượng chưa được gán trước những thôngtin đó Có tất nhiều cách để thực hiện quá trình phân lớp Đơn giản nhất là
sử dụng một ngưỡng xác định và so sánh với một vài tính chất của các giátrị trong tập dữ liệu Quá trình huấn luyện thực chất là tìm ra bộ đánh giángưỡng, sao cho có thể phân tách được tập đữ liệu hiệu quả nhất dựa trên bộ
dữ liệu đầu vào
Khác với phân tích phân lớp, phân tích phân cụm được liệt kê vào danhsách các thuật toán học không giám sát (Unsupervised Learning); điều này
có nghĩa là các mô hình phân cụm không quan tâm đến nhãn của các điểm
dữ liệu trong suốt quá trình huấn luyện Trong nhiều trường hợp, nhãn lớpcủa dữ liệu thậm chí không tồn tại lúc bắt đầu của quá trình phân tích Phântích phân cụm có thể được sử dụng để tạo ra nhãn lớp cho một tập các điểm
dữ liệu Các đối tượng được phân cụm dựa trên nguyên lý tối đa hóa khoảngcách của các phần tử khác cụm và tối thiểu hóa khoảng cách giữa các phần
tử thuộc cùng một cụm Hay nói cách khác, các cụm được hình thành sao chocác phần tử thuộc cùng một cụm phải giống nhau nhiều hơn khi so với nhữngphần tử khác hay thậm chí là khác xa so với các phần tử thuộc cụm khác.Phân tích phân cụm có thể sử dụng trong các bài toán cần phần loại đốitượng, cũng như sử dụng trực tiếp trong quá trình tiền xử lý dữ liệu nhằmđánh nhãn cho các bộ dữ liệu thiếu hoặc chưa có nhẵn
1.3 Mạng nơ-ron nhân tạo
Mạng nơ-ron nhân tạo [61] (gọi tắt là mạng nơ-ron) xuất phát từ việc môphỏng hoạt động của bộ não con người Mạng nơ-ron là các mô hình tính toánchứa các đơn vị xử lý có khả năng truyền thông với nhau bằng cách gửi các tínhiệu đến lẫn nhau thông qua các liên kết có trọng số Tùy thuộc vào mục đích
sử dụng khác nhau, các thành phần trong mạng gồm các lớp và phương thứcxác định trong số là khác nhau Chính vì sự đa dạng trong cấu trúc, mạngnơ-ron là phương pháp có thể giải quyết được nhiều bài toán một lúc, baogồm các bài toán đã nêu và nhiều bài toán khác trong khai phá dữ liệu Các
Trang 23phương pháp học sử dụng mạng nơ-ron được gọi chung là các phương pháphọc sâu.
Kiến trúc tổng quát của một mạng nơ-ron được mô tả như sau:
Inputlayer
Hiddenlayer
Outputlayer
Ouput
Hình 1.2: Kiến trúc chung của một mạng nơ-ron
Mô hình kiến trúc của một mạng nơ-ron gồm 3 thành phần bao gồm:Lớp đầu vào (Input Layer), Lớp ẩn (Hidden Layer) và Lớp đầu ra (OutputLayer) Trong đó, lớp ẩn gồm các nơ-ron, nhận dữ liệu input từ các nơ-ron ởlớp (Layer) trước đó và chuyển đổi các input này cho các lớp xử lý tiếp theo.Trong một mạng nơ-ron có thể có nhiều Hidden Layer, mỗi nơ-ron (nút) làmột đơn vị xử lý thông tin của mạng nơ-ron, là yếu tố cơ bản để cấu tạo lênmạng nơ-ron
Trang 24x2 w2
Σ
Hàmchuyểnđổi
Hàmkích hoạt
yĐầu ra
Các thành phần của mạng được mô tả chi tiết như sau:
Đầu vào (Inputs): Tương ứng với một thuộc tính (attribute) của dữ liệu Đầu ra (Output): Kết quả của mạng là một giải pháp cho một vấn đề, đối
với bài toán phân lớp, mạng nơ-ron xác định đối tượng thuộc vào các lớp đã
có dựa vào xác xuất hoặc ngưỡng trả về
Trọng số liên kết (Connection Weights) : thể hiện mức độ quan trọng (độ
mạnh) của dữ liệu đầu vào đối với quá trình xử lý thông tin (quá trình chuyểnđổi dữ liệu từ layer này sang layer khác) Quá trình học (Learning Processing)của mạng thực ra là quá trình điều chỉnh các trọng số (Weight) của các inputdata để có được kết quả mong muốn
Hàm chuyển đổi (Transfer Function): (cũng có thể gọi là hàm tổng) có
nhiệm vụ tính tổng trọng số của tất cả các input được đưa vào mỗi nơ-ron.Đối với tổng số input trong một layer được tính theo công thức sau:
Trang 25Hàm kích hoạt (Activation Function): là một hàm vô hướng gọi dùng để
chuyển net input các đơn vị trong mạng nơ-ron, có nhiều hàm kích hoạt khácnhau như Sigmoid, tanh, ReLU, Leaky ReLU, Maxout, ELU
Mạng ron truyền thẳng (Feed-Forward) là một trong những mạng ron đơn giản nhất [61], được sử dụng như một hệ hồi quy hoặc phân lớp đơngiản Trong bài toán chuỗi, người ta thường dùng một số mạng phức tạp hơn,được trình bày chi tiết trong các mục sau
nơ-1.4 Logic mờ
Logic toán học được gắn liền với các mệnh đề và suy diễn, được thể hiện
ở dạng các luật, mục tiêu nghiên cứu logic mà mệnh đề là để giúp con ngườigiải quyết được các vấn đề trong thực tế thông qua các luật được khai phá.Đối với logic cổ điển , một mệnh đề thường có tính đúng (True) hoặc sai(False) rõ rằng, tuy nhiên, trong tự nhiên, các luật có dạng rõ ràng như vậychỉ chiếm một phần nhỏ [43] Hầu hết các mệnh đề trong thực tế đều ẩn chứanhững thuộc tính không rõ rằng, khó có thể xác định tính đúng sai một cáchtường minh, nếu không muốn nói là bất khả Lấy ví dụ: đối với các tri thứcdạng “Áp suất cao”, “Thể tích nhỏ”, “Quả táo đỏ”, việc xác định một cáchchính xác trị chân lý của chúng là đúng hay sai là rất khó khăn do các từ
“cao”, “nhỏ”, hay “đỏ” hoàn toàn có tính chất mơ hồ [3]
Từ đó, tiếp cận mờ mở rộng logic mệnh đề thành logic mờ (Fuzzy logic),trong đó, mỗi mệnh đề P sẽ được gán cho một trị chân lý v(P), một giá trịtrong đoạn [0,1], biểu diễn mức độ đúng đắn của mệnh đề đó
Trang 26Nếu như trong logic cổ điển, quan hệ thuộc của một tập hợp được đánhgiá theo kiểu nhị phân, được gọi là hàm thuộc (Membership Funciton), kíhiệu µ Để xem một phần tử có là thành viên của tập A hay không, ta gắn chophần tử đó giá trị 1 nếu phần tử đó chắc chắn thuộc về A, giá trị 0 nếu ngượclại Hàm thuộc µA được định nghĩa như sau:
Một vấn đề nảy sinh đối với hầu hết các ứng dụng là rất khó để xác địnhtập từ cũng như hàm thuộc nào là thích hợp nhất Tùy thuộc vào bài toán,người ta sẽ định nghĩa các hàm mờ hóa khác nhau Tuy nhiên, quá trình nàykhông hề đơn giản [3]
Một số hàm thuộc đơn giản và phổ biến hay được sử dụng bao gồm:
Hàm thuộc tam giác
Hàm thuộc tam giác được xác định bởi cận dưới a, cận trên b và giá trịm(đỉnh tam giác), thỏa mãn a < m < m Hàm thuộc này được gọi là đối xứngnếu m = (a + b)/2 [43]
Trang 27(bưu) (bưm)Nếu m < u < b
hNếu u = m , với h ≤ 1
(1.4)
Hình 1.4: Mô phỏng hàm thuộc tam giác
Hàm thuộc hình thang
Hàm thuộc của tập mờ này gọi là hàm thuộc hình thang, xác định bởi bộ
4 giá trị a, b, c, d theo công thức sau [43]:
(dưu) (dưc)Nếu c < u < d
hNếu b ≤ m ≤ c , với h ≤ 1
(1.5)
Trang 28Hình 1.5: Mô phỏng hàm thuộc tứ giác
Hàm thuộc Bell
Hàm thuộc Bell có dạng tương tự hàm thuộc tứ giác, nhưng đã được thaybằng các hàm trơn để sử dụng tốt hơn trong quá trình mờ hóa, công thức hàmBell được biểu diễn như sau:
f(x) = 1
Hình 1.6: Mô phỏng hàm thuộc Bell
Trang 291 − 2(x−bb−a)2 Nếu a+b2 ≤ x ≤ b
1 Nếu x ≥ b
(1.8)
Trang 30Hình 1.8: Mô phỏng hàm thuộc Zmf
Hàm thuộc Gamma tuyến tính
Hàm Gamma tuyến tính được xác định với công thức như sau [43] :
Hình 1.9: Mô phỏng hàm thuộc Gamma tuyến tính
hNếu u ≥ , với h ≤ 1
(1.9)
Trang 31Hàm thuộc Smf
Hàm thuộc Smf có dạng tương tự hàm thuộc Gamma tuyến tính, nhưng
đã được thay bằng các hàm trơn để sử dụng tốt hơn trong quá trình mờ hóa,công thức hàm Smf được biểu diễn như sau:
1 − 2(x−bb−a)2 Nếu a+b2 ≤ x ≤ b
Trang 32Hình 1.11: Mô phỏng hàm thuộc Sigma
Trang 33Trong đó c là kỳ vọng và σ là phương sai của bộ dữ liệu Hàm này cònđược gọi là hàm thuộc Gauss trong logic mờ Đồ thị của hàm được biểu diễndưới dạng phân phối chuẩn, tập trung ở giữa đoạn và giảm dần sang 2 bêntheo đúng luật của phân phối chuẩn
Trong quá trình khai phá dữ liệu, các hàm mờ đóng vai trò tiền xử lý dữliệu, chuyển đổi đầu vào từ dạng mờ thành dạng có ý nghĩa hơn để máy tính
xử lý, với kỳ vọng thu được kết quả chính xác hơn
Luật mờ
Luật kéo theo mờ, hay luật suy diễn mờ, có dạng "Nếu A thì B", với A
và B là 2 thuộc tính mờ có thể mờ hóa bằng các phương pháp mờ Luật mờthường được ứng dụng trong các hệ hỗ trợ, giúp cho con người đưa ra quyếtđịnh trong một số tình huống thường là bất biến, ví dụ như "Nếu mức lũ làcao và cấp hồ chứa là trung bình thì lượng xả là cao" [3]
Một dạng khác của luật suy diễn mờ, được đề xuất bởi Takagi và Sugeno[49][50], là sử dụng các công thức toán học tường minh làm đầu ra cho đầuvào mờ Nghĩa là chuyển các tập mờ đầu vào cho các công thức tường minhtương ứng để thực hiện những tính toán tiếp theo Ví dụ như: "Nếu vận tốccao thì Lực = k(vận tốc)2 Hệ mờ, được định nghĩa bao gồm một tập nhiều
mờ, có thể có hoặc không liên kết với nhau, là tiền đề hình thành cơ sở trithức mờ Một kho dữ liệu cho phép con người tìm kiếm và trích rút các luậtmờ
Hệ suy diễn mờ
Hệ suy diễn mờ tương tác với cơ sở tri thức mờ, là nơi mờ hóa yêu cầu, trả
về kết quả luật mong muốn dưới dạng có thể hiểu được cho con người, cấutrúc cơ bản của một hệ suy diễn mờ bao gồm [24]:
Trang 34Hình 1.13: Các thành phần của hệ suy diễn mờ
• Bộ luật mờ: bao gồm các luật mờ đã được xây dựng trong hệ thống
• Cơ sở dữ liệu: lưu trữ các tham số hệ thống, như các hàm thuộc được
sử dụng
• Đơn vị thực thi quyết định: thực hiện các hoạt động suy diễn trong cácluật
• Giao diện mở hóa: chuyển đổi các lớp đầu vào thành các giá trị mờ
• Chuyển đổi giá trị kết quả thành thuộc tính đầu ra có thể đọc được
Đầu ra của hệ suy diễn có thể rơi vào hai nhóm, đại diện cho các loạithông tin khác nhau Nhóm đầu tiền là mô hình ngôn ngữ [62], người dùng
hệ thống sẽ nhận được kết quả trả về, ví dụ như khi đưa vào hệ "Trời mưa to"thì đáp án trả về là "Không đi khảo sát"
Mô hình còn lại là Takagi – Sugeno [50]: Đầu ra trả về là một công thứcứng vào đầu vào mờ, từ đó làm đầu vào cho các quá trình tính toán tiếp theo.Đây cũng là tiền đề để kết hợp mô hình mờ với mạng nơ-ron nhân tạo, với ýtưởng chính là tận dạng các hàm đầu ra từ mô hình Takagi – Sugeno để tinhchính mô hình học sâu, giúp cho mạng nơ-ron có độ hiểu quả cao hơn
Trang 35Xây dựng giải pháp xử lý
cho bài toán phân tích chất lượng nước và phân lớp
2.1 Tổng quan bài toán
Nước có vai trò vô cùng quan trọng, là thành phần quan trọng nhất trongsinh hoạt hằng ngày, đồng thời, nước đóng vai trò quan trọng trong lĩnh vựcnông nghiệp và công nghiệp Ngày nay, quá trình đô thị và công nghiệp hóadiễn ra một cách nhanh chóng, gây nên sự ô nhiễm diện rộng Đối với mỗiloại tài nguyên, con người đã nghiên cứu và chỉ ra được quy trình gây nên sự ônhiễm tương ứng Cụ thể, đối với nước, quá trình phú dưỡng (eutrophication),chính là một trong những nguyên nhân gây suy giảm chất lượng nước và tìnhtrạng thiếu nước tại một số quốc gia trên thế giới hiện nay [37] Quá trìnhphú dưỡng, bắt đầu khi các rác thải trong sinh hoạt của con người, và chấtthải công nghiệp không được xử lý kỹ trước khi đổ ra môi trường tự nhiên.Nếu như quá trình ô nhiễm thường bắt đầu khi các chất thải hòa tan vào nước,làm nguồn nước không thể sử dụng được, thì phú dưỡng lại gây nguy hại chonguồn nước từ chính các chất dinh dưỡng (nutrients), chủ yếu bao gồm nitơ
Trang 36và phốt-pho còn tồn đọng trong nước thải [25] Các chất dinh dưỡng mà conngười không sử dụng, lại là chất nuôi dưỡng, giúp cho các loại sinh vật phù
du, đặc biệt là tảo phát triển Sự nở hoa dày đặc của tảo, trước hết đã chặn toàn
bộ ánh nắng mặt trời xuống dưới, ngăn chặn sự phát triển của các loài thựcvật Các loài động vật như cá, tôm, cũng không thể tồn tại do thiếu khíoxi, được sinh từ ánh nắng mặt trời, đồng thời cũng không có đủ tài nguyênthực vật để sinh sống Hậu quả nghiêm trọng mà tảo gây ra phá hủy một phần
hệ sinh thái, đặc biệt là sự suy giảm mạnh của các sinh vật biển, đặc biệt là làcác động vật không xương sống [22]
Sự nở hoa của tảo còn kéo theo một số hiện tượng như suy giảm oxy trongkhông khí, gây các mùi nặng và độc tố trong môi trường khu vực xung quanh[22], Từ đó, nhu cầu phân tích và nắm bắt các yếu tố cụ thể, gây ra hiện tượngphú dưỡng và sự nở hoa của tạo một cách định lượng Một hệ thống chiếnlược giúp phân tích, dự báo nồng độ nở hoa, đồng thời đưa ra các giải phápngăn chặn là bắt buộc phải có để hạn chế những thiệt hại mà phù dưỡng gâyra
Đã có nhiều nghiên cứu chỉ ra rằng các chất dinh dưỡng thừa là yếu tốquan trọng trong hiện tượng phú dưỡng Một cuộc khảo sát ở Trung Quốc,Thống kê thực hiện trên cho thấy rằng trong 15 hồ nước nông đã cho thấy rằngtổng lượng nitơ và photpho có liên quan trực tiếp đến chlorophyll-a (ChL-a
- đại lượng đặc trưng cho sự sinh tảo) Mặt khác, các nghiên cứu đã chỉ rarằng , ngoài chất dinh dưỡng, một số các yếu tố liên quan mật thiết đến sự
nở tạo trong tự nhiên bao gồm nhiệt độ, tốc độ dòng chảy, ánh sáng, độ PH[10] [16] [28] [60] Tổng quan lại, tảo nở nhanh hơn trong nhiệt độ ấm cao,hoặc dưới ánh sáng mạnh [16][38], đồng thời sẽ bị hạn chế khi có dòng chảymạnh Các nghiên cứu cũng chỉ ra rằng, tác động của con người trong việcđiều tiết nước, bao gồm dựng đập, chống lũ lụt, khai thác thủy điện, có thểlàm thay đổi đáng kể các đặc điểm của hệ sinh thái, ảnh hưởng trực tiếp đến
Trang 37sự phân bố, thành phần và mật độ tảo trong khu vực liên quan[16] Sự phứctạp, đến từ ảnh hưởng kết hợp của các chất thải, các yếu tố khí hậu và conngười càng làm quá trình phân tích trở nhân khó khăn, là một thách thức lớncần giải quyết
Các mô hình số được áp dụng để chứng minh các yếu tố ảnh hướng trên,như mô hình MIKE 21, mô hình mô phỏng Nutrient [64][59][28] Tuy nhiên,các mô hình này đều yêu cầu một lượng lớn kiến thức chuyên gia, đặc biệttrong các lĩnh vực khí tượng và thủy văn, đồng thời tiêu tốn nhiều thời gian[65] Do vậy, học máy và khai phá dữ liệu đã được các nhà khoa học áp dụngcho các bài toán loại này Một số nghiên cứu nổi bật bao gồm ứng dụng môhình cơ bản vectơ hỗ trợ SVM đến các mạng học sâu phức tạp [35] Cụ thể,SVM đã được chứng minh cho hiệu năng cao với bài toán cảnh báo tảo nởhoa trong hồ chứa [44] hoặc trên sông [47] Nghiên cứu của Yi và cộng sự
so sánh và đánh giá ưu, nhược điểm của cây hồi quy và mạng nơron nhân tạotrong việc dự đoán tảo nở hoa trong chu kỳ ngắn Mạng học sâu LSTM vàmạng tích chập cũng đã được thử nghiệm trong một vài nghiên cứu khác [34].Nhìn chung, học máy đang là một hướng đi đúng đắn, và có tiềm năng lớn đểgiải quyết triệt để vấn đề trong tương lai
2.1.2 Đặc tả bài toán chi tiết
Trong luận văn này, em đã chọn bộ dữ liệu về hiện tượng phú dưỡng vàtảo nở hoa trên sông Hàn (Hàn Quốc) làm bài toán phân tích cụ thể Bài toánđang được chính phủ Hàn Quốc quan tâm và được thu thập dữ liệu tại cáctrạm một cách tự động, từ đó có được một bộ dữ liệu hoàn chỉnh trong vòng
10 năm Có rất nhiều nghiên cứu khác nhau đã được thực hiện trên bộ dữ liệunày [32][28][13]
Sông Hàn là con sông dài thứ hai tại Hàn Quốc, với chiều dài khoảng hơn
500 km Sông Hàn nằm tại chính giữa bán đảo Hàn Quốc, có vai trò quantrọng trong việc cấp nước cho nông nghiệp, công nghiệp hằng hải Đồng thờicung cấp nước sinh hoạt cho gần một nửa cư dân Hàn Quốc (24 triệu người)
Trang 38Sông Hàn bao gồm hai nhánh chính được chia làm hướng Bắc và Nam, Vớidòng chảy bắt đầu từ hồ chứa Palang và kết thúc tại thủ đô Seoul [13] Dữ liệu
về các chỉ số trên sống Hàn được thu thập từ nhiều trạm khác nhau bao gồm
8 trạm chính Amsa (M1), Guui (M2), Jamsil (M3), Ttukdo (M4), Bogwang(M5), Norangjin (M6), Yeongdungpo (M7), và Gayang (M8), mỗi trạm cáchnhau khoảng 55 km, song song với đó là 46 trạm nhỏ khác Dữ liệu được lấytrực tiếp tự bộ môi trường Hàn Quốc (http://water.nier.go.kr/)) Các thông sốtồn tài trong bộ dữ liệu bao gồm:
• Nhu cầu oxy hóa học (Chemical oxygen demand - COD)
• Nhu cầu oxy sinh học (Biological oxygen demand - BOD)
• Tổng carbon hữu cơ (Total organic carbon - TOC)
• Tổng chất rắn lơ lửng (Total suspended solids - TSI)
• Tổng phốt pho (Total phosphorus - TP)
• Tổng phốt pho hòa tan (Dissolved total phosphorus - DTP)
• Phốt phát (Phosphate - PO4-P)
• Tổng nitơ (Total nitrogen -TN)
• Tổng nitơ hòa tan (Dissolved total nitrogen - DTN)
Trang 39• Oxy hòa tan (Dissolved oxygen)
• Chỉ số pH
• Độ dẫn điện (Electroconductivity - EC)
• Tổng số Coliform(TColi) và chỉ số Coliforms trong phân (Fecal iforms - Fcoli)
Col-Chỉ số dinh dưỡng Carlson (Carlson’s trophic state index – TSI) đại diệncho độ dinh dưỡng xuất hiện trong nước, thang đo từ 1 tới 199 [9] Độ nở hoacủa tảo (Chl-a (mg/m3)) được quy đổi về chỉ số đánh giá TSI-chla Chỉ số đượcphân thành 4 lớp với các khoảng <30, 30-50,60-70 và >50 Các khoảng đượcgán với các nhãn tương ứng bao gồm it dinh dưỡng (oligotrophic), trung bình(mesotrophic), dinh dưỡng cao (eutrophic) và siêu dinh dưỡng (hypertrophic),công thức quy đổi tương ứng các chỉ số như sau:
T SI−Chla = 9.82 ∗ lnChla + 30.6 (2.1)
Từ việc phân tích ý nghĩa bài toán cũng như đặc tả chi tiết, có thể thấy cácphương pháp học máy, học sâu là hoàn toàn phù hợp để giải quyết bài toánphân tích quá trình phú dưỡng và dự đoán nở hoa ở tảo Trong các phần tiếptheo, em sẽ tiến hành xây dựng mô hình theo nhiều cách tiếp cận khác nhau,đồng thời so sánh để tìm phương pháp tối ưu nhất cho bài toán đặt ra
Trang 402.2 Phân tích, thiết kế mô hình
Mô hình tổng quan hệ thống được thiết kế như sau:
Hình 2.1: Mô hình thiết kế tổng quan
Có thể chia toàn bộ mô hình ra làm 3 bước cơ bản:
• Tiền xử lý dữ liệu: Từ bộ dữ liệu đã có, tiến hành xử lý dữ liệu Bướcđầu tiền trong quá trình tiền xử lý dữ liệu luôn là làm sạch dữ liệu, bùthêm vào các dữ liệu bị thiếu Tùy vào từng loại thuật toán dự đoán sửdụng, cần tinh chỉnh hàm tiền xử lý dữ liệu tương ứng Trong khi xử lý
dữ liệu có thể thêm vào mờ hóa dữ liệu hoặc không, tùy vào từng tìnhhuống
• Mô hình hồi quy: Xây dựng các mô hình trong phần lý thuyết với bộtham số tối ưu cho bài toán phân tích phú dưỡng
• Mô hình phân lớp: Từ kết quả TSI-Chla thu được, tiến hành phân lớpdựa theo các thuật toán tương ứng, có thể phải giải mờ nếu mờ hóatrong quá trình tiền xử lý