Archive

Posts Tagged ‘Data Mining’

ỨNG DỤNG GIẢI THUẬT MICROSOFT TIME SERIES ALGORITHM TRONG SQL SERVER ANALYSIS SERVICES

November 20, 2009 1 comment

Giới thiệu tổng quan

Giải thuật trục thời gian dựa trên cơ sở giải thuật truy hồi nhằm tối ưu hóa việc dự đoán các chuỗi giá trị liên tục như dữ liệu bán hang sản phẩm. Trái lại, với các giải thuật khai thác dữ liệu khác như giải thuật cây quyết định, yêu cầu thêm một số thông tin đầu vào nhằm mục đích dự đoán các xu hướng kế tiếp của dữ liệu, đây là một vấn đề mà mô hình giải thuật trục thời gian không thực hiện được. Một mô hình giải thuật theo trục thời gian có thể dự đoán các xu hướng của dữ liệu, tuy nhiên phải dựa trên tập dữ liệu gốc được dùng để xây dựng mô hình và ta hoàn toàn có thể thêm mới các cột dữ liệu đầu vào, tự động kết hợp với nguồn dữ liệu hiện tại một cách hoàn toàn tự động trong quá trình phân tích dự đoán thông tin.

Sơ đồ dưới đây là một mô hình điển hình về việc dự đoán kinh doanh sản phẩm trên 4 khu vực chiến lược theo trục thời gian. Đường vạch phân vùng thông tin thành 2 phần riêng biệt:

· Thông tin dữ liệu hiện tại của tổ chức nằm bên trái, được thể hiện và sử dụng để xây dựng mô hình.

· Thông tin dự đoán nằm bên phải thể hiện thông tin dự đoán.

Một năng lực quan trọng nhất của giải thuật dự đoán dự trên trục thời gian là khả năng dự đoán xuyên suốt, nghĩa là nếu ta tiến hành dự đoán 2 chuỗi thông tin rời rạc nhau hoàn toàn, nhưng lại có liên hệ với nhau, ta vẫn có thể dùng mô hình để lấy ra được kết quả, để tiến hành làm dữ liệu đầu vào dự đoán cho một mô hình dự đoán kế tiếp. Ví dụ, việc giám sát hoạt động kinh doanh trên một sản phẩm có ảnh hưởng đến việc dự đoán đến hoạt động kinh doanh của các sản phẩm khác. Khả năng dự đoán xuyên suốt này có vai trò rất quan trọng, vì khả năng này sẽ giúp xây dựng một mô hình dự đoán chung nhất, ứng dụng cho nhiều mảng công việc, từng chuỗi sự kiện khác nhau, điển hình là khi xây dựng mô hình dự đoán dữ liệu cho 4 khu vực kinh doanh khác nhau, nếu như ta tiến hành xây dựng 4 mô hình giải thuật khác nhau thì sẽ gây sự không ổn định do nguyên nhân là do dữ liệu tại mỗi khu vực không đầy đủ, nhất quán và chất lượng kém. Do đó giải pháp cho chúng ta là tiến hành xây dựng một mô hình dự đoán dữ liệu chung nhất cho cả 4 khu vực trên, sau đó ứng dụng mô hình dự đoán này vào cho từng khu vực cụ thể để đảm bảo khả năng dự đoán thông tin ổn định cho mỗi vùng.

Case Study

Nhóm quản lí tại công ty Adventure Works Cycles muốn tiến hành dự đoán thông tin bán hàng mỗi tháng trong năm tới. Công ty muốn sử dụng mô hình bán hàng trên dòng sản phẩm xe đạp, có thể được sử dụng vào dự đoán các mô hình bán hàng các dòng sản phẩm khác của công ty. Sử dụng giải thuật dự đoán dựa trên trục thời gian với dữ liệu trong 3 năm qua, công ty tiến hành xây dựng mô hình khai thác dữ liệu, dự đoán hoạt động bán hàng của công ty trong tương lai. Ngoài ra, công ty có thể xây dựng một mô hình dự đoán xuyên suốt đối với các xu hướng, phân khúc kinh doanh có mối liên hệ với nhau.

Yêu cầu dữ liệu đối với mô hình khai thác dữ liệu dựa trên trục thời gian thực

Khi tiến hành tập huấn, xây dựng bất cứ mô hình dữ liệu nào, ta cũng cần phải nắm rõ các yêu cầu cụ thể cho từng mô hình

Mỗi mô hình dự đoán phải bao gồm một chuỗi các trường hợp, gồm có cột đặc tả thời gian và các chuỗi thông tin khác khi xuất hiện thay đổi, ví dụ như biểu đồ trên thể hiện doanh thu bán hàng trên dữ liệu trong thời gian qua, nhưng đồng thời cũng tiến hành dự đoán doanh số bán hàng các tháng tiếp theo, và cũng là một case series. Trong mô hình này, các vùng địa lí chính là chuỗi mang các giá trị tương ứng với chuỗi thời gian. Trong mô hình khác, chuỗi các giá trị có thể là text hoặc các kiểu dữ liệu khác, nhưng chuỗi thời gian luôn là kiểu dữ liệu datetime.

Một số yêu cầu trong mô hình dự đoán trên trục thời gian:

  • Cột giá trị khóa thời gian đơn: Mỗi mô hình phải tồn tại một case series đơn nhất, giá trị là kiểu datetime và thuộc một column đơn. Giá trị thuộc cột này phải là giá trị liên tục.
  • Cột giá trị dự đoán: đây là cột mang giá trị dự đoán trong mô hình khai thác dữ liệu theo thời gian. Giá trị trong cột dự đoán này mang các giá trị liên tục, ví dụ như thu nhập, doanh số bán hàng, nhiệt độ, …
  • Các cột giá trị tùy chọn: Mỗi mô hình có một số cột giá trị tùy chọn

Tổng quan về các giải thuật khai thác dữ liệu có trong SQL Server Analysis Services


Giới thiệu tổng quan

Giải thuật Data Mining là kỹ thuật nhằm mục đích xây dựng các mô hình khai thác dữ liệu. Để xây dựng các mô hình khai thác dữ liệu thì một giải thuật, trước tiên phải tiến hành phân tích tập các dữ liệu và tìm kiếm các mẫu đặc trưng của dữ liệu. Giải thuật sử dụng các kết quả của việc phân tích này để xác định các tham số của mô hình khai thác. Các tham số này sẽ được áp dụng vào tập dữ liệu hiện tại để chiết xuất các mẫu thể hiện thông tin và các báo cáo thống kê chi tiết.

Mô hình khai thác dữ liệu do cùng một giải thuật Data Mining xây dựng có nhiều hình thức khác nhau, gồm có:

  • Tập các luật đặc tả cách thức mà các sản phẩm được nhóm lại với nhau trong cùng một giao tác hiện thực.
  • Cây quyết định dự đoán một người khách hàng có chăng sẽ mua sản phẩm của công ty.
  • Biểu đồ toán học dự báo hoạt động bán hàng.
  • Tập các nhóm thể hiện các trường hợp mà các nhóm dữ liệu có liên quan đến nhau

Microsoft SQL Server Analysis Services cung cấp các giải thuật cho việc xây dựng các giải pháp khai thác dữ liệu. Các giải thuật được sử dụng trong SSAS là tập con của nhiều giải thuật Data Mining khác.

Các nhóm giải thuật Data Mining

SQL Server Analysis Services cung cấp công cụ phân tích và khai thác dữ liệu dựa trên cơ sở 5 giải thuật Data Mining sau:

  • Giải thuật phân loại (Classification Algorithm) – dự đoán ra một hoặc nhiều giá trị biến rời rạc, dựa trên các thuộc tính khác của tập dữ liệu. Điển hình là giải thuật Cây Quyết Định – Microsoft Decision Trees Algorithm.
  • Giải thuật đệ qui (Regression Algorithm) – dự đoán một hoặc nhiều biến giá trị liên tục, như lợi nhuận và giá trị thua lỗ, dựa trên các thuộc tính dữ liệu khác trong tập dữ liệu. Điển hình là giải thuật chuỗi thời gian – Microsoft Time Series Algorithm.
  • Giải thuật phân đoạn (Segmentation Algorithm) – phân chia dữ liệu thành nhiều nhóm gồm các thành phần có thuộc tính tương tự nhau. Giải thuật điển hình là Microsoft Clustering Algorithm.
  • Giải thuật tương quan (Assocication Algorithm) – tìm sự tương quan giữa các thuộc tính trong củng tập dữ liệu. Ứng dụng phổ biến nhất của giải thuật này là xây dựng các luật tương quan, phân tích giỏ hàng. Giải thuật điển hình loại giải thuật này là Microsoft Assocciation Algorithm
  • Giải thuật phân tích tuyến tính (Sequence Analysis Allgorithm) – tổng kết các chuỗi hoặc mảng dữ liệu trong tập dữ liệu. Điển hình cho loại giải thuật này là Microsoft Sequence Clustering Algorithm

Ứng dụng của các giải thuật

Việc chọn lựa các giải thuật tối ưu để sử dụng cho một tác vụ nghiệp vụ đặc trưng thật sự là một thách thức rất lớn. Nguyên nhân do vấn đề là bạn có thể sử dụng rất nhiều giải thuật khác nhau cho cùng một tác vụ nghiệp vụ cụ thể, và mỗi loại giải thuật sẽ cho các kết quả khác nhau, không những thế, một số loại giải thuật có thể cho ra nhiều kết quả của cùng một tác vụ.

Ví dụ, bạn có thể dùng giải thuật cây quyết định không chỉ để dự đoán mà còn nhằm mục đích giảm số lượng cột trong tập dữ liệu, bởi vì cây quyết định có thể xác định các cột thuộc tính dữ liệu không có tác dụng trong mô hình khai thác dữ liệu.

Một vấn đề khác là bạn không sử dụng giải thuật một cách độc lập. Trong một mô hình khai thác dữ liệu đơn nhất, bạn có thể sử dụng nhiều giải thuật kết hợp với nhau, một số giải thuật hỗ trợ trong việc khai thác dữ liệu, một số giải thuật khác hỗ trợ việc dự đoán kết quả dựa trên tập dữ liệu hiện có. Ví dụ, ta có thể dùng giải thuật Clustering để nhận dạng các mẫu dữ liệu, phân loại dữ liệu thành các nhóm, sau đó sử dụng kết quả để xây dựng mô hình khai thác dữ liệu tốt hơn với giải thuật cây quyết định.

Ngoài ra, ta có thể sử dụng nhiều giải thuật trong cùng một dự án để thực hiện một số tác vụ, ví dụ dùng giải thuật truy hồi đệ qui để thể hiện các thông tin tài chính và dự đoán kinh doanh, và giải thuật dựa trên các luật để thực hiện việc phân tích giỏ hàng sản phẩm.

Mục tiêu của mô hình khai thác dữ liệu là khả năng dự đoán, đưa ra các thông tin thống kê, tổng kết và tìm kiếm sự tương quan ẩn. Bảng mô tả dưới đây trình bày sự phân loại các giải thuật vào một số chức năng tác vụ đặc trưng.

 

Tác vụ đặc trưng

Giải thuật sử dụng

Dự đoán các giá trị thuộc tính có tính riêng biệt
Ví dụ: Dự đoán người nhận mail có khả năng mua sản phẩm trong một chiến dịch gửi mail PR

  • Microsoft Decision Tree Algorithm
  • Microsoft Naïve Bayes Algorithm
  • Microsoft Clustering Algorithm
  • Microsoft Neural Network Algorithm

Dự đoán các thuộc tính có tính liên tục
Ví dụ: Dự đoán hoạt động bán hàng các năm tới

  • Microsoft Decision Tree Algorithm
  • Microsoft Time Series Algorithm

Dự đoán chuỗi các tác vụ

Ví dụ: Phân tích chuỗi các hoạt động của người dùng trên Website

  • Microsoft Sequence Clustering Algorithm

Tìm kiếm nhóm các đối tượng trong giao tác hiện thực

Ví dụ: Phân tích giỏ hàng để tiến hành tư vấn, đề nghi cho khách hàng

  • Microsoft Association Algorithm
  • Microsoft Decision Tree Algorithm

Tìm kiếm các nhóm đối tượng tương tự nhau

Ví dụ: Phân đoạn dữ liệu thành các nhóm để nắm rõ hơn mối quan hệ giữa các thuộc tính.

· Microsoft Clustering Algorithm

· Microsoft Sequence Clustering Algorithm

Tài liệu tham khảo: http://msdn.microsoft.com

Categories: SQL Server Tags: , ,