Microsoft Time Series 3.1. Định nghĩa

Một phần của tài liệu báo cáo đề tài bài tập nhóm đề tài tìm hiểu về các kỹ thuật data mining trong sql server (Trang 30 - 35)

CHƯƠNG 2: CÁC KỸ THUẬT DATA MINING TRONG SQL SERVER I. Microsoft Decision Tree

III. Microsoft Time Series 3.1. Định nghĩa

Thuật toán Microsoft time series cung cấp nhiều thuật toán được tối ưu hóa để dự báo các giá trị liên tục, chẳng hạn như doanh số bán sản phẩm, theo thời gian. Trong khi các thuật toán khác của Microsoft, chẳng hạn như decision trees, yêu cầu các cột thông tin mới bổ sung làm đầu vào để dự đoán xu hướng thì mô hình time series lại không như vậy. Mô hình time series có thể dự đoán xu hướng chỉ dựa trên tập dữ liệu gốc được sử dụng để tạo mô hình.

Sơ đồ sau đây thể hiện một mô hình điển hình để dự báo doanh số bán sản phẩm ở bốn khu vực bán hàng khác nhau theo thời gian. Mô hình được hiển thị trong sơ đồ cho thấy doanh số bán hàng cho từng khu vực được biểu thị bằng các đường màu đỏ, vàng, tím và xanh lam.

Mỗi khu vực có hai phần:

Thông tin lịch sử xuất hiện ở bên trái của dòng dọc và thể hiện dữ liệu mà thuật toán sử dụng để tạo mô hình.

Thông tin dự đoán xuất hiện ở bên phải đường thẳng đứng và thể hiện dự báo mà mô hình đưa ra

- Sự kết hợp giữa dữ liệu nguồn và dữ liệu dự đoán được gọi là series

- Một tính năng quan trọng của thuật toán Microsoft Time Series là nó có thể thực hiện dự đoán chéo(cross prediction). Nếu huấn luyện thuật toán với hai chuỗi riêng biệt nhưng có liên quan, bạn có thể sử dụng mô hình kết quả để dự đoán kết quả của một chuỗi dựa trên hành vi của chuỗi kia. Ví dụ: doanh số bán hàng được quan sát của một sản phẩm có thể ảnh hưởng đến doanh số dự kiến của sản phẩm khác. Dự đoán chéo cũng hữu ích trong việc tạo

ra một mô hình chung có thể áp dụng cho nhiều chuỗi. Ví dụ: dự đoán cho một khu vực cụ thể không ổn định do chuỗi thiếu dữ liệu chất lượng tốt. Bạn có thể huấn luyện một mô hình chung về trung bình của cả bốn vùng, sau đó áp dụng mô hình đó cho từng chuỗi riêng lẻ để tạo ra các dự đoán ổn định hơn cho từng vùng.

- Ví dụ: Đội ngũ quản lý tại một công ty muốn dự đoán doanh số bán xe đạp hàng tháng trong năm tới. Công ty đặc biệt quan tâm đến việc liệu việc bán một mẫu xe đạp có thể được sử dụng để dự đoán doanh số của một mẫu xe khác hay không. Bằng cách sử dụng thuật toán Microsoft Time Series trên dữ liệu lịch sử trong ba năm qua, công ty có thể tạo ra mô hình datamining để dự báo doanh số bán xe đạp trong tương lai. Ngoài ra, công ty có thể thực hiện các dự đoán chéo để xem liệu xu hướng bán hàng của từng mẫu xe đạp có liên quan với nhau hay không.

Mỗi quý, công ty có kế hoạch cập nhật mô hình với dữ liệu bán hàng gần đây và cập nhật dự đoán của họ để mô hình hóa các xu hướng gần đây. Để khắc phục những cửa hàng không cập nhật dữ liệu bán hàng chính xác hoặc nhất quán, họ sẽ tạo mô hình dự đoán chung và sử dụng mô hình đó để tạo dự đoán cho tất cả các khu vực.

3.2. Cách thuật toán hoạt động

- trong SQL Server 2005 (9.x), thuật toán Chuỗi thời gian của Microsoft đã sử dụng một phương pháp chuỗi thời gian tự động hồi quy duy nhất, có tên là ARTXP. Thuật toán ARTXP đã được tối ưu hóa cho các dự đoán ngắn hạn và do đó, rất xuất sắc trong việc dự đoán giá trị có thể xảy ra tiếp theo trong chuỗi. Bắt đầu từ SQL Server 2008, thuật toán Microsoft Time Series đã thêm thuật toán thứ hai, ARIMA, được tối ưu hóa cho dự đoán dài hạn.

- Theo mặc định, thuật toán Chuỗi thời gian của Microsoft sử dụng kết hợp các thuật toán khi phân tích mẫu và đưa ra dự đoán. Thuật toán đào tạo hai mô hình riêng biệt trên cùng một dữ liệu: một mô hình sử dụng thuật toán ARTXP và một mô hình sử dụng thuật toán ARIMA. Sau đó, thuật toán kết hợp các kết quả của hai mô hình để đưa ra dự đoán tốt nhất trong một số khoảng thời gian khác nhau. Vì ARTXP là lựa chọn tốt nhất cho các dự đoán ngắn hạn nên nó có trọng số cao hơn khi bắt đầu một loạt dự đoán. Tuy nhiên, khi khoảng thời gian mà bạn dự đoán tiến xa hơn về phía tương lai, ARIMA sẽ có trọng số lớn hơn.

- Bạn cũng có thể kiểm soát việc kết hợp các thuật toán để ưu tiên dự đoán ngắn hạn hoặc dài hạn theo chuỗi thời gian. Bắt đầu từ SQL Server 2008 standard, bạn có thể chỉ định thuật toán nào sẽ sử dụng:

Chỉ sử dụng ARTXP để dự đoán ngắn hạn.

Chỉ sử dụng ARIMA để dự đoán dài hạn.

Sử dụng sự kết hợp mặc định của hai thuật toán.

Bắt đầu từ SQL Server 2008 Enterprise, bạn cũng có thể tùy chỉnh cách thuật toán time series của Microsoft kết hợp các mô hình để dự đoán. Khi bạn sử dụng mô hình hỗn hợp, thuật toán time series của Microsoft sẽ kết hợp hai thuật toán theo cách sau:

Chỉ ARTXP luôn được sử dụng để đưa ra một vài dự đoán đầu tiên.

Sau vài dự đoán đầu tiên, sự kết hợp giữa ARIMA và ARTXP sẽ được sử dụng.

Khi số bước dự đoán tăng lên, các dự đoán sẽ phụ thuộc nhiều hơn vào ARIMA cho đến khi ARTXP không còn được sử dụng nữa.

Bạn kiểm soát điểm trộn, tốc độ giảm trọng lượng ARTXP và tăng trọng lượng ARIMA bằng cách đặt tham số PREDICTION_SMOOTHING.

Cả hai thuật toán đều có thể phát hiện tính thời vụ của dữ liệu ở nhiều cấp độ. Ví dụ: dữ liệu của bạn có thể chứa các chu kỳ hàng tháng được lồng trong các chu kỳ hàng năm. Để phát hiện các chu kỳ theo mùa này, bạn có thể cung cấp gợi ý về tính tuần hoàn hoặc chỉ định rằng thuật toán sẽ tự động phát hiện tính tuần hoàn.

Ngoài tính tuần hoàn, còn có một số tham số khác kiểm soát hoạt động của thuật toán Microsoft Time Series khi nó phát hiện tính tuần hoàn, đưa ra dự đoán hoặc phân tích các trường hợp. Để biết thông tin về cách đặt tham số thuật toán, hãy xem Tài liệu tham khảo kỹ thuật về thuật toán timeseries của Microsoft.

3.3. Dữ liệu cần cho Time series model

- Các yêu cầu đối với mô hình chuỗi thời gian như sau:

Một cột thời gian khóa duy nhất Mỗi mô hình phải chứa một cột số hoặc cột ngày được sử dụng làm chuỗi trường hợp, xác định các lát thời gian mà mô hình sẽ sử dụng. Kiểu dữ liệu cho cột thời gian chính có thể là kiểu dữ liệu ngày giờ hoặc kiểu dữ liệu số. Tuy nhiên, cột phải chứa các giá trị liên tục và các giá trị phải là duy nhất cho mỗi chuỗi. Chuỗi trường hợp cho mô hình chuỗi thời gian không thể được lưu trữ trong hai cột, chẳng hạn như cột Năm và cột Tháng.

Một cột có thể dự đoán được Mỗi mô hình phải chứa ít nhất một cột có thể dự đoán được xung quanh đó thuật toán sẽ xây dựng mô hình chuỗi thời gian. Kiểu dữ liệu của cột dự đoán phải có giá trị liên tục. Ví dụ: bạn có thể dự đoán các thuộc tính số như thu nhập, doanh số bán hàng hoặc nhiệt độ thay đổi như thế nào theo thời gian. Tuy nhiên, bạn không thể sử dụng cột chứa các giá trị riêng biệt, chẳng hạn như trạng thái mua hàng hoặc trình độ học vấn, làm cột có thể dự đoán được.

Cột khóa chuỗi tùy chọn Mỗi mô hình có thể có một cột khóa bổ sung chứa các giá trị duy nhất xác định một chuỗi. Cột khóa chuỗi tùy chọn phải chứa các giá trị duy nhất. Ví dụ: một mô hình có thể chứa doanh số bán hàng của nhiều mẫu sản phẩm, miễn là chỉ có một bản ghi cho mỗi tên sản phẩm cho mỗi lát cắt thời gian.

Bạn có thể xác định dữ liệu đầu vào cho mô hình Chuỗi thời gian của Microsoft theo nhiều cách khác nhau. Tuy nhiên, do định dạng của các trường hợp đầu vào ảnh hưởng đến định nghĩa của mô hình khai thác nên bạn phải xem xét nhu cầu kinh doanh của mình và chuẩn bị dữ liệu cho phù hợp. Hai ví dụ sau minh họa cách dữ liệu đầu vào ảnh hưởng đến mô hình.

Trong cả hai ví dụ, mô hình khai thác hoàn chỉnh chứa các mẫu cho bốn chuỗi riêng biệt:

Doanh số bán sản phẩm A Bán hàng cho sản phẩm B Khối lượng cho sản phẩm A Khối lượng cho sản phẩm B

Trong cả hai ví dụ, bạn có thể dự đoán doanh số và số lượng mới trong tương lai cho từng sản phẩm. Bạn không thể dự đoán giá trị mới cho sản phẩm hoặc thời gian.

3.4. Quan sát time series model

Sau khi mô hình được đào tạo, kết quả sẽ được lưu trữ dưới dạng tập hợp các mẫu mà bạn có thể khám phá hoặc sử dụng để đưa ra dự đoán.

Để khám phá mô hình, bạn có thể sử dụng Trình xem chuỗi thời gian. Trình xem bao gồm biểu đồ hiển thị các dự đoán trong tương lai và chế độ xem dạng cây về các cấu trúc định kỳ trong dữ liệu.

Nếu muốn biết thêm về cách tính toán dự đoán, bạn có thể duyệt mô hình trong Microsoft Generic Content Tree Viewer. Nội dung được lưu trữ cho mô hình bao gồm các chi tiết như cấu trúc tuần hoàn được phát hiện bởi thuật toán ARIMA và ARTXP, phương trình được sử dụng để kết hợp các thuật toán và các số liệu thống kê khác.

3.5. tạo time series predictions

- Theo mặc định, khi bạn xem mô hình chuỗi thời gian, SQL Server Analysis Services sẽ hiển thị năm dự đoán cho chuỗi. Tuy nhiên, bạn có thể tạo truy vấn để trả về số lượng dự đoán khác nhau và bạn có thể thêm cột vào dự đoán để trả về số liệu thống kê mô tả.

- Khi sử dụng thuật toán Chuỗi thời gian của Microsoft để đưa ra dự đoán, bạn nên xem xét các hạn chế và yêu cầu bổ sung sau:

Dự đoán chéo chỉ khả dụng khi bạn sử dụng mô hình hỗn hợp hoặc khi bạn sử dụng mô hình chỉ dựa trên thuật toán ARTXP. Nếu bạn sử dụng mô hình chỉ dựa trên thuật toán ARIMA thì không thể dự đoán chéo.

Mô hình chuỗi thời gian có thể đưa ra các dự đoán khác nhau, đôi khi đáng kể, tùy thuộc vào hệ điều hành 64 bit mà máy chủ sử dụng. Những khác biệt này xảy ra do cách hệ thống dựa trên Itanium biểu thị và xử lý các số cho số học dấu phẩy động, khác với cách hệ thống dựa trên x64 thực hiện các phép tính này. Vì kết quả dự đoán có thể dành riêng cho hệ điều hành nên chúng tôi khuyên bạn nên đánh giá các mô hình trên cùng hệ điều hành mà bạn sẽ sử dụng trong sản xuất.

Một phần của tài liệu báo cáo đề tài bài tập nhóm đề tài tìm hiểu về các kỹ thuật data mining trong sql server (Trang 30 - 35)

Tải bản đầy đủ (PDF)

(78 trang)