Mặc khác, sự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tin trong nhiều lĩnh vực của đời sống, kinh tế xã hội trong nhiều năm qua dẫn tới sản sinh một lượng lớn
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠOĐẠI HỌC KINH TẾ TP HỒ CHÍ MINHKHOA CÔNG NGHỆ THÔNG TIN KINH DOANH
TIỂU LUẬN KẾT THÚC HỌC PHẦNMÔN: KHOA HỌC DỮ LIỆUNGHIÊN CỨU MÔ HÌNH KHAI PHÁ DỮ LIỆU
VÀ ỨNG DỤNG THUẬT TOÁN PHÂN LỚPNEURAL NETWORK ĐỂ ĐƯA RA QUYẾT ĐỊNH
ĐẦU TƯ VÀO CÁC CÔNG TY NƯỚC NGOÀIGiảng viên hướng dẫn: TS Thái Kim PhụngLê Việt Cường
TP Hồ Chí Minh, ngày 30 tháng 10 năm 2022
Trang 21.2 Mục tiêu nghiên cứu 2
1.3 Đối tượng và phạm vi nghiên cứu 2
1.4 Phương pháp nghiên cứu 3
1.4.1 Phương pháp nghiên cứu lý luận 3
1.4.2 Phương pháp nghiên cứu thực tiễn 4
1.5 Cấu trúc nghiên cứu 4
CHƯƠNG 2: CƠ SỞ LÝ LUẬN 5
2.1 Khai phá dữ liệu 5
2.1.1 Quá trình phát hiện tri thức và khai phá dữ liệu 5
2.1.2 Khái niệm khai phá dữ liệu 6
2.1.3 Quá trình khai phá dữ liệu 7
2.1.4 Các kỹ thuật khai phá dữ liệu 8
2.1.4.1 Khai thác tập phổ biến và luật kết hợp 8
2.1.4.2 Phân lớp dữ liệu 9
2.1.4.3 Phân cụm dữ liệu 9
2.1.5 Các ứng dụng của khai phá dữ liệu 9
2.2 Phân lớp dữ liệu 11
Trang 32.2.1 Quá trình phân lớp dữ liệu 11
2.2.2 Phân loại bài toán phân lớp 13
2.2.3 Một số thuật toán phân lớp dữ liệu 14
2.2.3.1 Cây quyết định (Decision tree) 14
2.2.3.2 Support Vector Machine (SVM) 15
2.2.3.3 Hồi quy Logistic (Logistic Regression) 17
2.2.3.4 Mạng Nơ ron nhân tạo (Neural Network) 19
2.3 Mô hình khai phá dữ liệu sử dụng thuật toán phân lớp Neural network 20
2.4 Mô hình nghiên cứu đề xuất 22
2.4.1 Mô tả các biến sử dụng trong mô hình 22
2.4.1.1 Biến phụ thuộc 22
2.4.1.2 Biến độc lập 23
2.4.1.2.1 Tỷ lệ tăng trưởng kép hằng năm (CAGR) 23
2.4.1.2.2 Lợi nhuận thặng dư (ER) 25
2.4.1.2.3 Rủi ro hệ thống (SR) 26
2.4.1.2.4 Tổng rủi ro (TR) 27
2.4.1.2.5 Rel.Win Rate (Tỷ lệ thắng) 28
2.4.2 Mô hình nghiên cứu đề xuất 29
CHƯƠNG 3: PHÂN TÍCH VÀ THẢO LUẬN 30
3.1 Tổng quan về nền kinh tế thị trường Mỹ từ 1990 - 2010 30
3.2 Mô tả bộ dữ liệu huấn luyện và dự báo 33
3.3 Kết quả huấn luyện 37
3.4 Kết quả dự báo 40
CHƯƠNG 4: KẾT LUẬN 44
4.1 Kết luận 44
Trang 44.2 Hạn chế 44
4.3 Giải pháp 45
TÀI LIỆU THAM KHẢO
PHỤ LỤC 1: BỘ DỮ LIỆU HUẤN LUYỆN (MINH HỌA CỦA 30 CÔNG TY ĐẦU TIÊN Ở THỜI KỲ 1990-2000)
PHỤ LỤC 2:BỘ DỮ LIỆU HUẤN LUYỆN (MINH HỌA CỦA 30 CÔNG TY ĐẦU TIÊN Ở THỜI KỲ 2000-2010)
PHỤ LỤC 3: Kết quả dự báo (minh họa 30 công ty đầu tiên thuộc thời kỳ 2000-2010)
DANH MỤC BẢNG BIỂU VÀ HÌNH VẼ Hình 2.1 Quá trình KDD 5
Hình 2.2: Quá trình khai phá dữ liệu 7
Hình 2.3: Bước 1 của quá trình trình phân lớp: Xây dựng mô hình phân lớp 11
Hình 2.4: Bước 2.1 của quá trình trình phân lớp: Đánh giá mô hình 12
Hình 2.5: Bước 2.2 của quá trình trình phân lớp: Phân lớp dữ liệu mới 13
Hình 2.6: Ví dụ mô hình cây quyết định về lựa chọn làm việc một ngày cụ thể 15
Hình 2.7: Biểu đồ thể hiện giá trị Margin và Support Vector 16
Hình 2.8: Minh họa thuật toán phân lớp Support Vector Machine (SVM) 17
Hình 2.9: Minh họa thuật toán phân lớp Hồi quy Logistic (Logistic Regression) 18
Trang 5Hình 2.1 : Minh họa thuật toán phân lớp Mạng Nơ ron nhân tạo (Neural Network) 190
Hình 2.11: Hình vẽ thể hiện mạng lưới hoạt động của Neural Network 21
Hình 2.12: Biểu đồ thể hiện sự mượt mà của đường CAGR 24
Hình 3.1: Bộ dữ liệu huấn luyện (Minh họa của 30 công ty đầu tiên ở thời kỳ 1990-2000) 34
Hình 3.2: Bộ dữ liệu dự báo (minh họa của 30 công ty đầu tiên ở thời kỳ 2000-2010) 36
Hình 3.3: Khai báo thuộc tính cho các biến trong bộ dữ liệu huấn luyện 37
Hình 3.4: Mô tả tổng quan quá trình huấn luyện vào dự báo 38
Hình 3.5: Kết quả đánh giá mô hình bằng phương pháp K-fold 39
Hình 3.6: Đánh giá mô hình lớp thông qua Ma trận nhầm lẫn 40
Hình 3.7: Kết quả dự báo (minh họa 30 công ty đầu tiên thuộc thời kỳ 2000-2010) 42
Trang 7CHƯƠNG 1: GIỚI THIỆU1.1 Lý do chọn đề tài.
Xã hội của chúng ta đang tồn tại và phát triển ở một thời đại mà người ta hay truyền tai nhau là “thời đại số” hay “thời đại truyền thông mới” là thời kỳ của cách mạng công nghiệp 4.0 đồng thời cũng là giai đoạn phát triển rực rỡ nhất về tất cả mọi thứ từ các phương tiện kỹ thuật số thông minh đến sự bùng nổ của internet, mạng xã hội đã làm cầu nối tạo điều kiện cho phép người dùng và các tổ chức có thể tương tác trực tiếp trên nền tảng Internet từ đó có thể trao đổi và truyền tải dữ liệu cho nhau Mặc khác, sự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tin trong nhiều lĩnh vực của đời sống, kinh tế xã hội trong nhiều năm qua dẫn tới sản sinh một lượng lớn dữ liệu.Và sự tồn tại của lượng dữ liệu khổng lồ như vậy cũng đồng nghĩa xuất hiện những sự hạn chế trong công việc thu thập, khai thác để lưu trữ người ta không thể khai thác trực tiếp mà phải dùng các kỹ thuật để chiết xuất tạo thành các thông tin có ích vì người ta cho rằng trong nó ẩn chứa những giá trị nhất định nào đó Để làm tốt được điều đó, phương pháp quản trị và khai thác cơ sở dữ liệu truyền thống ngày càng không đáp ứng được thực tế, vì vậy người ta đã cho ra đời một khuynh hướng kỹ thuật khai phá dữ liệu (Data mining) Khai phá dữ liệu là một tập hợp các kỹ thuật được sử dụng để tự động khai thác và tìm ra các mối quan hệ lẫn nhau của dữ liệu trong một tập hợp dữ liệu khổng lồ và phức tạp, đồng thời cũng tìm ra các mẫu tiềm ẩn trong tập dữ liệu đó Khai phá dữ liệu hiện diện trong mọi lĩnh vực-ở mọi quy mô, trong mọi ngành và trên toàn thế giới Đặc biệt, trong thời gian gần đây, khai phá dữ liệu được ứng dụng trong lĩnh vực đầu tư tài chính để nghiên cứu, cụ thể là đầu tư vào các công ty nước ngoài.
Cùng với quá trình hội nhập kinh tế quốc tế, mở cửa thị trường, hoạt động đầu tư ra nước ngoài của Việt Nam gần đây đang có xu hướng gia tăng Có thể nói, hoạt động đầu tư ra nước ngoài của các doanh nghiệp Việt Nam trong thời gian qua đã có sự tăng trưởng rất nhanh về quy mô vốn, số lượng dự án, lĩnh vực đầu tư cũng như địa bàn đầu tư Tại sao lại như vậy? Các chuyên gia kinh tế nhận định rằng nền kinh tế Việt Nam thời gian qua đã có sự tăng trưởng, phát triển nhanh, liên tục, đòi hỏi chúng ta cần phải mở rộng hoạt động đầu tư ra nước ngoài để tìm kiếm thêm những nguồn lực
Trang 8mới, bên cạnh đó là doanh nghiệp phải vươn ra thị trường nước ngoài để mở rộng phạm vi hoạt động của mình, điều này làm cho xu hướng hội nhập kinh tế quốc tế của Việt Nam ngày càng sâu rộng ,như vậy sẽ thúc đẩy hoạt động dịch chuyển dòng vốn được tốt hơn và hiệu quả hơn, bao gồm cả hoạt động đầu tư vào Việt Nam và hoạt động đầu tư của Việt Nam ra nước ngoài Vậy điều gì sẽ là chìa khóa giúp cho hoạt động đầu tư trở nên lành mạnh và gia tăng tỉ lệ thành công trên thị trường, đó là yếu tố dữ liệu Giả thuyết một doanh nghiệp biết tận dụng tốt những dữ liệu mà họ cho rằng nó tiềm ẩn những thông tin có ích hoặc không có ích rồi nhờ vào quá trình đi sâu vào toàn bộ dữ liệu để tìm kiếm, phân tích và đưa ra những đánh giá khách quan tốt nhất và cuối cùng là quyết định có nên đầu tư hay không Chính vì tất cả những lí do trên đủ đề kết luận rằng KPDL là một công cụ phù hợp, giúp họ nâng cao kiến thức và kinh nghiệm quý báu phục vụ cho quyết định đầu tư cũng như vận dụng những gì học được trong đó cho các quyết định tài chính quan trọng khác Qua đó, tôi quyết định
chọn đề tài “Nghiên cứu mô hình khai phá dữ liệu và ứng dụng thuật toán phân
lớp Neural Network để đưa ra quyết định đầu tư vào các công ty nước ngoài”
làm đề tài nghiên cứu.
1.2 Mục tiêu nghiên cứu.
Bài nghiên cứu chủ yếu tập trung vào các mục tiêu sau:
• Nghiên cứu các lý thuyết tổng quan về KPDL, cụ thể là thuật toán phân lớp dữ liệu bằng Neural Network.
• Xây dựng các mô hình vào dựa bộ dữ liệu huấn luyện có sẵn và lựa chọn mô hình phù hợp nhất tiến hành dự báo đối với bộ dữ liệu dự báo được chọn.
• Tạo tiền đề phát triển các bài nghiên cứu sau này.
1.3 Đối tượng và phạm vi nghiên cứu.
Đối tượng nghiên cứu:
Mô hình KPDL và thuật toán phân lớp dữ liệu bằng Neural Network để ứng dụng trong việc ra quyết định đầu tư vào công ty nước ngoài.
Các yếu tố ảnh hưởng đến quyết định đầu tư vào công ty nước ngoài chính là dữ liệu thực về các chỉ số tài chính được thu thập từ web Stock portfolio performance
được cung cấp vào ngày 22/04/2016 của tác giả: I-Cheng Yeh
Trang 9Phạm vi nghiên cứu: Nhóm thu thập dữ liệu của 63 công ty nước ngoài từ năm 1990-2010, trải qua 4 thời kì để để quyết định xem nếu tại thời điểm đó những nhà đầu tư có quyết định rót vốn vào công ty hay không.
Thời kì 1 và 2 là dữ liệu dùng để huấn luyện Thời kì 3 và 4 là dữ liệu dùng để dự báo.
1.4 Phương pháp nghiên cứu.
1.4.1: Phương pháp nghiên cứu lý luận.
Tiến hành tìm hiểu, thu thập, chắt lọc và phân tích các dữ liệu, thông tin thông qua đọc sách báo, tài liệu nhằm mục đích tìm chọn những khái niệm và quan điểm để xây dựng cơ sở lý thuyết cho nghiên cứu, dự đoán về những thuộc tính của đối tượng nghiên cứu, xây dựng những mô hình lý thuyết ban đầu Bao gồm các phương pháp sau:
Phương pháp phân tích – tổng hợp lý thuyết: từ nguồn tài liệu, papers có được, sau đó đọc và tổng hợp để rút ra những nội dung cần thiết cho luận điểm của bài nghiên cứu.
Phương pháp mô hình hóa: xây dựng mô hình nghiên cứu dựa trên lý thuyết và ứng dụng mô hình để dự báo nhằm kiểm định tính chính xác của mô hình.
1.4.2 Phương pháp nghiên cứu thực tiễn.
Từ cơ sở lý luận ấy, tiến hành vận dụng vào các phương pháp nghiên cứu thực tiễn:
Trang 10Thông qua các thuật toán trong KPDL, đồng thời, sử dụng sử dụng phần mềm Orange - một công cụ khá trực quan để nghiên cứu về các thuật toán machine learning và thực hành KPDL phổ biến hiện nay để phân tích dữ liệu và làm rõ vấn đề nghiên cứu.
Từ đó, xây dựng các mô hình dự báo dựa vào bộ dữ liệu huấn luyện có sẵn và so sánh các kết quả rút ra được với nhau nhằm lựa mô hình phù hợp nhất nhằm giúp các nhà đầu tư có quyết định chính xác hơn khi đầu tư hiệu quả.
1.5 Cấu trúc nghiên cứu.
Ngoài phần mục lục, danh mục bảng biểu và hình vẽ, danh mục chữ viết tắt, tài liệu tham khảo và phụ lục, đề tài được kết cấu thành 4 chương như sau:
Chương 1: Giới thiệu
Chương 2: Cơ sở lý luận
Chương 3: Phân tích và thảo luận
Chương 4: Kết luận
CHƯƠNG 2: CƠ SỞ LÝ LUẬN
Trang 112.1 Khai phá dữ liệu (KPDL).
2.1.1 Quá trình phát hiện tri thức và khai phá dữ liệu.
Biết chọn lọc và sử dụng thông tin hiệu quả có thể quyết định sự thành công của bạn trong phân tích dữ liệu Điều đó có nghĩa là phải tìm ra những giá trị tiềm ẩn, các yếu tố tác động và những xu hướng phát triển của các dữ liệu sẵn có ấy Quá trình đó được gọi là quá trình phát hiện tri thức (Knowledge Discovery in Database – KDD) mà trong đó KPDL là một kỹ thuật quan trọng cho phép ta thu được các tri thức mong muốn.
Hình 2.1 Quá trình KDD
Nguồn: Phantuanduy (2013) Quy trình Khai phá dữ liệu (Process of Data mining) Trong hình 2.1, ta thấy quá trình phát hiện tri thức gồm nhiều giai đoạn Đầu ra của giai đoạn này là đầu vào của giai đoạn sau Trong tiến trình này, người ta đặc biệt quan tâm đến pha khai phá dữ liệu (Data mining), bởi việc tìm ra được những tri thức và thông tin có cấu trúc chặt chẽ tiềm ẩn trong kho dữ liệu khổng lồ Các kỹ thuật phát hiện tri thức được thực hiện qua nhiều giai đoạn và sử dụng nhiều phương pháp như: phân lớp, phân cụm, phân tích sự tương tự, tổng hợp, phát hiện luật kết hợp và mẫu tuần tự,
Quá trình phát hiện tri thức gồm 5 bước cơ bản:
Trang 12Bước 1: Chọn lọc dữ liệu (Selection): Giai đoạn này cần gom các dữ liệu khai thác được vào một cơ sở dữ liệu (CSDL) riêng Ở đây, chúng ta chỉ chọn lọc và giữ lại những dữ liệu nào mà giai đoạn sau yêu cầu Tuy nhiên, công việc này thường khó khăn và tốn nhiều thời gian vì dữ liệu tồn tại ở nhiều dạng khác nhau và nằm rải rác khắp nơi.
Bước 2: Tiền xử lý dữ liệu (Preprocessing): Khi tập hợp dữ liệu thường mắc phải một số lỗi như dữ liệu thiếu logic (bị trùng lặp, giá trị bị sai lệch, ), thiếu chặt chẽ, chưa đầy đủ, hiếm khi nào các dữ liệu thu thập được đều mang tính nhất quán Do đó “tiền xử lý” là một bước quan trọng sau đó giúp hạn chế những kết quả sai lệch không mong muốn trước khi bước vào quá trình KPDL.
Bước 3: Chuyển đổi dữ liệu (Transformation): Trong giai đoạn này, dữ liệu sẽ được chuyển đổi về dạng thích hợp để dễ dàng tiến hành các thuật toan KPDL.
Bước 4: Khai phá dữ liệu (Data mining): Giai đoạn này sử dụng các kỹ thuật nhằm phát hiện ra các tri thức tiềm ẩn trong dữ liệu Một số kĩ thuật được sử dụng đó là: phân lớp, phâm cụm, luật kết hợp,…
Bước 5: Đánh giá kết quả mẫu (Interpretation evaluation): Đây cũng là bước cuối cùng trong quá trình KDD Trong giai đoạn này, những tiêu chuẩn đánh giá thích hợp sẽ được chọn lọc và sử dụng sao cho các mẫu dữ liệu được trích xuất bởi các phần mềm KPDL có thể sử dụng được Không phải bất cứ mẫu nào cũng đều có ích, thậm chí còn bị sai lệch Chính vì vậy, cần phải xác định và lựa chọn những tiêu chuẩn đánh giá sao cho sẽ chiết xuất ra các tri thức cần thiết.
2.1.2 Khái niệm khai phá dữ liệu.
Khai phá dữ liệu là một tiến trình khám phá ra các mẫu dữ liệu hay các mô hình mong muốn dưới nhiều góc độ khác nhau nhờ sử dụng các công cụ phân tích, từ đó tìm ra được các thông tin và tri thức từ các CSDL cũng như các mối quan hệ giữa các đối tượng bên trong CSDL.
Trang 13Nếu xét về mặt ý tưởng và mục đích ứng dụng, KPDL thật sự là một nhu cầu tất yếu đặt ra trong thời đại 4.0, một sự đáp trả cho những tìm tòi, khám phá của thế giới về mặt kỹ thuật Đây là một phát hiện vĩ đại, mang đến nhiều lợi ích trong cuộc sống, đồng thời cũng đặt ra nhiều khó khăn và thử thách đối với các nhà nghiên cứu.j KPDL được xây dựng dựa trên việc sử dụng các giải thuật mới, được định hướng theo nhu cầu kinh doanh để có thể giải quyết tự động các bài toán kinh doanh bằng các kỹ thuật dễ dùng và có thể hiểu được Các kỹ thuật đang được nghiên cứu và sử dụng hiện nay bao gồm cây quyết định (CART, CHAID, AID), mạng Neuron, phương pháp láng giềng gần nhất, các luật suy diễn, v.v…
2.1.3 Quá trình khai phá dữ liệu.
Các bước quan trọng trong quá trình KPDL bao gồm:
Hình 2.2: Quá trình khai phá dữ liệu
Nguồn: ThS Trần Hùng Cường, ThS Ngô Đức Vĩnh (2011) Tổng quan về phát hiện tri thức và khai phá dữ liệu Khoa Công nghệ thông tin Trường Đại học Công nghiệp Hà Nội, 1 – 6.
Quá trình KPDL bắt đầu từ việc xác định vấn đề đang gặp phải một cách chính xác, rồi tìm hiểu các dữ liệu liên quan dùng để xây dựng giải pháp Sau đó, các dữ liệu cần thiết được thu thập cẩn thận và tiền xử lý thành dạng mà giải thuật KPDL có thể hiểu được Tuy chỉ gồm một vài bước nhưng đây không phải là một quá trình đơn giản, khi tiến hành có thể vướng phải một số khó khăn như: nếu mô hình cần chỉnh
Trang 14sửa dữ liệu thì toàn bộ quá trình phải lặp đi lặp lại cho đến khi phù hợp gây mất thời gian, hay phải sao ra nhiều bản đối với các dữ liệu được chiết xuất vào các tệp,…
Thực hiện KPDL là bước tiếp theo sau khi chọn được thuật toán thích hợp để tìm ra các mẫu (pattern) có ý nghĩa được biểu diễn dưới các dạng tương ứng (các luật xếp loại, cây quyết định, luật sản xuất, biểu thức hồi quy,…).
Mẫu có đặc điểm là phải mới (ít nhất là đối với hệ thống đó) Độ mới thường được đánh giá thông qua một hàm logic hoặc hàm đo độ mới và được đo tương ứng với độ thay đổi trong dữ liệu (bằng cách so sánh các giá trị tìm được với các giá trị mong muốn hoặc các giá trị trước đó), hoặc bằng tri thức (mối liên hệ giữa phương pháp tìm cũ và phương pháp mới) Bên cạnh đó, sau khi xử lý các mẫu và cho ra kết quả phải được đánh giá thông qua một hàm lợi ích để đo lường khả năng sử dụng tiềm tàng Các mẫu này sau khi được xử lý và diễn giải phải dẫn đến những hành động có ích nào đó được đánh giá bằng một hàm lợi ích Mẫu khai thác được phải có giá trị đối với các dữ liệu mới với độ chính xác nào đó.
2.1.4 Các kỹ thuật khai phá dữ liệu
Có rất nhiều kỹ thuật được áp dụng trong khai phá dữ liệu, nhưng trong bài nghiên cứu này nhóm tác giả chỉ đề cập đến 3 kỹ thuật chính được biết đến và sử dụng rộng rãi:
2.1.4.1 Khai thác tập phổ biến và luật kết hợp
Kỹ thuật này nhằm xác định mối quan hệ giữa các biến khác nhau trong CSDL và được sử dụng để “giải nén” các mẫu tiềm ẩn trong dữ liệu Một luật kết hợp X → Y phản ánh sự xuất hiện đồng thời của tập Y khi tập X xuất hiện Theo quan điểm thống kê, X được xem là biến độc lập (Independent variable) còn Y được xem là biến phụ thuộc (Dependent variable)
Kỹ thuật này được sử dụng rất phổ biến ở các doanh nghiệp để phân tích hành vi mua sắm, dự đoán xu hướng từ giỏ hàng của khách hàng tiềm năng và dự đoán hành
Trang 15vi người tiêu dùng trong ngành bán lẻ hay trong lĩnh vực Công nghệ Thông tin, cụ thể là các chương trình Machine Learning
2.1.4.2 Phân lớp dữ liệu
Là quá trình phân một đối tượng dữ liệu vào một hay nhiều lớp (loại) đã cho trước nhờ một mô hình phân lớp Mô hình này được xây dựng dựa trên một tập dữ liệu đã được gán nhãn trước đó (thuộc về lớp nào) Quá trình gán nhãn (thuộc lớp nào) cho đối tượng dữ liệu chính là quá trình phân lớp dữ liệu.
Kỹ thuật này dùng để rút trích các thông tin cần thiết từ kho dữ liệu có sẵn Vì thế, đối với kỹ thuật này, chúng ta sẽ áp dụng các thuật toán khác nhau tùy thuộc vào mục tiêu sử dụng.
Đây cũng là kỹ thuật có vai trò quan trọng trong việc dự báo các quy luật, xu hướng,… bằng cách mô tả các thuộc tính liên quan để đối tượng được phân loại vào một lớp cụ thể.
2.1.4.3 Phân cụm dữ liệu
Là quá trình gom cụm/nhóm các đối tượng/dữ liệu có đặc điểm tương đồng vào các cụm/nhóm tương ứng Trong đó: các đối tượng nào có những tính chất tương tự nhau sẽ được xếp vào cùng một cụm và ngược lại Dữ liệu sử dụng trong kỹ thuật này là dữ liệu chưa được gán nhãn và thường thấy trong thực tế.
Trong kinh doanh, kỹ thuật này thường được ứng dụng để quản lý hồ sơ khách hàng hoặc chia phân khúc khách hàng trong lĩnh vực Marketing
2.1.5 Các ứng dụng của khai phá dữ liệu
Mặc dù KPDL còn mang nhiều mặt hạn chế cần được cải thiện, nhưng không thể phủ nhận tiềm năng hiện tại của nó Tiềm năng ấy đã được khẳng định bằng sự ra đời của rất nhiều ứng dụng Các ứng dụng của KPDL trong khoa học cũng được phát triển Các công ty phần mềm lớn trên thế giới cũng rất quan tâm và chú trọng tới việc nghiên cứu và phát triển kỹ thuật khai phá dữ liệu: Oracle tích hợp các công cụ khai
Trang 16phá dữ liệu vào bộ Oracle9i, IBM đã đi tiên phong trong việc phát triển các ứng dụng khai phá dữ liệu với các ứng dụng như Intelligence Miner,… Đây là kỹ thuật thu hút sự quan tâm của đa số các nhà nghiên cứu bởi ứng dụng đa dạng trong nhiều lĩnh vực khác nhau như:
Lĩnh vực tài chính, ngân hàng: Xây dựng mô hình dự báo rủi ro tín dụng, các khoản vay nợ, hỗ trợ việc ra quyết định khi đầu tư chứng khoán, bất động sản Đây cũng chính là hướng nghiên cứu chính của bài.
Thương mại điện tử: Công cụ tìm hiểu, định hướng, thúc đẩy, giao tiếp với khách hàng; phân tích khách hàng duyệt web; phân tích thái độ mua sắm của khách hàng và dựa vào từng loại khách hàng để có phương án tiếp thị phù hợp.
Lĩnh vực y tế: Phát hiện các mối quan hệ giữa bệnh với phương pháp chữa trị để tìm ra các loại thuốc mới, dựa trên các yếu tố rủi ro để dự đoán loại bệnh mà bệnh nhân có thể mắc phải.
Thiên văn học: Hệ thống SKICAT do JPL/Caltech phát triển được sử dụng cho các nhà thiên văn để tự động xác định các vì sao và các dải thiên hà trong một bản khảo sát lớn để có thể phân tích và phân loại (Fayyad, Djorgovski, & Weir).
Sinh học phân tử: Hệ thống tìm kiếm các mẫu trong cấu trúc phân tử (Conklin, Fortier, và Glasgow 1993) và trong các dữ liệu gen (Holder, Cook, và Djoko 1994).
Mô hình hóa những thay đổi thời tiết: các mẫu không thời gian như lốc, gió xoáy được tự động tìm thấy trong các tập lớn dữ liệu mô phỏng và quan sát được (Stolorz et al 1994).
Lĩnh vực sinh học: Hỗ trợ thu thập, lưu trữ và phân tích các dữ liệu về di truyền học, nghiên cứu các căn bệnh, các chất dinh dưỡng, thông qua trực quan hóa bằng các bảng biểu và đồ thị.
Trang 17Lĩnh vực giáo dục: Giúp phân tích dữ liệu trong môi trường giáo dục để xác định tình hình học tập của mỗi học sinh và dự báo kết quả học tập trong tương lai để tìm ra các phương pháp giảng dạy phù hợp.
2.2 Phân lớp dữ liệu
2.2.1 Quá trình phân lớp dữ liệu
Quá trình phân lớp dữ liệu gồm hai bước chính:
Bước 1: Xây dựng mô hình (hay giai đoạn “học” hoặc “huấn luyện”).
Quá trình huấn luyện nhằm xây dựng một mô hình mô tả một tập dữ liệu sẵn có Đầu vào của quá trình này là một tập dữ liệu mẫu đã được gán nhãn và tiền xử lý, mỗi phần tử dữ liệu được giả định thuộc về một lớp phân trước, lớp ở đây là giá trị của một thuộc tính được chọn làm thuộc tính gán nhãn hay thuộc tính phân lớp Mỗi bộ giá trị được gọi chung là một phần tử dữ liệu, có thể là các mẫu, ví dụ, đối tượng, hay trường hợp Các thuật toán phân lớp: cây quyết định, hàm số toán học, tập luật,… Kết quả của bước này là mô hình phân lớp đã được huấn luyện (trinh phân lớp).
Quá trình này được mô tả ở hình 2.3.
Hình 2.3: Bước 1 của quá trình trình phân lớp: Xây dựng mô hình phân lớp
Trang 18Nguồn: Nguyễn Thị Thùy Linh (2005) Nghiên cứu các thuật toán phân lớp dữ liệu dựa trên cây quyết định Công nghệ thông tin, 3 – 62.
Bước 2: Sử dụng mô hình, được chia thành 2 bước nhỏ:
+ Bước 2.1: Đánh giá mô hình ( kiểm tra tính đúng đắn của mô hình ).
Dữ liệu đầu vào là một tập dữ liệu mẫu được chọn ngẫu nhiên và độc lập với các mẫu trong tập dữ liệu huấn luyện, cũng đã được gán nhãn và tiền xử lý Tuy nhiên thuộc tính đã được gán nhãn này bị “lờ” khi được đưa vào mô hình tiến hành phân lớp.
Bằng cách so sánh thuộc tính gán nhãn của dữ liệu đầu vào và kết quả phân lớp từ mô hình, ta dễ dàng xác định được tính đúng đắn của mô hình Holdout là một kỹ thuật đơn giản để ước lượng tính đúng đắn này dựa trên tỷ lệ phần trăm các các mẫu trong tập dữ liệu dự báo được mô hình phân lớp đúng (so với thực tế) Kết quả của bước này là mô hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết trong tương lai, hoặc những dữ liệu mà giá trị của thuộc tính phân lớp là chưa biết nếu của mô hình phù hợp và có độ chính xác cao.
Hình 2.4: Bước 2.1 của quá trình trình phân lớp: Đánh giá mô hình
Trang 19Nguồn: Nguyễn Thị Thùy Linh (2005) Nghiên cứu các thuật toán phân lớp dữ liệu dựa trên cây quyết định Công nghệ thông tin, 3 – 62.
+ Bước 2.2: Phân lớp dữ liệu mới
Ở bước này, dữ liệu đầu vào là dữ liệu “khuyết” thuộc tính cần dự đoán lớp (nhãn) Mô hình sẽ tự động phân lớp (gán nhãn) cho các đối tượng dữ liệu này dựa vào những gì được huấn luyện ở bước 1.
Hình 2.5: Bước 2.2 của quá trình trình phân lớp: Phân lớp dữ liệu mới
Nguồn: Nguyễn Thị Thùy Linh (2005) Nghiên cứu các thuật toán phân lớp dữ liệu dựa trên cây quyết định Công nghệ thông tin, 3 – 62
2.2.2 Phân loại bài toán phân lớp
Nhiệm vụ của bài toán phân lớp là phân các đối tượng dữ liệu vào n lớp cho trước: thuộc về phân lớp nhị phân nếu n = 2 và phân lớp đa lớp nếu n > 2.
Bài toán là phân lớp đơn nhãn nếu mỗi đối tượng dữ liệu chỉ thuộc vào 1 lớp duy nhất và phân lớp đa nhãn nếu thuộc về nhiều lớp khác nhau.
2.2.3 Một số thuật toán phân lớp dữ liệu
Trang 202.2.3.1 Cây quyết định (Decision tree)
Cây quyết định được định nghĩa theo nhiều cách tùy vào từng khía cạnh:
Trong lý thuyết quản trị, cây quyết định là một đồ thị của các quyết định cùng các kết quả đi kèm có thể của nó và là một dạng đặc biệt của cấu trúc cây Nó được sử dụng để xây dựng một kế hoạch nhằm đạt được mục tiêu mong muốn cũng như hỗ trợ quá trình ra quyết định.
Trong lĩnh vực KPDL, đây được xem là sự kết hợp hoàn hảo của 2 khía cạnh: kỹ thuật toán học và tính toán nhằm hỗ trợ cho việc mô tả, phân loại và tổng quát hóa tập dữ liệu đầu vào Khi đó, cây quyết định mô tả một cấu trúc cây, trong đó, các lá đại diện cho các phân loại còn cành đại diện cho các kết hợp của các thuộc tính dẫn tới phân loại đó
Một tập dữ liệu có thế được biểu diễn bởi nhiều cây quyết định tương ứng Cuối cùng, cây nào ngắn gọn nhất sẽ được lựa chọn (theo nguyên lý Ockham’s Razor) Để hiểu rõ hơn về cây quyết định, ta xét ưu khuyết điểm như sau:
Ưu điểm:
- Đơn giản, dễ hiểu
- Không đòi hỏi việc chuẩn hóa dữ liệu
- Có thể xử lý trên nhiều kiểu dữ liệu khác nhau.
- Xử lý tốt một lượng dữ liệu lớn trong thời gian ngắn
Khuyết điểm:
- Khó giải quyết trong tình huống dữ liệu phụ thuộc thời gian
- Chi phí xây dựng mô hình cao
Trang 21Hình 2.6 Ví dụ mô hình cây quyết định về lựa chọn làm việc một ngày cụ thể
Nguồn: ichi.pro
2.2.3.2 Support Vector Machine (SVM).
SVM là một kỹ thuật trong KPDL để chỉ một tập hợp các thuật toán có giám sát bằng cách nhận dữ liệu vào, xem chúng như những các vector trong không gian và phân loại chúng vào các lớp khác nhau bằng cách xây dựng một siêu phẳng trong không gian nhiều chiều làm mặt phân cách các lớp dữ liệu.
Để chúng ta có thể tối ưu được kết quả phân lớp thì phải xác định siêu phẳng có khoảng cách đến các điểm dữ liệu (margin) của tất cả các lớp xa nhất có thể SVM có nhiều dạng phù hợp với nhiều bài toán về phân loại Để hiểu rõ sâu hơn, chúng ta đi tìm các khái niệm về Margin cũng như là Support Vector.
Margin là khoảng cách giữa siêu phẳng trong trường hợp không gian hai chiều là đường thẳng đến hai điểm dữ liệu gần nhất tương ứng với hai phân lớp SVM tối ưu bằng cách tối đa hóa giá trị margin này, từ đó sẽ tìm ra một siêu phằng đẹp nhất và
Trang 22thích hợp nhất cho phân hai lớp dữ liệu Vì thế, SVM có thể làm giảm thiếu việc phân lớp bị sai (misclassification) đối với dữ liệu điểm mới đưa vào.
Hình 2.7 Biểu đồ thể hiện giá trị Margin và Support Vector
Nguồn: Tác giả tổng hợp
Ở Support Vector, bài toán của chúng ta trở thành đi tìm ra hai đường biên của hai lớp dữ liệu sao cho cho khoảng cách giữa hai đường này là lớn nhất Siêu phẳng cách đều hai biên đó chính là siêu phẩm cần tìm Nhìn vào hình 2.7 ta có thể xác định các điểm màu đỏ và xanh dương nằm ở trên hai đường biên màu xanh lá, nó được gọi là Support Vector, vì chúng có nhiệm vụ hỗ trở để tìm ra siêu phẳng (đường nét đứt màu cam ở hình 2.7).
Do đó SVM là một thuật toán phân loại nhị phân Với bộ dữ liệu huấn luyện có hai thuộc tính sẵn có, SVM xây dựng một mô hình để phân loại các dữ liệu dự báo vào hai thuộc tính Hiện nay, thuật toán này ra đời rất nhiều biến thể để phù hợp với các bài toán phân lớp khác nhau và cũng có thể được sử dụng cho hồi quy hoặc các nhiệm vụ khác.
Tổng quát hóa trong không gian nhiều chiều:
Trang 23- Số chiều của không gian bài toán (còn gọi là không gian đặc trưng) tương ứng với số lương thuộc tính (đặc trưng) của một đối tượng dữ liệu.
- Phương trình biểu diễn siêu phẳng cần tìm (hyperlane) trong không gian đa chiều là: và giá trị
- Mục tiêu của SVM là cần tìm giá trị margin cực đại đồng nghĩa với việc đạt cực tiểu với điều kiện:
- Hàm mục tiêu cần tối ưu là một norm nên là một hàm lồi => bài toán quy hoạch toàn phương ( Quadratic Programing ).
Hình 2.8: Minh họa thuật toán phân lớp Support Vector Machine (SVM)
Nguồn: Ông Xuân Hồng (2015) Support vector machine (SVM) hỏi gì đáp nấy.
2.2.3.3 Hồi quy Logistic (Logistic Regression)
Hồi quy Logistic còn có tên gọi khác là hồi quy nhị thức Nó là một phương pháp thống kê để các giá trị đầu ra rời rạc được dự báo thông qua một tập các giá trị đầu vào Thuật toán này sử các hàm được gọi là hàm logit, được biểu diễn dưới dạng
Trang 24vector, bằng cách dự đoán xác suất hoặc cơ hội xảy ra giúp suy ra mối quan hệ giữa biến phụ thuộc và các biến độc lập.
Có 3 dạng hồi quy Logistic:
+ Hồi quy logistic nhị phân: Biến phụ thuộc chỉ có hai 2 kết quả/ lớp có thể xảy ra.
+ Hồi quy logistic đa thức: Biến phụ thuộc chỉ có hai hoặc 3 kết quả/ lớp trở lên có thể có mà thứ tự được xếp ngẫu nhiên.
+ Hồi quy logistic thông thường: Biến phụ thuộc chỉ có hai hoặc nhiều hơn 3 kết quả/ lớp có thể có được xếp theo đúng thứ tự.
Đối với bài toán phân lớp:
+ Tập nhãn
+ Một đối tượng dữ liệu
+ Hàm logistic dự đoán đối tượng xem đối tượng x sở hữu các thuộc tính cụ thể sẽ thuộc vào lớp y nào.
Trong đó: là số lượng đặc trưng (thuộc tính) của dữ liệu.d
w là trọng số, ban đầu sẽ được khởi tạo ngẫu nhiên, sau đó sẽ được điều
chỉnh lại cho phù hợp.
Trang 25Hình 2.9: Minh họa thuật toán phân lớp Hồi quy Logistic (Logistic Regression)
Nguồn: ANALYTICS VIDHYA Understanding Logistic Regression.
2.2.3.4 Mạng Nơ ron nhân tạo ( Neural Network ).
Mạng Nơ ron nhân tạo (hay Neural Network) là mạng sử dụng một loạt các thuật toán phức tạp nhằm xác định, xử lý thông tin và tìm ra các mối quan hệ cơ bản tiềm ẩn trong bộ dữ liệu Lấy cảm hứng từ mô hình hoạt động của các tế bào thần kinh và khớp thần kinh trong não của con người, Neural Network là sự kết nối các nút đơn giản, còn được gọi là tế bào thần kinh Và một tập hợp các nút như vậy tạo thành một mạng lưới các nút Nói cách khác, đây được xem là hệ thống của các tế bào thần kinh nhân tạo, có thể là hữu cơ hoặc nhân tạo về bản chất.
Thuật toán này có khả năng thích ứng được với mọi thay đổi từ dữ liệu đầu vào và đưa ra được mọi kết quả chính xác nhất mà có thể giữ nguyên những tiêu chí đầu ra.
Khái niệm này xuất phát từ trí tuệ nhân tạo và được sử dụng rộng rãi từ khi có những hệ thống giao dịch ngày càng phát triển.
Trang 26
Hình 2.10: Minh họa thuật toán phân lớp Mạng Nơ ron nhân tạo (NeuralNetwork)
Nguồn: Innoarchitech AI, Deep Learning, and Neural Networks Explained.
2.3 Chi tiết mô hình khai phá dữ liệu bằng Neural Network
Như đã tìm hiểu về khái niệm của Neural Network ở mục 2.2.3 (một số thuật toán phân lớp dữ liệu), bây giờ chúng ta sẽ tìm hiểu chi tiết hơn về Neural Network.
Ta có thể xem xét đặc điểm của Neural Network trong tài chính chính là hỗ trợ cho các quá trình như giao dịch thuật toán, phân loại và phân tích chứng khoán, dự báo về chuỗi thời gian, xây dựng các mô hình quản trị rủi ro, công cụ phát sinh giá cả,…
Neural Network nhân tạo có thể hoạt động như Neural Network của con người Mỗi một Neural trung ương thần kinh trong Neural nhân tạo là hàm toán học với chức năng cụ thể là thu thập và phân loại các thông tin dựa vào các cấu trúc có sẵn Neural Network có sự tương quan mạnh mẽ đối với các phương pháp như Phương pháp thống kê, Phân tích hồi quy Neural Network chứa các lớp bao hàm các nút được liên kết lại với nhau Mỗi nút có một cấu trúc tương thích với hàm hồi quy tuyến tính đa biến.
Trang 27Chúng sẽ được sắp xếp với các lớp liên kết với nhau Lớp đầu vào sẽ thu nhập các dữ liệu đầu vào và các lớp đầu ra sẽ nhận các phân loại hoặc tín hiệu đầu ra mà các mẫu đầu vào có thể phản ánh lại.
Kiến trúc của mạng Neural Network là có sự kết hợp giữa tầng perceptron hay còn gọi là perceptron đa tầng Mỗi mạng Neural Network sẽ gồm ba kiểu tầng như sau:
Tầng input layer (tầng vào): Tầng này nằm phía bên trái của mạng, thể hiện cho các đầu vào của mạng.
Tầng output layer (tầng ra): Là tầng bên phải của mạng, nó thể hiện cho các đầu ra của mạng.
Tầng hidden layer (tầng ẩn): Tầng này nằm ở giữa tầng vào và tầng ra thể hiện cho các quá trình suy luận logic của Neural Network.
Hình 2.11 Hình vẽ thể hiện mạng lưới hoạt động của Neural Network
Nguồn: kipalog.com
Mỗi một Neural Network chỉ có duy nhất một tầng vào và một tầng ra nhưng lại có khá là nhiều tầng ẩn Giữa các tầng có sự liên kết bởi các Neural trong mỗi tầng hoặc giữa các tầng với nhau Trong mỗi tầng lại có thể có số lượng Neural khác nhau
Trang 28cũng như có các kết nối cũng khác nhau Với mạng Neural Network thì mỗi một nút mạng là một Sigmoid Neural nhưng chúng có thể có các hàm kích hoạt khác nhau Nhưng để cho việc tính toán đơn giản và thuận lợi hơn thì người ta thường sử dụng chúng cùng lại với nhau hơn Tại mỗi tầng, số lượng nút mạng có thể khác nhau tùy thuộc vào từng bài toán hay các cách giải quyết Khi làm việc, người ta thường sẽ để các tầng ẩn với số lượng các Neural khác nhau Bên cạnh đó, các Neural nằm ở tầng thường sẽ liên kết với nhau để tạo ra một mạng lưới đầy đủ nhất Khi đó, người dùng tính toán xem các kích cỡ của mạng khi dựa vào tầng và số lượng Neural.
Ứng dụng của Neural Network có ở rất nhiều lĩnh vực như tài chính, giao dịch, phân tích kinh doanh, lập các kế hoạch cho doanh nghiệp, hay quản trị rủi ro doanh nghiệp,… Ngoài ra, Neural Network còn được sử dụng ở nhiều lĩnh vực khác như dự báo thời tiết, đánh giá rủi ro doanh nghiệp, Hoặc có nhiều trường hợp sử dụng Neural Network để đánh giá những giao dịch dựa vào việc các phân tích lịch sử Neural Network còn sử dụng khá phổ biến để phân biệt sự phụ thuộc giữa các phi tuyến lẫn nhau của đầu vào Khi chúng ta áp dụng Neural Network để dự báo về giá cổ phiếu cũng hoàn toàn khác nhau Trong việc lan truyền tuyến của Neural Network, các nốt mạng Neural đều có thể kết hợp đôi một với nhau vào một chiều từ tầng vào đến tầng ra duy nhất Có nghĩa là mỗi nốt ở mỗi tầng sẽ nhận đầu vào là tất cả các tầng trước đó và ngược lại Suy diễn Neural Network là một dạng suy luận tiến (feedforward).
Khi sử dụng Neural Network nhân tạo sẽ có khả năng sử dụng một loại cơ chế hàm tùy ý mà học được từ việc dữ liệu quan sát Tuy nhiên, việc sử dụng chúng khá khó và rất cần phải có sự hiểu biết nhiều về lý thuyết của Neural Network.
Lựa chọn mô hình: phụ thuộc rất nhiều về cách trình bày dữ liệu cũng như các ứng dụng Mô hình này khá phức tạp nên dẫn đến nhiều thử thách cho quá trình học.
Thuật toán học: thường sẽ có nhiều thỏa thuận giữa các thuật toán học Chúng làm việc dựa trên các tham số để huấn luyện dữ liệu mà không thấy các yêu cầu một số lượng đáng kể các thử nghiệm.