Bài viết này đề xuất một tiếp cận mới trong khai thác mẫu tuần tự có trọng số bằng việc kết hợp giá trị trọng số thực của các item trong cơ sở dữ liệu chuỗi cùng với độ hỗ trợ của chúng để tìm ra tập mẫu phổ biến có giá trị hơn. Hơn nữa, thuật toán đề xuất sử dụng phương pháp tiếp cận dữ liệu theo chiều dọc nên thuật toán chỉ cần duyệt cơ sỡ dữ liệu một lần, do đó tiết kiệm được thời gian thực thi. Mời các bạn cùng tham khảo!
Tạp chí Khoa học Cơng nghệ, Số 45A, 2020 MỘT THUẬT TOÁN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ PHẠM THỊ THIẾT Khoa Công Nghệ Thông Tin, Trường Đại học Công nghiệp Thành phố Hồ Chí Minh phamthithiet@iuh.edu.vn Tóm tắt Khai thác mẫu có trọng số giúp tìm mẫu có giá trị cao nên áp dụng nhiều lĩnh vực đồng thời giải số khó khăn khơng gian lưu trữ tài nguyên thực toán khai thác mẫu với độ hỗ trợ min_sup thấp Bài báo đề xuất tiếp cận khai thác mẫu có trọng số việc kết hợp giá trị trọng số thực item sở liệu chuỗi với độ hỗ trợ chúng để tìm tập mẫu phổ biến có giá trị Hơn nữa, thuật toán đề xuất sử dụng phương pháp tiếp cận liệu theo chiều dọc nên thuật toán cần duyệt sỡ liệu lần, tiết kiệm thời gian thực thi Bên cạnh đó, để tăng hiệu suất tính tốn, thuật tốn áp dụng mã hóa khối ngun tố bước tính tốn q trình phát triển mẫu Kết thực nghiệm cho thấy thuật toán đề xuất có thời gian thực thi hiệu Từ khóa mẫu tuần tự, mẫu có ràng buộc trọng số, CSDLchuỗi AN EFFICIENT ALGORITHM FOR MINING WEIGHTED SEQUENTIAL PATTERNS Abstract Mining weighted sequential patterns is to find higher-value patterns and these patterns can be applied in more fields, and at the same time it addresses some of the storage and resource limitations in the problem of mining sequential patterns with the low min_sup support The paper proposes a new approach for mining weighted sequential patterns by combining the actual weight values of items in the sequence database with their support to find higher-value sequential patterns set Moreover, the proposed algorithm uses a vertical database approach, so the algorithm only needs to scan the database once, thus saving execution time In addition, to increase computational efficiency, the algorithm applies the prime block encoding approach in the computational steps of the extension pattern process Experimental results show that the proposed algorithm has more effective execution time Keywords: sequential pattern, weighted sequential pattern, sequence database GIỚI THIỆU Cho đến có nhiều cơng trình nghiên cứu lĩnh vực khai thác liệu nói chung, khai thác mẫu phổ biến nói riêng Việc khai thác mẫu phần quan trọng khai thác liệu với ứng dụng rộng rãi nhiều lĩnh vực kinh tế khoa học như: phân tích trình mua bán hàng hóa, dự đốn thiên tai, phân tích chuỗi DNA, phân tích cấu trúc gen,… Bài tốn khai thác mẫu từ sở liệu (CSDL) chuỗi để tìm tập chuỗi phổ biến thỏa mãn ngưỡng hỗ trợ tối thiểu (min_sup) người dùng đặt [1, 5, 10, 13, 16] Đây toán quan trọng lĩnh vực khai thác liệu từ CSDL chuỗi tảng nhiều nhiệm vụ khai thác liệu khác gom nhóm liệu [3, 9], phân loại dự đoán liệu [9], phân loại liệu dựa luật kết hợp [14] Có nhiều thuật toán đề xuất để cải thiện hiệu suất trình khai thác mẫu CSDL chuỗi PSP [12], PrefixSpan [13], SPADE [22], SPAM [2], PRISM [7], CM-SPADE [4], MCM-SPADE [11] Tuy nhiên thuật toán sử dụng độ hỗ trợ để tìm mẫu khai thác mẫu với độ hỗ trợ tối thiểu thấp phát sinh lượng mẫu khổng lồ, điều làm cho khơng gian lưu trữ mẫu bị tải Để giải vấn đề không gian lưu trữ phương pháp cần phải tăng độ hỗ trợ tối thiểu min_sup [18, 21], tập mẫu thu giảm đi, nhiên việc làm làm nhiều mẫu có tầm quan trọng cao lại có độ hỗ trợ chưa đủ lớn (tần suất xuất chuỗi tồn CSDL khơng nhiều) Hơn nữa, thuật tốn khai thác mẫu thống mẫu có tầm quan trọng nhau, đó, thực tế, thành phần CSDL có tầm quan trọng khác Những items nằm chuỗi có mức hỗ trợ thấp có tầm quan © 2020 Trường Đại học Cơng nghiệp thành phố Hồ Chí Minh MỘT THUẬT TỐN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ 15 trọng tính trọng số items Do vậy, mẫu có tầm quan trọng cao (hay trọng số cao) mẫu có giá trị cao nên lưu trữ lại để sử dụng Chính thế, mẫu có độ hỗ trợ khơng thỏa điều kiện ngưỡng hỗ trợ tối thiểu mẫu giữ lại sau trình khai thác mẫu trọng số mẫu đủ lớn Vấn đề tồn cần giải làm cách để khơng làm mẫu có tầm quan trọng giữ độ hỗ trợ tối thiểu mức hợp lý cho việc thu thập lưu trữ tập mẫu sau trình khai thác liệu để không tạo tập mẫu lớn, gây dư thừa Bài toán khai thác mẫu dựa ràng buộc trọng số đề xuất để tìm mẫu không phổ biến (không thỏa ràng buộc mức hỗ trợ tối thiểu) lại có items xuất mẫu có tầm quan trọng cao sở liệu, từ tìm tập mẫu có trọng số hồn chỉnh, có tầm quan trọng hơn, có lợi ích nhiều việc sử dụng mẫu Nhờ trình khai thác cải thiện hiệu tập mẫu tìm thấy đáp ứng yêu cầu người dùng tốt Việc khai thác mẫu có trọng số thu thập tập mẫu hồn chỉnh với items có mức hỗ trợ thấp có tầm quan trọng cao, cần thiết cho q trình sử dụng liệu Do đó, báo tập trung nghiên cứu đề xuất thuật toán cho toán khai thác mẫu với ràng buộc trọng số cách kết hợp ràng buộc mức hỗ trợ tối thiểu lẫn trọng số item CSDL chuỗi để khai thác tập mẫu hồn chỉnh với tính chặt chẽ mẫu sau trình khai thác liệu Bên cạnh đó, để thuật tốn hiệu hơn, thuật tốn cịn sử dụng phương pháp mã hóa khối nguyên tố [7] bước tính tốn q trình phát triển mẫu Kết thực nghiệm thuật toán đề xuất so sánh với kết thực nghiệm thuật toán SPMW [15] Bố cục báo tổ chức sau: Mục trình bày cơng trình liên quan đến toán khai thác mẫu khai thác mẫu với ràng buộc trọng số Mục trình bày định nghĩa liên quan đến toán khai thác mẫu với ràng buộc trọng số Thuật toán đề xuất để khai thác mẫu với ràng buộc trọng số thảo luận Mục Kết thực nghiệm mô tả Mục Mục kết luận hướng phát triển CÁC CƠNG TRÌNH LIÊN QUAN AprioriAll [1] thuật toán thiết kế để giải toán khai thác mẫu CSDL chuỗi giao dịch Để tìm mẫu tuần tự, thuật tốn AprioriAll gồm giai đoạn chính: Tìm itemset phổ biến, biến đổi CSDL tìm mẫu liệu biến đổi Để tìm mẫu tuần tự, thuật toán AprioriAll phải phát sinh ứng viên, số lượng ứng viên tạo lớn dễ dẫn đến tình trạng “nghẽn cổ chai” Mặt khác, để tìm tất mẫu tuần tự, thuật tốn AprioriAll phải duyệt CSDL nhiều lần để đếm độ hỗ trợ cho chuỗi ứng viên GSP [16] thuật toán đề xuất vào năm 1996 Agrawal Srikant Thuật toán mở rộng từ thuật toán AprioriAll [1] GSP giải toán khai thác mẫu cách tổng quát cách bổ sung thêm ràng buộc như: khoảng thời gian cực đại cực tiểu thành phần mẫu GSP sử dụng cấu trúc liệu “cây băm” để giảm số ứng viên cần kiểm tra cho chuỗi liệu biến đổi cách biểu diễn chuỗi liệu, GSP khắc phục tình trạng “nghẽn cổ chai” AprioriAll thực nhanh AprioriAll PSP [12] thuật toán khác đề xuất Masseglia đồng vào năm 1998, dựa mơ hình Apriori giống GSP Điểm khác biệt PSP so với GSP PSP quản lý lưu trữ mẫu ứng viên cấu trúc liệu tiền tố PSP không thực phép kết sinh Apriori Cả ba phương pháp AprioriAll, GSP, PSP thực phải duyệt CSDL nhiều lần phải tải toàn CSDL vào nhớ chính, phương pháp thật hiệu nhớ chứa hết tồn CSDL Tuy nhiên thuật tốn PSP thực hiệu GSP PrefixSpan [13] thuật toán phát triển từ thuật toán FreeSpan [8] FreeSpan thuật toán thực phép chiếu CSDL để giảm chi phí lưu trữ liệu theo hướng tiếp cận theo chia nhỏ liệu Xuất phát từ tập mẫu độ dài 1, PrefixSpan tạo CSDL chiếu với mẫu Trong CSDL chiếu, chuỗi liệu giữ lại phần hậu tố tiền tố chiếu Mẫu phát triển item phổ biến tìm CSDL chiếu Quá trình lặp lại CSDL chiếu khơng cịn item phổ biến Tuy nhiên, phát triển mẫu, thuật toán FreeSpan PrefixSpan phải thực chiếu CSDL duyệt CSDL chiếu để tìm item phổ biến Tất phương pháp tiếp cận theo hướng biểu diễn thông tin liệu theo chiều ngang Để xác định độ hỗ trợ mẫu cần phải duyệt lại toàn CSDL Để khắc phục điều này, số thuật toán SPADE [22], SPAM [2], PRISM [7] tiếp cận theo hướng biểu diễn thông tin liệu theo © 2020 Trường Đại học Cơng nghiệp thành phố Hồ Chí Minh 16 MỘT THUẬT TỐN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ chiều dọc, thuật toán hiệu Thay phải duyệt tồn CSDL chuỗi, với mẫu ứng viên, chúng thực lưu trữ thơng tin cho biết mẫu có mặt chuỗi liệu nào, từ tính nhanh độ hỗ trợ Mặt khác, mẫu tạo lấy thông tin dựa mẫu có khơng cần phải duyệt lại CSDL Thuật toán SPADE [22] Zaki đề xuất vào năm 2001 Thuật toán SPADE tổ chức liệu theo chiều dọc, ứng với item lưu danh sách định danh chuỗi liệu định danh itemset có chứa item Độ hỗ trợ item tính trực tiếp từ danh sách định danh Mặt khác, SPADE cịn dựa lý thuyết dàn để chia nhỏ khơng gian tìm kiếm thao tác kết đơn giản để tạo tập ứng viên Thuật tốn gom nhóm mẫu dựa theo tiền tố thành lớp tương đương Với ngưỡng min_sup thấp, so với thuật tốn GSP, thuật tốn SPADE thực nhanh gấp đơi [22] Thuật toán SPAM [2] tổ chức liệu theo chiều dọc thuật tốn SPADE Thơng tin mẫu ứng viên biểu diễn dạng bảng bit dọc, bit ứng với itemset chuỗi CSDL Nếu item có mặt itemset j bit tương ứng itemset j đánh dấu 1, ngược lại Độ hỗ trợ mẫu xác định dựa bảng bit Về tốc độ thực thi, CSDL nhỏ, SPAM thực nhanh 2.5 lần so với SPADE, chưa thực tốt PrefixSpan Với CSDL lớn, SPAM thực tốt nhiều so với SPADE PrefixSpan tổ chức biểu diễn lưu trữ liệu dạng bit nên thao tác phát sinh ứng viên đếm độ hỗ trợ hiệu [2] Thuật toán PRISM [7] đề xuất Gouda cộng vào năm 2010 Thuật tốn PRISM tiếp cận theo hướng hồn tồn khác biệt so với thuật tốn trước sử dụng phương pháp mã hóa khối nguyên tố để biểu diễn thông tin mẫu ứng viên Thuật toán sử dụng cách tiếp cận dọc để liệt kê đếm độ hỗ trợ, bên cạnh thuật toán sử dụng cấu trúc liệu từ điển để lưu trữ mẫu tìm Thuật tốn duyệt CSDL lần để tìm tập mẫu độ dài với khối mã hóa thơng tin tương ứng cho mẫu Sau đó, mẫu phát triển cách thêm vào mẫu item phổ biến Thông tin mẫu xác đinh dựa khối mã hóa mẫu cũ item thêm vào Như vậy, thuật toán PRISM duyệt CSDL nhiều lần Đồng thời, thuật tốn giảm chi phí tính tốn cách sử dụng bảng tra cho khối mã hóa thơng tin dựa lý thuyết mã hóa nguyên tố Năm 2014, Fournier-Viger cộng đề xuất thuật toán CM-SPADE [4] để khắc phục điểm yếu thuật toán SPADE cách sử dụng cấu trúc liệu gọi CMAP CMAP (Co-occurrence MAP) Dữ liệu lưu trữ CMAP ánh xạ item tập item cho item mở rộng với item khác để tạo thành mẫu CM-SPADE cải thiện tốc độ xử lý giảm mức sử dụng nhớ cách áp dụng thêm bước kiểm tra dựa cấu trúc liệu CMAP, điều cho phép loại bỏ nhanh chóng ứng viên khơng mong muốn tránh chi phí cho việc xử lý mẫu dư thừa Thuật toán MCM-SPADE [11] Huynh đồng đề xuất vào năm 2018 để khai thác mẫu cách sử dụng đa tiến trình Để cải tiến hiệu suất thuật tóan CM-SPADE, thuật tốn MCMSPADE đề xuất sử dụng định dạng liệu theo chiều dọc kết hợp với cấu trúc [4] để sớm loại bỏ ứng viên Thuật toán MCM-SPADE phân chia tác vụ liên quan đến nhân xử lý cách sử dụng tính chất chia trị dựa hệ thống kiến trúc đa nhân với kỹ thuật đa tiến trình Tuy nhiên, thuật tốn quan tâm sử dụng ràng buộc độ hỗ trợ item để tìm mẫu mà chưa xem xét đến ràng buộc trọng số item CSDL, việc làm phát sinh tập mẫu lớn độ hỗ trợ tối thiểu nhỏ, làm cho không gian lưu trữ mẫu bị tải Để giải vấn đề khơng gian lưu trữ phương pháp phải tăng độ hỗ trợ tối thiểu, nhiên với cách giải làm nhiều mẫu có tầm quan trọng cao lại có độ hỗ trợ chưa đủ lớn (tần suất xuất chuỗi tồn CSDL khơng nhiều) Trong đó, trọng số item, mẫu đặc trưng cho tầm quan trọng (hay giá trị) item, mẫu Chính thế, q trình khai thác nên giữ lại mẫu có trọng số cao mẫu có độ hỗ trợ không thỏa ngưỡng hỗ trợ tối thiểu Srikant Agrawal [16] người khái quát toán khai thác mẫu mà cho phép xử lý ràng buộc thời gian Họ đưa hai loại ràng buộc thời gian ràng buộc khoảng thời gian (time-gap) ràng buộc thời gian - cửa sổ trượt (sliding time window) Trong đó, ràng buộc khoảng thời gian giới hạn thời gian xảy hai thành phần liền kề phải nằm khoảng hợp lý, ràng buộc thời gian - cửa sổ trượt qui định thành phần có thời gian nằm phạm vi cửa sổ nằm © 2020 Trường Đại học Cơng nghiệp Thành phố Hồ Chí Minh MỘT THUẬT TOÁN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ 17 giao dịch Ngoài ra, tác giả [16] đưa ràng buộc phân cấp mẫu người dùng định nghĩa Garofalakis đồng [6] đề xuất ràng buộc mẫu dạng biểu thức có qui tắc đưa bốn thuật toán, gọi SPIRIT Trong đó, thuật tốn giải tốn khai thác mẫu với loại biểu thức ràng buộc cho trước Yun cộng đề xuất thuật toán WFIM [19] vào năm 2005 để khai thác mẫu có trọng số CSDL giao dịch lớn cách sử dụng dải trọng số (weight range) trọng số tối thiểu (min_weight) với độ hỗ trợ tối thiểu Trong thuật toán này, item riêng lẻ gán trọng số khác phạm vi trọng số để phản ánh tầm quan trọng chúng ràng buộc trọng số sau đưa vào thuật toán tăng trưởng mẫu để giữ thuộc tính giảm bao đóng WFIM sử dụng tiền tố tiếp cận theo hướng từ lên (bottom – up) xếp theo thứ tự tăng dần Thuật toán cho phép điều chỉnh số lượng itemset phổ biến có trọng số cách thay đổi thông số dải trọng số trọng số tối thiểu ngưỡng hỗ trợ tối thiểu thấp CSDL dày CSDL dài Trọng số độ hỗ trợ item WFIM xem xét riêng để cắt tỉa khơng gian tìm kiếm WFIM cho phép người dùng cân độ hỗ trợ trọng số itemset Năm 2006, Yun cộng [20] đề xuất thuật toán WSpan để khai thác mẫu hiệu cách đưa ràng buộc trọng số vào thuật toán tăng trưởng mẫu bảo toàn thuộc tính giảm bao đóng cách tiếp cận theo hướng CSDL chiếu Tác giả định nghĩa toán khai thác mẫu có trọng số tốn tìm tập hồn chỉnh mẫu có trọng số CSDL với ràng buộc độ hỗ trợ ràng buộc trọng số Tác giả xem xét việc áp dụng ràng buộc trọng số vào khai thác mẫu thuộc tính giảm bao đóng bị phá vỡ việc áp dụng ràng buộc trọng số đơn giản: “Một chuỗi với trọng số thấp mẫu phổ biến việc kết hợp items có trọng số cao chuỗi” Trong thuật toán này, dải trọng số sử dụng items gán giá trị trọng số khác bên dải trọng số, bên cạnh thuật tốn sử dụng giá trị ngưỡng hỗ trợ tối thiểu min_sup ngưỡng trọng số lớn (MaxW) để làm điều kiện kiểm tra độ phổ biến mẫu trình khai thác CSDL chuỗi WSpan điều chỉnh số lượng mẫu việc điều chỉnh dải trọng số thành phần CSDL chuỗi đầu vào Năm 2016, Sirisha cộng [15] đề xuất hướng tiếp cận để tìm mẫu với giá trị trung bình trọng số (meanW) mẫu Trong tiếp cận này, trước tiên giá trị trọng số gán vào items, sau định nghĩa giá trị trung bình trọng số cho mẫu dựa vào điều kiện support * meanW < min_sup để cắt tỉa mẫu Với thuật toán này, CSDL chiếu đệ quy vào tập CSDL chiếu có trọng số với kích thước nhỏ mẫu có trọng số phát sinh CSDL chiếu có trọng số Tuy nhiên, thuật toán tiếp cận theo hướng tăng trưởng mẫu chia nhỏ CSDL thành CSDL chiếu tiền tố làm cho thuật toán bị giới hạn khơng gian lưu trữ q trình phát sinh CSDL chiếu tiền tố chi phí cao, số trường hợp thực CSDL chuỗi khai thác CSDL dày lớn Năm 20018, Van công [17] đề xuất thuật toán gọi MSPIC-DBV để khai thác mẫu dựa ràng buộc itemset Thuật toán cải thiện đáng kể hiệu suất toán khai thác mẫu cách sử dụng cấu trúc liệu vector bit động kết hợp với cấu trúc tiền tố để biểu diễn chuỗi ứng viên Tuy nhiên, thuật toán yêu cầu người sử dụng phải xác định trước tập ràng buộc itemset mà không sử dụng ràng buộc trọng số thực tế item CSDL Để cải thiện vấn đề trên, báo đề xuất thuật toán WPM (Weighted Pattern Mining) để khai thác mẫu có trọng số cách sử dụng phương pháp mã hóa khối nguyên tố tính tốn trọng số item dựa trọng số thực tế thành phần CSDL CÁC ĐỊNH NGHĨA CSDL chuỗi: Đặt I = {i1, i2, …, im} tập mục (item) Một itemset tập item khác rỗng, Một itemset i ký hiệu (i1, i2, …, ik), ij item Giả sử item itemset xếp theo thứ tự từ điển, S = {s1, s2, …, sn} tập chuỗi, chuỗi sx danh sách item xếp theo thứ tự sx ={x1, x 2, …, xp} chuỗi xi itemset p số lượng itemset cho x1, x2, …, xp I Trong sx, x1 xảy trước x2, x2 xảy trước x3, v.v Kích thước chuỗi số lượng itemset có chuỗi Số lượng item có chuỗi © 2020 Trường Đại học Cơng nghiệp thành phố Hồ Chí Minh 18 MỘT THUẬT TỐN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ n gọi độ dài chuỗi, xác định l s j Một chuỗi có chiều dài l cịn gọi lj 1 sequence Một CSDL chuỗi (SD) bao gồm tập chuỗi Độ hỗ trợ: độ hỗ trợ chuỗi α ký hiệu support(α) SD số SD có chứa α Mẫu (chuỗi phổ biến): Cho trước độ hỗ trợ tối thiểu min_sup, chuỗi α SD phổ biến support(α) min_sup Tức là, để chuỗi α chuỗi phổ biến phải xuất min_sup lần SD Một chuỗi phổ biến gọi mẫu Mẫu có chiều dài l gọi l-pattern Trọng số item, itemset, sequence [15]: Trọng số (weight) item w(i) số thực không âm, phản ánh mức độ quan trọng item SD Đặt i item đơn (single item), s1, s2, , sn n chuỗi SD, trọng số i tính sau: W(i) = ∑ () (1) Với T(i) số lần xuất i SD, L(sj) chiều dài chuỗi sj Đặt α = chuỗi, tk (1 k m) thành phần α, bao gồm n item đơn i1, i 2, , in, trọng số tk định nghĩa: ∑ ( ) W(tk) = (2) Và trọng số α là: ∑ ( ) W(α) = (3) Trọng số trung bình: Đặt SD CSDL chuỗi gồm n item đơn ik (1 k n), ta định nghĩa trọng số lớn maxW SD là: maxW = max k n (W(ik)) trọng số nhỏ minW SD là: minW = k n (W(ik)) Khi đó, giá trị trọng số trung bình MeanW SD tính sau: meanW = (maxW + minW) / (4) Item i item có trọng số phổ biến support(i) * meanW min_sup THUẬT TOÁN WPM ĐỂ KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ Thuật toán khai thác mẫu phổ biến với ràng buộc trọng số gọi WPM (Weighted Pattern Mining) báo đề xuất trình bày hình Thuật tốn WPM xây dựng dựa kết hợp giá trị độ hỗ trợ trọng số item CSDL chuỗi để tìm tập mẫu có trọng số hồn chỉnh có giá trị cao Các trọng số item thuật tốn tính tốn dựa giá trị thực item CSDL thay sử dụng giá trị ước lượng người dùng đặt Bên cạnh đó, việc khai thác tập mẫu CSDL chuỗi thuật toán thực theo hướng tiếp cận cấu trúc liệu tổ chức theo chiều dọc kết hợp sử dụng khối mã hóa nguyên tố [7] để biểu diễn thơng tin ứng viên tính tốn độ hỗ trợ ứng viên phát triển mẫu giúp nâng cao hiệu suất thực thi phương pháp đề xuất Khơng gian tìm kiếm thuật tốn WPM từ điển [2, 7], nghĩa phát triển mẫu phổ biến có trọng số theo DFS (Depth First Search) Nút gốc mức chứa chuỗi rỗng, nút mức gọi mức thứ l có kích thước l Nút mức (l+1) xây dựng việc mở rộng chuỗi theo mức l thu chuỗi có kích thước (l+1), mở rộng mẫu thực cách thêm item phổ biến vào mẫu với phương pháp mở rộng mẫu theo chuỗi mở rộng mẫu theo itemset Thuật toán hoạt động sau: Đầu vào thuật toán gồm có CSDL chuỗi biểu diễn theo chiều dọc, ngưỡng hỗ trợ tối thiểu min_sup Trước tiên, thuật toán duyệt CSDL đầu vào lần xác định trọng số item CSDL Từ xác định trọng số lớn trọng số nhỏ để tính trọng số trung bình meanW từ hai giá trị theo cơng thức (4) trình bày phần Tiếp theo, thuật tốn tìm tập item phổ biến có chiều dài thỏa điều kiện: support (i) * meanW min_sup, đồng thời loại bỏ item không phổ biến khỏi F1 Với item phổ biến i F1, thuật toán thực phát triển mẫu theo chuỗi thủ tục S_EXTEND phát triển mẫu theo itemset thủ tục I_EXTEND Với mẫu phát sinh, thuật toán tiếp tục gọi đệ quy thủ tục mở rộng mẫu theo chuỗi hay theo itemset để xây dựng khơng gian mẫu có trọng số theo chiều sâu Các tham số đầu vào ứng với thủ tục để phát triển mẫu bao gồm tập Sn chứa item nối vào © 2020 Trường Đại học Cơng nghiệp Thành phố Hồ Chí Minh MỘT THUẬT TOÁN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ 19 cách mở rộng theo chuỗi s – extension mở rộng theo itemset i – extension, min_sup Với ứng viên pat tạo lần mở rộng mẫu, thuật tốn tính lại độ hỗ trợ mẫu để kiểm tra xem mẫu có phổ biến hay khơng theo điều kiện support (α) * meanW min_sup Việc thực tốn tử kết tính tốn số chuỗi mà mẫu có xuất dựa phương pháp khối mã hóa nguyên tố [7] Nếu mẫu mẫu phổ biến có trọng số, mẫu tiếp tục sử dụng để gọi đệ quy hai thủ tục mở rộng mẫu theo chuỗi theo itemset để tạo mẫu ứng viên bắt đầu với tiền tố Thuật toán cắt tỉa khơng gian tìm kiếm việc khơng mở rộng mẫu không phổ biến Điều thực dựa vào tính chất phổ biến mẫu mẫu khơng phổ biến khơng thể mở rộng để tạo thành mẫu phổ biến WPM (CSDL, min_sup) Duyệt CSDL để xác định meanW F1: danh sách item phổ biến thỏa điều kiện support (i) * meanW min_sup pat_weight := FOREACH item i F1, S_EXTEND (, F1, min_sup) I_EXTEND (, {e F1 | e ≻lex i}, min_sup) S_EXTEND (pat, Sn, min_sup) pat_weight pat; Stemp := FOREACH item j Sn, pnew = s_extension(pat, j); IF support(pnew)*meanW ≥ min_sup THEN Stemp := Stemp (j) FOREACH item j Stemp, S_EXTEND (pnew, Stemp, min_sup) I_EXTEND (pat, In, min_sup) pat_weight pat; Itemp := FOREACH item j In, pnew = i_extension(pat, j); IF support(pnew)*meanW ≥ min_sup THEN Itemp := Itemp (j) FOREACH item j Itemp, I_EXTEND (pnew, {e Itemp| e ≻lex j}, min_sup) Hình 1: Thuật toán WPM để khai thác mẫu với ràng buộc trọng số KẾT QUẢ THỰC NGHIỆM Kết thực nghiệm thuật toán WPM để khai thác mẫu với ràng buộc trọng số mà báo đề xuất so sánh với thuật toán SPMW [15] Các kết thực nghiệm thực máy tính Intel (R), Core (TM) i3-2370M CPU 2.40 GHz, 4Gb RAM hệ điều hành Windows 10 với ngôn ngữ lập trình Java tảng Eclipse CSDLsử dụng thực nghiệm liệu chuẩn tải trực tiếp từ http://fimi.ua.ac.be/data/ Đây địa chứa tập liệu tin cậy cộng đồng nghiên cứu khai thác mẫu sử dụng để kiểm chứng thực nghiệm thuật toán đề xuất Đặc điểm liệu sử dụng thực nghiệm trình bày bảng Bảng 1: Đặc điểm CSDL chuẩn CSDL Số chuỗi Số item phân biệt Số itemset trung bình/chuỗi Sign 730 267 51 Chess 3196 75 37 Mushroom 8124 119 23 T40I10D100k 100000 942 39 © 2020 Trường Đại học Cơng nghiệp thành phố Hồ Chí Minh 20 MỘT THUẬT TỐN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ Các kết thực nghiệm đo lường hiệu suất thời gian thực thuật toán đề xuất WPM so với thuật toán SPMW [15] liệu chuẩn bảng liệt kê trình bày bảng Bảng 2: Kết thực nghiệm CSDL với giá trị min_sup khác CSDL Sign Chess Mushroom T40I10D100k 42 39 36 32 Số mẫu có trọng số 14 56 273 1774 29 552 3980 24550 16 14 12 10 75 65 55 45 31 39 97 263 19 42 min_sup (%) Thời gian thực thi (s) SPMW WPM (1) (2) 0.453 0.296 0.829 0.451 2.721 0.792 7.804 1.728 1.7 0.5 44 Không đủ 41 nhớ 1.766 0.839 2.047 0.854 3.453 1.123 5.989 1.676 0.9 1.10 Không đủ nhớ 1.11 1.75 Tỉ lệ (1)/(2) 1.5 1.8 3.4 4.5 3.4 4.5 6.3 Không xác định 2.1 2.4 3.1 3.6 Không xác định Theo kết thực nghiệm thống kê bảng cho thấy CSDL, ngưỡng hỗ trợ tối thiểu min_sup, tập mẫu thu hai thuật toán Tuy nhiên, hiệu suất thực thi thuật toán WPM mà báo đề xuất nhanh hẳn so với thuật toán SPMW tất trường hợp CSDL thực nghiệm Đặc biệt giá trị min_sup nhỏ thấy rõ khả thực thi nhanh WPM so với SPMW Ví dụ như, với liệu có kích thước nhỏ Sign (730 chuỗi) khả thực thi thuật tốn WPM mà báo đề xuất có thời gian thực thi tốt thuật toán SPMW tất trường hợp Đối với CSDL chuỗi có kích thước lớn Chess (3196 chuỗi) thuật tốn SPMW thực với vài giá trị min_sup định với giá trị min_sup nhỏ khoảng 32% trở xuống thuật tốn SPMW khơng thể thực thi thuật tốn WPM thực thi tốt khoảng 41s Và với CSDL lớn T40I10D100k thuật tốn SPMW khơng thể thực không gian dùng để xây dựng CSDL chiếu tiền tố lớn dẫn đến không đủ nhớ để lưu trữ số lượng CSDL chiếu thuật tốn tạo ra, đó, thuật tốn WPM thực tất trường hợp KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Với gia tăng không ngừng công nghệ thông tin lượng liệu nay, việc khai thác mẫu liệu có giá trị cần thiết Khai thác mẫu có trọng số giúp tìm mẫu có giá trị cao nên áp dụng nhiều lĩnh vực đồng thời giải số khó khăn khơng gian lưu trữ tài ngun thực toán khai thác mẫu tuần với độ hỗ trợ min_sup thấp Bài báo đề xuất thuật toán hiệu để khai thác mẫu có trọng số việc kết hợp giá trị trọng số thực item CSDL chuỗi với độ hỗ trợ chúng Bên cạnh đó, thuật toán sử dụng cấu trúc liệu biểu diễn theo chiều dọc nên thuật toán cần duyệt CSDL lần, tiết kiệm thời gian Hơn nữa, thuật tốn áp dụng khối mã hóa ngun tố bước tính tốn q trình phát triển mẫu làm tăng hiệu suất thực thi thuật toán so với tiếp cận khác Kết thực nghiệm cho thấy thuật toán WPM đề xuất báo có khả thực thi tốt hiệu liệu thực có kích thước từ nhỏ Sign, Chess đến liệu lớn, dày T40I10D100k Trong tương lai, nhóm tác giả hướng tới việc tối ưu thời gian thực thi kết hợp thêm ràng buộc khác để khai thác tập mẫu hiệu đánh giá hiệu suất thuật toán WPM với thuật toán cải tiến cách áp dụng cách tiếp cận vector bit động [17] Bên cạnh đó, nhóm tác giả © 2020 Trường Đại học Công nghiệp Thành phố Hồ Chí Minh MỘT THUẬT TỐN HIỆU QUẢ CHO BÀI TỐN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ 21 hướng đến việc phát triển thuật toán khai thác tập top-k mẫu có trọng số với liệu chuỗi số lĩnh vực cụ thể chuỗi liệu giao dịch, chuỗi liệu khách hàng, chuỗi lịch sử truy cập web, LỜI CẢM ƠN Bài báo thực với hỗ trợ từ quỹ đề tài nghiên cứu khoa học trường đại học Công nghiệp TP HCM, mã số 20/1.6CNTT01 TÀI LIỆU THAM KHẢO [1] R Agrawal, R Srikant Mining sequential patterns, Proceedings of the 11th International Conference on Data Engineering, pp 3–14, 1995 [2] J Ayres, J.E Gehrke, T Yiu, J Flannick Sequential pattern mining using a bitmap representation, Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp 429–435, 2002 [3] V Chezhian V Umadevi, J Celin, S Geetha Hierarchical sequence clustering algorithm fordata mining, Proceedings of the World Congress on Engineering, pp 21 – 25, 2011 [4] P Fournier-Viger, A Gomariz, M Campos, R Thomas Fast vertical mining of sequential patterns using co-occurrence information In: PAKDD’14, pp 40–52, 2014 [5] W Gan, J C.-W Lin, P Fournier-Viger, H.-C Chao, P S Yu A Survey of Parallel Sequential Pattern Mining, ACM Transactions on Knowledge Discovery from Data, vol 13, no 3, 2019 [6] M N Garofalakis, R Rastogi, K Shim SPIRIT: Sequential Pattern Mining with Regular Expression Constraints, Proc of the Very Large Data Bases Conf., Edinburgh, Scotland, UK, pp 223234, 1999 [7] K Gouda, M Hassaan, M.J Zaki PRISM: a primal-encoding approach for frequent sequence mining, Journal of Computer and System Sciences, vol 76, no 1, pp 88–102, 2010 [8] J Han, J Pei, B Mortazavi-Asl, Q Chen, U Dayal, M C Hsu Freespan: Frequent pattern- projected sequential pattern mining, Proceedings of the sixth ACM SIGKDD international conference on Knowledge discovery and data mining, pp 355-359, 2000 [9] J Han, M Kamber Data Mining: Concepts and Techniques 3nd Edition Morgan Kanufmann, 2012 [10] B Huynh, B Vo, V Snasel An efcient method for mining frequent sequential patterns using multi-core processors, Applied Intelligence, vol 46, no 3, pp 703–716, 2017 [11] B Huynh, C Trinh, H Huynh, T.T Van, B Vo, V Snasel An efficient approach for mining sequential patterns using multiple threads on very large databases, Engineering Applications of Artificial Intelligence, vol 74, pp 242–251, 2018 [12] F Masseglia, F Cathala, P Poncelet The PSP Approach for Mining Sequential Patterns, Proceedings of the 2nd European Symposium on Principles of Data Mining and Knowledge Discovery, Nantes, France, pp 176-184, 1998 © 2020 Trường Đại học Cơng nghiệp thành phố Hồ Chí Minh 22 MỘT THUẬT TỐN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ [13] J Pei, J Han, B Mortazavi-Asl, J Wang, H Pinto, Q Chen, U Dayal, M C Hsu Mining sequential patterns by pattern-growth: the prefixspan approach, IEEE Transactions on Knowledge and Data Engineering, vol 16, no 11, pp 1424–1440, 2004 [14] B Shim, K Choi, Y Suh CRM strategies for a small-sized online shopping mall based on association rules and sequential patterns, Expert Systems with Applications, vol 39, pp 7736 – 7742, 2012 [15] A Sirisha, S Pabboju, G Narsimha Efficient mining of sequential patterns in a sequence database with weight constraint, International Journal on Recent and Innovation Trends in Computing and Communication, vol 4, no 6, pp 394 – 397, 2016 [16] R Srikant, R Agrawal Mining sequential patterns: Generalizations and performance improvements, In: 5th Intl Conf Extending Database Technology, pp – 17, 1996 [17] T Van, B Vo, B Le Mining sequential patterns with itemset constraints, Knowledge and Information Systems, vol 57, no 2, pp 311-330, 2018 [18] W Wang, J Yang Mining Sequential Patterns From Large Data Sets, Springer, 2005 [19] U Yun, J Leggett WFIM: Weighted frequent itemset mining with a weight range and a minimum weight, In: Fourth SIAM Int Conf on Data Mining, USA, pp 636–640, 2005 [20] U Yun, J Leggett WSpan: Weighted sequential pattern mining in large sequence databases, 3rd International IEEE Conference on Intelligent Systems, pp 512 – 517, 2006 [21] U Yun A new framework for detecting weighted sequential patterns in large sequence databases, Knowledge – base systems, vol 21, pp 110 – 122, 2008 [22] M.J Zaki SPADE: an efficient algorithm for mining frequent sequences, The Journal of Machine Learning Research, vol 42, pp 31–60, 2001 Ngày nhận bài: 02/10/2019 Ngày chấp nhận đăng: 09/01/2020 © 2020 Trường Đại học Cơng nghiệp Thành phố Hồ Chí Minh ... Chí Minh MỘT THUẬT TOÁN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ 21 hướng đến việc phát triển thuật toán khai thác tập top-k mẫu có trọng số với liệu chuỗi số lĩnh vực...MỘT THUẬT TOÁN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ 15 trọng tính trọng số items Do vậy, mẫu có tầm quan trọng cao (hay trọng số cao) mẫu có giá trị... Chí Minh 20 MỘT THUẬT TOÁN HIỆU QUẢ CHO BÀI TOÁN KHAI THÁC MẪU TUẦN TỰ VỚI RÀNG BUỘC TRỌNG SỐ Các kết thực nghiệm đo lường hiệu suất thời gian thực thuật toán đề xuất WPM so với thuật toán SPMW