Download as pdf or txt
Download as pdf or txt
You are on page 1of 85

CHƯƠNG 3: ỨNG DỤNG CÔNG CỤ PHÂN TÍCH VÀ KHAI PHÁ

DỮ LIỆU TRONG KINH DOANH


3.1. Công cụ hỗ trợ phân tích - khai phá dữ liệu

3.1.1. Tổng quan về các công cụ hỗ trợ phân tích – khai phá dữ liệu

Công nghệ thông tin đã phát triển nhanh chóng trong ba thập kỷ qua. Nhiều tổ chức lưu
trữ khối lượng dữ liệu ngày càng lớn trên hệ thống máy tính của họ. Thông tin hữu ích có thể
được ẩn trong dữ liệu dưới dạng các mẫu và kết nối ngầm không dễ dàng nhận ra bằng các
truy vấn dữ liệu thông thường và tính toán thống kê.
Phân tích - khai phá dữ liệu là quá trình khám phá thông tin hợp lệ, trước đây chưa biết
và cuối cùng có thể hiểu được từ các kho dữ liệu lớn. Bạn có thể sử dụng thông tin được trích
xuất để hình thành mô hình dự đoán hoặc phân loại hoặc để xác định sự tương đồng giữa các
bản ghi cơ sở dữ liệu.
Phân tích - khai phá dữ liệu là quá trình phân loại, sắp xếp các tập hợp dữ liệu lớn để
xác định các mẫu và thiết lập các mối liên hệ nhằm giải quyết các vấn đề nhờ phân tích dữ
liệu. Phân tích - khai phá dữ liệu được sử dụng trong khá nhiều lĩnh vực nghiên cứu, bao gồm
toán học, công nghệ mạng, di truyền học, kinh doanh và marketing.... Kết quả từ việc phân
tích - khai phá dữ liệu có thể giúp gia tăng hiệu quả trong việc dự đoán hành vi của khách
hàng, nếu biết tận dụng đúng cách, doanh nghiệp có thể tạo ra lợi thế và sức ép rất lớn, giúp
doanh nghiệp vượt lên bỏ xa các đối thủ cạnh tranh.
Từ những tác động trực tiếp hay gián tiếp của việc phân tích – khai phá dữ liệu đến hiệu
quả kinh doanh của các doanh nghiệp mà rất nhiều tập đoàn công nghệ hàng đầu đến những
công ty công nghệ nhỏ đã phát triển nhiều công cụ hỗ trợ phân tích – khai phá dữ liệu.
a. Microsoft SQL Server của Microsoft
MS SQL Server là một công cụ được phát triển bởi Microsoft với rất nhiều phiên bản
khác nhau (MS SQL Server 2000, 2005, 2008, 2012…) Với phần mềm này Microsoft đã đưa
ra OLE DB cho giao diện lập trình ứng dụng (API) data mining với nhiều data mining provider
hàng đầu. API này định nghĩa một ngôn ngữ truy vấn data mining dựa trên cú pháp SQL
(Structured Query Language). Các mô hình data mining (Data Mining Model) được xem như
là một dạng đặc biệt của bảng quan hệ. Các tính toán dự báo được xem như một dạng đặc biệt
của phép kết hợp. MS SQL Server 2008 cung cấp Microsoft data mining provider dưa trên
OLE DB cho chuẩn Data Mining. Provider này gồm một số thuật toán data mining phổ biến
như Microsoft Decision Tree, Microsoft Clustering, Microsoft Naïve Bayes,… Trong phạm
vi của tài liệu này nhóm tác giả tập trung vào các sản phẩm nằm trong bộ SQL Server của
Microsoft.
b. Intelligent Miner của IBM
Intelligent Miner là công cụ khai thác thông minh hỗ trợ nhiều tác vụ khai thác dữ liệu.
Ví dụ: cửa hàng bán lẻ có thể sử dụng Intelligent Miner để xác định các nhóm khách hàng có
khả năng đáp ứng các sản phẩm và dịch vụ mới nhất hoặc để xác định các cơ hội mới để bán.
Một công ty bảo hiểm có thể sử dụng Công cụ khai thác thông minh với dữ liệu khiếu nại để
cô lập các chỉ số có khả năng lừa đảo.

Hình 3-1: Giao diện phần mềm Intelligent Miner của IBM
Intelligent Miner là một công cụ độc lập cung cấp các chức năng khai thác để xây dựng
và áp dụng các mô hình khai thác dựa trên cơ sở dữ liệu hoặc tệp dữ liệu phẳng sau:
 Associations mining function
 Classification mining function including the following algorithms:
o Neural Classification
o Tree Classification
 Clustering mining function including the following algorithms:
o Distribution-based Clustering
o Center-based Clustering
 Regression mining functions including the following algorithms:
o Neural Regression
o Linear Regression
o RBF Prediction
 Processing functions : The Processing functions can be used only on database
tables.
 Sequential Patterns mining function: In the InfoSphere Warehouse, the Sequential
Patterns mining function is called Sequence Rules mining function.
 Similar Sequences mining function
 Statistics functions
Intelligent Minner phiên bản mới nhất 8.1 là một ứng dụng khai thác dữ liệu độc lập
(Workbench) dành cho người dùng cuối và chủ yếu là các nhà thống kê có kỹ năng khai thác
dữ liệu nâng cao. Nó bao gồm Intelligent Miner Visualizers và thành phần chuyển đổi PMML
của IM Scoring, cho phép người dùng xuất các mô hình khai thác ở định dạng PMML.
Để tìm hiểu chi tiết truy cập vào: https://www.ibm.com/support/knowledgecenter
c. Oracle Data Mining
Oracle Data Mining (ODM), một thành phần của tùy chọn cơ sở dữ liệu Oracle
Advanced Analytics, cung cấp các thuật toán khai thác dữ liệu mạnh mẽ cho phép phân tích
dữ liệu để khám phá thông tin chi tiết, đưa ra dự đoán và tận dụng dữ liệu Oracle của họ. Với
ODM, người dùng có thể xây dựng và áp dụng các mô hình dự đoán bên trong Cơ sở dữ liệu
Oracle để đưa ra những dự đoán hành vi của khách hàng, với mục tiêu tìm kiếm khách hàng
tốt nhất, phát triển hồ sơ khách hàng, xác định các cơ hội bán hàng; cũng như có thể phát hiện
sự bất thường và lừa đảo tiềm ẩn trong cơ sở dữ liệu.

Hình 3-2: Giao diện phần mềm Oracle Data Mining


Các thuật toán được triển khai dưới dạng các hàm SQL và tận dụng các điểm mạnh của
cơ sở dữ liệu Oracle. Các hàm khai thác dữ liệu SQL có thể khai thác các bảng dữ liệu (tables)
và khung nhìn (views), lược đồ dữ liệu hình sao bao gồm các dữ liệu giao dịch, tập hợp dữ
liệu, dữ liệu phi cấu trúc, tức là kiểu dữ liệu CLOB (sử dụng Oracle Text để trích xuất thông
báo) và dữ liệu không gian. Các chức năng khai thác dữ liệu SQL của Oracle Advanced
Analytics tận dụng tối đa tính song song của cơ sở dữ liệu để xây dựng mô hình và áp dụng
mô hình; tôn trọng tất cả các đặc quyền dữ liệu và đặc quyền của người dùng và các lược đồ
bảo mật. Các mô hình dự đoán có thể được bao gồm trong các truy vấn SQL, bảng điều khiển
BI và được nhúng trong các ứng dụng thời gian thực.
Công cụ Oracle Data Miner GUI, là một phần mở rộng của Oracle SQL Developer, cho
phép các nhà phân tích dữ liệu, nhà phân tích kinh doanh và nhà khoa học dữ liệu làm việc
trực tiếp với dữ liệu bên trong cơ sở dữ liệu bằng cách sử dụng “kéo và thả” luồng công
việc. Oracle Data Miner nắm bắt và ghi lại phương pháp phân tích của người dùng và có thể
được lưu và chia sẻ với người dùng khác để tự động hóa các phương pháp phân tích. Oracle
Data Miner có thể tạo các tập lệnh SQL và PL/SQL để tự động hóa mô hình, lập lịch và triển
khai trong toàn doanh nghiệp.

Hình 3-3: Quy trình xử lý dữ liệu và xây dựng mô hình của Oracle Data Mining
d. Phần mềm Weka
Weka là một tập hợp các thuật toán học máy cho các nhiệm vụ khai thác dữ liệu. Nó
chứa các công cụ để tiền xử lý dữ liệu, phân loại (classification), hồi quy (regression), phân
cụm (clustering), khai thác luật kết hợp (association rules mining) và trực quan hóa
(visualization).
Hình 3-4: Giao diện phần mềm Weka
Ưu điểm của phần mềm Weka:
 Weka là phần mềm nguồn mở được cấp theo Giấy phép công cộng GNU
 Được thiết kế trên nền tảng ngôn ngữ lập trình Java nên có thể chạy được trên hầu
hết nền tảng của các hệ điều hành.
 Bao gồm đầy đủ các giai đoạn từ tiền xử lý dữ liệu đến mô hình hóa
 Giao diện đồ họa đơn giản và dễ sử dụng.
Tất cả các kỹ thuật của Weka đều dựa trên giả định rằng dữ liệu có sẵn dưới dạng một
tệp phẳng hoặc dữ liệu quan hệ, trong đó mỗi điểm dữ liệu được mô tả bởi một số thuộc tính
cố định (Nomally, numeric hoặc nominal, một số loại thuộc tính khác cũng được hỗ trợ)
. Weka cung cấp quyền truy cập vào cơ sở dữ liệu SQL bằng cách sử dụng Java Database
Conectivity và có thể xử lý kết quả được trả về bởi truy vấn cơ sở dữ liệu. Weka cung cấp
quyền truy cập vào DeepLearning với DeepLearning4j . Nó không có khả năng khai thác dữ
liệu đa quan hệ, nhưng có phần mềm riêng để chuyển đổi một tập hợp các bảng cơ sở dữ liệu
được liên kết thành một bảng duy nhất phù hợp để xử lý bằng Weka. Một lĩnh vực quan trọng
khác hiện không được bao phủ bởi các thuật toán có trong phân phối Weka là mô hình hóa
trình tự.

3.1.2. Giới thiệu về dịch vụ Microsoft SQL Server Database Engine

Microsoft SQL Server Database Engine là dịch vụ cốt lõi để lưu trữ, xử lý và bảo mật
dữ liệu. Database Engine cung cấp quyền truy cập có kiểm soát và xử lý nhanh chóng các
giao dịch dữ liệu để đáp ứng các yêu cầu của các ứng dụng khai thác dữ liệu theo những đòi
hỏi khắt khe nhất của doanh nghiệp.
Sử dụng Database Engine để tạo cơ sở dữ liệu quan hệ cho việc xử lý giao dịch trực
tuyến hoặc xử lý phân tích dữ liệu trực tuyến. Điều này bao gồm tạo các bảng để lưu trữ dữ
liệu và các đối tượng cơ sở dữ liệu như chỉ mục (indexes), khung nhìn (Views) và các thủ tục
được lưu trữ để xem, quản lý và bảo mật dữ liệu. Bạn có thể sử dụng SQL Server Management
Studio để quản lý các đối tượng cơ sở dữ liệu và SQL Server Profiler để nắm bắt các sự kiện
máy chủ dữ liệu.
Các bước cài đặt SQL Server Database Engine:
Bước 1:
Download SQL Server 2012 SP1 tại website của Microsoft:
https://www.microsoft.com/en-us/download/details.aspx?id=35575
Bước 2:
Giải nén và chạy file Setup

Hình 3-5: Chạy file Setup của SQL Server 2012

Bước 3:
Chọn Installation sau đó chọn New SQL Server stand-alone installation or add
features to an existing installantion
Hình 3-6: Lựa chọn cài đặt MS SQL Server 2012
Bước 4:
Nhập key để cài đặt khi chọn Enter the product key. Hoặc chọn Specify a free
edition để dùng thử miễn phí. Sau đó nhấn Next

Hình 3-7: Cửa sổ nhập Product Key của MS SQL Server 2012
Bước 5:
Chọn tích vào I accept the license terms để xác nhận lại bản quyền phần mềm MS
SQL Server. Nhấn Next để tiếp tục
Hình 3-8: Xác nhận bản quyền MS SQL Server 2012
Bước 6:
Trình thuật sỹ cài đặt các file cần thiết. Nhấn Install để cài đặt

Hình 3-9: Cài đặt các file cơ bản của MS SQL Server 2012
Bước 7:
Trình thuật sỹ kiểm tra các luật phục vụ quá trình cài đặt. Nhấn Next để cài đặt.
Hình 3-10: Thông báo kiểm tra các luật phục vụ cài đặt MS SQL Server 2012
Bước 8:
Cài đặt các tính năng cho SQL Server. Lựa chọn mặc định SQL Server Feature
Installation để cài đặt những tính năng cơ bản. Nhấn Next để tiếp tục.

Hình 3-11: Lựa chọn cài đặt các tính năng của MS SQL Server 2012
Bước 9:
Chọn Database Engine Services từ cây tính năng trong cài đặt. Nhấn Next để tiếp
tục.
Hình 3-12: Tích chọn cài đặt Database Engine Services của MS SQL Server 2012
Bước 10:
Trình thuật sỹ cài đặt các luật đã được lựa chọn. Nhấn Next để tiếp tục

Hình 3-13: Cài đặt các luật đã được chọn của Database Engine Services
Bước 11:
Thiết lập Name instance cho hệ thống. Mặc định hệ thống đặt là MSSQLSERVER.
Chỉnh sửa lại tại mục Instance ID
Hình 3-14: Thiết lập Name Instance cho Database Engine
Bước 12:
Thiết lập tài khoản cho các dịch vụ của SQL Server Database Engine. Ở bước này để
mặc định và nhấn Next để tiếp tục

Hình 3-15: Thiết lập tài khoản truy cập cho Database Engine
Bước 13:
Thiết lập tài khoản xác thực khi truy cập vào Database Engine thông qua MS SQL
Server Management Studio.
Hình 3-16: Thiết lập tài khoản xác thực truy cập vào Database Engine thông qua MS SQL
Server Management Studio.
- Chọn chế độ Windows authentication để truy cập vào Database Engine thông qua
tài khoản windows. Nếu chọn chế độ này phải click chọn nút Add Current User. Sau đó
nhấn Next để tiếp tục
- Chọn chế độ Mixed Mode (SQL Server authentication and Windows
authentication) để truy cập vào Database Engine thông qua tài khoản mặc định của SQL
Database Engine là “sa” và cũng có thể truy cập qua tài khoản windows. Nếu chọn chế độ
này phải nhập mật khẩu cho tài khoản mặc định vào hai ô Enter password và Confirm
password. Ngoài ra phải click chọn nút Add Current User để chọn tài khoản administrator
của windows khi đang cài đặt. Sau đó nhấn Next để tiếp tục
Bước 14:
Trình thuật sỹ tiến hành cài đặt MS SQL Database Engine. Nhấn Next để cài đặt
Hình 3-17: Cửa sổ cài đặt Database Engine
- Sau khi quá trình cài đặt kết thúc Vào Start  Microsoft SQL Server 2012  SQL
Server Management Studio để truy cập vào Database Engine.

Hình 3-18: Chạy SQL Server Management Studio


- Tiếp theo Hệ thống yêu cầu phải đăng nhập
Hình 3-19: Cửa sổ đăng nhập vào Database Engine qua SQL Server Management Studio
với tài khoản Windows
- Server type: Chọn Database Engine
- Server name: Tên của máy tính cài đặt Database Engine
- Authentication:
+ Chọn Windows Authentication để truy cập với tài khoản Windows đã được thêm
vào ở bước 13
+ Chọn SQL Server Authentication hệ thống sẽ yêu cầu nhập thông tin đăng nhập:

Hình 3-20: Cửa sổ đăng nhập vào Database Engine qua SQL Server Management Studio
với tài khoản SQL Server mặc định
Login: tên truy cập mặc định sa
Password: mật khẩu đã đặt cho tài khoản mặc định trong bước 13:
Sau đó nhấn Connect để kết nối. Và cửa sổ đăng nhập thành công như sau:

Hình 3-21: Giao diện màn hình SQL Server Database Engine sau khi đăng nhập thành
công.
3.1.3. Giới thiệu về dịch vụ Microsoft SQL Server Analysis Service

SQL Server Analysis Service là một công cụ phân tích dữ liệu được sử dụng trong hỗ
trợ quyết định và phân tích kinh doanh. SSAS cung cấp các mô hình dữ liệu ngữ nghĩa cấp
doanh nghiệp cho các báo cáo kinh doanh và ứng dụng phía client như Power BI, Excel,
Reporting Services reports, và các công cụ dữ liệu trực quan khác.
Dữ liệu phân tích được lưu trữ dưới mô hình bảng, hình khối đa chiều (cubes), và các
mô hình khai phá dữ liệu mà bạn có thể truy cập từ các báo cáo, bảng tính và bảng điều
khiền.
Các bước cài đặt SQL Server Analysis Service:
Bước 1:
Download SQL Server 2012 SP1 từ website của Microsoft:
https://www.microsoft.com/en-us/download/details.aspx?id=35575
Bước 2:
Giải nén và chạy file Setup
Hình 3-22: Chạy file Setup của SQL Server 2012
Bước 3:
Chọn Installation sau đó chọn New SQL Server stand-alone installation or add
features to an existing installation

Hình 3-23: Lựa chọn cài đặt MS SQL Server 2012


Bước 4:
Nhập key để cài đặt khi chọn Enter the product key. Hoặc chọn Specify a free
edition để dùng thử miễn phí. Sau đó nhấn Next
Hình 3-24: Cửa sổ nhập Product Key của MS SQL Server 2012
Bước 5:
Chọn tích vào I accept the license terms để xác nhận lại bản quyền phần mềm MS
SQL Server. Nhấn Next để tiếp tục

Hình 3-25: Xác nhận bản quyền MS SQL Server 2012


Bước 6:
Nhấn Install để cài đặt
Hình 3-26: Cài đặt các file cơ bản của MS SQL Server 2012
Bước 7:
Kiểm tra các luật phục vụ quá trình cài đặt. Nhấn Next để cài đặt.

Hình 3-27: Thông báo kiểm tra các luật phục vụ cài đặt MS SQL Server 2012
Bước 8:
Cài đặt các tính năng cho SQL Server. Lựa chọn mặc định SQL Server Feature
Installation để cài đặt những tính năng cơ bản. Nhấn Next để tiếp tục.
Hình 3-28: Lựa chọn cài đặt các tính năng của MS SQL Server 2012
Bước 9:
Chọn Analysis Services từ cây tính năng trong cài đặt. Nhấn Next để tiếp tục.

Hình 3-29: Tích chọn cài đặt Analysis Services của MS SQL Server 2012
Bước 10:
Trình thuật sỹ cài đặt các luật đã được lựa chọn. Nhấn Next để tiếp tục
Hình 3-30: Cài đặt các luật đã được chọn của Analysis Services
Bước 11:
Thiết lập Name instance cho hệ thống. Mặc định hệ thống đặt là MSSQLSERVER.
Chỉnh sửa lại tại mục Instance ID

Hình 3-31: Thiết lập Name Instance cho Analysis Services


Bước 12:
Thiết lập tài khoản cho các dịch vụ của Analysis Services. Ở bước này để mặc định và
nhấn Next để tiếp tục
Hình 3-32: Thiết lập tài khoản truy cập cho Analysis Services
Bước 13:
Thiết lập tài khoản xác thực khi truy cập vào Analysis Services thông qua MS SQL
Server Management Studio.

Hình 3-33: Thiết lập tài khoản xác thực truy cập vào Analysis Services thông qua MS
SQL Server Management Studio.
- Multidimensional and Data Mining mode: sử dụng MOLAP như bộ nhớ lưu trữ
mặc định cho các mô hình được triển khai cho Analysis Services. Sau khi triển khai đến
máy chủ, bạn có thể định cấu hình giải pháp sử dụng cho ROLAP nếu chạy truy vấn trực
tiếp trên cơ sở dữ liệu quan hệ thay vì lưu trữ dữ liệu truy vấn trong cơ sở dữ liệu đa chiều
của Analysis Services
- Tabular mode: sử dụng công cụ phân tích trong bộ nhớ xVelocity (VertiPaq), là bộ
lưu trữ mặc định cho Tabular modes. Sau khi triển khai các mô hình dạng bảng đến máy
chủ, bạn có thể chọn cấu hình một cách chọn lọc các giải pháp dạng bảng để sử dụng bộ lưu
trữ đĩa DirectQuery thay thế cho bộ nhớ gắn kết bộ nhớ.
- Click chọn nút Add Current User để truy cập Analysis Service thông qua tài khoản
Windows . Sau đó nhấn Next để tiếp tục
Bước 14:
Tiến hành cài đặt MS SQL Analysis Service. Nhấn Next để cài đặt

Hình 3-34: Cửa sổ cài đặt Analysis Services


Sau khi quá trình cài đặt kết thúc . Vào Start  Microsoft SQL Server 2012  SQL
Server Management Studio để truy cập vào Analysis Service.
Hình 3-35: Chạy SQL Server Management Studio cho Analysis Services
Tiếp theo Hệ thống yêu cầu phải đăng nhập

Hình 3-36: Cửa sổ đăng nhập vào Analysis Services qua SQL Server Management Studio
với tài khoản Windows
Server type: Chọn Analysis Services
Server name: Tên của máy tính cài đặt Analysis Services
Authentication: mặc định là chọn Windows Authentication để truy cập với tài
khoản Windows đã được thêm vào ở bước 13
Sau đó nhấn Connect để kết nối. Và cửa sổ đăng nhập thành công như sau:

Hình 3-37: Giao diện SQL Server Analysis Services sau khi đăng nhập thành công
3.1.4. Giới thiệu về công cụ Microsoft SQL Server Business Intelligence Development Studio

Business Intelligence Development Studio (BIDS) là công cụ cho phép tổ chức quản lý
và khai thác kho dữ liệu (cho phép xử lý phân tích trực tuyến) cũng như xây dựng các mô
hình khai phá dữ liệu rất dễ sử dụng và hiệu quả của Microsoft. BIDS được Microsoft tích
hợp săn trong bộ Microsoft SQL Server từ phiên bản 2008. Từ phiên bản SQL Server 2012
trở về sau đã được Microsoft đặt tên là SQL Server Data Tool.
Các bước cài đặt Business Intelligence Development Studio (BIDS) hoặc SQL
Server Data Tool:
Bước 1:
Download SQL Server 2012 SP1 tại website của Microsoft:
https://www.microsoft.com/en-us/download/details.aspx?id=35575
Bước 2:
Giải nén và chạy file Setup

Hình 3-38: Chạy file Setup của SQL Server 2012


Bước 3:
Chọn Installation sau đó chọn New SQL Server stand-alone installation or add
features to an existing installantion
Hình 3-39: Lựa chọn cài đặt MS SQL Server 2012
Bước 4:
Nhập key để cài đặt khi chọn Enter the product key. Hoặc chọn Specify a free
edition để dùng thử miễn phí. Sau đó nhấn Next

Hình 3-40: Cửa sổ nhập Product Key của MS SQL Server 2012
Bước 5:
Chọn tích vào I accept the license terms để xác nhận lại bản quyền phần mềm MS
SQL Server. Nhấn Next để tiếp tục
Hình 3-41: Xác nhận bản quyền MS SQL Server 2012
Bước 6:
Trình thuật sỹ cài đặt các file cần thiết. Nhấn Install để cài đặt

Hình 3-42: Cài đặt các file cơ bản của MS SQL Server 2012
Bước 7:
Trình thuật sỹ kiểm tra các luật phục vụ quá trình cài đặt. Nhấn Next để cài đặt.
Hình 3-43: Thông báo kiểm tra các luật phục vụ cài đặt MS SQL Server 2012
Bước 8:
Cài đặt các tính năng cho SQL Server. Lựa chọn mặc định SQL Server Feature
Installation để cài đặt những tính năng cơ bản. Nhấn Next để tiếp tục.

Hình 3-44: Lựa chọn cài đặt các tính năng của MS SQL Server 2012
Bước 9:
Chọn SQL Server Data Tool từ cây tính năng trong cài đặt. Nhấn Next để tiếp tục.
Hình 3-45: Tích chọn cài đặt SQL Server Data Tools của MS SQL Server 2012
Bước 10:
Trình thuật sỹ cài đặt các luật đã được lựa chọn. Nhấn Next để tiếp tục

Hình 3-46: Cài đặt các luật đã được chọn của SQL Server Data Tools
Bước 11:
Thiết lập Name instance cho hệ thống. Mặc định hệ thống đặt là MSSQLSERVER.
Chỉnh sửa lại tại mục Instance ID. Nhấn Next để tiếp tục
Hình 3-47: Thiết lập Name Instance
Bước 12:
Nhấn Next để cài đặt

Hình 3-48: Cửa sổ cài đặt Database Engine


Sau khi quá trình cài đặt kết thúc vào Start  Microsoft SQL Server 2012  SQL
Server Data Tool
Hình 3-49: Chạy SQL Server Data Tools
3.1.5. Giới thiệu về Microsoft SQL Server Data Mining Add-ins cho Microsoft Office

Microsoft SQL Server Data Mining Add-ins cho Microsoft Office là một bộ công cụ
gọn nhẹ để dự đoán và phân tích dữ liệu. Bộ công cụ cho phép sử dụng dữ liệu trên Microsoft
Excel để xây dựng các mô hình phân tích cho dự đoán, để xuất gợi ý hoặc thăm dò. (Microsoft
SQL Server Data Mining Add-ins cho Microsoft Office chỉ hỗ trợ cho các phiên bản 2007,
2010 và 2013).
Trình hướng dẫn và công cụ quản lý dữ liệu trong phần bổ trợ này hướng dẫn từng bước
cho các mô hình khai thác dữ liệu phổ biến hiện nay gồm:
- Tổ chức và làm sạch dữ liệu trước khi xây dựng mô hình: Sử dụng dữ liệu được lưu
trữ trong Excel hoặc từ bất kỳ nguồn dữ liệu Excel nào. Bộ công cụ cho phép tạo và lưu các
kết nối để sử dụng lại các nguồn dữ liệu, lặp lại thử nghiệm hoặc huấn luyện lại các mô hình.
- Hồ sơ, mẫu và chuẩn bị: Khâu chuẩn bị dữ liệu trong quá trình khai phá dữ liệu chiếm
từ 70 – 90% thời gian của dự án. Bộ công cụ giúp cho quá trình này diễn ra nhanh hợn, bằng
cách cung cấp hình ảnh trực quan hóa và hướng dẫn thực hiện trong MS Excel gồm:
+ Dữ liệu hồ sơ: hiểu sự phân chia và đặc điểm của nó
+ Tạo tập huấn luyện và tập kiểm tra thông qua lấy mẫu ngẫu nhiên hoặc quá khổ.
+ Tìm các ngoại lệ và loại bỏ hoặc thay thế chúng.
+ Gán lại nhãn dữ liệu để cải thiện chất lượng phân tích
- Phân tích các mẫu thông qua học có giám sát hoặc không giám sát: Bộ công cụ có các
bước hướng dẫn thực hiện một số mô hình khai thác dữ liệu phổ biến nhất, bao gồm phân tích
phân cụm, phân tích thị trường và dự báo.
Trong phần bổ trợ gồm các thuật toán học máy nổi tiếng: Naïve Bayes, logistic
regression, clustering, time series, and neural networks.
Bộ công cụ cũng có phần trợ giúp xây dựng các truy vấn dựu đoán từ chức năng Query
winzad cho những người chưa quen với việc khai thác dữ liệu.
Dành cho những người dùng ở mức cao hơn có thể xây dựng các truy vấn DMX tùy
chỉnh với Advanced Query Editor, hoặc kéo thả tự động các dự đoán bằng Excel VBA.
- Tài liệu và quản lý: Sau khi người dùng đã tạo được một tập dữ liệu và xây dựng một
số mô hình, bộ công cụ cho phép ghi lại công việc và hiểu biết của bạn bằng cách tạo ra một
bản tóm tắt thông kê về dữ liệu và tham số mô hình.
- Khám phá và hình dung. Khai phá dữ liệu không phải là một hoạt động có thể tự động
hoàn toàn – người dùng cần khám phá và hiểu các kết quả của mình để có thể đưa ra được
những hành động có ý nghĩa. Bộ công cụ giúp người dùng khám phá kết quả bằng cách cung
cấp một cái nhìn tương tác trong Excel, các mẫu Visio cho phép bạn tùy chỉnh sơ đồ mô hình
và khả năng xuất biểu dồng và bảng sang Excel để lọc hoặc bổ sung sửa đổi.
- Triển khai và tích hợp. Khi đã xây dựng được một mô hình tối ưu, hãy triển khai mô
hình bằng cách sử dụng các công cụ quản lý để xuất mô hình từ máy chủ thử nghiệm sang
một phiên bản khác của Analysis Services.
Người dùng có thể để mô hình trên máy chủ đã tạo, nhưng làm mới dữ liệu huấn luyện
và chạy dự đoán bằng cách sử dụng Integration Services or DMX scripts.
Với chức năng Trace, cho phép người dùng xem các câu lệnh XMLA và DMX được gửi
đến máy chủ.
Các bước cài đặt Microsoft SQL Server Data Mining Add-ins cho Microsoft Office
Bước 1:
Download Microsoft SQL Server 2012 Data Mining Add-ins for Microsoft Office 2010
tại: https://www.microsoft.com/en-us/download/details.aspx?id=29061
Có 2 phiên bản: 64 bit (ENU\x64\SQL_AS_DMAddin.msi) và 32 bit (
ENU\x86\SQL_AS_DMAddin.msi) Download bản phù hợp với office 2010 đã cài đặt trên
máy tính.
Bước 2:
Cài đặt Microsoft SQL Server 2012 Data Mining Add-ins for Microsoft Office 2010
- Chạy file SQL_AS_DMAddin.msi đã download xuống. Cửa sổ cài đặt xuất hiện
Hình 3-50: Cửa sổ cài đặt SQL Server Data Mining Add-Ins
- Nhấn Next để tiếp tục. Xuất hiện cửa sổ:

Hình 3-51: Xác nhận thỏa thuận bản quyền cài đặt SQL Server Data Mining Add-Ins
- Chọn I accept the terms in the license agreement. Sau đó nhấn Next để tiếp tục. Xuất
hiện cửa sổ:
Hình 3-51: Lựa chọn các cài đặt cho SQL Server Data Mining Add-Ins
- Lựa chọn cài đặt các phần ứng dụng cho Office 2010:
+ Table Analysis Tools for Excel
+ Data Mining Client for Excel
- Nhấn Next để tiếp tục. Xuất hiện cửa sổ:

Hình 3-52: Cửa sổ sẵn sàng cài đặt SQL Server Data Mining Add-Ins
- Nhấn nút Install để tiếp tục. Xuất hiện cửa sổ cài đặt:
Hình 3-53: Cửa sổ cài đặt SQL Server Data Mining Add-Ins
- Chờ trong vài phút cho trình thuật sỹ cài đặt xong. Xuất hiện cửa sổ:

Hình 3-54: Kết thúc cài đặt SQL Server Data Mining Add-Ins
- Nhấn Finish để kết thúc quá trình cài đặt.
Bước 3:
Thiết lập cấu hình Microsoft SQL Server 2012 Data Mining Add-ins for Microsoft Excel
2010
- Vào Start  Microsoft Offices Microsoft Excel 2010:
Hình 3-55: Mở Microsoft Excel 2010
-Xuất hiện cửa sổ.

Hình 3-56: Xác nhận cài đặt SQL Server 2012 Data Mining Add-ins cho Office 2010.
Gồm 3 lựa chọn: Trong tài liệu này hướng dẫn trên nền SQL Server 2012 nên để lựa
chọn mặc định. Nhấn Next để tiếp tục. Xuất hiện cửa sổ:
Hình 3-57: Kết thúc quá trình cài đặt SQL Server 2012 Data Mining Add-ins cho Office
2010.
Nhấn Finish để tiếp tục. Xuất hiện cửa sổ:

Hình 3-58: Xác nhận mở ví dụ sau khi cài đặt xong.


- Tích 2 lựa chọn sau đó nhấn Close để kết thúc.
- Sau đó qua lại cửa sổ Microsoft Excel 2010. Trên thanh Menu Bar xuất hiện một menu
mới là Data Mining như sau:
Hình 3-59: Phần mềm Microsoft Excel 2010 sau khi cài đặt SQL Server 2012 Data
Mining Add-ins
3.2. Xây dựng ứng dụng phân tích dữ liệu OLAP Cube trên BIDS
3.2.1. Bài toán phân tích dữ liệu

Yêu cầu bài toán:


- Bài toán đặt ra là xây dựng ứng dụng phân tích dữ liệu bán hàng (dữ liệu được tập hợp
từ nhiều nguồn) cho phép người dùng nhận hầu hết các kết quả thống kê – phân tích dữ liệu
chỉ với các thao tác kéo thả, đặt điều kiện truy vấn đơn giản, tiện dụng. Cụ thể như sau:
+ Thống kê tổng số sản phẩm, tổng tiền bán, lợi nhuận của từng cửa hàng trong một
khoảng thời gian
+ Thống kê tổng số sản phẩm, tổng tiền bán, lợi nhuận của từng nhân viên trong một
khoảng thời gian
+ Thống kê doanh số với từng sản phẩm trong một khoảng thời gian
+ Thống kê sức mua của khách hàng,…
Yêu cầu về cơ sở dữ liệu:
Từ yêu cầu bài toán đã nêu, chúng ta sẽ sử dụng mô hình cơ sở dữ liệu bán hàng điển
hình (được thiết kế và tổ chức lại theo các quy tắc của Kho dữ liệu – Data Warhouse) để làm
nguồn cho bài toán. Cụ thể một số thông tin như sau:
- Dimensions:
+ Sản phẩm (DimProduct): chứa các thông tin căn bản về sản phẩm bán của doanh
nghiệp như Mã sản phẩm, Tên sản phẩm, Giá thực, Giá bán,…
+ Khách hàng (DimCustomer): chứa các thông tin căn bản về khách hàng như Mã khách
hàng, Họ tên, Giới tính,…
+ Chi nhánh (DimStore): chứa các thông tin về chi nhánh của doanh nghiệp như Mã chi
nhánh, Tên, Địa chỉ,…
+ Nhân viên bán hàng (DimSalesPerson): chứa các thông của người bán như Mã nhân
viên, Tên nhân viên, Chi nhánh làm việc của nhân viên,…
+ Thời điểm thực hiện giao dịch mua bán (DimData, DimTime): chứa các thông tin cụ
thể tới từng thành phần thời gian như ngày, tuần, tháng, năm, giờ, phút, giây,… Đây là một
chiều thông tin bắt buộc trong việc sử dụng OLAP để thống kê. Nếu cơ sở dữ liệu không có
chiều này, hệ thống OLAP sẽ tự thiết lập chiều thời gian để đảm bảo yêu cầu thiết kế.
- Measures:
+ Một số thông tin lượng hóa như (Số lượng sản phẩm bán ra, Tổng tiền bán, Tổng giá
trị thực của sản phẩm, Tiền chênh lệch ) là những Measure quan trọng giúp làm rõ hơn các
Dimension trong mỗi giao dịch bán hàng.
- Facts:
+ Các sự kiện được mô tả ở đây chính là giao dịch mua bán sản phẩm, vì vậy cấu trúc
bảng Fact phải bao gồm các trường khóa ngoại từ các bảng Dimension và các Measure đã nêu
ở trên. Cụ thể chúng ta sẽ có bảng FactProductSales với:
 Foreign Key Column: Sales Date key, Sales Time key, Invoice Number,
Sales Person ID, Store ID, Customer ID
 Measures: Actual Cost, Total Sales, Quantity, Fact table record count
+ Lược đồ cơ sở dữ liệu như sau:
Hình 3-60: Lược đồ cơ sở dữ liệu bán hàng
Trong thực tế, lược đồ xây dựng ở trên là của kho dữ liệu lưu trữ cuối, trước đó người
dùng cần thực hiện đủ các thao tác tích hợp, tiền xử lý và chuyển đổi để có thể tập hợp được
dữ liệu có ích từ nhiều nguồn khác nhau về kho.
3.2.2. Khởi tạo dự án và thiết lập Data Soure

Bước 1: Chuẩn bị nguồn dữ liệu


Dựa theo yêu cầu bài toán và lược đồ thiết kế cơ sở dữ liệu ở trên, chúng ta sử dụng Hệ
quản trị Cơ sở dữ liệu SQL Server 2005 trở lên để xây dựng cơ sở dữ liệu Sale_DW như các
bước sau:
- Cài đặt đầy đủ SQL Server với các dịch vụ: Database Engine, Analysis Services,
Reporting Services, Intergration Services sau đó khởi động công cụ SQL Server Management
Studio và lựa chọn dịch vụ tương ứng để làm việc như hình dưới:
Hình 3-61: Cửa sổ đăng nhập vào Database Engine
- Chọn Server type là Database Engine và khai báo các thông tin liên quan như Server
name, Authentication (trong tài liệu này sẽ sử dụng luôn hệ thống cơ sở dữ liệu và các Instance
Name liên quan trên chính máy cục bộ), sau đó Connect. Thực hiện khởi tạo Sale_DW với
cấu trúc như hình dưới:

Hình 3-62: Lược đồ quan hệ của cơ sở dữ liệu Sales_DW


Bước 2: Khởi động Business Intelligence Development Studio (BIDS)
Đối với người dùng sử dụng Hệ quản trị Cơ sở dữ liệu SQL Server 2005 hoặc 2008, để khởi động
BIDS, người dùng có thể làm như sau: click Start Menu  Microsoft SQL Server <2005,
2008>  select SQL Server Business Intelligence Development Studio.
Đối với người dùng sử dụng Hệ quản trị Cơ sở dữ liệu SQL Server 2012 về sau, để khởi động
BIDS, người dùng Vào Start Menu  Microsoft SQL Server 2012  select SQL Server Data
Tools.

Hình 3-63: Kích hoạt SQL Server Data Tools


Bước 3: Khởi tạo dự án phân tích dữ liệu với BIDS
Trong tài liệu này, chúng tôi sử dụng SQL Server 2012, sau khi khởi động thành công BIDS, thực
hiện theo bước sau để khởi tạo dự án phân tích dữ liệu: Click File  New  Project Business
Intelligence Projects  select Analysis Services Project  Analysis Services
Multidimesional and Data Mining Project  Set Name: SalesDataAnalysis  Click OK.
Hình 3-64: Tao Project trên SQL Server Data Tools
Bước 4: Thiết lập Data Source
Data Source là thành phần lưu trữ tất cả các thông tin về kết nối đến cơ sở dữ liệu, bao gồm: máy
chủ, Instance và tên cơ sở dữ liệu cùng các dữ liệu về tài khoản, giấy chứng thực quyền truy cập,…
Để tạo Data Source, thực hiện theo các bước sau: In Solution Explorer, Right click on Data
Source  Click New Data Source

Hình 3-65: Tạo DataSource cho Projcet mới tạo


Hiển thị cửa sổ thiết lập kết nối nguồn dữ liệu (DataSource):
Hình 3-66: Cửa sổ hiện thị thông báo tạo kết nối Data Source Wizard
Nhấn Next, cửa sổ khai báo chuỗi kết nối dữ liệu hiển thị.

Hình 3-67: Cửa sổ khai báo chuỗi kết nối Data Source
Tiếp tục nhấn vào New, cửa sổ quản lý kết nối hiển thị:
Hình 3-68: Cửa sổ hiện nhập thông tin cho kết nối Data Source Wizard
Nhập liệu thông tin lên các mục yêu cầu:
- Server name: gõ tên Server kết hợp SQL instance name nếu có theo cấu trúc
<ServerName\InstanceName>. Trong dự án này chúng tôi sử dụng Instance mặc định khi cài
đặt SQL Server, vì vậy chỉ cần gõ nguyên Server name: CANHHN-PC
- Log on to the server: có thể chọn lựa hai hình thức theo xác thực của Windows trên
chính máy cục bộ mà người dùng đang thao tác hoặc theo xác thực của SQL Server.
- Connect to the database: chọn cơ sở dữ liệu Sales_DW đã được tạo ở các bước trên.
- Test Connection: nhấn vào nút này để kiểm tra các thiết lập ở trên đã chính xác chưa.
Nếu xuất hiện thông báo “Test connection succeeded” nghĩa là thử kết nối thành công, người
dùng chỉ cần nhấn nút OK để chính thức tạo kết nối từ dự án đến cơ sở dữ liệu, cửa sổ sau
tiếp tục xuất hiện.
Hình 3-69: Cửa sổ tạo kết nối Data Source Wizard
Chọn Data connections: CANHHN-PC.Sales_DW.sa và nhấn Next để sang cửa sổ thiết
lập giấy phép chứng thực quyền được sử dụng kết nối vừa tạo, cửa sổ sau hiển thị:

Hình 3-70: Cửa sổ chứng thực kết nối Data Source Wizard
Chọn Inherit và nhấn Next để sang màn hình hiển thị cuối cùng của bước kết nối cơ sở
dữ liệu cho dự án.
Hình 3-71: Cửa sổ kết thúc quá trình tạo kết nối Data Source Wizard
Đặt tên cho Data source (trong tài liệu này sử dùng tên được gợi ý sẵn), sau đó nhấn nút
Finish để hoàn thành. Bên Panel phải sẽ xuất hiện Data Soure: Sales DW.ds như sau:

Hình 3-72: Data Source Wizard có tên SalsDW.ds đã được tạo trong Project
3.2.3. Thiết lập Data Source View

Dựa trên kết nối dữ liệu đã được tạo trong Data Source, chúng ta có thể tạo lập mẫu các
lược đồ dữ liệu cùng các thuộc tính (Dimension, Fact, Measure) mà dự án yêu cầu, tất cả các
mẫu được tạo ra đều do Data Source View quản lý. Các bước để phân tích hay khai phá dữ
liệu sau này đều sử dụng thông tin về cấu trúc dữ liệu trong Data Source View để xây dựng.
Khi người dùng thực thi dự án (Deploy), các bản ghi dữ liệu sẽ được truy vấn từ trong cơ sở
dữ liệu về Data Source View thông qua kết nối quy định trong Data Source, sau đó dữ liệu từ
Data Source View sẽ được đổ vào các mô hình phân tích hoặc khai phá để trả về kết quả cho
người dùng.
Để tạo một Data Source View, chúng ta làm như sau: In the Solution Explorer, Right
Click on Data Source View -> Click on New Data Source View. Cửa sổ sau hiển thị:

Hình 3-73: Khởi tạo Data Source View cho Project

Hình 3-74: Cửa sổ hiện thị thông báo tạo Data Source View Wizard
Nhấn nút Next ở cửa sổ Data Source View Wizard, cửa sổ tiếp theo xuất hiện:
Hình 3-75: Cửa chọn Data Source đã được tạo
Trong ô Relational data sources, chọn Sales DW (chính là data source đã thiết lập ở
các bước trước đó), nhấn Next, cửa sổ sau hiển thị:

Hình 3-76: Cửa sổ nhập tài khoản truy cập vào SQL Server
Nhập User Id và Password là tài khoản truy cập vào SQL Server, sau đó nhấn OK. Cửa
sổ sau hiển thị:
Hình 3-77: Cửa sổ chọn các Tables để tạo Views
Cửa sổ trên chia làm hai phần trái, phải. Bên ô trái Available object chứa danh sách tất
cả các bảng trong cơ sở dữ liệu được kết nối qua Data Source, ô bên phải Included object
sẽ là danh sách các bảng mà dự án sẽ sử dụng để phân tích dữ liệu. Cụ thể, chúng ta chọn
bảng FactProductSales rồi nhấn nút được khoanh trên hình. Giao diện hiển thị như sau:

Hình 3-78: Cửa sổ tự động tạo liên kết các bảng liên quan.
Nhấn vào nút Add Relate Tables để hệ thống tự liên kết các bảng liên quan (cụ thể ở
đây là các bảng Dimension) vào mà chúng ta không phải tự lựa chọn thủ công. Kết quả sau
khi thao tác như sau:

Hình 3-79: Cửa sổ các bảng liên quan đã được thêm.


Nhấn Next để tiếp tục:

Hình 3-80: Cửa sổ xác nhận đã khởi tạo Data Source View.
Data Source View xuất hiện như hình dưới:
Hình 3-81: Kết quả tạo Data Source View.
3.2.4. Xây dựng Cube

Trong phần này chúng ta sẽ thao tác tạo khối dữ liệu đa chiều (Cube) để phục vụ phân
tích thông tin theo các yêu cầu đặt ra với bài toán. Để bắt đầu tạo Cube, chúng ta thực hiện:
In Solution Explorer -> Right Click on Cube-> Click New Cube.

Hình 3-82: Khởi tạo Cube cho Project


Hình 3-83: Cửa sổ hiện thị thông báo tạo Cube Wizard
Tiếp tục nhấn nút Next trong cửa sổ Cube Wizard

Hình 3-84: Tùy chọn tạo Cube Wizard cho Project


Chọn Use exiting tables để lấy các bảng có sẵn trong Data Source View làm nguồn để
tạo lập Cube, sau đó nhấn Next.
Hình 3-85: Chọn các bảng có sẵn trong Data Source View để tạo Cube
Cửa sổ trên yêu cầu chọn các bảng có chứa Measure, chúng ta tích chọn vào bảng
FactProductSales trên danh sách và nhấn vào Next.

Hình 3-86: Chọn các bảng có chứa Measures


Chọn tất cả các Measure như trên hình và nhấn Next
Hình 3-87: Chọn các bảng Dimension có quan hệ với nhau
Chọn tất cả các bảng Dimension có quan hệ với bảng Fact chứa các Measure đã tích ở
trên và nhấn Next.

Hình 3-88: Đặt tên cho Cube và kết thúc


Đặt tên cho Cube (hiện đang để mặc định là Sales DW) và nhấn Finish để hoàn thành
quá trình tạo OLap Cube. Kết quả nhận được như hình sau:
Hình 3-89: Cửa sổ Cube sau khi tạo thành công trên SQL Server Data Tools
Nhìn trên hình có thể thấy các thành phần của một Cube trong mô hình dữ liệu đa chiều
gồm: Dimensions, Measures and Measure Groups, Partitions, Perspectives, Hierarchies,
Actions, Key Performance Indicators (KPI), Calculations, Translations. Một số thành phần
trên được thể hiện thành Tab chức năng chuyên biệt, giúp người dùng có thể dễ dàng tùy biến
hơn, cụ thể:
- Tab Cube Structure: Cho phép người dùng thêm, sửa, xóa các Cube Dimesion và Cube
Measure một cách trực quan. Tại Tab này người dùng có thể sắp xếp lại thứ bậc (Hierarchies)
của các thuộc tính (Attributes) trong các bảng Dimension dễ dàng.
- Tab Dimension Usage: Cho phép người dùng định nghĩa mối quan hệ giữa các bảng
Dimension và các bảng Fact trong cùng một Cube (chú ý: với kho dữ liệu, việc một dự án có
thể có rất nhiều Cube, mỗi Cube có nhiều bảng Dimension và Fact). BIDS cung cấp một số
thuật ngữ về quan hệ giữa các bảng trên như sau: Regular, No relationship, Fact,
Referenced, Many-to-many, Data mining.
- Tab Caculations: Cho phép người dùng tạo các Calculated members (dùng để định
nghĩa ra một thuộc tính từ việc kết hợp các thuộc tính khác qua các toán tử số học, con số,
hàm số,…) và Named Set (dùng để định nghĩa một tập các thuộc tính theo một tên đại diện,
chúng ta có thể sử dụng tên này để hiển thị dữ liệu của tập thuộc tính trên báo cáo hay trong
quá trình lọc dữ liệu khi truy vấn trên Cube).
- Tab KPI: Chỉ số hiệu suất chính (KPI) là thước đo có thể định lượng để đánh giá thành
công kinh doanh. Trong tab này, KPI được định nghĩa qua các thông số đặc trưng (Goal,
Value, Status, Trend, Status indicator, Trend indicator, Display folder, Parent KPI, Current
time member, Weight) và kết hợp với các measure group trong các Cube để đưa ra các chỉ số
có ý nghĩa trong kinh doanh.
- Tab Actions: Cho phép xây dựng các Action, mỗi Action là một sự kiện phát sinh khi
người dùng thao tác trên Cube (click chọn hoặc click menu ngữ cảnh), cụ thể hơn là sự kiện
này gọi đến một chương trình ứng dụng như: Reporting Service, trang Web hay đơn giản là
Drill through vào dữ liệu trong Cube.
- Tab Partions: Cho phép người dùng tổ chức các Partions – là khu vực bộ nhớ vật lý
chứa các dữ liệu measure group, việc này sẽ tác động đáng kể đến hiệu suất truy vấn dữ liệu
của Cube. Một số thuật ngữ chỉ loại nhóm bộ nhớ lưu trữ cho Partion cần biết là: HOLAP,
MOLAP, ROLAP.
- Tab Aggregations: Cho phép người dùng tạo các thống kê sớm (những thống kê mà
người dùng có thể sử dụng khi khai thác Cube sau này). Những thống kê này nếu được gọi
trong khi chạy ứng dụng sẽ giúp tăng tốc độ thực thi xử lý và trả về dữ liệu của Cube vì chúng
đã được tính toán và tổng hợp sẵn từ trước. Tuy nhiên, việc lạm dụng tạo các Aggregations
sẽ đòi hỏi mất nhiều thời gian để tạo lập và tốn kém về bộ nhớ lưu trữ chúng.
- Tab Perspectives: Thường chúng ta tạo các Cube sẽ bao hàm nhiều nhất các Measure
và Dimension có thể để giúp thực hiện được đa dạng hóa các yêu cầu truy vấn dữ liệu sau này
của người dùng. Tuy nhiên, trong những chương trình cụ thể, chúng ta chỉ cần sử dụng một
Cube nhỏ hơn, việc này không cần thiết phải bắt đầu xây dựng lại Cube mới từ đầu, chúng ta
chỉ cần sử dụng tính năng Perspectives để trích xuất một Cube con từ Cube cha đã xây dựng
ban đầu.
- Tab Translations: Chúng ta có thể xây dựng Cube trên một ngôn ngữ và có thể triển
khai Cube đó trong thực tiễn về bất cứ ngôn ngữ nào. Trong Tab Translations cho phép khai
báo đa ngôn ngữ với mỗi thuộc tính trong Dimension và Measure Group.
- Tab Browser: Cho phép người dùng thao tác truy vấn – khai thác dữ liệu trên Cube
một cách trực quan qua thao tác kéo thả.
3.2.5. Triển khai và phân tích dữ liệu với OLAP Cube

Trong phân tích dữ liệu bằng OLAP Cube, chiều thời gian là một chiều rất quan trọng
(nếu không có chiều này, hệ thống sẽ tự sinh ra để gán cho các sự kiện – dữ liệu). Chúng ta
tùy chỉnh lại thứ bậc các thuộc tính trong Dimension Dim Date như sau: Double Click vào
Dim Date.dim  cửa sổ Dimension Struct hiển thị lên như sau:
Hình 3-90: Cửa sổ Dimension Struct
Sau khi sắp xếp lại các thứ tự thuộc tính trong chiều thời gian, chúng ta tiếp tục tùy
chỉnh một số thuộc tính trước khi triển khai Cube (Deployment). Click chuột phải vào
SaleDataAnalysis  hiển thị menu ngữ cảnh  chọn Properties:

Hình 3-91: Lựa chọn thuộc tính của Project


Cửa sổ sau xuất hiện:
Hình 3-92: Lựa chọn các thuộc tính cho quá trình triển khai (Deployment)
Lựa chọn các thuộc tính như mô tả trên hình. Chú ý: thuộc tính Server chính là Instance
Name của SQL Server Analysis Services và trong trường hợp này sử dụng localhost (tương
đương với việc sử dụng CANHHN-PC như ở bước thiết lập Data Source), thuộc tính
Database là do người dùng tùy ý nhập vào và thuộc tính này mô tả tên của Analysis Database
sẽ được sinh ra trong SQL Server Analysis Services sau khi Deploy thành công. Nhấn OK để
hoàn tất. Tiếp tục Click chuột phải vào SaleDataAnalysis  hiển thị menu ngữ cảnh  chọn
Deploy:

Hình 3-93: Triển khai Project


Sau khi Deploy thành công, thông báo sẽ được hiển thị như hình trên. Đến đây chúng ta
đã xây dựng thành công mô hình Cube, có thể thực thi (Process) để truy vấn dữ liệu như sau:
Click chuột phải vào SaleDataAnalysis  hiển thị menu ngữ cảnh  chọn Process như hình
sau:
Hình 3-94: Lựa chọn Process cho Project
Cửa sổ sau tiếp tục xuất hiện, nhấn nút Run:

Hình 3-95: Chạy quá trình Process


Sau khi Process thành công, màn hình sau xuất hiện. Nhấn liên tục nút Close để đóng
các cửa sổ.
Hình 3-96: Kết thúc quá trình Process
Lúc này ta có thể kết nối vào SQL Server Analysis Services để kiểm tra xem cơ sở dữ
liệu SalesDataAnalysis được sinh ra chưa. Cụ thể: khởi động Microsoft SQL Server
Management Studio  lựa chọn thông số cho cửa sổ Login như sau:
 Server type: Analysis Services
 Server name: localhost (hoặc CANHHN-PC vì đây là SQL Server Instance
Name và cũng đồng thời trùng với tên của máy tính đang cài đặt SQL Server)

Hình 3-96: Cửa sổ đăng nhập vào SQL Server Analysis Services
Nhấn nút Connect để chuyển đến giao diện quản trị SQL Server Analysis Services. Cửa
sổ sau hiển thị, ta có thể thấy rõ một cơ sở dữ liệu SalesDataAnalysis với đầy đủ các thành
phần như hình sau:
Hình 3-97: Cửa sổ cơ sở dữ liệu Analysis Services
Quay trở lại giao diện Sales DW.cube trong BIDS, chọn Tab Browser để thực hiện một
số thao tác khai thác và hiển thị dữ liệu theo yêu cầu thực tiễn từ Cube vừa Deploy và Process
thành công.

Hình 3-98: Cửa sổ Cube sau khi tạo thành công trên SQL Server Data Tools
Giao diện Browser trong SQL Server Analysis Services 2012 cho phép người dùng thực
hiện kéo thả các Dimension và Measure từ vùng 1 vào vùng 2 (để tạo bộ lọc dữ liệu nếu cần)
và vào vùng 3 (để hiển thị dữ liệu dưới dạng lưới). Tuy nhiên, cửa sổ tại vùng 3 từ phiên bản
2012 không hỗ trợ hiển thị dữ liệu dạng Pivot như các phiên bản 2005 và 2008, để giải quyết
vấn đề này, phiên bản SQL Server Analysis Services 2012 hỗ trợ kết nối dữ liệu từ Cube vào
Exel (truy cập qua chức năng số 4 như trên hình), qua đó người dùng cuối dễ dàng thực hiện
các phép toán và thao tác xử lý bằng chính công cụ Office mà không cần quá am hiểu về các
hệ thống chuyên dụng như SQL Server Analysis Services hay BIDS. Trong các bước tiếp
theo, chúng ta sẽ click chọn vào nút kết nối Excel (nút số 4 trên hình) để thực hiện hiển thị và
phân tích dữ liệu theo một số yêu cầu của bài toán đặt ra. Cụ thể giao diện Excel sẽ như sau:

Hình 3-99: Cửa sổ Pivot Table trên Microsoft Excel


Giao diện Pivot Table trên Excel gồm ba vùng, vùng 1 chứa các trường thông tin
(Dimension và Measure) trong Cube, vùng 2 cho phép kéo thả các trường thông tin từ vùng
1 sang và tổ chức theo các nhóm chức năng : cột, dòng, lọc dữ liệu và tổng hợp giá trị. Vùng
3 sẽ hiển thị kết quả tự động sau mỗi thao tác kéo thả giữa vùng 1 và 2. Cụ thể, chúng ta sẽ
thực hiện phân tích dữ liệu trên Cube qua giao diện Excel với một yêu cầu cụ thể như sau:
“Thống kê tổng số sản phẩm, tổng tiền bán, lợi nhuận của từng cửa hàng, theo từng nhân viên
trong một khoảng thời gian”.
Theo yêu cầu trên, dữ liệu sẽ hiển thị trên Pivot Table như sau: hàng (Row Lables) là
nhân viên bán (Sales Person Alt ID) và sản phẩm (Product Alt Key); cột (Column Lables) là
cửa hàng (Store Alt ID), số lượng bán (Quantity), giá nhập (Product Actual Cost) và giá bán
(Sales Total Cost); lọc dữ liệu (Report Filter) là trường dữ liệu Date lấy từ Dim Date. Thực
hiện các thao tác kéo thả trên giao diện Excel, chúng ta nhận được kết quả chi tiết như sau:

Hình 3-100: Thiết kế Pivot Table trên MS Excel


Với giao diện chuyên nghiệp, dễ sử dụng và đặc biệt luôn đồng bộ cập nhật được dữ liệu
mới nhất, phân tích dữ liệu qua OLAP Cube mang lại hiệu quả cao và có ý nghĩa thực tiễn rất
lớn trong hoạt động kinh doanh của các doanh nghiệp.
3.3. Xây dựng ứng dụng khai phá dữ liệu trên BIDS
3.3.1. Bài toán khai phá dữ liệu

Yêu cầu bài toán:


- Bài toán đặt ra là xây dựng mô hình khai phá dữ liệu cho phép phân loại khách hàng,
tìm ra các khách hàng tiềm năng cũng như dự đoán được khách hàng nào có thể mua sản
phẩm (xe đạp) của công ty Adventure Works giúp cho bộ phận Marketing xây dựng các chiến
lược quảng cáo, tiếp thị nhằm mở rộng thị trường, tìm kiếm khách hàng, mở rộng kinh doanh.
Nói cách khác, cần xây dựng một mô hình (được huấn luyện và thử nghiệm dựa trên dữ liệu
về khách hàng cũ trong kho dữ liệu của công ty) cho phép dự đoán khả năng mua hay không
mua xe đạp của một khách hàng mới.
Yêu cầu cơ sở dữ liệu:
- Chúng ta sẽ sử dụng cơ sở dữ liệu mẫu AdventureWorksDW2012 (có thể tải về trên
website của hãng Microsoft) để làm kho dữ liệu khai phá. Cơ sở dữ liệu này cung cấp sẵn một
View (vTargetMail) với hơn 18000 bản ghi khách hàng cùng các thuộc tính liên quan, sẽ là
nguồn dữ liệu quan trọng trong quá trình huấn luyện (Training) và thử nghiệm (Testing) của
mô hình khai phá. Một số thông tin cụ thể mà vTargetMail cung cấp như sau:
Tên thuộc tính Chú thích
The customer key Mã khách hàng
The title Tiền tố Mr, Mrs, Sr trước tên khách hàng
The age Tuổi khách hàng
Birthdate Ngày sinh nhật khách hàng
Name Tên khách
Lastname Họ khách
MaritalStatus Tình trạng hôn nhân
Suffix Hậu tố đi kèm họ tên
Gender Giới tính
EmailAddress Địa chỉ email
YearlyIncome Thu nhập hàng năm
TotalChildren Số con
NumberChildrenAtHome Số con còn nhỏ ở nhà
EnglishEducation Trình độ học vấn tại Anh
SpanishEducation Trình độ học vấn tại Tây Ban Nha
FrenchEducation Trình độ học vấn tại Pháp
EnglishOccupation Chức vụ trong xã hội Anh
SpanishOccupation Chức vụ trong xã hội Tây Ban Nha
FrenchOccupation Chức vụ trong xã hội Pháp
HouseOwnerFlag Sở hữu nhà
NumberCarsOwned Số lượng xe ô tô sở hữu
AddressLine1 Địa chỉ 1
AddressLine2 Địa chỉ 2
Phone Số điện thoại
DateFirstPurchase Ngày mua xe đầu tiên
CommuteDistance Khoảng cách đi lại
Region Khu vực sống
Age Tuổi
BikeBuyer Có mua xe đạp
Truy vấn vTargetMail để xem dữ liệu như sau:
Hình 3-101: Bảng dữ liệu vTargetMail
3.3.2. Khởi tạo dự án và thiết lập nguồn dữ liệu

Thực hiện tương tự như các bước trong xây dựng OLAP Cube:
- Trong bước khởi tạo dự án, đặt tên dự án là SalesDataMining

Hình 3-102: Khởi tạo dự án SalesDataMining


- Trong bước thiết lập Data Source, chọn đến cơ sở dữ liệu AdventureWorksDW2012
https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks2012
- Trong bước thiết lập Data Source View, chọn vTargetMail

Hình 3-103: Tạo Data Source View cho Dự án SalesDataMining


Sau khi hoàn thành các bước, chúng ta nhận được Data Source và Data Source View
như hình sau:
Hình 3-104: Cửa sổ Data Source và Data Source View
3.3.3. Xây dựng và hiệu chỉnh mô hình khai phá dữ liệu

Một số mô hình khai phá dữ liệu trong Microsoft SQL Server Analysis Services:
Mô hình khai phá dữ liệu là kết quả của việc áp dụng các thuật toán khai phá dữ liệu lên
tập dữ liệu có sẵn qua hai quá trình huấn luyện (Training) và thử nghiệm (Testing). Như vậy
việc phân loại các mô hình khai phá sẽ gắn liền với việc phân loại các thuật toán nói trên và
nó cũng gắn liền với mục tiêu bài toán cụ thể của người dùng cần lấy được thông tin gì từ tập
dữ liệu có sẵn. Ta có thể phân loại một số thuật toán khai phá như sau:
Phân loại thuật toán Tên giải thuật
Thuật toán phân lớp (Classification algorithms): Microsoft Decision Trees Algorithm
dựa trên các thuộc tính của các đối tượng trong tập
dữ liệu, thuật toán sẽ phân các đối tượng vào một Microsoft Naive Bayes Algorithm

tập các nhóm hữu hạn (rời rạc). Ứng dụng liên
quan: Microsoft Clustering Algorithm

- Xác định khả năng mua hàng từ tập khách hàng


Microsoft Neural Network Algorithm
tiềm năng
- Tính xác xuất xảy ra một sự kiện trong một khoảng
thời gian
- Phân loại bệnh nhân và khám phá các yếu tố tác
động liên quan.
Thuật toán hồi quy (Regression algorithms): sử Microsoft Decision Trees Algorithm
dụng trong việc dự đoán đầu ra là một giá trị liên
tục. Ứng dụng liên quan: Microsoft Time Series Algorithm

- Dự đoán doanh số bán hàng năm tiếp theo


- Dự đoán lượng khách hàng, xu hướng mua sắm Microsoft Linear Regression Algorithm
của khách
Micorsoft Logistics Regression

Thuật toán phân nhóm – phân cụm (Segmentation Microsoft Clustering Algorithm
algorithms): phân chia dữ liệu thành các nhóm mà
các đối tượng trong mỗi nhóm có thuộc tính tương Microsoft Sequence Clustering

tự nhau. Ứng dụng liên quan: Algorithm

- Phân nhóm khách hàng dựa trên hành vi mua hàng


- Phân tích ảnh số
Thuật toán kết hợp (Association algorithms): khám Microsoft Association Algorithm
phá ra một quy luật dựa trên nhiều dữ liệu cho
trước. Ứng dụng liên quan: Microsoft Decision Trees Algorithm

- Xác định vị trí đặt các sản phẩm liên quan trong
siêu thị
- Gợi ý sản phẩm cần mua tiếp theo cho khách hàng
dựa trên hành vi mua hàng.
Như vậy đối với một yêu cầu khai phá dữ liệu chúng ta có thể xây dựng nhiều mô hình
tương ứng với nhiều loại thuật toán khác nhau, sau đó thử nghiệm và đánh giá để tìm ra mô
hình phù hợp. Không có một mô hình nào là tốt nhất trong mọi trường hợp. Nội dung tài liệu
này chỉ tập trung vào việc xây dựng mô hình khai phá dữ liệu dựa trên các giải thuật có sẵn
mà không đi sâu vào phân tích, trình bày nội dung chi tiết thuật toán. Trong bài toán dự đoán
khả năng mua xe đạp của khách hàng (đây là một bài phân lớp: mua và không mua), chúng ta
sẽ sử dụng Microsoft BIDS trên nền tảng SQL Server Analysis Services để thử nghiệm và
đánh giá 03 mô hình khai phá với các thuật toán được cung cấp sẵn là Micorosft Decision
Tree, Micorosoft Naive Bayes, Microsoft Clustering.
Các bước để tạo một Mining Model Structure. Trong cửa sổ Solution Explorer, bấm
phải chuột trên mục Mining Structures chọn New Mining Structure. Bấm Next và
chọn From existing relational database or data warehouse và bấm Next và chọn Decision
tree.
Hình 3-105: Tạo một mô hình khai phá

Hình 3-106: Lựa chọn các thuật toán có sẵn cho mô hình
Bấm Next và chọn Data Source View đã tạo AdventureWorksDW2012. Bấm Next và
chọn Input Table là vTargetMail, tích chọn Case và bấm Next. Chọn khóa là
CustomerKey.
Hình 3-107: Chọn Data Source View cho mô hình đã tạo

Hình 3-108: Lựa chọ bảng dữ liệu cho mô hình


Chọn cột cần dự doán (Predictable) là BikeBuyer và các cột dùng để dự đoán (Input)
gồm:
Age YearlyIncome Region
CommuteDistance HouseOwnerFlag TotalChildren
EnglishEducation LastName
EnglishOccupation MaritalStatus
FirstName NumberCarsOwned
Gender NumberChildrenAtHome
Chú ý: Sau khi chọn thuộc tính Predictable, chúng ta chỉ cần nhấn nút Suggest thì hệ
thống đề nghị cho bạn các thuộc tính Input tính liên quan đến thuộc tính Predictable đã chọn.

Hình 3-109: Tạo các thuộc tính đầu vào cho mô hình
Hệ thống tính toán điểm (Score) thể hiện mức độ tác động, người dùng thực hiện chọn
cột Input (khuyến cáo lựa chọn những thuộc tính có Score khác 0). Nhấn OK để về cửa sổ
ban đầu.
Hình 3-110: Cửa sổ xác nhận các thuộc tính được chọn cho đầu vào và dự báo
Bấm Next và bấm nút Detect để xác định nội dung và kiểu dữ liệu của các thuộc tính
được sử dụng trong model.

Hình 3-111: Xác định nội dung và kiểu dữ liệu của các thuộc tính được chọn
Bấm Next và đặt tên cho model là Decision Tree và bấm Next.
Hình 3-112: Lựa chọn tỷ lệ cho huấn luyện và kiểm tra
Cửa sổ phân chia dữ liệu cho quá trình Training và Testing hiển thị. Có hai ô textbox để
xác lập lượng dữ liệu phục vụ quá trình Testing là ô Percentage of data of testing và
Maximum number of case in testing data set. Mặc định hệ thống đặt 30% lượng dữ liệu
trong tổng số bản ghi làm nguồn cho testing, chúng ta có thể thay đổi thông số này nếu muốn.
Với thông số Maximum number of case in testing data set cho phép chúng ta thêm một lựa
chọn trong việc xác lập dữ liệu testing thông qua số lượng bản ghi tối đa được gõ trực tiếp.
Nếu cả hai ô textbox trên được nhập giá trị, hệ thống sẽ tính toán lấy giá trị nào cho số bản
ghi lớn nhất. Để mặc định 30% và nhấn Next.

Hình 3-113: Đặt tên cho mô hình đã tạo


Đặt tên cho Mining struct và Mining model như trên hình, nhấn Finish.
Hình 3-114: Cửa sổ mô hình đã tạo thành công
Tiếp tục ta tạo 02 Mining model (Clustering và Naïve Bayes) dựa trên Mining struct đã
tạo ở trên như sau:
Tạo Microsoft Clustering model
 Click Mining Structures tab.
 Right-click Targeted Mail và click New Mining Model.
 Ở mục Model Name, gõ tên mô hình (ở đây là Clustering)
 Ở mục Algorithm Name, chọn Microsoft Clustering.
 Click OK.

Hình 3-114: Tạo mô hình khai phá dữ liệu


Hình 3-115: Đặt tên và chọn thuật toán cho mô hình
Tương tự, ta tạo thêm một Naïve Bayes model trong Mining Structures. Sau đó chọn
Tab Mining Models để kiểm tra các mô hình vừa tạo.

Hình 3-116: Các mô hình đã được tạo


3.3.4. Triển khai mô hình khai phá dữ liệu

Triển khai (Deploy) các mô hình bằng cách chọn chuột phải vào SalesDataMining và
nhấn Deploy.

Hình 3-117: Triển khai Project SalesDataMining


Tiếp tục chọn chuột phải vào SalesDataMining và nhấn Process.
Hình 3-118: Thực thi Project SalesDataMining
Cửa sổ thực thi hiển thị, chọn Run và chờ đợi đến khi thông báo xử lý thành công

Hình 3-119: Quá trình thực thi Project SalesDataMining


Nhấn Close và chuyển sang Tab Mining Model Viewer để xem và phân tích kết quả mà
ba mô hình đã xử lý với khối dữ liệu Training.
Hình 3-120: Cửa sổ Tab Mining Model Viewer
Để theo dõi các thông tin mà Tab Mining Model Viewer cung cấp, chúng ta tập trung
vào 4 vùng đánh dấu trên hình.
- Vùng 1: cho phép chọn mô hình (3 mô hình mà chúng ta đã tạo ở những bước trước).
Ở đây chúng ta sẽ chọn thử mô hình Decision Tree để quan sát.
- Vùng 2: cho phép chọn lựa chế độ xem (dạng đồ thị hoặc dạng phân tích dữ liệu chi
tiết), mặc định để chế độ Microsoft Tree Viewer.
- Vùng 3: hiển thị thông tin theo chế độ đã chọn từ vùng 2. Trong hình trên, dữ liệu được
phân nhánh theo cây quyết định.
- Vùng 4: Hiển thị chi tiết khả năng xảy ra (Probability) đối với các sự kiện mua hoặc
không mua, cùng số bản ghi tương ứng tại mỗi nút của cây.
Từ các thông tin mà chúng ta nhận được trên Tab Mining Model Viewer đối với mô
hình Decision Tree, có thể thấy ngay khi thuộc tính Number Cars Owned = 0 thì khả năng
mua xe đạp là cao nhất (63.60%). Tiếp tục mở rộng cây, ta sẽ thấy nếu khách hàng đáp ứng
điều kiện “Number Cars Owned = 0 and Age < 46 and English Education = 'Bachelors' and
Total Children not = 4 and Total Children not = 1” thì khả năng họ mua xe đạp là cao nhất.
Ta tiếp tục theo dõi mô hình Clustering, chọn Tab Cluster Profiles bên dưới, ta có giao
diện sau:
Hình 3-121: Cửa sổ thực thi mô hình với Clustering của Project SalesDataMining
Có 10 cụm (cluster) được sinh ra sau khi huấn luyện, trong đó bằng quan sát cho thấy
những khách hàng nào có các thuộc tính giống cụm 1 và 4 là có khả năng mua xe đạp cao
nhất.
Ngoài ra đối với Mining Model Viewer cho mô hình Clustering còn có thêm nhiều Tab
chức năng khác như Cluster Diagram, Cluster Characteristics và Cluster Discrimination cho
phép chúng ta quan sát chi tiết hơn về đặc tính của từng cụm cũng như sự khác biệt giữa các
cụm như thế nào. Làm tương tự với mô hình NaiveBayes và quan sát.
3.3.5. Kiểm định mô hình khai phá dữ liệu

Như vậy chúng ta đã xây dựng thành công 03 mô hình khai phá dữ liệu, để đánh giá sử
dụng mô hình nào là tốt nhất trong bài toán dự đoán khả năng mua xe đạp với tập dữ liệu đã
cho, chúng ta chuyển sang Tab Mining Accuracy Chart để kiểm tra độ chính xác của các mô
hình.
Trong Tab Mining Accuracy Chart có 4 Tab chức năng khác gồm: Input Selection, Lift
Chart, Classification và Cross Validation. Chúng ta vào Tab Input Selection để chọn Mô hình
cùng tập dữ liệu kiểm định.
Hình 3-122: Kiểm định mô hình của Project SalesDataMining
Trong hình trên, chúng ta chọn cả 3 mô hình (tích vào cột Show). Trong cột Predict
Value (vùng đánh số 1) cho phép chọn lựa giá trị cần dự đoán cho thuộc tính Bike Buyer, đặt
mặc định là empty (dòng trống) để quá trình kiểm định sẽ đánh giá mức độ chính xác của các
mô hình khai phá đối với cả trường hợp mua và không mua của khách hàng trong tập Testing.
Trong mục Select data set to be used for Acuracy Chart (vùng đánh số 2), chúng ta tích
chọn Use mining structure test cases để sử dụng tập dữ liệu Testing mà chúng ta đã phân
chia trong quá trình tạo lập Mining Struct (30% trên toàn bộ tập dữ liệu đầu vào dùng để kiểm
tra mô hình, tập dữ liệu này hoàn toàn được lấy ngẫu nhiên). Nêú chúng ta muốn kiểm định
mô hình trên tập dữ liệu được lọc theo một số tiêu chí để hướng tới những khách hàng mà
doanh nghiệp đang hướng tới trong thực tế thì có thể sử dụng tùy chọn Use mining model
test cases hoặc Specify a different data set, cách làm này có thể giúp cải thiện độ chính xác
của mô hình khi kiểm tra.
Có 3 công cụ được cung cấp giúp đánh giá độ chính xác của mô hình khai phá là: Lift
Chart, Classification Matrix, Cross Validation.
Sử dụng Lift Chart
Hình 3-123: Biểu đồ Lift Chart cho ba mô hình đã tạo của Project SalesDataMining
Giao diện bao gồm 3 phần chính: Chọn loại biểu đồ thể hiện (Chart type) là Lift Chart
như vùng 1, đồ thị đánh giá độ chính xác của các mô hình sẽ hiển thị như vùng 2, bao gồm
04 đồ thị: Ideal Model (đường này mô tả trường hợp mô hình lý tưởng khi mọi dự đoán của
mô hình với tập dữ liệu Testing đều chính xác, tức là với phân bố xác suất 50% khách hàng
có khả năng mua và 50% khách hàng không mua trong tập Testing thì mô hình này sẽ tìm ra
đúng 50% khách có khả năng mua) và các đường đại diện cho các mô hình Decision Tree,
Clustering, NaiveBayes. Nhìn vào đồ thị dễ dàng nhận thấy đường nào càng sát Ideal Model
thì càng tốt, ngoài ra chúng ta có thể quan sát kỹ thông tin của các mô hình qua bảng thống
kê trong vùng 3. Cột Population Correct chỉ ra lượng khách hàng có khả năng mua hàng
(Decision Tree 38.95%, Clustering 32.26%, NaiveBayes 33.44%) và khả năng mua hàng
(mức độ từ thích cho tới mua) được đánh giá qua thông số Predict probability (Decision
Tree 71.55%, Clustering 58.98%, NaiveBayes 75.09%). Cột Score là thông số quan trọng
nhất giúp chúng ta so sánh hiệu quả của các mô hình với nhau, thông số này càng cao càng
tốt. Qua biểu đồ Lift Chart có thể dễ dàng nhận thấy mô hình Decsion Tree có độ chính xác
cao nhất trong ba mô hình.
Sử dụng Classification Matrix
Hình 3-124: Cửa sổ Classification Matrix so sánh 3 mô hình
Quan sát ma trận phân lớp với mô hình Decision Tree, ta nhận thấy: trong số khách hàng
mà mô hình dự đoán là không mua (Prediced = 0) thì đúng 1901 và sai 908, trong số khách
hàng dự đoán là mua (Prediced = 1) thì đúng 1863 và sai 873. Như vậy tổng số khách mà mô
hình dự đoán đúng là 1901 + 1863 = 3764. Tương tự tổng số lượt dự đoán đúng với mô hình
Clustering là 1903 + 1466 = 3369 và với mô hình NaiveBayes là 1578 + 1776 = 3354. Qua
đó nhận thấy Decision Tree có độ chính xác cao nhất trong ba mô hình.
Sử dụng Cross Validation
Thông thường tập dữ liệu được chia làm 70% cho huấn luyện (Training) và 30% cho
kiểm định (Testing). Tuy nhiên đôi khi mô hình sau khi được huấn luyện vẫn bị quá khớp khi
áp dụng trên tập dữ liệu Testing, để cải thiện việc này, chúng ta sử dụng thêm kỹ thuật Cross
Validation lên các mô hình bằng cách lặp lại quá trình huấn luyện và kiểm định nhiều lần trên
chính tập Training. Khi đó chúng ta chia tập Training thành n khối dữ liệu (thuật ngữ hay
dùng là Fold hoặc Partition) và thực hiện huấn luyện trên n-1 khối và kiểm tra trên 1 khối,
quá trình này được lặp lại sao cho khối nào cũng được làm tập Testing một lần. Sau mỗi lần
lặp các tham số của mô hình được điều chỉnh phù hợp hơn, mô hình cuối cùng sẽ được kiểm
tra với tập Testing chứa 30% dữ liệu mà chúng ta đã tách từ đầu. Tham khảo mô hình sau của
Microsoft khi nói về Cross Validation:
Hình 3-125: Mô hình của Microsoft về Cross Validation
Vào Tab Cross Validation để thao tác như sau:

Hình 3-126: Cửa sổ Cross Validation


Một số thông số chúng ta cần quan tâm: Fold Count (dùng để chia tập dữ liệu Training
thành các Partition, nhỏ nhất là 2 và lớn nhất là 10), Max Cases (dùng để xác định số lượng
dữ liệu tối đa sẽ được dùng cho mỗi Partition, để mặc định Max Cases là 0 nghĩa là mỗi
Partition số dữ liệu bằng bộ tập dữ liệu chia cho Fold Count), Target Attribute (là thuộc tính
cần dự đoán, trong trường hợp này là Bike Buyer), Target State (là một trong các giá trị của
trường thuộc tính cần dự đoán, trong trường hợp này sẽ là 0 hoặc 1 tương ứng với giá trị thuộc
tính Bike Buyer, chúng ta để trắng hệ thống sẽ thực hiện kiểm định với tất cả các giá trị có
thể có của trường cần dự đoán), Target Threshold (Giá trị ngưỡng nằm trong đoạn [0,1]
dùng để xác định giá trị xác suất dự đoán tối thiểu khi kiểm định, để mặc định là trắng). Sau
khi điền đầy đủ các thông số, nhấn nút Get Results và nhận được các kết quả qua các số liệu
thống kê như Standard Deviation, Log Score, Root Mean Square Error,…
Qua kết quả nhận được có thể thấy với mô hình Decision Tree giá trị trung bình của số
lượng dự đoán đúng là lớn nhất và trung bình số lượng dự đoán sai là nhỏ nhất trong ba mô
hình, điều đó chứng tỏ Decision Tree là mô hình tốt nhất.
3.3.6. Sử dụng mô hình khai phá dữ liệu để dự đoán

Theo kết quả kiểm định ở trên, chúng ta sẽ sử dụng mô hình Decision Tree để dự đoán
hành vi mua hàng của một khách hàng mới thông qua Tab Mining Model Prediction như
sau:

Hình 3-127: Cửa sổ Mining Model Prediction cho dự đoán


Giao diện hiển thị có hai chế độ là Design và Query (sử dụng ngôn ngữ DMX), chúng
ta sử dụng Design để dễ dàng thiết lập các thông số qua kéo thả. Có hai cách để dự đoán với
mô hình:
- Dự đoán từng trường hợp khách hàng đơn lẻ: chọn chuột phải vào bất kỳ vùng nào
trong cửa sổ và nhấn Singleton Query sau đó thiết lập giá trị cho từng trường dữ liệu, chọn
mô hình khai phá là Decision Tree với trường cần dự đoán là Bike Buyer, chọn Prediction
Function là PredicProbility (dự đoán xác suất, tại đây cũng có thể chọn nhiều kiểu dự đoán
khác theo yêu cầu thực tiễn). Chọn chuột phải lên vùng cửa sổ và nhấn Result để hiển thị kết
quả dự đoán.

Hình 3-128: Kết quả chạy dự đoán cho các thuộc tính

Hình 3-129: Kết quả xác suất không mua hàng


Với một khách hàng có các thuộc tính (Age: 45, Commute: 5-10 Miles, English
Education: High School, Number Cars Owned: 3, Number Children At Home: 3, Total
Children: 4) mô hình dự đoán khách không mua với xác suất không mua khoảng 56%.
- Dự đoán cả một tập khách hàng: Nhấn Select Case Table để chọn nguồn dữ liệu
TargetMail, chọn mô hình khai phá là Decision Tree với trường cần dự đoán là Bike Buyer,
chọn Prediction Function là PredicProbility, chọn CustomerKey là trường đại diện cho
khách hàng được hiển thị trên màn hình kết quả dự đoán. Chọn chuột phải lên vùng cửa sổ và
nhấn Result để hiển thị kết quả dự đoán.
Hình 3-130: Lấy kết quả dự đoán

Hình 3-131: Kết quả dự đoán những người mua hàng và không mua hàng
Cột Bike Buyer có giá trị 0 hoặc 1 (tương ứng với mua hoặc không mua), cột Expression
chỉ xác suất dự đoán (giá trị trong khoảng [0.5,1]), giá trị này càng cao thì kết quả dự đoán
trên cột Bike Buyer càng được tin cậy.

You might also like