Professional Documents
Culture Documents
Chương 3 - Phan Tich Va Khai Pha DL
Chương 3 - Phan Tich Va Khai Pha DL
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-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ự.
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
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-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-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-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-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-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
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-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-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-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.
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-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:
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
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
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
- 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-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.
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.
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:
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-128: Kết quả chạy dự đoán cho các thuộc tính
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.