Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
880,73 KB
Nội dung
VIET NAM NATIONAL UNIVERSITY HA NOI SCHOOL OF BUSINESS AND MANAGEMENT PRICE RISK CLUSTERING MEMBER Pham Hoang Nhat Nguyen, Pham Duc Cuong, Nguyen Thi Hong Anh, Do Duc Anh HA NOI – 2023 Mục Lục I Mô tả toán, cấu trúc chung tập liệu, chi tiết thuộc tính tập liệu Mơ tả bà i tố n Mô tả cấ u trú c chung củ a tậ p liệu Lự a chọ n kỹ thuậ t khai thá c liệu II Cơ sở lý thuyết liên quan Định nghĩa phâ n cụ m K-Means Elbow point Silhouette score Davies-Bouldin III Kỹ thuật sử dụng tiền xử lý liệu 10 IV Xây dựng mơ hình Rapidminer 13 V Xây dựng, trực quan hóa,đánh giá mơ hình Python 16 1, Xâ y dự ng mơ hình 16 2, Trự c quan hó a, đá nh giá mơ hình 19 I Mơ tả tốn, cấu trúc chung tập liệu, chi tiết thuộc tính tập liệu Mơ tả tốn Bà i toá n phâ n cụ m rủ i ro giá nhữ ng bà i tố n điển hình đượ c nghiên u rộ ng rã i nhiều nă m trở lạ i đâ y Sau đâ y, ng tô i đưa mộ t số thô ng tin mô tả nhấ t định liên quan tớ i bà i toá n Đầ u tiên, rủ i ro phâ n cụ m giá (price clustering risk) liên quan đến rủ i ro mà cá c nhà đầ u tư phả i đố i mặ t giá cổ phiếu tậ p trung o mộ t số giá trị kết thú c bằ ng cá c số nhấ t định Khi giá cổ phiếu tậ p trung o cá c giá trị nà y, cá c nhà đầ u tư gặ p khó khă n việc mua hoặ c bá n cổ phiếu vớ i giá mong muố n Điều nà y dẫ n đến giả m tính khoả n củ a cổ phiếu gâ y rủ i ro cho cá c nhà đầ u tư thự c định giao dịch Do , rủ i ro phâ n cụ m giá mộ t nhữ ng yếu tố đượ c xem xét trình đá nh giá rủ i ro củ a cá c nhà đầ u tư Rủ i ro giá ng vai trị quan trọ ng cá c thị trườ ng tà i kinh doanh Hiện tượ ng gom cụ m rủ i ro giá (price risk clustering) xuấ t cá c biến độ ng giá xả y cá c thờ i điểm gầ n nhau, tạ o nh cá c "cụ m" liệu thị trườ ng Mụ c tiêu củ a việc nghiên u tượ ng nà y để hiểu dự n biến độ ng giá , từ giú p cá c nhà đầ u tư doanh nghiệp đưa cá c định tà i thơ ng minh Việc phâ n tích nhậ n biết cá c cụ m rủ i ro giá giú p cá c nhà đầ u tư: Dự n xu hướ ng thị trườ ng: Bằ ng cá ch hiểu cá c cụ m rủ i ro giá , nhà đầ u tư dự đố n đượ c xu hướ ng giá tương lai gầ n Quả n lý rủ i ro: Doanh nghiệp nhà đầ u tư sử dụ ng thơ ng tin cụ m rủ i ro để thiết lậ p cá c chiến lượ c n lý rủ i ro tà i chính, giả m thiểu cá c tổ n thấ t xả y thị trườ ng biến độ ng Ra định mua bá n ng khoá n: Hiểu rõ cụ m rủ i ro giá giú p nhà đầ u tư định mua hoặ c bá n ng khoá n tạ i cá c thờ i điểm thích hợ p, tố i đa hó a lợ i nhuậ n hoặ c giả m thiểu lỗ Dự n biến độ ng kinh tế: Cụ m rủ i ro giá cũ ng cung cấ p thô ng tin quý bá u cho cá c nhà nghiên u phủ để dự n cá c biến độ ng kinh tế xã hộ i tương lai Như vậ y, nghiên u tượ ng gom cụ m rủ i ro giá khô ng hỗ trợ cá c nhà đầ u tư doanh nghiệp việc đưa cá c định tà i mà cò n giú p i thiện hiểu biết hoạ t độ ng củ a thị trườ ng tà i Mơ tả cấu trúc chung tập liệu Đây link data nhóm em tìm kiếm sử dụng: Nhấp vào Trong tậ p liệu nà y, cá c thuộ c tính m rõ đượ c giá trị cũ ng ý nghĩa nhấ t định, ngoà i m rõ nhữ ng thô ng tin, số liệu chủ yếu loạ i thuộ c tính số Theo từ ng cộ t : Company: Tên củ a cô ng ty (ví dụ AAPL, tượ ng trưng cho Apple Inc) Date: Ngà y giao dịch củ a thô ng tin giá cổ phiếu Cụ thể, liệu bắ t đầ u từ ngà y 15/06/2023 kết thú c o ngà y 17/07/2023 Giá ng cử a hoặ c giá cuố i cù ng củ a cổ phiếu ngà y Đâ y giá cuố i cù ng củ a cổ phiếu ngà y thườ ng đượ c sử dụ ng để đá nh giá hiệu suấ t chung củ a cổ phiếu khoả ng thờ i gian Volume: Số lượ ng cổ phiếu đượ c giao dịch ngà y cung cấ p thô ng tin mứ c độ quan tâ m củ a nhà đầ u tư khoả n củ a thị trườ ng Open: Giá mở cử a củ a cổ phiếu ngà y High: Giá cao nhấ t mà cổ phiếu đạ t đượ c ngà y Low: Giá thấ p nhấ t mà cổ phiếu đạ t đượ c ngà y Lựa chọn kỹ thuật khai thác liệu Kỹ thuậ t khai thá c liệu phâ n cụ m khô ng mộ t phương phá p tổ c liệu mộ t cá ch cấ u trú c, mà cò n mộ t cá ch để m phá hiểu sâ u nguyên nhâ n hà nh vi đằ ng sau liệu Trong trình nà y, cá c điểm liệu đượ c nhó m lạ i nh cá c cụ m dự a cá c đặ c điểm chung mà khô ng yêu cầ u hướ ng dẫ n từ bên ngoà i Điều nà y cho phép ng ta phá t nhữ ng mố i quan hệ tiềm ẩ n, cá c xu hướ ng, cấ u trú c liệu mà khô ng dễ dà ng nhậ n biết thô ng qua việc quan sá t liệu tự nhiên Trong ngữ nh củ a dự n nà y, việc lự a chọ n kỹ thuậ t khai thá c liệu phâ n cụ m trở nên đặ c biệt quan trọ ng Đố i diện vớ i mộ t tậ p liệu lớ n a hà ng cộ t, việc phâ n cụ m khô ng giú p ng ta tổ c liệu mộ t cá ch logic mà cò n giú p loạ i bỏ phứ c tạ p từ việc xử lý tấ t cá c liệu nà y mộ t cá ch riêng lẻ Kỹ thuậ t nà y chìa khó a để mở khó a nhữ ng thơ ng tin tiềm ẩ n giá cổ phiếu, giú p ng ta định hình tố i ưu hó a chiến lượ c đầ u tư Cụ thể, bà i toá n nà y phâ n nhữ ng thuộ c tính tên ng ty có cù ng tính chấ t dự a nhữ ng yếu tố “Close/Last”, “High/Low”, “Company” để nắ m bắ t đượ c đâ u nhữ ng nhó m cổ phiếu có cù ng giá trị tă ng hay giá trị giả m Từ hỗ trợ nhà đầ u tư việc phâ n bổ định mua cổ phiếu tố i đa hó a lợ i nhuậ n Kết hợ p vớ i định nghĩa mô tả chi tiết liệu, việc lự a chọ n kỹ thuậ t khai thá c liệu phâ n cụ m khô ng định mà cò n bướ c quan trọ ng để ng ta chinh phụ c thá ch thứ c củ a liệu lớ n phứ c tạ p II Cơ sở lý thuyết liên quan Định nghĩa phân cụm Clustering ( phâ n cụ m ), ngữ nh củ a má y họ c khô ng giá m sá t, mộ t phương phá p phâ n nhó m liệu nh cá c nhó m (clusters) dự a tương đồ ng củ a ng Mụ c tiêu củ a clustering tìm cá c nhó m liệu tự nhiên hoặ c ẩ n, mà mỗ i nhó m, cá c điểm liệu có tương đồ ng lớ n vớ i nhau, giữ cho cá c điểm liệu c nhó m có c biệt lớ n Quá trình clustering thườ ng bắ t đầ u bằ ng việc định nghĩa mộ t số số tương đồ ng (similarity metrics) hoặ c đo lườ ng khoả ng cá ch (distance metrics) để đo lườ ng mứ c độ tương tự giữ a cá c điểm liệu Sau , cá c thuậ t tố n clustering phâ n nhó m cá c điểm liệu bằ ng cá ch tố i ưu hó a mộ t hà m mụ c tiêu dự a độ tương đồ ng hoặ c khoả ng cá ch giữ a cá c điểm Có nhiều phương phá p clustering c nhau, hai phương phá p phổ biến hierarchical clustering (phâ n cấ p) k-means clustering (phâ n nhó m theo trung tâ m) Hierarchical clustering xâ y dự ng cá c cụ m từ ng bướ c mộ t, bắ t đầ u từ việc mỗ i điểm liệu mộ t cụ m riêng lẻ sau gom nhó m ng lạ i dự a độ tương đồ ng K-means clustering yêu cầ u xá c định trướ c số lượ ng cụ m cầ n tạ o lự a chọ n ngẫ u nhiên cá c trung tâ m ban đầ u cho cá c cụ m, sau lặ p lặ p lạ i trình gá n cá c điểm o cụ m cậ p nhậ t lạ i vị trí trung tâ m hộ i tụ Mụ c đích củ a clustering c tuỳ thuộ c o bà i toá n cụ thể Nó đượ c sử dụ ng để m phá cấ u trú c ẩ n liệu, tìm kiếm cá c nhó m tương đồ ng để phâ n tích, giả m số chiều củ a liệu hoặ c m bướ c tiền xử lý cho cá c nhiệm vụ c phâ n loạ i gom nhó m K-Means K-means mộ t thuậ t toá n phâ n cụ m liệu lĩnh vự c má y họ c khô ng giá m sá t Mụ c tiêu củ a thuậ t toá n K-means phâ n nhó m cá c điểm liệu o cá c cụ m (clusters) c dự a tương đồ ng củ a ng Thuậ t toá n nà y thuộ c loạ i phâ n vù ng (partitioning) dự a việc tìm kiếm cá c trung tâ m cụ m (cluster centroids) để xá c định cá c cụ m Quá trình hoạ t độ ng củ a thuậ t toá n K-means bao gồ m cá c bướ c sau: Khở i tạ o: Chọ n mộ t số lượ ng cụ m K mà ta muố n tạ o Tiếp , chọ n K điểm liệu bấ t kỳ m trung tâ m ban đầ u cho cá c cụ m Gá n cá c điểm liệu o cụ m: Vớ i mỗ i điểm liệu tậ p liệu, tính tố n khoả ng cá ch từ điểm đến tấ t cá c trung tâ m cụ m gá n o cụ m có trung tâ m gầ n nhấ t Cậ p nhậ t trung tâ m cụ m: Tính tố n lạ i vị trí trung tâ m cho mỗ i cụ m bằ ng cá ch lấ y giá trị trung bình củ a tấ t cá c điểm liệu thuộ c cụ m Lặ p lạ i bướ c khô ng có thay đổ i đá ng kể việc gá n cá c điểm liệu o cá c cụ m hoặ c đạ t đến điều kiện dừ ng đượ c xá c định trướ c (ví dụ : số lầ n lặ p tố i đa) Thuậ t toá n K-means cố gắ ng tố i ưu hó a hà m mụ c tiêu, đượ c gọ i hà m trung bình bình phương tổ ng khoả ng cá ch (sum of squared distances), bằ ng cá ch tìm kiếm cá c trung tâ m cụ m tố i ưu nhằ m giả m thiểu tổ ng khoả ng cá ch giữ a cá c điểm liệu trung tâ m củ a cụ m tương ứ ng K-means mộ t nhữ ng thuậ t toá n phâ n cụ m phổ biến đơn giả n nhấ t, thườ ng đượ c sử dụ ng nhiều ứ ng dụ ng phâ n nhó m ch hà ng, phâ n loạ i hình ả nh phâ n tích liệu Elbow point Elbow point (điểm khuỷu tay) mộ t phương phá p đượ c sử dụ ng để ướ c lượ ng số lượ ng cụ m tố i ưu thuậ t toá n phâ n cụ m K-means Ý tưở ng củ a phương phá p Elbow point tìm điểm đườ ng cong biểu đồ hiển thị biến đổ i củ a tổ ng bình phương khoả ng cá ch giữ a cá c điểm liệu trung tâ m cụ m (Sum of Squared Distances, SSD) số lượ ng cụ m thay đổ i, nhiên bà i tậ p lớ n nà y ng tô i thay SSD bằ ng ‘Sihouette score’ Q trình tìm điểm khuỷu tay thơ ng qua phương phá p Elbow point bao gồ m cá c bướ c sau: Thự c thuậ t toá n K-means vớ i cá c giá trị K c nhau, từ K = đến mộ t giá trị tố i đa đượ c xá c định trướ c Vớ i mỗ i giá trị K, tính tổ ng bình phương khoả ng cá ch (SSD) giữ a cá c điểm liệu trung tâ m cụ m tương ứ ng Vẽ biểu đồ hiển thị SSD theo số lượ ng cụ m K Xem xét biểu đồ tìm điểm đườ ng cong biểu đồ mà biến đổ i củ a SSD giả m nhanh sau giả m chậ m Điểm nà y tương ứ ng vớ i điểm khuỷu tay biểu đồ Ý nghĩa củ a điểm khuỷu tay ướ c lượ ng số lượ ng cụ m tố i ưu thuậ t toá n K-means Điểm nà y thườ ng cho thấ y câ n bằ ng giữ a việc giả m SSD (tứ c tố i ưu hó a phâ n cụ m) số lượ ng cụ m Khi số lượ ng cụ m tă ng, SSD thườ ng giả m mỗ i cụ m có điểm liệu để phâ n chia Tuy nhiên, tạ i mộ t điểm nà o biểu đồ , việc tă ng số lượ ng cụ m khơ ng cị n đá ng kể i thiện SSD nữ a, đâ y điểm khuỷu tay Tuy phương phá p Elbow point cung cấ p mộ t ướ c lượ ng số lượ ng cụ m tố i ưu, khơ ng phả i lự a chọ n tuyệt đố i Trong mộ t số trườ ng hợ p, biểu đồ khơ ng có mộ t điểm khuỷu tay rõ rà ng, hoặ c có nhiều điểm đượ c xem điểm khuỷu tay Trong nhữ ng trườ ng hợ p vậ y, cầ n sử dụ ng hiểu biết chuyên mô n thử nghiệm để đưa định cuố i cù ng số lượ ng cụ m tố i ưu Sihouette score Silhouette score (điểm silhouette) mộ t phương phá p định lượ ng đượ c sử dụ ng để đá nh giá chấ t lượ ng củ a việc phâ n cụ m thuậ t toá n K-means hoặ c cá c thuậ t toá n phâ n cụ m c Điểm silhouette đo lườ ng mứ c độ tá ch biệt giữ a cá c cụ m đồ ng thờ i đá nh giá đồ ng nhấ t bên mỗ i cụ m Để tính tố n điểm silhouette cho mỗ i điểm liệu, ta thự c cá c bướ c sau: Gá n cá c điểm liệu o cá c cụ m sử dụ ng thuậ t toá n phâ n cụ m Đố i vớ i mỗ i điểm liệu cụ m, tính tố n hai giá trị: a b a trung bình khoả ng cá ch từ điểm liệu đến tấ t cá c điểm liệu cù ng cụ m b giá trị nhỏ nhấ t củ a trung bình khoả ng cá ch từ điểm liệu đến tấ t cá c điểm liệu thuộ c cá c cụ m c Tính tố n giá trị silhouette cho mỗ i điểm liệu bằ ng cô ng thứ c: silhouette_score = (b - a) / max(a, b) Tính tố n trung bình củ a tấ t cá c giá trị silhouette củ a cá c điểm liệu để thu đượ c điểm silhouette tổ ng thể cho phâ n cụ m Giá trị silhouette score nằ m khoả ng [-1, 1] Cá c trườ ng hợ p phâ n cụ m tố t có silhouette score gầ n 1, cho thấ y rằ ng cá c điểm cù ng mộ t cụ m gầ n xa cá c cụ m c Trong , silhouette score gầ n -1 cho thấ y rằ ng cá c điểm liệu cù ng mộ t cụ m gầ n nhau, gầ n cá c cụ m c Ý nghĩa củ a độ đo silhouette score đá nh giá chấ t lượ ng củ a việc phâ n cụ m Mộ t điểm silhouette score cao cho thấ y phâ n cụ m tố t hơn, cá c điểm liệu đượ c gom cà ng gầ n cà ng xa cá c cụ m c Ngượ c lạ i, mộ t silhouette score thấ p cho thấ y phâ n cụ m khô ng tố t, cá c điểm liệu cù ng mộ t cụ m gầ n so vớ i cá c cụ m c Silhouette score đượ c sử dụ ng để so sá nh lự a chọ n số lượ ng cụ m tố i ưu thuậ t toá n K-means Giá trị silhouette score cao cho mộ t số lượ ng cụ m cụ thể cho thấ y phâ n cụ m tố t lự a chọ n tố i ưu Davies-Bouldin Davies-Bouldin mộ t phương phá p định lượ ng đượ c sử dụ ng để đá nh giá chấ t lượ ng củ a việc phâ n cụ m cá c thuậ t toá n phâ n cụ m Điểm DaviesBouldin (DB) đo lườ ng mứ c độ tá ch biệt giữ a cá c cụ m đồ ng thờ i đá nh giá đồ ng nhấ t mỗ i cụ m Để tính toá n điểm Davies-Bouldin cho mỗ i cụ m, ta thự c cá c bướ c sau: Gá n cá c điểm liệu o cá c cụ m sử dụ ng thuậ t toá n phâ n cụ m Đố i vớ i mỗ i cụ m, tính tố n hai giá trị: Độ tương đồ ng (similarity) cụ m: trung bình củ a khoả ng cá ch giữ a mỗ i điểm liệu cụ m đến trung bình củ a cụ m Độ tương đồ ng (similarity) giữ a cá c cụ m: khoả ng cá ch giữ a hai trung bình củ a hai cụ m c Tính tố n mộ t giá trị gọ i độ đo Davies-Bouldin cho mỗ i cụ m bằ ng cô ng thứ c: DB = (similarity_in_cluster_i + similarity_in_cluster_j) / distance_between_clusters_i_j Trong : similarity_in_cluster_i độ tương đồ ng cụ m i, similarity_in_cluster_j độ tương đồ ng cụ m j, distance_between_clusters_i_j độ tương đồ ng giữ a hai cụ m i j 10 Tính tố n trung bình củ a tấ t cá c giá trị Davies-Bouldin củ a cá c cụ m để thu đượ c điểm Davies-Bouldin tổ ng thể cho phâ n cụ m Giá trị Davies-Bouldin cà ng nhỏ chấ t lượ ng phâ n cụ m cà ng tố t Mộ t giá trị DB gầ n cho thấ y cá c cụ m tá ch biệt đồ ng nhấ t, giá trị DB lớ n cho thấ y chồ ng chéo hoặ c khô ng đồ ng nhấ t giữ a cá c cụ m III Kỹ thuật sử dụng tiền xử lý liệu Tiền xử lý liệu trình chuẩ n bị liệu trướ c p dụ ng cá c thuậ t tố n phâ n tích hoặ c huấ n luyện mơ hình Điều nà y rấ t quan trọ ng liệu thườ ng khơ ng hồ n o cầ n đượ c xử lý trướ c sử dụ ng Nếu liệu khô ng đượ c tiền xử lý đú ng cá ch, gâ y cá c vấ n đề sai só t kết , mơ hình khơ ng xá c hoặ c phâ n tích khơ ng hiệu Do , tiền xử lý liệu bướ c quan trọ ng nhấ t q trình phâ n tích liệu ả nh hưở ng đến chấ t lượ ng độ xá c củ a kết phâ n tích Dướ i đâ y mộ t số kỹ thuậ t tiền xử lý liệu phổ biến: Loại bỏ giá trị thiếu (Missing Values): Sử dụ ng kỹ thuậ t xó a dị ng, điền giá trị mặ c định hoặ c sử dụ ng mô hình để xử lý cá c giá trị thiếu liệu Chuẩn hóa liệu (Data Normalization): Đưa cá c giá trị liệu cù ng phạ m vi hoặ c cù ng phâ n phố i Có thể sử dụ ng kỹ thuậ t Chuẩ n hó a Min-Max, Chuẩ n hó a Z-Score hoặ c Chuẩ n hó a theo tỷ lệ Xử lý biến đổi (Attribute Transformation): Á p dụ ng cá c biến đổ i liệu để tạ o cá c đặ c trưng mớ i Ví dụ : Logarithm, Square Root, Binning, PCA (Principal Component Analysis), Lựa chọn đặc trưng (Feature Selection): Chọ n cá c đặ c trưng quan trọ ng nhấ t để giả m chiều liệu i thiện hiệu suấ t mô hình Có thể sử dụ ng 11 cá c kỹ thuậ t Information Gain, Chi-square, Correlation, Wrapper hoặ c Embedded methods Sắp xếp lại liệu (Data Reshaping): Thay đổ i cấ u trú c củ a liệu để phù hợ p vớ i mơ hình phâ n tích Ví dụ : Pivot, Unpivot, Transpose, Xử lý nhiễu (Noise Handling): Loạ i bỏ hoặ c giả m thiểu nhiễu liệu Có thể sử dụ ng kỹ thuậ t Lọ c nhiễu, Smoothing, hay Outlier Detection Trong bài, tiền xử lý liệu thơng qua Jupyter Notebook: Hình 3.1: Hình ảnh chương trình in tập liệu loại bỏ giá trị trùng, Nan - Loạ i bỏ cá c giá trị trù ng lặ p: df.drop_duplicates(inplace=True) đượ c sử dụ ng để loạ i bỏ cá c hà ng trù ng lặ p cộ t liệu Giú p loạ i bỏ cá c giá trị khô ng cầ n thiết giả m kích thướ c tậ p liệu củ a nhó m - Xó a cá c hà ng a giá trị thiếu: df.dropna(inplace=True) đượ c sử dụ ng để loạ i bỏ cá c hà ng a giá trị thiếu tậ p liệu Việc nà y đả m bả o rằ ng tậ p liệu a cá c giá trị đầ y đủ giả m thiểu sai só t q trình phâ n tích liệu Trong đoạ n code có hai kỹ thuậ t tiền xử lý liệu đượ c nhó m sử dụ ng: 12 Hình 3.2: Hình ảnh chương trình bước tiền xử liệu - Định ng lạ i cộ t ngà y thá ng: df['Date']=pd.to_datetime(df['Date'], format='%m/%d/%Y', errors='coerce').fillna(pd.to_datetime(df['Date'], format='%d-%m-%Y', errors='coerce')) đượ c sử dụ ng để định ng lạ i cộ t ngà y thá ng tậ p liệu giú p đả m bả o rằ ng cộ t ngà y thá ng đượ c đọ c xá c - Loạ i bỏ ký tự đặ c biệt: df[['Close/Last','Open','High','Low']]=df[['Close/Last','Open','High','Low']].appl ymap(lambda x: str(x).replace('$', '')) đượ c sử dụ ng để loạ i bỏ ký tự đặ c biệt "$" cá c cộ t giá trị củ a tậ p liệu nhằ m đả m bả o rằ ng cá c giá trị đượ c đọ c đú ng định ng sử dụ ng cho cá c phâ n tích sau nà y IV Xây dựng mơ hình Rapid Miner Để thuậ n tiện việc phâ n tích đưa nhữ ng đá nh giá phâ n cụ m, từ hỗ trợ việc đưa định đầ u tư cổ phiếu nhằ m tố i đa hó a lợ i nhuậ n RapidMiner nhiều phầ n mềm hỗ trợ việc Cụ thể, RapidMiner mộ t cô ng cụ phâ n tích liệu mạ nh mẽ dễ sử dụ ng Ngoà i ra, cho phép ngườ i dù ng trích xuấ t thơ ng tin quan trọ ng từ cá c tậ p liệu lớ n phâ n tích ng để tìm cá c mẫ u, xu hướ ng thô ng tin giá trị Đặ c biệt, RapidMiner cung cấ p mộ t giao diện trự c quan hỗ trợ nhiều cô ng cụ 13 phâ n tích liệu khai phá liệu, mơ hình hó a, phâ n loạ i, gom cụ m họ c má y Điều nà y cho phép ng ta xâ y dự ng cá c quy trình phâ n tích liệu phứ c tạ p mà khô ng cầ n viết mã đượ c hỗ trợ việc tích hợ p vớ i cá c nguồ n liệu c cung cấ p cá c cô ng cụ trự c quan để trự c quan hó a kết phâ n tích Từ định nghĩa trên, ng tô i tiến hà nh sử dụ ng phầ n mềm theo trình sau : Thứ nhất, sau trả i qua trình tiền xử lý liệu, ng tô i tiến hà nh sử dụ ng liệu mớ i o bằ ng cá ch sử dụ ng “Import Data” lưu liệu o “Local Repository” Thứ hai, tả i liệu lưu bằ ng thẻ “Retrieve”, bên cạ nh vớ i nhữ ng cộ t liệu “Company” “Date” ả nh hưở ng phầ n nà o tớ i quy trình phâ n tích Chính lý , xuấ t củ a thẻ “Set role” nhằ m đặ t cho cộ t nà y nh “Label” “ID” cá ch lầ n lượ t Thứ ba, mộ t nhữ ng bướ c quan trọ ng khơ ng thể thiếu là chuẩ n hó a liệu Điều nà y khiến cho khoả ng giá trị củ a thuộ c tính đượ c thu gọ n lạ i Trong tậ p liệu nà y, ví dụ hà ng đầ u tiên, cộ t “Close/Last” từ “193.990” nh “0.897”.Từ , việc so sá nh giữ a cá c thuộ c tính hiệu ,dễ dà ng Thứ tư, thuậ t toá n đượ c sử dụ ng cho phầ n phâ n cụ m “K-Mean” Cụ thể, thuậ t tố n nà y tìm cá ch tố i thiểu hoá khoả ng cá ch giữ a điểm liệu cù ng mộ t nhó m tố i đa hó a khoả ng cá ch giữ a cá c điểm liệu c nhó m Cuối cùng, nhó m ng tơ i tiến hà nh thự c phương thứ c c nữ a “Cluster Distance Performance” Chi tiết hơn, đâ y đo hiệu 14 suấ t thuậ t toá n củ a thuậ t toá n “K-Mean” đo nà y cho kết đo lườ ng khoả ng cá ch giữ a cá c điểm liệu cù ng mộ t nhó m Theo kết đạ t đượ c : K=2 -0.581 K=3 -0.781 K=4 -0.675 K=5 -0.794 K=6 -0.674 K=7 -0.694 K=8 -0.784 K=9 -0.739 K = 10 -0.791 Để đá nh giá cá ch xá c nhấ t liệu vớ i số k nà o chấ t lượ ng phâ n cụ m cao nhấ t ng tơ i sử dụ ng “metrics” Davies Bouldin Index, cụ thể, số nà y cà ng nhỏ số tố t nhấ t giữ a cá c phâ n cụ m Dự a o kết mà ng tô i thu thậ p, vớ i k = đạ t số Davies Bouldin Index nhỏ nhấ t -0.794 15 Hình 4.1: Chương trình RapidMiner toán phân cụm V Xây dựng, trực quan hóa,đánh giá mơ hình Python 1, Xây dựng mơ hình Bên cạ nh nhữ ng phương phá p, ứ ng dụ ng bà i toá n Price Risk Clustering o phầ n mềm Rapid Miner ng tô i tiến hà nh sử dụ ng cá ch tiếp cậ n c, cụ thể ứ ng dụ ng Python để xâ y dự ng lên mơ hình củ a thuậ t tố n ‘Clustering’ o bà i toá n Cá c bướ c thự c sau : Bước 1: Import thư viện Mộ t nhữ ng bướ c buộ c phả i có để tiến hà nh, hồ n nh xâ y dự ng mơ hình ‘import’ nhữ ng thư viện cầ n thiết cho quy trình Cụ thể, đâ y nhữ ng thư viện ng tơ i sử dụ ng : Hình 5.1: Hình ảnh chương trình trích xuất thư viện cần thiết 16 import pandas as pd Á p dụ ng trích xuấ t thư viện pandas from sklearn.cluster import KMeans Ứ ng dụ ng thuậ t toá n K-Means from sklearn.preprocessing import Ứ ng dụ ng chuẩ n hó a liệu StandardScaler import matplotlib.pyplot as plt Ứ ng dự ng trự c quan hó a import numpy as np Á p dụ ng trích xuấ t thư viện numpy from sklearn.metrics import silhouette_score Ứ ng dụ ng trích xuấ t điểm silhouette Sau đưa nhữ ng thư viện phù hợ p cho quy trình, ng tơ i định tiến hà nh truyền ‘pd.read_csv('smn.csv')’ (smn.csv tên file) o phầ n tử ‘data’ trích xuấ t 10 hà ng đầ u tiên củ a bả ng liệu Bước 2: Chuẩn hóa liệu Chú ng ta thấ y rõ đâ y cá c giá trị củ a từ ng thuộ c tính nằ m khoả ng lớ n rấ t khó để so sá nh vớ i cá c thuộ c tính vớ i Chính vậ y, ng tô i định lấ y X ( gồ m nhữ ng thuộ c tính a giá trị kiểu số ) kết hợ p vớ i ‘np.nan_to_num(X)’ nhằ m chuyển đổ i nhữ ng giá trị null nh ( có ) Sau , ‘scaler = StandardScaler()’ biểu rằ ng ng tơ i truyền phương thứ c chuẩ n hó a liệu hay ‘StandardScaler()’ o biến ‘scaler’ nhằ m ‘fit’ chuyển đổ i ‘X’ dò ng thứ Từ , tậ p liệu chuyển sang nhữ ng số nhằ m khoả ng từ -2 tớ i 17 Hình 5.2 : Hình ảnh chương trình chuẩn hóa liệu Bước 3: Modeling Để tiến hà nh nhữ ng phâ n đoạ n liên quan tớ i phâ n cụ m i chung o tậ p liệu thu thậ p, nhó m ng tơ i tiến hà nh ứ ng dụ ng nhữ ng thuậ t tố n phổ biến K-Means Cụ thể sau : B3.1 Khởi tạo đối tượng K-Means Sau trích xuấ t thư viện, ng tơ i dễ dà ng truyền mơ hình o biến ‘k_means’ Đặ c biệt đố i tượ ng K-Means, vớ i ‘init = "k-means++"’ đâ y phương phá p khở i tạ o ‘centroid’ ban đầ u qua ‘k-means++’ Bên cạ nh , ‘n_clusters = clusterNum’ để xá c định số lượ ng cá c cụ m cho mơ hình Cuố i cù ng, n_init = 12 số lầ n chạ y thuậ t toá n (12) vớ i nhữ ng centroid ban đầ u c cá ch ngẫ u nhiên, điều nà y trá nh đượ c tượ ng cục hóa, tứ c giá trị hà m tố i ưu khô ng phả i tố i ưu n cụ c mà giá trị tố i ưu xung quanh điểm khở i tạ o Hình 5.3: Hình ảnh chương trình khởi tạo model K-Means 18 B3.2 Fitting đưa nhãn từ model Hình 5.4: Quy trình ‘fitting’ tạo labels model Vớ i mơ hình xâ y dự ng bướ c trướ c, ta huấ n luyện (fitting) mơ hình phâ n cụ m K-Means dự a tậ p ‘Clus_data’ đượ c chuẩ n hó a, cụ thể ‘k_means.fit(Clus_dataSet)’, từ ta lấ y đượ c nhữ ng giá trị đượ c gá n nhã n lưu o biến ‘labels’ 2, Trực quan hóa, đánh giá mơ hình Theo ý tưở ng nhó m ng tơ i vạ ch ban đầ u khô ng nắ m bắ t độ xá c củ a mơ hình mà cò n lự a chọ n đâ u số cụ m tố t nhấ t Để thự c đượ c ý tưở ng trên, ng tô i định sử dụ ng ‘Silhouette Score’ nhằ m tố i giả n hó a đượ c thờ i gian xuấ t củ a vò ng lặ p Cụ thể, đoạ n chương trình nà y giớ i hạ n số lầ n lặ p tương ứ ng vớ i k = 9, tậ p liệu ng tô i thu thậ p đượ c có 10 ng ty ; sau ứ ng dụ ng thư viện củ a ‘Silhouette Score’ nhữ ng kết nà y đượ c in ra, đồ ng thờ i đượ c lưu o ‘list’ đượ c đặ t tên ‘list_score’ 19 Hình 5.5: Đoạn chương trình sử dụng SSD để đánh giá Từ ả nh trên, rõ rà ng ta thấ y đượ c rằ ng vớ i k = điểm ‘silhouette’ đạ t giá trị 0.633 cụ m gầ n nhấ t tương đương rằ ng đâ y k phâ n cụ m tố t nhấ t vớ i cá c điểm sá t cá ch xa so vớ i cá c cụ m c Tuy nhiên để có mộ t cá i nhìn mứ c độ đá nh giá c, nhó m tiến hà nh p dụ ng thêm số SSD để đưa nhữ ng đá nh giá c nữ a Tương tự vớ i chương trình in kết silhouette score, tiếp tụ c phương thứ c vò ng lặ p vớ i số lầ n lặ p từ khoả ng – 9, vớ i hà m ‘inertia_’ đạ i diện cho SSD Và đâ y kết : Hình 5.6: Kết modeling 20 Á p dụ ng kết truyền o củ a ‘list_score1’, ng tô i sử dụ ng thư viện ‘matplotlib.pyplot’ để hỗ trợ trình trụ c quan hó a Hình 5.7: Xác định điểm Elbow Để đưa định đượ c đâ u k cụ m tố t nhấ t có rấ t nhiều phương phá p để lự a chọ n tù y thuộ c o từ ng bà i tố n nhiên nhó m ng tô i tiến hà nh p dụ ng phương phá p dù ng điểm ‘Elbow point’ Từ kết cung cấ p trên, ta dễ dà ng thấ y tạ i điểm k = xu hướ ng bắ t đầ u có dấ u hiệu giả m nhẹ, hay i cá ch c đâ y đườ ng ‘khuỷu tay’, ng tô i p dụ ng mô hình vớ i k = Như vậ y, sau trình ta thấ y rằ ng kết khô ng đồ ng nhấ t vớ i nhấ t Mộ t cá ch tó m gọ n, ‘Silhouette score’ cho k = tố t nhấ t, Elbow point k = Tuy nhiên để lự a chọ n giữ a điểm nà y, nhó m ng tơ i định ưu tiên Elbow point k = củ a Silhouette score cụ m để phả n nh đầ u đủ mẫ u hình giá Sau tiến hà nh xâ y dự ng mơ hình sử dụ ng điểm ‘Silhouette’ ‘SSD’ thô ng qua vị ng lặ p q trình trướ c cũ ng lự a chọ n đượ c điểm k cụ m tố t nhấ t, đâ y kết mà ng tô i ghi nhậ n đượ c bả ng liệu cộ t 21 ‘Cluster_num’ gá n nhã n cho từ ng cổ phiếu, biểu đồ scatter plot trự c quan kết phâ n cụ m Hình 5.8: Bảng liệu cột ‘Cluster_num’ Hình 5.9: Biểu đồ scatter plot trực quan kết phân cụm 22