1. Trang chủ
  2. » Luận Văn - Báo Cáo

(LUẬN văn THẠC sĩ) nghiên cứu luật kết hợp, thử nghiệm khai phá cơ sở dữ liệu xuất nhập khẩu

83 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 83
Dung lượng 1,71 MB

Cấu trúc

  • CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU (12)
    • 1.1 Khai phá dữ liệu (12)
      • 1.1.1 Khái niệm Khai phá dữ liệu (12)
      • 1.1.2 Quá trình khai phá dữ liệu (13)
      • 1.1.3 Kiến trúc của một hệ thống khai phá dữ liệu (14)
      • 1.1.4 Nhiệm vụ chính trong khai phá dữ liệu (16)
      • 1.1.5 Các phương pháp khai phá dữ liệu (18)
      • 1.1.6 Các cơ sở dữ liệu có thể khai phá (23)
    • 1.2 Ứng dụng của khai phá dữ liệu (24)
    • 1.3 Một số khó khăn và thách thức trong khai phá dữ liệu (25)
      • 1.3.1 Các vấn đề về cơ sở dữ liệu (25)
      • 1.3.2 Một số vấn đề khác (28)
    • 1.4 Kết luận (29)
  • CHƯƠNG 2: LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU (30)
    • 2.1 Bài toán kinh điển dẫn đến việc khai phá luật kết hợp (30)
    • 2.2 Lý thuyết về luật kết hợp (30)
      • 2.2.1 Luật kết hợp (31)
      • 2.2.2 Một số tính chất của luật kết hợp (34)
    • 2.3 Đặc tả bài toán khai phá luật kết hợp (35)
    • 2.4 Một số thuật toán khai phá luật kết hợp (36)
      • 2.4.1 Tìm tập mục phổ biến (Pha 1) (36)
      • 2.4.2 Sinh các luật từ các tập mục phổ biến (45)
    • 2.5 Một số hướng tiếp cận trong khai phá luật kết hợp (47)
      • 2.5.1 Luật kết hợp nhị phân (binary association rule hoặc boolean (47)
      • 2.5.2 Luật kết hợp có thuộc tính số và thuộc tính danh mục (quantitative (47)
      • 2.5.4 Luật kết hợp nhiều mức (multi-level association rules) (47)
      • 2.5.5 Luật kết hợp mờ (fuzzy association rule) (48)
      • 2.5.6 Luật kết với thuộc tính đƣợc đánh trọng số (association rule with (48)
      • 2.5.7 Luật kết hợp song song (parallel mining of association rules) (48)
    • 2.6 Một số giải pháp triển khai khai phá luật kết hợp (49)
      • 2.6.1 Xây dựng chương trình dựa thuật toán Apriori (49)
      • 2.6.2 Sử dụng công cụ Weka (51)
      • 2.6.3 Sử dụng công cụ Business Intelligence Development Studio (BIDS)45 (54)
    • 2.7 Kết luận (55)
  • CHƯƠNG 3: THỬ NGHIỆM KHAI PHÁ LUẬT KẾT HỢP CHO CƠ SỞ DỮ LIỆU XUẤT NHẬP KHẨU (56)
    • 3.1 Giới thiệu bài toán (56)
    • 3.2 Mô tả dữ liệu (57)
      • 3.2.1 Mô hình dữ liệu (58)
      • 3.2.2 Danh sách các bảng và mô tả (59)
    • 3.3 Phân tích dữ liệu (70)
    • 3.4 Lựa chọn giải pháp (71)
    • 3.5 Tiền xử lý dữ liệu (71)
    • 3.6 Khai phá cơ sở dữ liệu xuất nhập khẩu với BIDS (72)
      • 3.6.1 Tạo một Mining Model structure (72)
      • 3.6.2 Hiệu chỉnh tham số cho mô hình (74)
      • 3.6.3 Khám phá Mining Models (74)
    • 3.7 Đánh giá kết quả (80)
    • 3.8 Kết luận (80)
  • KẾT LUẬN (81)
  • TÀI LIỆU THAM KHẢO (0)

Nội dung

TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

Khai phá dữ liệu

1.1.1 Khái niệm Khai phá dữ liệu

Khai phá dữ liệu là một khái niệm ra đời vào những năm cuối của thập kỷ

Khai phá dữ liệu là quá trình tìm kiếm và khám phá các mối liên hệ giữa dữ liệu trong cơ sở dữ liệu (CSDL), giúp phát hiện các mẫu và mô hình ẩn Đây là giai đoạn quan trọng nhất trong việc rút trích thông tin mới và tri thức tiềm ẩn, phục vụ cho việc mô tả và dự đoán Những tri thức này đóng vai trò hỗ trợ quyết định và điều hành trong các lĩnh vực khoa học và kinh doanh.

Khai phá dữ liệu là một lĩnh vực quan trọng trong việc khám phá tri thức, với nhiều định nghĩa từ các tác giả khác nhau Ferruzza định nghĩa khai phá dữ liệu là tập hợp các phương pháp nhằm chỉ ra sự khác biệt trong các mối quan hệ và mẫu chưa biết trong dữ liệu Parsaye nhấn mạnh rằng đây là quá trình tìm kiếm các mẫu thông tin bất ngờ trong cơ sở dữ liệu lớn để hỗ trợ quyết định Fayyad cho rằng khai phá tri thức là quá trình nhận ra những mẫu dữ liệu có giá trị, mới mẻ và hữu ích Cuối cùng, Tom Mitchell mô tả khai phá dữ liệu là việc sử dụng dữ liệu lịch sử để khám phá các quy tắc và cải thiện quyết định trong tương lai.

Khai phá dữ liệu là quá trình khám phá tri thức tiềm ẩn trong cơ sở dữ liệu (CSDL) Quá trình này bao gồm việc lọc và sản sinh những tri thức hoặc mẫu tiềm ẩn, giúp phát hiện những thông tin hữu ích từ các CSDL lớn.

1.1.2 Quá trình khai phá dữ liệu

Quá trình khai phá dữ liệu sẽ tiến hành qua 6 giai đoạn nhƣ hình 1.1:

Hình 1.1 Quá trình khai phá dữ liệu

Quá trình chuyển đổi từ kho dữ liệu thô đến tri thức được chiết xuất là một nhiệm vụ phức tạp Mặc dù lý thuyết có vẻ đơn giản, thực tế lại gặp nhiều khó khăn, bao gồm việc quản lý các tập dữ liệu và cần phải lặp đi lặp lại toàn bộ quy trình để đạt được kết quả mong muốn.

Tập hợp dữ liệu là bước khởi đầu quan trọng trong quá trình khai phá dữ liệu, nơi dữ liệu được thu thập từ cơ sở dữ liệu, kho dữ liệu và các nguồn ứng dụng Web khác nhau.

2 Trích lọc dữ liệu (Selection) Ở giai đoạn này dữ liệu đƣợc lựa chọn hoặc phân chia theo một số tiêu chuẩn nào đó, ví dụ chọn tất cả những người có tuổi đời từ 25 – 35 và có trình độ đại học

3 Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu (Cleansing, Pre-processing and Preparation)

Giai đoạn thứ ba trong quá trình khai phá dữ liệu thường dễ bị sao lãng, nhưng thực sự lại rất quan trọng Nhiều lỗi thường gặp trong việc gom dữ liệu là do tính không đủ chặt chẽ và logic, dẫn đến việc dữ liệu chứa các giá trị vô nghĩa và thiếu khả năng kết nối.

Trong giai đoạn xử lý dữ liệu, việc xử lý các dạng dữ liệu không chặt chẽ là rất quan trọng, đặc biệt khi tuổi dữ liệu là 673 Những dữ liệu này thường được xem là thông tin dư thừa và không có giá trị Nếu không tiến hành làm sạch, tiền xử lý và chuẩn bị trước, dữ liệu này có thể dẫn đến những kết quả sai lệch nghiêm trọng.

4 Chuyển đổi dữ liệu (Transformation)

Giai đoạn chuyển đổi dữ liệu là bước quan trọng, trong đó dữ liệu được tổ chức lại để có thể sử dụng và điều khiển hiệu quả Dữ liệu sau khi được chuyển đổi sẽ phù hợp với mục đích khai thác, giúp tối ưu hóa quy trình phân tích và ứng dụng.

5 Phát hiện và trích mẫu dữ liệu (Pattern Extraction and Discovery) Đây là bước mang tính tư duy trong khai phá dữ liệu Ở giai đoạn này nhiều thuật toán khác nhau đã đƣợc sử dụng để trích ra các mẫu từ dữ liệu Thuật toán thường dùng là nguyên tắc phân loại, nguyên tắc kết hợp hoặc các mô hình dữ liệu tuần tự, v.v

6 Đánh giá kết quả mẫu (Evaluation of Result) Đây là giai đoạn cuối trong quá trình khai phá dữ liệu Ở giai đoạn này, các mẫu dữ liệu đƣợc chiết xuất ra bởi phần mềm khai phá dữ liệu Không phải bất cứ mẫu dữ liệu nào cũng đều hữu ích, đôi khi nó còn bị sai lệch Vì vậy, cần phải ƣu tiên những tiêu chuẩn đánh giá để chiết xuất ra các tri thức (Knowledge) cần chiết xuất ra

Trong bài viết này, chúng ta đã khám phá 6 giai đoạn trong quy trình khai phá dữ liệu, với giai đoạn thứ 5, hay còn gọi là Data Mining, là giai đoạn được chú ý nhiều nhất.

1.1.3 Kiến trúc của một hệ thống khai phá dữ liệu

Gồm các thành phần nhƣ hình sau

Hình 1.2 Kiến trúc hệ thống khai phá dữ liệu

Các thành phần đƣợc mô tả nhƣ sau:

1 Máy chủ cơ sở dữ liệu hay máy chủ kho dữ liệu (Database or warehouse server)

Máy chủ này có trách nhiệm lấy dữ liệu thích hợp dựa trên những yêu cầu khai phá của người dùng

2 Cơ sở tri thức (Knowledge base) Đây là miền tri thức đƣợc dùng để tìm kiếm hay đánh giá độ quan trọng của các hình mẫu kết quả

3 Máy khai phá dữ liệu (Data mining engine)

Một hệ thống khai phá dữ liệu cần được trang bị một loạt các mô-đun chức năng để thực hiện các nhiệm vụ như đặc trưng hóa, kết hợp, phân lớp, phân cụm và phân tích sự tiến hóa.

4 Modul đánh giá mẫu (Pattern evaluation)

Bộ phận này kết nối với các mô-đun khai phá dữ liệu để tìm kiếm các mẫu quan trọng Ngoài ra, mô-đun đánh giá mẫu có thể được tích hợp vào mô-đun khai phá tùy thuộc vào cài đặt của phương pháp khai phá được sử dụng.

Làm sạch và tích hợp dữ liệu

Máy chủ cơ sở dữ liệu hay kho dữ liệu

Cơ sở tri thức Máy khai phá dữ liệu Đánh giá mẫu Giao diện đồ họa cho người dùng

5 Giao diện đồ họa cho người dùng (Graphical user interface)

Người dùng tương tác với hệ thống thông qua giao diện này bằng cách xác định yêu cầu khai thác hoặc nhiệm vụ cụ thể, đồng thời cung cấp thông tin hỗ trợ để tìm kiếm và thực hiện khai thác trên các kết quả trung gian.

1.1.4 Nhiệm vụ chính trong khai phá dữ liệu

Ứng dụng của khai phá dữ liệu

Khai phá dữ liệu là một công cụ quan trọng được áp dụng trong nhiều lĩnh vực khác nhau để tận dụng nguồn dữ liệu phong phú từ các hệ thống thông tin Tùy thuộc vào đặc thù của từng lĩnh vực, các phương pháp khai thác dữ liệu sẽ có những cách tiếp cận riêng biệt.

Ngân hàng: Xây dựng mô hình dự báo rủi ro tín dụng; tìm kiếm tri thức, quy luật của thị trường chứng khoán và đầu tư bất động sản

Thương mại điện tử đang ngày càng phát triển, yêu cầu các doanh nghiệp tìm hiểu và định hướng chiến lược để thúc đẩy giao tiếp hiệu quả với khách hàng Việc phân tích hành vi mua sắm trực tuyến giúp nhận diện nhu cầu và sở thích của người tiêu dùng, từ đó cung cấp thông tin tiếp thị phù hợp với từng loại khách hàng.

Marketing: Phân tích nhu cầu khách hàng dựa trên mẫu dữ liệu mua bán hang từ đó xác định chiến lƣợc kinh doanh, quảng cáo, kế hoạch sản xuất …

Khai phá dữ liệu đóng vai trò quan trọng trong việc giải quyết các vấn đề phức tạp tại những ngành công nghiệp kỹ thuật cao, như tìm kiếm mỏ dầu qua ảnh viễn thám và cảnh báo hỏng hóc trong hệ thống sản xuất Các kỹ thuật này đã được áp dụng hiệu quả để dự đoán tải điện năng cho các công ty cung cấp điện, lưu lượng viễn thông cho các nhà mạng, mức tiêu thụ sản phẩm cho các nhà sản xuất, và giá trị sản phẩm trên thị trường cho các công ty tài chính.

Khai phá dữ liệu được ứng dụng rộng rãi trong việc giải quyết các vấn đề xã hội, bao gồm phân tích hiệu quả phòng chống và điều trị bệnh, đánh giá tác hại của ma túy, phát hiện tội phạm và nâng cao an ninh xã hội Sự thành công trong việc áp dụng các kỹ thuật này đã mang lại nhiều lợi ích thiết thực cho các hoạt động hàng ngày trong cuộc sống.

Một số khó khăn và thách thức trong khai phá dữ liệu

Việc nghiên cứu và ứng dụng kỹ thuật khai phá dữ liệu gặp phải nhiều khó khăn, nhưng điều này không có nghĩa là không thể giải quyết Để khai thác dữ liệu hiệu quả, cần xem xét và tìm ra các phương án giải quyết những vấn đề tồn tại Dưới đây là một số khó khăn chính trong quá trình này.

1.3.1 Các vấn đề về cơ sở dữ liệu Đầu vào chủ yếu của một hệ thống khai thác tri thức là các dữ liệu thô; cơ sở phát sinh trong khai phá dữ liệu chính là từ đây Các dữ liệu trong thực tế thường động, không đầy đủ, lớn và bị nhiễu Trong những trường hợp khác, người ta không biết cơ sở dữ liệu có chứa các thông tin cần thiết cho việc khai thác hay không và làm thế nào để giải quyết với sự dƣ thừa những thông tin không thích hợp này

Dữ liệu lớn đang trở thành xu hướng phổ biến với các cơ sở dữ liệu có hàng triệu bản ghi và kích thước lên đến terabytes Hiện nay, các phương pháp xử lý dữ liệu bao gồm việc thiết lập ngưỡng cho cơ sở dữ liệu, lấy mẫu, áp dụng các phương pháp xấp xỉ và xử lý song song (Agrawal et al, Holsheimer et al).

Kích thước lớn của cơ sở dữ liệu không chỉ liên quan đến số lượng bản ghi mà còn số lượng các trường, dẫn đến sự gia tăng độ phức tạp của bài toán Tập dữ liệu lớn làm tăng không gian tìm kiếm mô hình suy diễn và khả năng phát hiện các mẫu giả Để khắc phục, cần giảm kích thước tác động của bài toán và áp dụng tri thức biết trước nhằm xác định các biến không phù hợp.

Dữ liệu động là một đặc điểm quan trọng của hầu hết các cơ sở dữ liệu, với nội dung thay đổi liên tục theo thời gian Việc khai thác dữ liệu bị ảnh hưởng bởi thời điểm quan sát, ví dụ trong cơ sở dữ liệu tình trạng bệnh nhân, một số giá trị như cân nặng và chiều cao thay đổi liên tục, trong khi những giá trị khác như nhịp đập của mạch chỉ có giá trị quan sát gần nhất Sự thay đổi nhanh chóng của dữ liệu có thể làm mất giá trị các mẫu khai thác trước đó Hơn nữa, các biến trong cơ sở dữ liệu cũng có thể bị thay đổi, xóa hoặc tăng lên theo thời gian Để giải quyết vấn đề này, cần áp dụng các giải pháp tăng trưởng nhằm nâng cấp các mẫu và coi những thay đổi như cơ hội để tìm kiếm các mẫu mới.

Tính không thích hợp của dữ liệu là một yếu tố quan trọng trong khai thác dữ liệu, khi mà các mục dữ liệu không còn phù hợp với trọng tâm hiện tại Độ phù hợp cũng liên quan đến tính ứng dụng của thuộc tính trong một tập con của cơ sở dữ liệu, ví dụ như trường số tài khoản Nostro không áp dụng cho các tác nhân.

Giá trị bị thiếu trong dữ liệu có thể ảnh hưởng đáng kể đến quá trình khai thác dữ liệu Sự có mặt hoặc vắng mặt của các thuộc tính dữ liệu phù hợp có thể gây khó khăn trong việc xác định giá trị của chúng Khi dữ liệu bị thiếu, nó có thể được xem như một điều kiện, trong đó thuộc tính bị mất được coi là một giá trị trung gian và là giá trị không xác định.

Việc thiếu các trường trong cơ sở dữ liệu có thể dẫn đến việc các dữ liệu giá trị bị coi là lỗi, ảnh hưởng đến quá trình khai phá dữ liệu Cần quan sát toàn bộ thuộc tính có thể sử dụng để giải quyết bài toán, nếu không sẽ có lỗi trong dữ liệu Trong hệ thống chẩn đoán bệnh sốt rét, việc có các bản ghi bệnh nhân với triệu chứng tương tự nhưng chẩn đoán khác nhau cho thấy lỗi trong dữ liệu Đặc biệt trong cơ sở dữ liệu kinh doanh, các thuộc tính quan trọng có thể bị thiếu nếu dữ liệu không được chuẩn bị kỹ lưỡng Độ nhiễu và không chắc chắn trong dữ liệu cũng phụ thuộc vào loại dữ liệu của các giá trị cho phép, từ số thực, số nguyên đến chuỗi và giá trị định danh Tính chính xác của dữ liệu là yếu tố quan trọng trong khai phá, ví dụ như việc đo nhiệt độ cơ thể yêu cầu độ chính xác cao hơn trong phân tích xu hướng, do đó cần có độ nhiễu tối thiểu trong dữ liệu đầu vào để đảm bảo độ tin cậy trong chẩn đoán.

Mối quan hệ phức tạp giữa các trường trong cơ sở dữ liệu đòi hỏi các thuật toán phải khai thác hiệu quả các thuộc tính và giá trị có cấu trúc phân cấp Ban đầu, kỹ thuật khai phá dữ liệu chỉ tập trung vào các bản ghi với giá trị thuộc tính đơn giản, nhưng hiện nay, nỗ lực đang được hướng tới việc phát triển các kỹ thuật để rút ra mối quan hệ giữa các biến phức tạp này.

1.3.2 Một số vấn đề khác

Quá phù hợp (Overfitting) xảy ra khi một thuật toán tối ưu hóa các tham số dựa trên một tập dữ liệu hữu hạn, dẫn đến việc mô hình chỉ hoạt động hiệu quả với dữ liệu đã sử dụng mà không thể tổng quát hóa cho dữ liệu mới Để khắc phục tình trạng này, các phương pháp như đánh giá chéo (cross-validation) và áp dụng các biện pháp thống kê khác là cần thiết Vấn đề liên quan đến overfitting cũng xuất hiện khi một hệ thống kiểm tra quá nhiều mô hình, ví dụ, nếu kiểm tra N mô hình với mức độ quan trọng 0,001, có thể sẽ có N/1000 mô hình được chấp nhận là quan trọng chỉ do dữ liệu ngẫu nhiên Để giải quyết vấn đề này, việc sử dụng các phương pháp điều chỉnh thống kê như điều chỉnh Bonferroni cho các kiểm tra độc lập là rất hiệu quả.

Khả năng biểu đạt của mẫu là rất quan trọng trong nhiều ứng dụng, nhằm đảm bảo thông tin dễ hiểu cho con người Các giải pháp thường bao gồm việc sử dụng đồ họa, xây dựng cấu trúc luật với đồ thị có hướng (Gaines), và biểu diễn bằng ngôn ngữ tự nhiên (Matheus et al.), cùng với các kỹ thuật khác để biểu diễn tri thức và dữ liệu một cách hiệu quả.

Sự tương tác giữa người sử dụng và tri thức sẵn có là yếu tố quan trọng trong khai phá dữ liệu Nhiều công cụ hiện nay thiếu tính tương tác và không dễ dàng tích hợp với các tri thức đã có Việc áp dụng tri thức miền giúp cải thiện quy trình này Đã có nhiều biện pháp được đề xuất, chẳng hạn như sử dụng cơ sở dữ liệu suy diễn để phát hiện tri thức, từ đó hướng dẫn cho quá trình khai phá dữ liệu Ngoài ra, việc sử dụng phân bố và xác suất dữ liệu trước đó cũng đóng vai trò như một dạng mã hóa tri thức có sẵn.

Kết luận

Việc thu thập và lưu trữ dữ liệu khổng lồ đã tạo ra nhu cầu cấp thiết về các kỹ thuật và công cụ mới để chuyển đổi dữ liệu thành tri thức hữu ích Khai phá dữ liệu (KPDL) nhằm phát hiện tri thức mới phục vụ hoạt động của con người đã trở thành một lĩnh vực quan trọng trong Công nghệ thông tin Chương này giới thiệu các khái niệm và phương pháp khai phá dữ liệu phổ biến, các thành phần chính của một giải thuật khai phá dữ liệu, cùng với những thành tựu và thách thức trong lĩnh vực này Trong số các phương pháp, khai phá các luật kết hợp đang được nghiên cứu và quan tâm rộng rãi.

LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU

Bài toán kinh điển dẫn đến việc khai phá luật kết hợp

Bài toán giỏ mua hàng trong siêu thị nghiên cứu hành vi tiêu dùng của khách hàng thông qua việc lựa chọn các mặt hàng như "bánh mì" và "sữa" Mục tiêu là xác định các mặt hàng thường được mua cùng nhau mà không cần biết danh tính khách hàng cụ thể Thông tin này giúp nhà quản lý điều chỉnh nhập hàng và sắp xếp các mặt hàng gần nhau, hoặc cung cấp gói sản phẩm, nhằm nâng cao trải nghiệm mua sắm và giảm thời gian tìm kiếm cho khách hàng.

Khai phá luật kết hợp là quá trình phân tích mối quan hệ giữa các sự kiện xảy ra đồng thời trong một tập dữ liệu lớn Mục tiêu chính của phương pháp này là phát hiện các tập con có sự xuất hiện đồng thời trong một khối lượng giao dịch lớn của cơ sở dữ liệu đã cho.

Lý thuyết về luật kết hợp

Kể từ khi ra mắt vào năm 1993, bài toán khai thác luật kết hợp đã thu hút sự chú ý đáng kể từ các nhà khoa học Hiện nay, việc khai thác các luật này vẫn là một trong những phương pháp phổ biến nhất trong lĩnh vực khám phá tri thức và khai thác dữ liệu (KDD: Knowledge Discovery and Data Mining).

Một cách ngắn gọn, một luật kết hợp là một biểu thức có dạng: X => Y, trong đó X và Y là tập các trường gọi là item

Trong phần này, chúng ta sẽ khám phá các định nghĩa và tính chất liên quan đến luật cũng như luật kết hợp, đồng thời tìm hiểu ý nghĩa sâu sắc của luật kết hợp trong bối cảnh pháp lý.

Luật kết hợp là một lĩnh vực quan trọng trong khai thác dữ liệu, giúp phát hiện các mối liên hệ giữa các mục dữ liệu trong cơ sở dữ liệu Việc áp dụng luật kết hợp không chỉ nâng cao khả năng phân tích dữ liệu mà còn hỗ trợ ra quyết định chính xác hơn trong kinh doanh.

Tập I = {I1, I2, , Im} bao gồm m khoản mục, còn được gọi là các thuộc tính Các phần tử trong I là phân biệt nhau Một tập con X ⊆ I được gọi là tập mục (itemset) Nếu số lượng phần tử trong X bằng k (tức là |X| = k), thì X được gọi là k-itemset.

Một giao dịch (transaction) T được định nghĩa là một tập con của các khoản mục trong I (T ⊆ I) Các giao dịch không được trùng lặp và có thể được mở rộng tính chất này Trong các thuật toán sau này, giả thiết rằng các khoản mục trong một giao dịch và trong tất cả các tập mục khác có thể được sắp xếp theo thứ tự từ điển của các item.

CSDL D chứa n giao dịch, mỗi giao dịch được gán một định danh duy nhất (TID) Một giao dịch T thuộc D hỗ trợ cho tập X nếu nó bao gồm tất cả các item của tập này.

X, nghĩa là X  T, trong một số trường hợp người ta dùng ký hiệu T(X) để chỉ tập các giao dịch hỗ trợ cho X Kí hiệu support(X) (hoặc supp(X), s(X)) là tỷ lệ phần trăm của các giao dịch hỗ trợ X trên tổng các giao dịch trong D, nghĩa là: supp(X) =  

Ví dụ về cơ sở dữ liệu D (dạng giao dịch): I = {A, B, C, D, E}, T = {1, 2,

3, 4, 5, 6} Thông tin về các giao dịch cho ở bảng sau: Định danh giao dịch

Bảng 2.1 Ví dụ về một cơ sở dữ liệu dạng giao dịch - D

Ta có: supp( {A }) = 4/6 (%)= 66.67 %; supp({ABDE}) = 3/6 P%; supp({ABCDE}) = 1/6 = 16.67%;

Tập phổ biến (frequent itemset):

Support tối thiểu (minsup) là một giá trị do người sử dụng xác định trong khoảng (0, 1] Tập mục X được coi là một tập phổ biến (frequent itemset) nếu supp(X) đạt hoặc vượt qua minsup Các frequent itemset thường được sử dụng trong các thuật toán phân tích, trong khi những tập không đạt yêu cầu này được xem là không đáng quan tâm Trong các phần trình bày tiếp theo, chúng tôi sẽ sử dụng các cụm từ như "X có support tối thiểu" hoặc "X không có support tối thiểu" để chỉ ra việc X có thỏa mãn điều kiện support(X) ≥ minsup hay không.

Ví dụ: Với cơ sở dữ liệu D cho ở bảng 1, và giá trị ngƣỡng minsupp 50% sẽ liệt kê tất cả các tập phổ biến (frequent-itemset) nhƣ sau:

Các tập mục phổ biến Độ hỗ trợ (supp) tương ứng

A, C, D, AB, AE, BC, BD, ABE 67% (4/6)

AD, CE, DE, ABD, ADE, BCE, BDE 50% (3/6)

Bảng 2.2 Các tập phổ biến trong CSDL ở bảng 1 với độ hỗ trợ tối thiểu 50%

Một số tính chất (TC) liên quan đến các frequent itemset:

TC1 support cho tất cả các subset: Nếu A B, A, B là các itemset thì supp(A)  supp(B) vì tất cả các giao dịch của D support B thì cũng support A

TC2 Nếu một item A không có support tối thiểu trên D nghĩa là support(A) < minsupp thì một superset B của A sẽ không phải là một frequent vì support(B)  support(A) < minsup

TC3 Nếu item B là frequent trên D, nghĩa là support(B)  minsup thì mọi subset A của B là frequent trên D vì support(A)  support(B) > minsup Định nghĩa luật kết hợp:

Một luật kết hợp có dạng R: X  Y, trong đó X, Y là các itemset, X, Y 

I và X Y =  X đƣợc gọi là tiên đề và Y đƣợc gọi là hệ quả của luật

Luật X  Y tồn tại một độ hỗ trợ support - supp Supp(X  Y) đƣợc định nghĩa là khả năng mà tập giao dịch hỗ trợ cho các thuộc tính có trong cả X lẫn Y, nghĩa là:

Luật X  Y tồn tại một độ tin cậy c (confidence - conf) Conf c đƣợc định nghĩa là khả năng giao dịch T hỗ trợ X thì cũng hỗ trợ Y Nói cách khác c biểu thị số phần trăm giao dịch có chứa luôn A trong số những giao dịch có chứa

Ta có công thức tính conf c nhƣ sau: conf(X  Y) = p(Y  T| X  T) ) ( sup

Ta nói rằng, luật X Y là thoả trên D nếu với một support tối thiểu minsup và một ngưỡng confidence tối thiểu minconf cho trước nào đó mà:

Support(X  Y) ≥ minsup và confidence(X  Y) ≥ minconf

Khi xét một luật XY trên tập dữ liệu D, cả X và Y cần phải là các Frequent Itemset Để đánh giá tính hợp lệ của luật này, cần xem xét cả support và confidence, vì một luật có thể đạt confidence 100% nhưng vẫn không đủ điều kiện.

> minconf nhƣng có thể là nó không đạt support tối thiểu minsup

2.2.2 Một số tính chất của luật kết hợp

Trước hết ta phải giả sử rằng với luật X  Y, X có thể là rỗng, còn Y phải luôn khác rỗng và X  Y vì nếu không thì: confidence(XY) = 1 support(X)

Ta có các tính chất sau:

1) Nếu X  Z và YZ là thoả trên D, thì không nhất thiết là XYZ Để ý đến trường hợp X  Y =  và các giao dịch trên D hỗ trợ Z nếu và chỉ nếu chúng hỗ trợ X hoặc hỗ trợ Y Khi đó, support(XY) = 0 và cofidence(XY) = 0

Tương tự ta cũng có: Nếu XY và XZ không thể suy ra XYZ

2) Nếu luật XYZ là thoả trên D thì XZ và YZ có thể không thoả trên D

Khi Z chỉ xuất hiện trong một giao dịch nếu cả X và Y đều có mặt, điều này có nghĩa là support(X∪Y) = support(Z) Nếu support của X và Y lớn hơn support của (X∪Y), thì hai luật trên sẽ không đáp ứng yêu cầu về confidence Tuy nhiên, nếu X ⇒ (Y∪Z) thỏa mãn trên D, ta có thể suy ra rằng X ⇒ Y và X ⇒ Z cũng thỏa mãn trên D, vì support(XY) ≥ support(XYZ) và support(XZ) ≥ support(XYZ).

3) Nếu XY và YZ là thoả trên D thì không thể khẳng định rằng

Giả sử T(X)T(Y)  T(Z) và confidence(XY) = confidence(YZ) minconf Khi đó ta có confidence(XZ) = minconf 2 < minconf vì minconf 1), mỗi giai đoạn gồm hai pha: đầu tiên, các (k-1)-itemset từ tập L k-1 được sử dụng để sinh ra các ứng viên C k thông qua hàm apriori_gen; sau đó, cơ sở dữ liệu D sẽ được quét để tính độ hỗ trợ cho từng ứng viên trong C k Để tối ưu hóa việc đếm, cần có giải pháp hiệu quả nhằm xác định các ứng viên.

Ck xuất hiện trong một giao dịch T đã cho và quá trình này sẽ tiếp tục cho đến khi không tìm thấy tập phổ biến nào mới Để nghiên cứu các thuật toán, giả định rằng các item trong mỗi giao dịch được sắp xếp theo thứ tự từ điển Mỗi bản ghi của cơ sở dữ liệu D có thể được coi là một cặp , trong đó TID là định danh cho giao dịch Các item trong một itemset cũng được lưu theo thứ tự từ điển, nghĩa là nếu ký hiệu k item biểu thị một k-itemset c, thì c[1], c[2], sẽ thể hiện thứ tự của các item trong itemset đó.

Trong một hệ thống lưu trữ, nếu c[k] thì c[1] < c[2] < … < c[k] Khi c = X.Y và Y là một m-itemset, Y được gọi là m-extension (mở rộng) của X Mỗi itemset sẽ có một trường support-count, chứa số đếm độ hỗ trợ cho tập mục đó.

Vấn đề sinh tập ứng viên (candidate) của Apriori dùng hàm apriori_gen:

The apriori_gen function, with L k-1 as its argument (the set of large (k-1)-itemsets), returns a superset, which includes all large k-itemsets The following diagram illustrates the algorithm for this function.

Dữ liệu vào: tập mục phổ biến L k-1 có kích thước (k-1)

Dữ liệu ra: tập ứng cử viên C k Phương pháp: function apriori-gen(L k-1 : tập mục phổ biến có kích thước k-1) begin

The algorithm begins by iterating through each pair of itemsets \( L_1 \) and \( L_2 \) from the previous level \( L_{k-1} \) It checks if all corresponding elements of \( L_1 \) and \( L_2 \) are equal If they match, it combines \( L_1 \) and \( L_2 \) to form a new candidate \( c \) The candidate is then evaluated for infrequent subsets; if it contains any, it is removed Otherwise, the candidate \( c \) is added to the collection of candidates \( C_k \) Finally, the algorithm returns the set of candidates \( C_k \).

The function `has_infrequent_subset` checks whether a candidate k-item has an infrequent subset of (k-1)-items It takes two parameters: the candidate k-item and a list of frequent (k-1)-items This function is essential for identifying non-frequent patterns in data mining processes.

//sử dụng tập mục phổ biến trước for (mỗi tập con (k-1)-item s  c) do if s  L k-1 then return TRUE; end

Có thể mô tả hàm apriori_gen gồm 2 bước sau:

Bước nối (join step) là quá trình tìm kiếm L k, tập k-item ứng viên được tạo ra bằng cách kết nối L k-1 với chính nó, dẫn đến kết quả là C k Giả sử L 1 và L 2 thuộc L k-1, ký hiệu L i j đại diện cho mục thứ j trong L i Điều kiện để thực hiện bước nối là các tập mục trong giao dịch phải có thứ tự, và các thành phần L k-1 sẽ được kết nối nếu chúng có chung (k-2)-item đầu tiên.

Bước tỉa (prune step) là quá trình xác định tập Ck, bao gồm các ứng cử viên k-item, trong đó tất cả các k-item phổ biến được chứa trong Ck Để tính độ hỗ trợ cho mỗi ứng cử viên trong Ck và nhận được Lk, thuật toán sẽ duyệt lại cơ sở dữ liệu một lần nữa Để giải quyết những khó khăn trong quá trình này, thuật toán Apriori áp dụng các tính chất đặc trưng.

1 - Tất cả các tập con khác rỗng của một tập mục phổ biến là phổ biến;

2 - Nếu L là tập mục không phổ biến thì mọi tập chứa nó không phổ biến

Trong bước này, chúng ta cần loại bỏ tất cả các k-itemset c thuộc Ck mà tồn tại một (k-1)-itemset không có trong Lk-1 Điều này có thể được giải thích như sau: giả sử s là một (k-1)-itemset của c nhưng không có trong Lk-1, thì sup(s) sẽ nhỏ hơn minsup.

Mặt khác, nếu c là một tập con, thì sup(c) phải nhỏ hơn sup(s) và lớn hơn minsup Do đó, c không thể là một tập phổ biến và cần được loại bỏ khỏi Ck Việc kiểm tra các tập con (k-1)-itemset có thể thực hiện nhanh chóng bằng cách duy trì một cây băm cho tất cả các tập mục phổ biến đã tìm thấy.

Ví dụ: L3 = {abc, abd, acd, ace, bcd}

Bước nối: L3*L3 ta có: abcd từ abc và abd; acde từ acd và ace Bước tỉa: acde bị tỉa vì ade không có trong L3 Vậy C4={abcd}

Hàm subset(C k , T) xác định tất cả các tập mục ứng viên trong C k có mặt trong giao dịch T Quy trình bắt đầu từ nút gốc; nếu nút gốc là nút lá, ta kiểm tra các tập mục trong nút lá đó có nằm trong giao dịch T hay không Nếu nút gốc là nút trong và là kết quả của việc áp dụng hàm băm cho mục thứ i của giao dịch T, ta tiếp tục áp dụng hàm băm cho mục thứ i + 1 cho đến khi gặp nút lá Thủ tục này được thực hiện theo phương pháp đệ quy.

Thuật toán Apriori, với n là độ dài lớn nhất của tập mục, cần duyệt toàn bộ cơ sở dữ liệu n + 1 lần, dẫn đến độ phức tạp O(n*L), trong đó L là kích thước cơ sở dữ liệu Thêm vào đó, việc thay đổi độ hỗ trợ tối thiểu minsup yêu cầu thuật toán phải thực hiện lại từ đầu, gây tốn thời gian đáng kể.

Ví dụ: Giả sử tập các item I = {A, B, C, D, E} và cơ sở dữ liệu giao dịch:

D = {, , , } Với minsup = 0.5 (tức tương đương 2 giao dịch) Khi thực hiện thuật toán Apriori trên ta có hình 2 1:

Hình 2.1 Minh họa thuật toán Apriori tìm tập mục phổ biến

2.4.1.2 Các thuật toán thuộc họ Apriori

Một số thuật toán thuộc họ Apriori đƣợc đề xuất để tìm tập mục phổ biến

Thuật toán AprioriTID là một sự mở rộng của giải thuật Apriori, tập trung vào việc cải thiện hiệu suất khai thác quy tắc kết hợp Thay vì sử dụng cơ sở dữ liệu thô, AprioriTID biểu diễn các giao tác thông qua các ứng viên hiện tại, giúp tối ưu hóa quá trình tìm kiếm và phân tích dữ liệu.

C’ k = ; for tất cả t  C’ k-1 do begin

// xác định tập ứng viên trong C k chứa trong giao dịch với định //danh t Tid (Transaction Code)

C t = c  C k | (c-c[k])  t.Set_of_ItemSets ^ (c-c[k-1] t.Set_of_ItemSets for những ứng viên c  C t do c.count ++; if (C t ) then C’ k += < t.Tid, C t > end

Một số hướng tiếp cận trong khai phá luật kết hợp

Lĩnh vực khai phá luật kết hợp cho đến nay đã đƣợc nghiên cứu và phát triển theo nhiều hướng khác nhau

2.5.1 Luật kết hợp nhị phân (binary association rule hoặc boolean association rule)

Luật kết hợp nhị phân là nghiên cứu đầu tiên trong lĩnh vực luật kết hợp, với hầu hết các nghiên cứu ban đầu tập trung vào loại luật này Trong luật kết hợp nhị phân, các thuộc tính chỉ được xem xét dựa trên sự xuất hiện hay không xuất hiện trong các giao tác của cơ sở dữ liệu, mà không chú trọng đến các yếu tố khác.

Thuật toán Apriori và các biến thể của nó là những phương pháp phổ biến trong khai phá dữ liệu, giúp xác định mức độ xuất hiện của các sản phẩm, ví dụ như việc khách hàng A mua 10 sản phẩm B hoặc chỉ 1 sản phẩm B Đây là dạng luật đơn giản, và các luật phức tạp hơn có thể được chuyển đổi về dạng này thông qua các kỹ thuật như rời rạc hóa và mờ hóa.

Ví dụ về dạng luật này: “Nếu khách hàng mua sản phẩm A thì sẽ mua sản phẩm B với độ hỗ trợ 20% và độ tin cậy 80%”

2.5.2 Luật kết hợp có thuộc tính số và thuộc tính danh mục (quantitative and categorial association rule)

Cơ sở dữ liệu thực tế chứa nhiều loại thuộc tính đa dạng như nhị phân, số và danh mục Để phát hiện luật kết hợp giữa thuộc tính số và thuộc tính danh mục, các nhà nghiên cứu đã đề xuất nhiều phương pháp rời rạc hóa Những phương pháp này giúp chuyển đổi luật kết hợp về dạng nhị phân, từ đó cho phép áp dụng các thuật toán đã có sẵn.

Ví dụ về dạng luật này “Nếu là nữ và tuổi từ [30 50] thì mua thực phẩm”, với độ hỗ trợ là 20%, và độ tin cậy là 80%

2.5.3 Luật kết hợp tiếp cận theo hướng tập thô (mining association rules base on rough set)

Tìm kiếm luật kết hợp dựa trên lý thuyết tập thô

2.5.4 Luật kết hợp nhiều mức (multi-level association rules)

Luật kết nhiều mức nhằm tìm kiếm các luật tổng quát hóa Ví dụ, “áo măng tô” và “áo len” đều thuộc loại “áo mặc bên ngoài” Từ thực tế rằng người mua áo măng tô và áo len đều chọn giày ống, ta có thể suy luận ra một luật tổng quát hơn: “Người mua áo mặc bên ngoài thì mua giày ống”.

Như vậy dạng luật này là dạng luật tổng quát hoá của 2 luật trước Luật

Người mua áo ngoài thường chọn giày ống, thể hiện nhu cầu tiêu dùng hiện tại Trong khi đó, các quy luật như "người mua áo măng tô" hay "người mua áo len" không có giá trị tương tự Hơn nữa, luật tổng quát có thể được áp dụng ở nhiều mức độ khác nhau.

2.5.5 Luật kết hợp mờ (fuzzy association rule)

Các nhà nghiên cứu đã đề xuất luật kết hợp mờ để khắc phục những hạn chế trong việc rời rạc hóa các thuộc tính số Luật kết hợp mờ giúp chuyển đổi các quy tắc kết hợp sang một dạng tự nhiên và dễ tiếp cận hơn với người sử dụng.

2.5.6 Luật kết với thuộc tính đƣợc đánh trọng số (association rule with weighted items)

Trong cơ sở dữ liệu, không phải tất cả các thuộc tính đều có vai trò như nhau; một số thuộc tính quan trọng hơn và được chú trọng hơn Trong quá trình tìm kiếm luật, chúng ta có thể gán trọng số khác nhau cho các thuộc tính, cho phép nghiên cứu sâu hơn về tầm quan trọng của từng thuộc tính Hướng nghiên cứu này đã thu hút sự quan tâm của nhiều nhà nghiên cứu, với những giải pháp nhằm giải quyết bài toán gán trọng số cho thuộc tính Việc áp dụng trọng số trong luật kết hợp giúp chúng ta khai thác các luật "hiếm", có độ hỗ trợ thấp nhưng lại mang ý nghĩa đặc biệt và giá trị phân tích cao.

2.5.7 Luật kết hợp song song (parallel mining of association rules)

Các nhà nghiên cứu đang chú trọng vào việc phát triển thuật giải song song để phát hiện luật kết hợp, nhằm đáp ứng nhu cầu xử lý dữ liệu lớn với tốc độ nhanh và dung lượng bộ nhớ hiệu quả Việc song song hoá và xử lý phân tán là cần thiết do kích thước dữ liệu ngày càng tăng Nhiều thuật toán song song đã được đề xuất để độc lập với phần cứng, bên cạnh đó, nghiên cứu cũng tập trung vào việc cải thiện tốc độ tìm kiếm tập phổ biến từ cơ sở dữ liệu.

Một số hướng nghiên cứu khác về khai phá luật kết hợp bao gồm khai phá luật kết hợp trực tuyến và khai phá luật kết hợp được kết nối trực tuyến với các kho dữ liệu đa chiều thông qua công nghệ OLAP Các phương pháp như MOLAP (multidimensional OLAP) và ROLAP (Relational OLAP) cũng được áp dụng để nâng cao hiệu quả phân tích dữ liệu.

Một số giải pháp triển khai khai phá luật kết hợp

2.6.1 Xây dựng chương trình dựa thuật toán Apriori

Hình 2.3 Sinh luật từ tập mục phổ biến

2.6.2 Sử dụng công cụ Weka

Weka (Waikato Environment for Knowledge Analysis) là phần mềm khai thác dữ liệu mã nguồn mở, phát triển bởi đại học Waikato, New Zealand Phần mềm này cung cấp các công cụ trực quan giúp người dùng dễ dàng tìm hiểu về khai thác dữ liệu Weka cũng cho phép tích hợp các thuật toán học máy mới vào môi trường của nó Được viết bằng Java, Weka có khả năng chạy trên hầu hết các hệ điều hành.

Weka cung cấp những tính năng chính sau:

- Bao gồm nhiều công cụ đa dạng để thay đổi tập dữ liệu, xử lý dữ liệu, giải thuật học và phương pháp đánh giá

- Giao diện đồ họa người dùng (trực quan hóa dữ liệu)

- Môi trường để so sánh các giải thuật học

Bạn có thể xử lý trước tập dữ liệu và đưa chúng vào một sơ đồ, phân chia các lớp kết quả và thực hiện quy trình này mà không cần phải viết bất kỳ chương trình nào.

- Weka lấy dữ liệu từ các file có định dạng arff, nó đƣợc sinh ra từ một file hoặc một bảng cơ sở dữ liệu

Có thể tải về từ địa chỉ: http://www.cs.waikato.ac.nz/ml/weka/

Hình 2.5 Giao diện chương trình Weka

Theo hình trên Weka có bốn môi trường chính:

- Simple CLI: Giao diện đơn giản kiểu dòng lệnh (nhƣ MSDOS)

- Explorer: Môi trường cho phép sử dụng tất cả các khả năng của WEKA để khai phá dữ liệu (chúng ta sẽ chủ yếu sử dụng môi trường này!)

- Experimenter: Môi trường cho phép tiến hành các thí nghiệm và thực hiện các kiểm tra thống kê (statistical tests) giữa các mô hình học máy

- KnowledgeFlow: Môi trường cho phép tương tác đồ họa kiểu kéo/thả để thiết kế các bước (các thành phần) của một thí nghiệm

 Giao diện môi trường Explorer

Hình 2.6 Giao diện môi trường Explorer

Chi tiết các tab nhƣ sau:

- Preprocess: Để chọn và thay đổi (xử lý) dữ liệu làm việc

- Classify: Để huấn luyện và kiểm tra các mô hình học máy (phân loại, hoặc hồi quy/dự đoán)

- Cluster: Để học các nhóm từ dữ liệu (phân cụm)

- Associate: Để khám phá các luật kết hợp từ dữ liệu

- Select attributes: Để xác định và lựa chọn các thuộc tính liên quan (quan trọng) nhất của dữ liệu

- Visualize: Để xem (hiển thị) biểu đồ tương tác 2 chiều đối với dữ liệu

- Associator: Vùng này cho biết tên thuật toán sẽ đƣợc sử dụng, cùng các thuộc tính cho các thuật toán

- Associator output: Đây là nơi hiển thì kết quả của việc tạo luật kết hợp

- Result list: Đây là nơi chứa các kết quả đạtđƣợc sau khi thực hiện việc tạo luật kết hợp từ các lần chạy

- Tập tin có khuôn dạng ARFF(Attribute-Relation File Format) hoặc CSV

- Từ 1 địa chỉ URL hoặc một cơ sở dữ liệu thông qua JDBC

Hình 2.7 Ví dụ tập dữ liệu có khuôn dạng ARFF

Weka là phần mềm mã nguồn mở được thiết kế để mô phỏng các mô hình khai thác dữ liệu, phục vụ cho nghiên cứu và giảng dạy Tuy nhiên, phần mềm này chưa hỗ trợ xử lý các tập dữ liệu lớn.

2.6.3 Sử dụng công cụ Business Intelligence Development Studio (BIDS)

BIDS (Business Intelligence Development Studio) là công cụ mạnh mẽ của Microsoft, cho phép tổ chức quản lý và khai thác kho dữ liệu thông qua việc xử lý phân tích trực tuyến và xây dựng các mô hình khai phá dữ liệu hiệu quả Được tích hợp trong Visual Studio 2008 Enterprise, BIDS hỗ trợ tạo ra các dự án tương tác với cơ sở dữ liệu, thực hiện các thao tác Bussiness Intelligence SSAS trong hệ quản trị cơ sở dữ liệu SQL Server 2008.

BIDS cho phép triển khai các mô hình khai phá dữ liệu sau:

- Micorosft Decision Tree (Cây quyết định)

- Micorosoft Naive Bayes(Phân lớp với Bayes Rules)

- Micorosoft Time Series (Chuỗi thời gian)

- Micorosoft Association (Luật kết hợp)

- Micorsoft Sequence Clustering (Phân tích chuỗi)

- Microsoft Neural Network (Mạng Neural)

- Micorsoft Linear Regression(Hồi qui tuyến tính)

- Micorsoft Logistics Regression(Hồi qui logistics) Qui trình Xây dựng mô hình khai phá dữ liệu với BIDS nhƣ sau :

- Tạo mới 1 project (Analysis Services Project)

- Tạo một Data Source View

- Tạo một Mining model structure

- Kiểm tra độ chính xác của Mining Models

- Sử dụng Mining Models để dự đoán.

Kết luận

Khai phá luật kết hợp trong cơ sở dữ liệu bao gồm hai bài toán chính: tìm kiếm tất cả các tập mục phổ biến và sinh ra các luật từ những tập mục này Chương này cung cấp cái nhìn tổng quan về luật kết hợp, bao gồm các định nghĩa và tính chất quan trọng như độ hỗ trợ, độ tin cậy, và tập mục phổ biến, cùng với việc phát biểu bài toán khai phá luật kết hợp.

Trong phần này, chúng ta đã khảo sát các thuật toán khai thác tập phổ biến như Apriori và AprioriTID Các thuật toán này có đặc điểm là tỷ lệ tuyến tính với kích thước cơ sở dữ liệu (CSDL), tức là tất cả các yếu tố như độ phức tạp về thời gian, bộ nhớ và tính toán đều tỷ lệ thuận với kích thước CSDL D Bên cạnh đó, chúng ta cũng đã tìm hiểu một số giải pháp triển khai khai thác luật kết hợp.

THỬ NGHIỆM KHAI PHÁ LUẬT KẾT HỢP CHO CƠ SỞ DỮ LIỆU XUẤT NHẬP KHẨU

Giới thiệu bài toán

Hiện nay, hoạt động xuất nhập khẩu của cá nhân và doanh nghiệp được thực hiện thông qua các tờ khai Hải quan, với dữ liệu được lưu trữ tập trung tại cơ sở dữ liệu của Hải quan Cơ quan Hải quan quản lý các tờ khai dựa trên đơn vị Hải quan và loại hình xuất nhập khẩu.

Các đơn vị Hải quan đƣợc quản lý theo mô hình 3 cấp

- Chi cục Hải quan Loại hình xuất nhập khẩu lại đƣợc chia ra

Mỗi hàng hóa trong tờ khai xuất khẩu cần được khai báo theo mã phân loại hàng hóa (mã HS) quy định theo tiêu chuẩn quốc tế, với độ dài từ 8 đến 12 ký tự, nhằm phân loại hàng hóa và áp dụng biểu phí tương ứng.

Hiện nay, hoạt động xuất khẩu và nhập khẩu hàng hóa của Việt Nam đang thu hút sự chú ý từ nhiều tổ chức và cá nhân cả trong và ngoài nước Tuy nhiên, thông tin hiện có chủ yếu chỉ dừng lại ở mức thống kê định lượng.

- Thông tin tổng hợp kim ngạch và một số mặt hàng xuất khẩu, nhập khẩu chủ yếu theo hàng kỳ (15 ngày) và tháng

Thông tin tổng hợp về kim ngạch xuất nhập khẩu giữa Việt Nam và các đối tác thương mại lớn được cập nhật hàng tháng, bao gồm các mặt hàng chủ yếu Những số liệu này cung cấp cái nhìn tổng quan về tình hình thương mại và xu hướng phát triển kinh tế của Việt Nam trong mối quan hệ với các quốc gia khác.

- Một số báo cáo theo các tiêu chí riêng,

Thống kê Hải quan đang cần các báo cáo và phân tích định tính để phục vụ các cơ quan ban ngành và đáp ứng mối quan tâm của dư luận Một trong những nhiệm vụ quan trọng là áp dụng kỹ thuật khai phá luật kết hợp với cơ sở dữ liệu xuất nhập khẩu nhằm tìm ra mối quan hệ, sự kết hợp và tương quan giữa các mặt hàng trong các tờ khai theo mã HS Điều này sẽ hỗ trợ công tác quản lý, dự đoán và cung cấp thông tin về tình hình xuất nhập khẩu của cơ quan Hải quan.

Mô tả dữ liệu

Dữ liệu xây dựng mô hình phát hiện luật kết hợp được lấy từ kho dữ liệu tờ khai hải quan của các đơn vị xuất nhập khẩu Cơ sở dữ liệu này bao gồm nhiều bảng và thành phần khác nhau, giúp lưu trữ toàn bộ thông tin cần thiết phục vụ cho công tác quản lý của Hải quan.

3.2.1 Mô hình dữ liệu class Kinh doanh

Data Model::KD_CO ôcolumnằ

Bài viết này mô tả cấu trúc dữ liệu liên quan đến thông tin chứng từ xuất nhập khẩu, bao gồm các trường như PK ID_CO (mã định danh), LOAI_CO (loại chứng từ), SO_CO (số chứng từ), NGAY_CAP_CO (ngày cấp), NGUOI_CAP_CO (người cấp), NUOC_CAP_CO (nước cấp), NGUOI_XK (người xuất khẩu), DIA_CHI_XK (địa chỉ xuất khẩu), NGUOI_NK (người nhập khẩu), DIA_CHI_NK (địa chỉ nhập khẩu), và GHI_CHU (ghi chú) Những thông tin này rất quan trọng trong việc quản lý và theo dõi các giao dịch xuất nhập khẩu.

Data Model::KD_COHang ôcolumnằ

*pfK ID_CO: int ôPKằ

+ PK_KD_CO_HANG(varchar, varchar, int, int, int, int) ôFKằ

+ FK_KD_CO_HANG_KD_CO(int) + FK_KD_CO_HANG_KD_Hang(varchar, varchar, int, int, int)

Data Model::KD_CONo ôcolumnằ

*pfK SO_TK: int TRANG_THAI: int ôPKằ

+ PK_KD_CO_NO(varchar, varchar, int, int) ôFKằ

+ FK_KD_CO_NO_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_CapSoTK ôcolumnằ

+ PK_KD_CapSoTK(varchar, varchar, int)

Data Model::KD_ChungTuDinhKem ôcolumnằ

*PK STT: int FILE_NAME: nvarchar(255) FILE_DATA: image FILE_SIZE: float MO_TA_CHUNG: nvarchar(255) ôPKằ

+ PK_KD_CHUNGTU_DINHKEM(varchar, varchar, int, int, int) ôFKằ

+ FK_KD_CHUNGTU_DINHKEM_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_GhiNhan ôcolumnằ

* KHAU_NV: int NOI_DUNG: ntext

+ PK_KD_GHINHAN(int, varchar, varchar, int, int) ôFKằ

+ FK_KD_GhiChepKhac_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_Hang ôcolumnằ

MA_DVT là một trường dữ liệu kiểu varchar với độ dài tối đa 50 ký tự DON_GIA_NT và TRI_GIA_NT là các trường dữ liệu kiểu float, phản ánh giá trị và đơn giá bằng ngoại tệ DON_GIA_KB và TRI_GIA_KB là các trường kiểu nchar với độ dài 10 ký tự, dùng để lưu trữ thông tin về giá và giá trị bằng nội tệ DON_GIA_TT và TRI_GIA_TT cũng là các trường float, thể hiện giá và giá trị tổng Cuối cùng, PHI_BAO_HIEM và PHI_VAN_TAI là các trường kiểu float, đại diện cho phí bảo hiểm và phí vận tải.

+ PK_KD_HangMD(varchar, varchar, int, int, int) ôFKằ

+ FK_KD_Hang_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_HangChiTiet ôcolumnằ

*pfK ID_HANG: int TEN_TM: nvarchar(2000) NHA_SX: nvarchar(255) MO_TA_KHAC: nvarchar(2000) ôPKằ

+ PK_KD_HangCT(varchar, varchar, int, int, int) ôFKằ

+ FK_KD_HangCT_KD_Hang(varchar, varchar, int, int, int)

Data Model::KD_KiemHoa ôcolumnằ

* DEN_NGAY_KH: datetime DIA_DIEM_KH: nvarchar(255) NOI_DUNG_KH: ntext

* DAI_DIEN_DN: nvarchar(255) SO_CMND_DN: nvarchar(255) NGAY_CMND_DN: datetime

* CAN_BO_KH: nvarchar(2000) NGUOI_NM: nvarchar(50) NGAY_NM: datetime ôPKằ

+ PK_KD_KQKiemHoa(varchar, varchar, int, int, int) ôFKằ

+ FK_KD_KQKiemHoa_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_KiemTraHoSo ôcolumnằ

* MA_LUONG_TK: int NOI_DUNG_KIEM_TRA: nvarchar(2000) NGUOI_NM: nvarchar(50) NGAY_NM: datetime ôPKằ

+ PK_KD_KQDangKyKTHS(varchar, varchar, int, int) ôFKằ

+ FK_KD_KQDangKyKTHS_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_LenhPhanLuong ôcolumnằ

* MA_LUONG_CC: int MA_LUONG_LD: int MA_LUONG_KTHS: int

KET_LUAN_GIA là một giá trị kiểu int, trong khi KET_QUA_KT_SO_BO, GHI_CHEP_PL_LD, KET_QUA_KTHS và GHI_CHEP_KTHS_LD đều là các trường dữ liệu kiểu nvarchar với độ dài tối đa 2000 ký tự Các trường CONG_CHUC_PL và LANH_DAO_PL có kiểu nvarchar với độ dài tối đa 50 ký tự, tương tự như CONG_CHUC_KTHS và LANH_DAO_KTHS.

+ PK_KD_LenhPL(varchar, varchar, int, int) ôFKằ

+ FK_KD_LenhPL_KD_ToKhai(varchar, varchar, int, int)

Data Model::KD_TKTG ôcolumnằ

+ PK_KD_TKTG(varchar, varchar, int, int, int, int) ôFKằ

+ FK_KD_TKTG_KD_Hang(varchar, varchar, int, int, int)

Data Model::KD_TKTGPP1 ôcolumnằ

* GIA_HOA_DON: float TT_GIAN_TIEP: float TRA_TRUOC: float

Tổng cộng các chi phí bao gồm hoa hồng, phí bao bì, phí đóng gói và phí vận chuyển, cùng với các khoản hỗ trợ và nguyên liệu, là rất quan trọng trong quá trình tính toán Ngoài ra, chi phí vật liệu, công cụ, thiết kế và bản quyền cũng cần được xem xét kỹ lưỡng Các khoản tiền trả sử dụng, phí bảo hiểm và phí nội địa đóng vai trò quan trọng trong tổng chi phí Cuối cùng, phí phát sinh, tiền lãi và các khoản phí khác, cùng với giảm giá, sẽ ảnh hưởng đến tổng cộng cuối cùng.

* TRI_GIA_VND: float ôPKằ

+ PK_KD_TKTGPP1(varchar, varchar, int, int, int, int)

Data Model::KD_TKTGPP1Chung ôcolumnằ

*PK ID_TKTG_CHUNG: int

* NGAY_XK: datetime QUYEN_SD: bit KHONG_XD: bit TRA_THEM: bit TIEN_PHAI_TRA: bit CO_QHDB: bit KIEU_QHDB: nvarchar(50) = ('') ANH_HUONG_QH: bit ôPKằ

+ PK_KD_TKTGPP1Chung(varchar, varchar, int, int, int)

Data Model::KD_TKTGPP23 ôcolumnằ

* SO_TK_TT: int STT_HANG_TT: int NGAY_XK_TT: datetime

* TRI_GIA_NT_TT: float DC_CD_TM: float DC_SL: float DC_GIAM_GIA: float DC_PHI_VT: float DC_PHI_BH: float

+ PK_KD_TKTGPP23(varchar, varchar, int, int, int, int)

Data Model::KD_TKTGPP4 ôcolumnằ

GIA_BAN_VN là một chỉ số quan trọng thể hiện giá bán tại Việt Nam, trong khi TL_GIA_BAN_VN phản ánh tỷ lệ phần trăm của giá bán này Các khoản hoa hồng được xác định bởi DC_HOA_HONG và TL_HOA_HONG, cho thấy mức hoa hồng cụ thể và tỷ lệ tương ứng Lợi nhuận được đo lường qua DC_LOI_NHUAN và TL_LOI_NHUAN, cung cấp thông tin về lợi nhuận thực tế và tỷ lệ lợi nhuận Các khoản phí vận chuyển được chỉ ra bởi DC_PHI_VT và TL_PHI_VT, trong khi DC_PHI_BH và TL_PHI_BH liên quan đến phí bảo hiểm Cuối cùng, DC_PHI_KHAC và TL_PHI_KHAC đại diện cho các khoản phí khác có thể phát sinh trong quá trình kinh doanh.

+ PK_KD_TKTGPP4(varchar, varchar, int, int, int, int)

Data Model::KD_TKTGPP5 ôcolumnằ

Trong bài viết này, chúng tôi sẽ đề cập đến các yếu tố quan trọng liên quan đến chi phí và lợi nhuận trong kinh doanh, bao gồm GIA_SP (Giá sản phẩm), DC_HOA_HONG (Đại lý hoa hồng), DC_BAO_BI (Đại lý bao bì), DC_DONG_GOI (Đại lý đóng gói), DC_TRO_GIUP (Đại lý trợ giúp), DC_BAN_QUYEN (Đại lý bản quyền), DC_TIEN_TRA_SD (Đại lý tiền trả sử dụng), DC_PHI_VT (Đại lý phí vận tải), DC_PHI_BH (Đại lý phí bảo hiểm), LOI_NHUAN (Lợi nhuận) và PHI_KHAC (Phí khác) Những yếu tố này đóng vai trò quan trọng trong việc xác định hiệu quả kinh doanh và tối ưu hóa lợi nhuận.

+ PK_KD_TKTGPP5(varchar, varchar, int, int, int, int)

Data Model::KD_TKTGPP6 ôcolumnằ

* MA_AP_DUNG_PP: char(2)

* TRI_GIA_VND: float ôPKằ

+ PK_KD_TKTGPP6(varchar, varchar, int, int, int, int)

Data Model::KD_ThueHang ôcolumnằ

*PK MA_SAC_THUE: int

+ PK_KD_ThueHangMD(varchar, varchar, int, int, int, int) ôFKằ

+ FK_KD_ThueHang_KD_Hang(varchar, varchar, int, int, int)

Data Model::KD_ToKhai ôcolumnằ

The article outlines a structured dataset that includes various fields such as DV_DT (nvarchar(255)), MA_DV_UT (varchar(50)), MA_DV_DL (varchar(50)), and MA_MID (varchar(50)) It also details SO_GP (nvarchar(255)), along with important date fields like NGAY_GP_HL (datetime) and NGAY_GP_HH (datetime) Additional entries include SO_HD (nvarchar(255)), NGAY_HD (datetime), and NGAY_HD_HH (datetime), as well as SO_HDTM (nvarchar(255)) and its corresponding date NGAY_HDTM (datetime) The dataset further specifies TEN_PTVT (nvarchar(255)), NGAY_DEN_PTVT (datetime), SO_VAN_DON (nvarchar(255)), and NGAY_VAN_DON (datetime), providing a comprehensive overview of the relevant data points.

* MA_NUOC_XN: varchar(50) CANG_NN: nvarchar(255)

* MA_PTTT: varchar(50) CHUNG_TU_KEM: nvarchar(2000) NGAY_KB: datetime NGUOI_KB: nvarchar(255) ôPKằ

+ PK_KD_ToKhaiMD(varchar, varchar, int, int)

+FK_KD_TKTG_KD_Hang 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK ID_HANG = ID_HANG)

+FK_KD_ThueHang_KD_Hang

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK ID_HANG = ID_HANG)

+FK_KD_LenhPL_KD_ToKhai 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

+FK_KD_KQDangKyKTHS_KD_ToKhai

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

+FK_KD_KQKiemHoa_KD_ToKhai (MA_HQ = MA_HQ 0 *

MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

+FK_KD_HangCT_KD_Hang 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK ID_HANG = ID_HANG)

+FK_KD_Hang_KD_ToKhai 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

+FK_KD_GhiChepKhac_KD_ToKhai 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

+FK_KD_CO_NO_KD_ToKhai 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

+FK_KD_CO_HANG_KD_Hang 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK ID_HANG = ID_HANG)

+FK_KD_CO_HANG_KD_CO 0 *

(ID_CO = ID_CO) +PK_KD_CO 1

+FK_KD_CHUNGTU_DINHKEM_KD_ToKhai 0 *

(MA_HQ = MA_HQ MA_LH = MA_LH NAM_DK = NAM_DK SO_TK = SO_TK)

Hình 3.1 Mô hình dữ liệu bài toán

3.2.2 Danh sách các bảng và mô tả

TT Tên bảng Mô tả

1 KD_ToKhai Bảng lưu dữ liệu tờ khai

2 KD_Hang Bảng lưu thông tin về hàng trên tờ khai

3 KD_HangChiTiet Bảng lưu thông tin chi tiết về hàng

4 KD_TKTG Bảng lưu thông tin chung về tờ khai trị giá

5 KD_TKTGPP1 Bảng lưu thông tin chung về tờ khai trị giá phương pháp 1

6 KD_TKTGPP1_CT Bảng lưu dữ liệu tờ khai trị giá phương pháp 1

7 KD_TKTGPP23 Bảng lưu dữ liệu tờ khai trị giá phương pháp 2

8 KD_TKTGPP4 Bảng lưu dữ liệu tờ khai trị giá phương pháp 4

9 KD_TKTGPP5 Bảng lưu dữ liệu về tờ khai trị giá phương pháp 5

10 KD_TKTGPP6 Bảng lưu dữ liệu về tờ khai trị giá phương pháp 6

11 KD_KiemTraHoSo Bang lưu dữ liệu về kiểm tra hồ sơ

12 KD_KiemHoa Bảng lưu dữ liệu về kiểm hóa

13 KD_CO Bảng lưu dữ liệu CO

14 KD_COHang Bảng lưu dữ liệu CO cho từng dòng hàng

15 KD_ChungTuDinhKem Bảng lưu dữ liệu chứng từ đi kèm với tờ khai

16 KD_CapSoTK Bảng dữ liệu cấp số tờ khai

Bảng 3.1 Danh sách các bảng và mô tả 3.2.2.1 Bảng KD_ToKhai

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

NGAY_DK datetime (8) No Ngày đăng ký tờ khai

MA_DV_XN varchar (50) No Mã doanh nghiệp XNK

MA_DV_UT varchar (50) Yes Mã doanh nghiệp ủy thác MA_DV_DL varchar (50) Yes Mã doanh nghiệp đại lý

DV_DT nvarchar (510) No Tên doanh nghiệp đối tác

MA_MID varchar (50) Yes Mã hàng dệt may

SO_GP nvarchar (510) Yes Số giấy phép

NGAY_GP_HL datetime (8) Yes Ngày hiệu lực giấy phép

NGAY_GP_HH datetime (8) Yes Ngày hết hạn giấy phép

SO_HD nvarchar (510) Yes Số hợp đồng

NGAY_HD datetime (8) Yes Ngày hợp đồng

NGAY_HD_HH datetime (8) Yes Ngày hết hạn hợp đồng

Trong cơ sở dữ liệu, các trường thông tin quan trọng bao gồm: Số hóa đơn thương mại (SO_HDTM) với kiểu dữ liệu nvarchar (510), Ngày hóa đơn thương mại (NGAY_HDTM) có kiểu datetime (8), Số hiệu phương tiện vận tải (SO_PTVT) với kiểu varchar (50), và Tên phương tiện vận tải (TEN_PTVT) với kiểu dữ liệu nvarchar (255).

NGAY_DEN_PTVT datetime (8) Yes Ngày đến SO_VAN_DON nvarchar (255) Yes Số vận tải đơn NGAY_VAN_DON datetime (8) Yes Ngày vận tải đơn

MA_NUOC_XN varchar (50) No Mã nước XNK

MA_CANG_NN nvarchar (255) Yes Tên cảng nước ngoài MA_CANG_TN varchar (50) No Mã cảng trong nước

MA_PTTT varchar (50) No Mã phương thức thanh toán

MA_DKGH varchar (50) No Điều kiện giao hàng

MA_NT varchar (50) No Mã nguyên tệ thanh toán

TY_GIA_NT float (8) No Tỷ giá nguyên tệ theo VNĐ

TY_GIA_USD float (8) No

Tỷ giá USD tại thời điểm mở tờ khai

PHI_BAO_HIEM float (8) Yes Phí bảo hiểm

PHI_VAN_TAI float (8) Yes Phí vận tải

TRONG_LUONG float (8) Yes Trọng lƣợng cả lô hàng

SO_KIEN float (8) Yes Số lƣợng kiện

SO_CONT_20 float (8) Yes Số lƣợng cont 20 feet SO_CONT_40 float (8) Yes Số lƣợng cont 40 feet CHUNG_TU_KEM nvarchar (2000) Yes Chứng từ kèm

KHAU_NV smallint (2) No Khâu nghiệp vụ

NGAY_KB datetime (8) Yes Ngày khai báo

NGUOI_KB nvarchar (255) Yes Người khai báo

NGAY_NM datetime (8) Yes Ngày nhập dữ liệu

NGUOI_NM nvarchar (255) Yes Người nhập dữ liệu

Bảng 3.2 Thông tin tờ khai 3.2.2.2 Bảng KD_Hang

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_HANG int (4) No Yes Số định danh dòng hàng

MA_HS varchar (50) No Mã HS

TEN_HANG nvarchar (2000) No Tên hàng

MA_THKE varchar (50) Yes Mã thống kê hàng hóa

MA_NUOC_XX varchar (50) No Mã nước xuất xứ

LUONG float (8) No Số lƣợng

MA_DVT varchar (50) No Mã đơn vị tính

Đơn giá theo nguyên tệ (DON_GIA_NT) và trị giá theo nguyên tệ (TRI_GIA_NT) được xác định dưới dạng số thực với độ chính xác 8 chữ số Đồng thời, đơn giá tính thuế (DON_GIA_TT) và trị giá tính thuế (TRI_GIA_TT) cũng được tính toán và ghi nhận bằng VNĐ, với cùng định dạng số thực.

THUE_SUAT_XNK float (8) Yes Thuế suất XNK

THUE_SUAT_TTDB float (8) Yes Thuế suất tiêu thụ đặc biệt

THUE_SUAT_VAT float (8) Yes Thuế suất VAT

THUE_XNK float (8) Yes Tiền thuế XNK (VNĐ)

Tiền thuế tiêu thụ đặc biệt (VNĐ)

THUE_VAT float (8) Yes Tiền thuế VAT (VNĐ)

TY_LE_THU_KHAC float (8) Yes Tỷ lệ thu khác TRI_GIA_THU_KHAC float (8) Yes Trị giá thu khác

MA_HTS varchar (50) Yes Mã hàng dệt may

LUONG_HTS float (8) Yes Số lƣợng hàng dệt may

DVT_HTS varchar (10) Yes Mã đơn vị tính hàng dệt may DON_GIA_HTS float (8) Yes Đơn giá hàng dệt may

Bảng 3.3 Thông tin hàng hóa 3.2.2.3 Bảng KD_HangChiTiet

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes

Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_HANG int (4) No Yes

Số định danh dòng hang

TEN_TM nvarchar (2000) Yes Tên thương mại

NHA_SX nvarchar (255) Yes Nhà sản xuất

KY_HIEU_MR nvarchar (255) Yes Ký mã hiệu

NGUYEN_LIEU_MR nvarchar(255) Yes Nguyên liệu

KICH_CO_MR nvarchar(255) Yes Kích cỡ

NHAN_MAC nvarchar](255) Yes Nhãn mác

CONG_DUNG nvarchar(2000) Yes Công dụng

CONG_SUAT nvarchar(255) Yes Công suất

CHAT_LUONG nvarchar(255) Yes Chất lƣợng PP_CHE_TAO nvarchar(255) Yes Phương pháp chế tạo

CO_THIET_KE int (4) Yes

1: Có thiết kế 0: Không có thiết kế

MO_TA_KHAC nvarchar(2000) Yes Mô tả khác

Bảng 3.4 Thông tin hàng hóa chi tiết 3.2.2.4 Bảng KD_TKTG

Field name Data type Default value Allow nulls Primary Key Description

MA_HQ varchar (50) No Yes

Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_HANG int (4) No Yes

Số định danh dòng hang

ID_TKTG int (4) No Yes Định danh tờ khai trị giá

MA_LOAI_TKTG int (4) No

Phương pháp khai trị giá

NGAY_XK datetime (8) No Ngày xuất khẩu

TRI_GIA_NT float (8) No Trị giá nguyên tệ

TRI_GIA_VND float (8) No

Trị giá quy đổi ra VNĐ

Bảng 3.5 Thông tin chung tờ khai trị giá 3.2.2.5 Bảng KD_TKTGPP1

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_TKTG int (4) No Yes Số định danh tờ khai trị giá

NGAY_XK datetime (8) No Ngày xuất khẩu

QUYEN_SD bit (1) Yes Quyền sử dụng

KHONG_XD bit (1) Yes Không xác định trị giá

TRA_THEM bit (1) Yes Trả thêm hay không

TIEN_PHAI_TRA bit (1) Yes

Có phải khoản thanh toán gián tiếp hay không

Người mua và người bán có mối quan hệ đặc biệt hay không

ANH_HUONG_QH bit (1) Yes Ảnh hưởng mối quan hệ

NGUOI_KB nvarchar(50) Yes Người khai

CHUC_VU_NGUOI_KB nvarchar(255) Yes Chức vụ người khai

NGAY_KB datetime Yes Ngày khai

GHI_CHEP_HQ nvarchar(2000) Yes Ghi chép của Hải quan

Bảng 3.6 Thông tin tờ khai trị giá phương pháp 1 3.2.2.6 Bảng KD_TKTGPP1_CT

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_TKTG là số định danh tờ khai trị giá, có kiểu dữ liệu là int và chiều dài 4 ID_HANG là số định danh dòng hàng, cũng có kiểu dữ liệu int với chiều dài 4 ID_TKTG_CT là số định danh chi tiết tờ khai trị giá, có kiểu dữ liệu int và chiều dài 4, nhưng không bắt buộc.

GIA_HOA_DON float (8) No

Giá mua ghi trên hoá đơn(Tiêu thức

7 trên tờ khai trị giá) TT_GIAN_TIEP float (8) Yes

Khoản thanh toán gián tiếp(Tiêu thức 8 trên tờ khai trị giá)

Khoản tiền trả trước, ứng trước, đặt cọc(Tiêu thức 9)

TONG_CONG_1 float (8) No Tổng cộng 7 + 8 + 9

Chi phí hoa hồng, bán hàng/phí môi giới(Tiêu thức 10)

PHI_BAO_BI float (8) Yes

Chi phí bao bì gắn liền với hàng hoá(Tiêu thức 11)

PHI_DONG_GOI float (8) Yes Chi phí đóng gói(Tiêu thức 12)

Các khoản trợ giúp người mua cung cấp miễn phí hoặc giảm giá(Tiêu thức 13)

Nguyên phụ liệu, bộ phận cấu thành, phụ tùng, chi tiết tương tự(Tiêu thức

Vật liệu, nhiên liệu, năng lƣợng tiêu hao(Tiêu thức 13b)

Công cụ, dụng cụ, khuôn dập, khuôn đúc, khuôn mẫu chi tiết tương tự(Tiêu thức 13c)

Bản vẽ thiết kế/kỹ thuật/triển khai, thiết kế mỹ thuật/thi công/mẫu, sơ đồ, phác thảo, sản phẩm và dịch vụ tương tự(Tiêu thức 13 d)

Tiền bản quyền, phí giấy phép(Tiêu thức 14)

TIEN_TRA_SD float (8) Yes

Tiền thu đƣợc phải trả sau khi định đoạt, sử dụng hàng hoá(Tiêu thức

Chi phí vận tải, bốc xếp, chuyển hàng(Tiêu thức 16)

Chi phí bảo hiểm hàng hoá(Tiêu thức 17)

PHI_NOI_DIA float (8) Yes

Phí bảo hiểm, vận tải hàng hoá trong nội địa(Tiêu thức 18)

TONG_CONG_2 float (8) Yes Tổng cộng 10 + … + 18 PHI_PHAT_SINH float (8) Yes

Chi phí phát sinh sau khi nhập khẩu(Tiêu thức 19)

Tiền lãi phải trả cho việc thanh toán tiền mua hàng(Tiêu thức 20)

Các khoản thuế, phí, lệ phí phải trả(Tiêu thức 21)

GIAM_GIA float (8) Yes Khoản giảm giá(Tiêu thức 22) TONG_CONG_3 float (8) Yes Tổng cộng

TRI_GIA_NT float (8) No

Trị giá tính hải quan = 7 + 8 + … +

TRI_GIA_VND float (8) No

Trị giá tính thuế bằng đồng Việt Nam

Bảng 3.7 Thông tin chi tiết tờ khai trị giá phương pháp 1 3.2.2.7 Bảng KD_TKTGPP23

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_TKTG int (4) No Yes Số định danh tờ khai trị giá ID_HANG int (4) No Yes Số định danh dòng hàng

NGAY_XK datetime (8) No Ngày xuất khẩu

LYDO_KAD_PPT nvarchar (4000) ('') No

Lý do không áp dụng phương pháp trị giá giao dịch (PP1)

TEN_HANG_TT nvarchar (510) No Tên hàng hóa giống hệt, tương tự

MA_HQ_TT varchar (50) No

Mã đơn vị hải quan đăng ký tờ khai giống hệt tương tự

MA_LH_TT varchar (50) No

Mã loại hình tờ khai giống hệt tương tự NGAY_DK_TT datetime (8) No

Ngày đăng ký tờ khai tờ khai giống hệt tương tự

SO_TK_TT int (4) No Số tờ khai giống hệt tương tự

STT_HANG_TT int (4) Yes

Số thứ tự hàng trên tờ khai giống hệt tương tự

NGAY_XK_TT datetime (8) Yes

Ngày xuất khẩu tờ khai giống hệt tương tự

TRI_GIA_NT_TT float (8) No

Trị giá nguyên tệ tờ khai giống hệt tương tự

DC_CD_TM float (8) Yes Điều chỉnh về cấp độ thương mại DC_SL float (8) Yes Điều chỉnh về số lƣợng

DC_GIAM_GIA float (8) Yes Điều chỉnh về các khoản giảm giá khác

DC_PHI_VT float (8) Yes Điều chỉnh về chi phí vận tải

DC_PHI_BH float (8) Yes Điều chỉnh về chi phí bảo hiểm

TRI_GIA_VND float (8) No Trị giá tính thuế VNĐ GIAI_TRINH nvarchar (4000) ('') No

Giải trình các khoản điều chỉnh và chứng từ kèm theo

= 1: tờ khai hàng hóa giống hệt (PP2)

1: tờ khai hàng hóa tương tự (PP3)

Bảng 3.8 Thông tin tờ khai trị giá phương pháp 2 hoặc 3 3.2.2.8 Bảng KD_TKTGPP4

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_TKTG int (4) No Yes Số định danh tờ khai trị giá ID_HANG int (4) No Yes Số định danh dòng hàng LYDO_KAD_PPT nvarchar (4000) ('') No

Lý do không áp dụng phương pháp trị giá trước đó

TEN_HANG_KT nvarchar (510) No

Tên hàng hóa nhập khẩu đã bán lại trong nước được lựa chọn để khấu trừ

GIA_BAN_VN float (8) No Đơn giá bán trên thị trường Việt Nam

TL_GIA_BAN_VN float (8) Yes Tỷ lệ phần trăm so với giá bán DC_HOA_HONG float (8) Yes

Tiền hoa hồng bán hàng

TL_HOA_HONG float (8) Yes

Tỷ lệ tiền hoa hồng so % so với giá bán

DC_LOI_NHUAN float (8) Yes

Khoản lợi nhuận và chi phí quản lý chung

TL_LOI_NHUAN float (8) Yes

Tỷ lệ % khoản lợi nhuận và chi phí quản lý chung so với giá bán

DC_PHI_VT float (8) Yes

Chi phí vận tải, bốc xếp, chuyển hàng

TL_PHI_VT float (8) Yes

Tỷ lệ % chi phí vận tải, bốc xếp, chuyển hàng so với giá bán

DC_PHI_BH float (8) Yes

Chi phí bảo hiểm nội địa

TL_PHI_BH float (8) Yes

Tỷ lệ % chi phí bảo hiểm nội địa so với giá bán

DC_PHI_KHAC float (8) Yes

TL_PHI_KHAC float (8) Yes

Tỷ lệ % phí, lệ phí, thuế so với giá bán

TRI_GIA_NT float (8) No Trị giá tính thuế nguyên tệ TRI_GIA_VND float (8) No Trị giá tính thuế VNĐ GIAI_TRINH nvarchar (4000) ('') No

Giải trình các khoản điều chỉnh và chứng từ kèm theo

Bảng 3.9 Thông tin tờ khai trị giá phương pháp 4

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_TKTG int (4) No Yes Số định danh tờ khai trị giá ID_HANG int (4) No Yes Số định danh dòng hàng SO_LIEU_SX nvarchar (4000) ('') No

Tên, địa chỉ đơn vị cung cấp số liệu về chi phí sản xuất

GIA_SP float (8) No Giá thành phẩm

DC_HOA_HONG float (8) Yes

Hoa hồng bán hàng và phí môi giới

DC_BAO_BI float (8) Yes

Chi phí bao bì gắn liền với hàng hóa

DC_DONG_GOI float (8) Yes

Chi phí đóng gói hàng hóa

DC_TRO_GIUP float (8) Yes

Các khoản trợ giúp khác

DC_BAN_QUYEN float (8) Yes

Tiền bản quyền, phí giấy phép

DC_TIEN_TRA_SD float (8) Yes

Tiền thu đƣợc phải trả sau khi định đoạt, sử dụng hàng hoá

DC_PHI_VT float (8) Yes Chi phí vận chuyển hàng hóa

DC_PHI_BH float (8) Yes

Chi phí bảo hiểm hàng hóa

Lợi nhuận và phí chung

Phí, lệ phí, thuế(Mà không đƣợc hoàn trả)

TRI_GIA_NT float (8) No Trị giá tính thuế nguyên tệ TRI_GIA_VND float (8) No Trị giá tính thuế VNĐ GIAI_TRINH nvarchar (4000) ('') No

Giải trình các khoản điều chỉnh và chứng từ kèm theo

Bảng 3.10 Thông tin tờ khai trị giá phương pháp 5 3.2.2.10 Bảng KD_TKTGPP6

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_TKTG int (4) No Yes Số định danh tờ khai trị giá ID_HANG int (4) No Yes Số định danh dòng hàng THONG_TIN_SD nvarchar (4000) ('') No

Các thông tin đƣợc dùng để xác định trị giá tính thuế nvarchar

MA_AP_DUNG_PP char (2) No Mã phương pháp trị giá áp dụng GIAI_TRINH nvarchar (4000) ('') No Giải trình

TRI_GIA_NT float (8) No Trị giá tính thuế nguyên tệ TRI_GIA_VND float (8) No Trị giá tính thuế VNĐ

Bảng 3.11 Thông tin tờ khai trị giá phương pháp 6 3.2.2.11 Bảng KD_KiemTraHoSo

Field name Data type Default value Allow nulls Primary Key Description

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

MA_LUONG_TK int (4) No Luồng tờ khai

NOI_DUNG_KIEM_TRA nvarchar (4000) Yes Nội dung ghi nhận NGUOI_NM nvarchar (100) Yes Người nhập máy

NGAY_NM datetime (8) Ngày nhập máy

Bảng 3.12 Thông tin kiểm tra hồ sơ tờ khai 3.2.2.12 Bảng KD_KiemHoa

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

STT int (4) No Yes Số thứ tự tự tăng

The inspection process is defined by specific parameters, including the start date (TU_NGAY_KH) and end date (DEN_NGAY_KH) for the inspection period It also requires the location of the inspection (DIA_DIEM_KH) and detailed information regarding the content of the inspection (NOI_DUNG_KH).

KET_QUA_KH ntext (16) No Kết quả kiểm hóa

DAI_DIEN_DN nvarchar (510) No Đại diện doanh nghiệp SO_CMND_DN nvarchar (510) Yes Số CMT của đại diện doanh nghiệp NGAY_CMND_DN datetime (8) Yes Ngày cấp CMT

CAN_BO_KH nvarchar (4000) No Danh sách cán bộ kiểm hóa NGUOI_NM nvarchar (100) Yes Ngày nhập máy

NGAY_NM datetime (8) Yes Người nhập máy

Bảng 3.13 Thông tin kiểm hóa tờ khai

Field name Data type Default value Allow nulls Primary

ID_CO int (4) No Yes Số định danh CO

LOAI_CO varchar (50) Yes Loại CO

SO_CO varchar (50) Yes Số CO

NGAY_CAP_CO datetime (8) Yes Ngày cấp CO

NGUOI_CAP_CO nvarchar (510) Yes Người cấp CO

NUOC_CAP_CO varchar (50) Yes Nước cấp CO

Trong bài viết này, chúng tôi cung cấp thông tin chi tiết về các trường dữ liệu quan trọng liên quan đến xuất nhập khẩu Trường "NGUOI_XK" (Người xuất khẩu) và "DIA_CHI_XK" (Địa chỉ người xuất khẩu) giúp xác định thông tin của bên xuất khẩu Tương tự, "NGUOI_NK" (Người nhập khẩu) và "DIA_CHI_NK" (Địa chỉ người nhập khẩu) cung cấp thông tin về bên nhập khẩu Cuối cùng, trường "NOI_DUNG" chứa nội dung thông tin CO, với dung lượng lên đến 4000 ký tự, cho phép mô tả chi tiết về các giao dịch xuất nhập khẩu.

Bảng 3.14 Thông tin chứng nhận xuất xứ hàng hóa 3.2.2.14 Bảng KD_COHang

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

ID_HANG int (4) No Yes

Số định danh dòng hàng có

ID_CO int (4) No Yes Số định danh CO

Bảng 3.15 Thông tin chi tiết chứng nhận xuất xứ hàng hóa 3.2.2.15 Bảng KD_ChungTuDinhKem

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

SO_TK int (4) No Yes Số tờ khai

STT int (4) No Yes Số thứ tự tự tăng

FILE_NAME nvarchar (510) Yes File name

FILE_DATA image (16) Yes Nội dung file đính kèm

FILE_SIZE float (8) Yes Kích thước file

MO_TA_CHUNG nvarchar (510) Yes Mô tả chung

Bảng 3.16 Thông tin chứng từ đính kèm tờ khai

Field name Data type Default value Allow nulls Primary

MA_HQ varchar (50) No Yes Mã đơn vị hải quan mở tờ khai

MA_LH varchar (50) No Yes Mã loại hình XNK

NAM_DK int (4) No Yes Năm đăng ký tờ khai

Số tờ khai lớn nhất theo 3 chỉ tiêu trên

Bảng 3.17 Thông tin cấp số tờ khai

Ngoài ra còn có các bảng danh mục nhƣ sau class Data Model

*PK Ma_GH: varchar(10) GhiChu: nvarchar(255) ôPKằ

*PK ID: int Ma_HS: varchar(50) MaNhom: varchar(10) MaMuc: varchar(10) MaPhan: varchar(10) MoTa_VN: nvarchar(255) Mota_EN: nvarchar(255) CoGiaiThich: bit ôPKằ

* Ten_DV: nvarchar(255) Ten_GD: nvarchar(255)

The article outlines key database fields related to business registration and management It includes the company identifier (MaLHDN), tax code (TWDP), management unit (NoiQuanLy), business license number (SoGPKD), and the date of issue (NgayCapGPKD) Additional details encompass the company's address (DiaChi), contact number (DienThoai), fax number (Fax), and the names of the director (GiamDoc) and accountant (KeToan) The account number (TaiKhoan), VAT status (PPT_GTGT), agency group (Nhom_CQ), and service status (TT_DV) are also specified, providing a comprehensive overview of the business's registration information.

* So_TT: int MLNSChuong: varchar(50) SoGC: nvarchar(50) ôPKằ

* Ten_DVT: nvarchar(50) Ma_Std: varchar(50) TL_QuyDoi: numeric(15,6) ôPKằ

*PK Ma: varchar(50) Ten: nvarchar(80) ôPKằ

* TenLH_DN: nvarchar(50) TenVT: nvarchar(50) ôPKằ

* Ten_LH: nvarchar(255) Ten_VT: nvarchar(50) ôPKằ

*PK Ma_DG: varchar(50) GhiChu: nvarchar(50) ôPKằ

* TEN_DVT: nvarchar(50) TEN_NHOM: nvarchar(255) CONGDONLG: numeric(18) CONGDONTG: money ôPKằ

* Ten_NT: nvarchar(50) Tygia_VND: money = ((0)) ôPKằ

*PK MA_NGUON_TT: char(2)

* Ten_Nuoc: nvarchar(50) Ma_NT: varchar(50) ôPKằ

*PK Ma_PTTT: varchar(10) GhiChu: nvarchar(50) ôPKằ

* ID: int TEN_HANG: nvarchar(50) MA_THKE: varchar(10) MA_HANG: varchar(12)

* IS_XUAT: bit MA_DVT: varchar(50) TEN_DVT: nvarchar(50) CONGDONLG: decimal(18) CONGDONTG: money TEN_NHOM: nvarchar(255)

Hình 3.2 Danh sách các bảng danh mục

Phân tích dữ liệu

Trong cơ sở dữ liệu xuất nhập khẩu, bảng KD_ToKhai đóng vai trò trung tâm để lưu trữ thông tin chung, trong khi danh sách hàng hóa được lưu tại bảng KD_Hàng Mỗi tờ khai sẽ bao gồm thông tin về chứng nhận, giấy phép, hợp đồng và các tờ khai trị giá cho các mặt hàng, được lưu trong các bảng vệ tinh trong mô hình Để hỗ trợ công tác quản lý, còn có các bảng lưu trữ thông tin trạng thái và ghi nhận như KD_CapSoTK, KD_KiemTraHoSo, KD_KiemHoa,

CSDL Xuất nhập khẩu là cơ sở dữ liệu quan hệ được quản lý bằng hệ quản trị CSDL SQL Server 2008 của Microsoft, mang tính chất của một CSDL giao tác Dữ liệu về tờ khai được lưu trữ theo dạng một - nhiều, trong đó một tờ khai có thể chứa nhiều thông tin hàng hóa Mỗi mặt hàng trong tờ khai được xác định bằng một mã HS, và các mặt hàng theo mã HS có thể xuất hiện trong nhiều tờ khai khác nhau.

Mã HS được quản lý và cập nhật theo các thay đổi của tổ chức Hải quan quốc tế, giúp xác định thông tin phân loại hàng hóa vào phần, nhóm và mục cụ thể Chẳng hạn, mã 85171200 cung cấp các thông tin chi tiết liên quan đến hàng hóa.

Hình 3.3 Thông tin quản lý mã HS

Trong phạm vị bài toán của chúng ta chỉ sử dụng các bảng sau

TT Tên bảng/View Mô tả

1 KD_ToKhai Bảng lưu thông tin chung của tờ khai

2 KD_Hang Bảng lưu thông tin về hàng trên tờ khai

3 SDMUCHS Bảng lưu thông tin danh mục mã HS

Mỗi tờ khai sẽ chứa nhiều dòng hàng do đó ta có hệ giữa bảng KD_ToKhai và KD_Hang là quan hệ một nhiều theo mô hình sau:

Hình 3.4 Mô hình quan hệ các bảng dữ liệu khai phá

Lựa chọn giải pháp

Trong chương 2, chúng ta đã khám phá ba phương pháp triển khai khai phá luật kết hợp với cơ sở dữ liệu xuất nhập khẩu Tôi đề xuất sử dụng công cụ Business Intelligence Development Studio (BIDS) vì nó là lựa chọn phù hợp nhất với những lý do cụ thể.

- CSDL XNK lưu trữ trên hệ quản trị SQL Server mà BIDS lại tích hợp luôn với SQL Server

Để khai thác dữ liệu hiệu quả, cần lưu trữ thông tin trong hai bảng theo cấu trúc một - nhiều Việc xây dựng chương trình và sử dụng Weka thường chỉ yêu cầu một bảng phẳng chứa toàn bộ dữ liệu.

- Số lượng bản ghi dữ liệu là tương đối lớn, nếu tự xây dựng và sử dụng Weka sẽ gặp khó ở vấn đề performance

- Việc tiền xử lý dữ liệu cho BIDS trên SQL Server rất thuận tiện.

Tiền xử lý dữ liệu

Sau khi lựa chọn giải pháp, bước tiếp theo là tiến hành tiền xử lý dữ liệu nhằm giảm thiểu số lượng bản ghi không liên quan, từ đó tạo điều kiện thuận lợi cho quá trình khai phá dữ liệu.

Do sự liên kết giữa thông tin tờ khai và thông tin hàng thông qua bộ khóa (MA_HQ, MA_LH, NAM_DK, SO_TK), việc áp dụng BIDS sẽ gặp khó khăn Để giải quyết vấn đề này, chúng ta sẽ tạo ra một khóa mới, được gọi là KeyTK, được hình thành từ việc kết hợp các thành phần của bộ khóa trên: KeyTK = MA_HQ + MA_LH + NAM_DK + SO_TK.

Để tối ưu hóa việc khai thác dữ liệu, chúng ta cần xác định rõ phạm vi dữ liệu và số lượng trường hiển thị, từ đó tạo ra các tương ứng giữa bảng tờ khai và bảng hàng.

Sau khi tiền xử lý ta sẽ có các View dữ liệu nhƣ sau

Hình 3.5 View dữ liệu tiền xử lý

Khai phá cơ sở dữ liệu xuất nhập khẩu với BIDS

Cũng nhƣ qui trình xây dựng các Data Mining Model khác, qui trình xây dựng mô hình khai phá luật kết hợp với BIDS theo 3 bước sau:

- Tạo một Mining Model structure

- Khai phá dữ liệu từ Model

3.6.1 Tạo một Mining Model structure

Trước tiên, tạo một Analysis Services Project với tên “CIS.AssociationRule” và tạo kết nối dữ liệu, tạo một Data Source và Data

Source view gồm dữ liệu là 2 views là vToKhai và vHang

1 Trong cửa sổ Solution Explorer, right-click Mining Structures, click New Mining Structure

3 Click From existing relational database or data warehouse, click

4 Trong mục What data mining technique do you want to use?, chọn Microsoft Association Rules,

6 Trong mục Select data source view chọn CIS_WORKING

7 Chọn Case là vToKhai và Nested là vHang, lick Next,

8 Thiết chọn các thuộc tính Key, Input và Predictable cho mô hình

Hình 3.6 Cấu hình Case và Nested cho mô hình

11 Đặt tên cho Mining Structures và Click Finish; ta sẽ có màn hình Mining Models nhƣ sau:

Hình 3.7 Màn hình Mining Models

3.6.2 Hiệu chỉnh tham số cho mô hình

In the Mining Models window, right-click on Microsoft Association Rules and select Set Algorithm Parameters Then, set the values for the two parameters: MINIMUM_PROBABILITY to 0.1 and MINIMUM_SUPPORT to 0.01.

Hình 3.8 Cấu hình tham số Mining Models

Sau khi hiệu chỉnh các tham số của Mining Models, bấm F5 để thực hiện mô hình

Kết quả của Microsoft Association Rules thể hiện trong Tab Mining

Models Viewer bởi 3 nội dung chính là Itemsets, Rules, và Dependency Net

Itemsets: Itemsets cho biết các thông tin quan trọng của luật kết hợp nhƣ

To display itemsets containing a specific item, such as HS code 5401100000, enter the code in the Filter Itemset field This process utilizes the concepts of Support, which measures the strength of the association, and Size, which refers to the number of items in the itemsets.

Hình 3.9 Danh sách tập phổ biến

Trong các giao dịch, có tổng cộng 1896 giao dịch mà trong đó doanh nghiệp vừa nhập hàng loại 5401100000 vừa nhập hàng loại 5807900000.

Rules Tab: Phần này trình bày các luật kết hợp đƣợc phát hiện bởi mô hình Các thông tin về luật kết hợp bao gồm:

- Probability: Cho biết xác suất xảy ra của luật

- Importance: Đo lường tính hữu dụng của luật, giá trị này càng cao thì luật kết hợp càng tốt

- Rules: Phần này thể hiện các luật kết hợp dạng X=>Y

Các quy luật này xác định mối quan hệ giữa các mặt hàng trong cơ sở dữ liệu giao dịch Ví dụ, quy luật kết hợp thứ nhất cho thấy rằng nếu một doanh nghiệp nhập các sản phẩm 5901909000 và 5604100000, thì khả năng cao là họ cũng sẽ nhập sản phẩm 5807900000 với xác suất lên tới 92%.

Dependency Net (Mạng phụ thuộc)

Sử dụng Dependency Net giúp bạn nắm bắt được ảnh hưởng của các items khác nhau trong mô hình Mỗi Node trong Dependency Net đại diện cho một item, và khi bạn chọn một item, bạn sẽ thấy các items khác được xác định bởi item đã chọn, hoặc ngược lại, trong mô hình.

Ta có thể kéo thanh trƣợt (Slile) bên phải để xem các mức độ kết hợp (mạnh hay yếu) giữ các Items trong model

Trong Dependency Net, nếu chọn Node 5901909000 ta sẽ thấy rằng Item

5901909000 có thể đƣợc dự đoán bởi 2 items khác đó là 5407690000 và

5806399000 hoặc 5901909000 đƣợc dùng để dự đoán 2 Items 5407690000 và

5806399000 (Dấu mũi tên 2 chiều, xem hình dưới).

Hình 3.12 Chi tiết node trong mạng phụ thuộc

Kết quả từ Microsoft Association Rules cung cấp mối quan hệ và tương quan giữa các mã mặt hàng Từ các mã này, chúng ta có thể tham khảo bảng danh mục HS để xác định các mặt hàng tương ứng.

TT Mã HS Mô tả

1 5401100000 54: Sợi filament nhân tạo; sợi dạng dải và các dạng tương tự từ nguyên liệu dệt nhân tạo

5401: Chỉ khâu làm từ sợi filament nhân tạo, đã hoặc chƣa đóng gói để bán lẻ

540110: Từ sợi filament tổng hợp

2 5807900000 58: Các loại vải dệt thoi đặc biệt; các loại vải dệt chần sợi vòng; hàng ren; thảm trang trí; hàng trang trí; hàng thêu

Các loại nhãn, phù hiệu và mặt hàng tương tự được làm từ vật liệu dệt, có thể ở dạng chiếc, dạng dải hoặc đã cắt theo hình dáng và kích cỡ, không bao gồm các sản phẩm thêu Mã hàng 58079000 chỉ định các loại nhãn khác không được phân loại cụ thể.

3 5901909000 59: Các loại vải dệt đã đƣợc ngâm tẩm, tráng, phủ hoặc ép lớp; các mặt hàng dệt thích hợp dùng trong công nghiệp

Vải dệt 5901 được tráng keo hoặc hồ tinh bột, thường được sử dụng để bọc ngoài bìa sách và các sản phẩm tương tự Loại vải này bao gồm vải can, vải bạt đã qua xử lý để vẽ, cùng với vải hồ cứng và các loại vải dệt đã được làm cứng tương tự, phục vụ cho việc làm cốt mũ.

4 5604100000 56: Mền xơ, phớt và các sản phẩm không dệt; các loại sợi đặc biệt; sợi xe, sợi coóc (cordage),

TT Mã HS Mô tả chúng

Chỉ cao su và sợi cao su (cord) được bọc bằng vật liệu dệt, bao gồm sợi dệt và dải tương tự thuộc nhóm 54.04 hoặc 54.05, đã trải qua quá trình ngâm tẩm, tráng, phủ hoặc bao ngoài bằng cao su hoặc nhựa.

56041000 - Chỉ cao su và sợi (cord) cao su, đƣợc bọc bằng vật liệu dệt

5 5806399000 58: Các loại vải dệt thoi đặc biệt; các loại vải dệt chần sợi vòng; hàng ren; thảm trang trí; hàng trang trí; hàng thêu

Vải dệt thoi khổ hẹp 5806 bao gồm các loại vải không thuộc nhóm 58.07, với đặc điểm là toàn bộ sợi dọc không có sợi ngang và được liên kết bằng chất keo dính (bolducs).

580639 - - Từ vật liệu dệt khác:

58063991 - - - - Làm nền cho giấy cách điện

Bảng 3.19 cung cấp thông tin chi tiết về mã HS, cho thấy khả năng nhập khẩu hàng hóa cùng nhau Thông tin này hỗ trợ cơ quan Hải quan trong việc quản lý, kiểm tra hàng hóa trên tờ khai, đồng thời dự đoán và cung cấp thông tin về tình hình xuất nhập khẩu.

Đánh giá kết quả

Công cụ BIDS đã đơn giản hóa quá trình khai phá luật kết hợp cho cơ sở dữ liệu xuất nhập khẩu, cho phép truy xuất thông tin về tập phổ biến (Itemset) và phát hiện các luật kết hợp trong cơ sở dữ liệu Ví dụ, khi một doanh nghiệp nhập khẩu mặt hàng vải dệt cứng dùng trong công nghiệp (mã 5901909000) và cao su, sợi plastic, hệ thống có thể nhận diện mối liên hệ giữa các mặt hàng này.

Các doanh nghiệp trong nước nên chú ý đến nhu cầu và xu hướng nhập khẩu các loại vải trang trí, hàng ren và hàng thêu để chuẩn bị và sản xuất các mặt hàng tương tự Việc này không chỉ giúp giảm thiểu nhập khẩu mà còn thúc đẩy sự phát triển của ngành công nghiệp phụ trợ trong nước Nếu nhận diện được nhiều sự kết hợp như vậy, thông tin sẽ được cung cấp cho các ban ngành khác nhau, từ đó dự đoán và phát triển các ngành hàng nội địa, góp phần vào sự phát triển kinh tế bền vững và mang lại lợi ích lớn cho cộng đồng.

Quá trình khai phá đã thử nghiệm với CSDL xuất nhập khẩu với số lƣợng

212432 tờ khai trong năm 2011 với 22 đơn vị Hải quan Số lƣợng bản ghi trên không lớn do vậy thời gian xử lý là tương đối nhỏ và nhanh.

Kết luận

Cơ sở dữ liệu xuất nhập khẩu của cơ quan Hải quan là nguồn thông tin lớn, chứa nhiều dữ liệu quan trọng về hoạt động xuất nhập khẩu của cá nhân và doanh nghiệp Những thông tin này hỗ trợ công tác thông tin, dự báo, điều chỉnh và định hướng phát triển kinh tế xã hội cho các cơ quan chức năng Tuy nhiên, hiện tại, dữ liệu chủ yếu chỉ được sử dụng để thống kê và báo cáo, thiếu các phân tích sâu về mối quan hệ và tương quan giữa các thông tin trong cơ sở dữ liệu.

Trong chương trước, chúng ta đã sử dụng công cụ BIDS để nhanh chóng và thuận tiện khai thác, phát hiện mối quan hệ giữa các mặt hàng trong quá trình nhập khẩu của doanh nghiệp Kết quả này, kết hợp với những tính năng đã được giới thiệu về BIDS trong chương 2, mang lại cho chúng ta một lựa chọn tối ưu khi tiến hành khai thác dữ liệu từ cơ sở dữ liệu quan hệ trên nền tảng SQL Server của Microsoft.

Ngày đăng: 17/12/2023, 01:56

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN