Tích hợp khai phá dữ liệu trong InfoSphere Warehouse với việc tạo báo cáo Cognos của IBM, Phần 3: Gọi khai phá động từ Cognos khi sử dụng một ví dụ phân tích giỏ thị trường pot - Pdf 20

Tích hợp khai phá dữ liệu trong InfoSphere Warehouse với việc tạo báo cáo
Cognos của IBM, Phần 3: Gọi khai phá động từ Cognos khi sử dụng một ví
dụ phân tích giỏ thị trường
Benjamin G. Leonhardi, Kỹ sư phần mềm, IBM
Christoph Sieb, Kỹ sư phần mềm cao cấp, IBM
Dr. Michael J. Wurst, Kỹ sư phần mềm cao cấp, IBM
Tóm tắt: Các quy tắc kết hợp biểu thị các mặt hàng, các sự kiện hoặc các thực thể
khác nào thường xảy ra đồng thời trong các tập dữ liệu lớn. Ví dụ, có thể áp dụng
kiến thức này trong việc phân tích giỏ hàng (ND: một lần mua sắm ở một cửa
hàng có thể được xem như một giao dịch và tất cả các mặt hàng đã mua trong quá
trình này sau đó cùng xuất hiện và được gọi là một giỏ hàng hay giỏ thị trường) để
sử dụng các tiềm năng bán hàng chéo bằng cách giới thiệu các sản phẩm thường
được mua cùng với nhau. Bạn có thể áp dụng khai phá các quy tắc kết hợp trong
InfoSphere Warehouse và xuất khẩu mô hình kết quả tới các báo cáo Cognos,
tương tự như cách các bài viết trước trong loạt bài này đã làm với các mô hình
Cụm và Phân loại. Do việc khai phá quy tắc kết hợp là một nhiệm vụ tương tác
cao, nên một giải pháp tốt hơn sẽ là cho phép người dùng gọi khai phá trực tiếp từ
một báo cáo Cognos, có thể chỉ định các tham số bổ sung. Cách tiếp cận như vậy
có thể được bao hàm như là khai phá đặc biệt hoặc khai phá động. Trong bài viết
này, bạn sẽ tìm hiểu để đạt được điều này.
Mở đầu
Khi bạn đang làm việc với lượng dữ liệu lớn, điều quan trọng là bạn hiểu rõ các
quy tắc về các thực thể khác nhau có liên quan với nhau như thế nào. Thường phát
hiện ra các quy tắc này là một quá trình phức tạp. Các quy tắc kết hợp rất đơn giản
chỉ là chủ nghĩa hình thức có tác động mạnh đến các quy tắc mô tả các tập dữ liệu
vì chúng biểu thị các thực thể nào có thể xuất hiện đồng thời với nhau.
Một ví dụ truyền thống về các quy tắc kết hợp có thể thường thấy trong lĩnh vực
bán lẻ. Ví dụ, một quy tắc kết hợp chung là “NẾU trứng VÀ sữa thì SAU ĐÓ là
đường” nói lên rằng khi mua hàng nhiều khách hàng mua trứng và sữa cũng mua
đường. Quy tắc này có thể được phát hiện có hiệu quả thậm chí từ các các tập dữ
liệu rất lớn. InfoSphere Warehouse cho phép bạn tìm các quy tắc này một cách


Như bạn thấy, máy tính (PC) được mua khá thường xuyên. Ngoài ra, sự kết hợp
của máy tính và màn hình (Monitor) xuất hiện trong 20% các giao dịch. Như bạn
cũng có thể thấy, trong 50% trường hợp đã mua một máy tính (PC) và màn hình
(Monitor), cũng mua một con chuột (Mouse). Nếu chúng ta lấy điều này làm một
quy tắc: [PC, Monitor]->Mouse, ở đây [Pc, Monitor] là phần thân còn Mouse là
phần đầu hoặc phần đích, thì số lượng các giao dịch bao gồm các phần thân và
phần đầu được chia cho số lượng tất cả các giao dịch có hiệu lực được gọi là sự hỗ
trợ (20%). Cách tính này cho chúng ta biết quy tắc này xuất hiện trong dữ liệu
thường xuyên như thế nào. Mặc dù nó không cho chúng ta biết độ chính xác của
quy tắc này bằng bao nhiêu. Độ tin cậy mô tả tỷ lệ phần trăm số lần phần thân của
một quy tắc xuất hiện trong một giao dịch và phần đầu cũng xuất hiện. Điều này
mang đến thông tin về tính chính xác của quy tắc này. Khai phá các quy tắc kết
hợp đòi hỏi người sử dụng phải nói sự hỗ trợ và độ tin cậy tối thiểu. Sau đó thuật
toán xác định chính xác các cách kết hợp các mặt hàng và các quy tắc để thực hiện
tiêu chuẩn này
Có nhiều kịch bản ứng dụng trong đó sử dụng khai phá quy tắc kết hợp. Chúng ta
đã đề cập đến một sự khai phá nổi bật nhất: đó là bán lẻ. Ví dụ, các quy tắc kết
hợp được dùng để sắp xếp hàng hóa trong một siêu thị sao cho các sản phẩm
thường được mua trong cùng một lần truy cập đến một cửa hàng được đặt gần
nhau. Quan trọng hơn là, sử dụng các quy tắc kết hợp để tận dụng tiềm năng bán
hàng chéo trong thương mại điện tử bằng cách giới thiệu cho những người sử dụng
các mặt hàng nào có thể cần quan tâm thêm nữa với họ. Một lĩnh vực ứng dụng
khác là chăm sóc sức khỏe. Có thể sử dụng các quy tắc kết hợp để tìm hiểu về các
vấn đề sức khỏe thường xuất hiện cùng nhau để cho các bệnh nhân có chẩn đoán
cụ thể có thể được khám các vấn đề sức khỏe phát sinh thường đi kèm với nhau
trong chẩn đoán này. Các lĩnh vực ứng dụng khác bao gồm phát hiện xâm nhập,
phân tích bản ghi nhật ký web, các mẫu truy cập cơ sở dữ liệu và v.v.
Một biến thể hơi khác một chút của các quy tắc kết hợp là các quy tắc tuần tự. Các
quy tắc này không những nói rõ các thực thể nào mà còn nói rõ các sự kiện nào có

bằng lệnh IDMMX.DM_getRules hoặc bằng toán tử Extractor trong
DesignStudio. Tập kết quả chứa một quy tắc cho mỗi bản ghi với thông tin sau:
 phần đầu
 phần thân
 độ tin cậy
 hỗ trợ
 nâng lên
 chiều dài
Bảng có các quy tắc được trích xuất có thể trông như sau:

Hình 3. Bảng các quy tắc

Phần dưới đây cho thấy cách bạn có thể chuyển giao thông tin này tới Cognos để
hiển thị trực quan nó theo cách tiện lợi. Gọi các thủ tục khai phá từ Cognos
Trong bài viết trước, bạn đã thấy rằng có thể gọi thủ tục DB2 đã lưu trữ từ Cognos
Reporting (Việc tạo báo cáo Cognos) bằng cách bao gồm chúng như là Query
Subjects (Các truy vấn đối tượng) trong Cognos Metadata (Siêu dữ liệu Cognos).
Điều này làm cho thủ tục đã lưu trữ thực hiện ngay báo cáo được chạy và sau đó
bạn có thể sử dụng nó để trích xuất thông tin từ một mô hình khai phá PMML
(Ngôn ngữ đánh dấu mô hình hóa dự báo) hiện có.
Trong bài này, hãy tiến thêm một bước nữa và tạo một mô hình khai phá động
theo một thủ tục đã lưu trữ được tham số hóa bằng cách sử dụng SQL API của
Khai phá InfoSphere Warehouse. Sau đó thủ tục đã lưu trữ tương tự trích xuất
thông tin từ mô hình và trả nó về cho Cognos Report (Báo cáo Cognos)
Thực sự chỉ có hai cuộc gọi liên quan đến quá trình tạo các quy tắc và chuyển giao
chúng cho Cognos. Một cuộc gọi để xây dựng mô hình quy tắc trong cơ sở dữ liệu
và một cuộc gọi thứ hai để trích xuất các quy tắc và trả chúng về như là tập kết

kiểm tra thủ tục SQL đã lưu trữ mà bạn muốn tạo. InfoSphere Warehouse
DesignStudio có Data perspective (Phối cảnh dữ liệu) với dự án Data
Development (Phát triển dữ liệu) đưa ra sự hỗ trợ để tạo ra các thủ tục đã lưu trữ
của Java và SQL và các hàm do người dùng định nghĩa. Một trình thủ thuật tạo
một thủ tục đã lưu trữ khuôn mẫu để giúp bạn có thể triển khai và thử nghiệm trực
tiếp từ DesignStudio.
Trong ví dụ sau đây, hãy xem cách tạo ra luồng khai phá, việc tạo mô hình kết hợp
và trích xuất các quy tắc từ nó. Sau đó hãy xem cách tạo mã SQL từ luồng này.
Trong bước tiếp theo, sử dụng việc tạo công cụ để tạo ra một thủ tục đã lưu trữ của
mã SQL. Chúng ta sẽ thêm các tham số đầu vào cho các thủ tục đã lưu trữ để sau
đó có thể được thiết lập trong Cognos Report và sẽ tham số hóa mô hình khai phá
được tạo ra. Các quy tắc được trích xuất của các mô hình kết hợp được thủ tục đã
lưu trữ trả về và được nhập khẩu vào Cognos làm các chủ thể truy vấn. Cuối cùng,
hãy tìm hiểu một báo cáo Cognos đơn giản đang chỉ ra một danh sách doanh thu
cho các sản phẩm và cho phép truy vấn ngược (ND: drill-through là một tính năng
cho phép người dùng từ báo cáo tổng hợp tìm ngược về tận bản ghi dữ liệu gốc.
Sau đây gọi là truy vấn ngược) tới các quy tắc kết hợp có liên quan với các sản
phẩm đó. Việc sử dụng các kết quả Khai phá dữ liệu động trong Các báo cáo Cognos: Một
ví dụ từ khu vực bán lẻ
Trong ví dụ này, chúng ta sẽ thực hiện phân tích giỏ hàng dựa vào dữ liệu bán lẻ
của giao dịch. Dữ liệu biểu diễn các giỏ hàng (các giao dịch) từ một cửa hàng bán
lẻ. Bảng đầu tiên chứa các mã định danh (ID) của giao dịch đang xác định một giỏ
hàng duy nhất cùng với các ID của sản phẩm. Để thu được các kết quả có ý nghĩa,
hãy áp dụng một bảng ánh xạ-tên cho các ID của sản phẩm.
Bảng này có thể có trong các ví dụ đi kèm với InfoSphere Warehouse. Để nhập
khẩu nó vào cơ sở dữ liệu của bạn:
 Mở cửa sổ lệnh DB2.

Trong Project Explorer (Trình thám hiểm Dự án), nhấn chuột phải và chọn New >
Data Warehouse project như Hình 5 minh họa.

Hình 5. Tạo một dự án Data Warehouse

Trong trình thủ thuật sau đây, gõ vào tên dự án, ví dụ, "AdvancedAnalytics." Sau
đó nhấn Finish.
Tạo ra một luồng khai phá rỗng:
 Mở rộng dự án vừa tạo ra.
 Nhấn chuột phải vào thư mục Mining Flow (Luồng khai phá). Chọn New -
> Mining Flow.
 Trong trình thủ thuật sắp tới, gõ AssocFlow làm tên luồng khai phá.
 Trong ví dụ này, bạn sẽ làm việc dựa vào cơ sở dữ liệu, do đó cứ giữ
nguyên giá trị mặc định và nhấn Next.
 Chọn cơ sở dữ liệu DWESAMP database (hoặc cơ sở dữ liệu mà bạn đã
chọn) và nhấn Finish.
Tạo luồng khai phá:
Trình soạn thảo Mining Flow mở ra. Ở phía bên phải của trình soạn thảo Khai phá,
bạn có thể thấy một bảng các toán tử. Với các toán tử này bạn có thể xây dựng một
Mining Flow bằng cách kéo và thả chúng vào khung trình soạn thảo.

Hình 6. Luồng khai phá bên trong Design Studio

Để tạo ra mô hình khai phá quy tắc kết hợp và trích xuất các quy tắc tới một bảng
cơ sở dữ liệu, hãy làm như sau:
 Trong bảng các toán tử bạn có thể tìm thấy phần Sources and Targets (Các
nguồn và các đích). Chọn một toán tử Table Source (Nguồn bảng) và kéo
nó vào trình soạn thảo.
 Trong hộp thoại chọn bảng, mở rộng lược đồ IMINER (hoặc lược đồ mặc
định của bạn) và chọn bảng RETAIL (Bán lẻ). Sau đó nhấn Finish.

Associations tạo ra và cung cấp chúng trong một cấu trúc bảng quan hệ.
 Cuối cùng, bạn phải lưu trữ các quy tắc kết hợp đã trích xuất vào một bảng
vật lý. Để làm điều này, hãy nhấn chuột phải vào cổng đầu ra "quy tắc" của
trình trích xuất và chọn Create Suitable Table (Tạo bảng thích hợp).
 Đặt tên bảng là RETAIL_RULES và, với lược đồ, chọn đồ lược đồ mặc
định ở nơi bảng RETAIL thường trú. Nhấn Finish.
 Bây giờ cần cho thấy một toán tử bảng đích cho "RETAIL_RULES" trong
luồng khai phá. Để chỉ nhận các quy tắc hiện tại cho từng lần chạy, hãy
đánh dấu chọn vào hộp kiểm tra Delete previous content (Xóa nội dung
trước đó) trong các đặc tính của các toán tử bảng đích.
 Lưu luồng khai phá.
Bây giờ, luồng khai thác đã sẵn sàng để chạy.
Chạy luồng khai phá:
Luồng này tạo ra một mô hình có chứa các quy tắc kết hợp và lưu nó như là một
mô hình PMML trong cơ sở dữ liệu. Sau đó, các quy tắc được trích xuất tới một
bảng cơ sở dữ liệu để bạn có thể truy cập chúng sau từ bên trong Cognos. Trong
khung nhìn bên dưới trình soạn thảo, chọn thẻ Execution Status (Trạng thái thực
hiện) và trên phần bên phải của khung nhìn, bạn có thể thấy đầu ra bảng của toán
tử cuối cùng, đó là, toán tử Target Table. Bảng này cho thấy các quy tắc trích xuất,
mỗi quy tắc đều có một thông tin ID, phần đầu và phần thân và các số liệu thống
kê về mỗi quy tắc. Bạn có thể khám phá trực quan các quy tắc kết hợp bằng cách
nhấn chuột phải vào toán tử Associations và chọn Open Model.
Triển khai luồng khai phá quy tắc kết hợp như là một thủ tục đã lưu trữ của DB2
Sau đó, trong Cognos, bạn có thể muốn gọi động luồng khai phá được thiết kế
trước đây của bạn với đầu vào do người dùng định nghĩa. Như đã đề cập ở trên,
đầu vào này là sự hỗ trợ tối thiểu cho các quy tắc để trích xuất và chiều dài của
chúng. Để cho phép cuộc gọi động, bạn cần tạo một thủ tục đã lưu trữ có hai tham
số và gọi luồng khai phá với đầu vào của người dùng này.
Tạo một thủ tục đã lưu trữ mới trong một dự án Data Development (Phát
triển dữ liệu):


2.
Con trỏ trả về nội dung của bảng RETAIL_RULES chứa các quy tắc kết
hợp. Hãy nhớ rằng, IMINER là lược đồ mặc định trong ví dụ này và có thể
khác với thiết lập của bạn.
3. Bây giờ, chuyển đổi luồng khai phá trực quan trong các câu lệnh SQL mà
chúng ta có thể dán vào phần thân thủ tục đã lưu trữ. Chuyển đến trình soạn
thảo AssocFlow bằng cách chọn thẻ tương ứng trong vùng soạn thảo.
4. Trong trình đơn, chọn Mining Flow -> Generate SQL Code.
5. Một trình soạn thảo mở ra chứa SQL biểu diễn luồng này. Đánh dấu toàn
bộ nội dung của trình soạn thảo và sao chép nó.
6. Chuyển sang trình soạn thảo thủ tục đã lưu trữ ASSOC_PROC và chuyển
mã giữa việc khai báo con trỏ và câu lệnh "OPEN" con trỏ. Lưu phần soạn
thảo.
7. Chuyển đến đầu trình soạn thảo thủ tục đã lưu trữ và loại bỏ "CURRENT"
khỏi câu lệnh thiết lập lược đồ và thay thế tên lược đồ bằng lược đồ
"ASSOC"mà bạn tạo ra lúc đầu: Liệt kê 1. Thay thế tên lược đồ bằng lược đồ ASSOC
P1: BEGIN
Declare cursor
DECLARE cursor1 CURSOR WITH RETURN FOR
SELECT * FROM IMINER.RETAIL_RULES;

SET SCHEMA="ASSOC"; Sử dụng lược đồ ASSOC để triển khai thủ tục.
8. Chuyển đến câu lệnh CALL IDMMX.BuildRuleModel và sửa lại nó để

DM_setAlgorithm(''SIDE'',

''<NumBins>5</NumBins>'')'); 9. Cuối cùng, đi tới câu lệnh
ALTER TABLE "IMINER"."RETAIL_RULES" ACTIVATE NOT LOGGED
INITIALLY WITH EMPTY TABLE;

10.
và thay thế nó bằng câu lệnh
DELETE FROM "IMINER"."RETAIL_RULES";

11.
12. Lưu phần soạn thảo.
Triển khai thủ tục đã lưu trữ tới cơ sở dữ liệu:
Để triển khai các thủ tục đã lưu trữ được tạo ra trước đó làm như sau:
1. Trong Data Project Explorer, mở rộng dự án Data Development "Assoc
Stored Procedure", mở rộng thư mục Stored Procedure và nhấn chuột phải
vào thủ tục ASSOC_PROC; chọn Deploy
2. Trong hộp thoại Deploy Routines (Các thường trình triển khai), thay đổi
lược đồ là "ASSOC" và nhấn Finish.
Bây giờ, thủ tục đã lưu trữ ASSOC_PROC được triển khai đến lược đồ ASSOC.
Bạn có thể kiểm tra việc triển khai bằng cách chuyển hướng đến thư mục Stored
Procedure trong lược đồ bằng cách sử dụng Database Explorer (xem hình 7). Thủ
tục đã lưu trữ cho phép bạn gọi động luồng khai phá được thiết kế trước đây với
các giá trị thiết lập đặc tính do người dùng định nghĩa.

Hình 7. Thủ tục đã lưu trữ ASSOC_PROC được triển khai trong Design
Studio

RETAIL và RETAIL_NAMES, mở rộng thư mục Tables và chọn các bảng
nêu trên.
 Sau đó, mở rộng lược đồ ASSOC và thư mục Procedures và chọn thủ tục
ASSOC_PROC mà bạn đã triển khai trước đó. Nhấn Next.
 Các giá trị thiết lập trên trang này là tốt, vì thế nhấn Import rồi nhấn
Finish.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status