Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
LỜI NÓI ĐẦU
Hệ thống cơ sở dữ liệu đã đánh dấu một bước thành công lớn trong hơn hai
thập kỷ qua. Tìm kiếm các thông tin hữu ích trong các CSDL đã trở thành một điểm
quan trọng trong hoạt động kinh doanh và ngày càng có nhiều sự chú ý tới việc khai
phá dữ liệu - Data Mining, đó như là một thành phần mấu chốt để khám phá thông
tin. Các thuật toán khai phá dữ liệu và các công cụ mô phỏng nó đã và đang đựơc sử
dụng để tìm kiếm các hình mẫu quan trọng ẩn chứa trong dữ liệu và tạo ra các dự
báo hữu ích. Khoa học này đã và đang được chấp nhận trong hầu hết tất cả các bộ
phận kinh doanh như ngân hàng, viễn thông, sản xuất, tiếp thị và thương mại điện
tử. Data Mining trong SQL 2005 là một bước tiến lớn trong hệ thống Data Mining
và công nghệ cao nhất về CSDL. Các kỹ sư và nhà nghiên cứu từ rất nhiều tổ chức
nghiên cứu đã làm việc cùng nhau để mang cả hai trường phái cổ điển và công nghệ
mới, mổ xẻ các khía cạnh công cụ Data Mining.
Trong hệ thống các dạng Data Mining thì có một kiểu khai phá dữ liệu rất đặc biệt
chỉ thực hiện trên các dữ liệu định dạng Text đó là Text Mining. Trong thời điểm hiện
nay, phân tích các tài liệu dạng Text trở nên rất quan trọng. Và các dự án Textmining
thực sự là một công cụ hổ trợ đắc lực trong việc phân nhóm, phân loại và phân đoạn các
dữ liệu không cấu trúc này nhằm thực hiện các vấn đề thiết thực trong cuộc sống cũng
như hoạt động kinh doanh thương mại. Các lĩnh vực cần sử dụng Text Mining vào thực
hiện các công việc trong thực tế rất nhiều, như thực hịên phân nhóm các thông tin phản
hồi của khách hàng, thăm dò các ý kiến thông qua các Topic, Blog; phân loại các dạng
bài post của một trang Web…Với SQL 2005, Data Mining nói chung và Text Mining
nói riêng thực sự đã trở thành các công cụ xây dựng các ứng dụng thông minh, hổ trợ
đắc lực và thiết thực cho mọi người trong việc giải quyết các vấn đề thực tế.
Những vấn đề này được em phân tích và xây dựng chi tiết trong nội dung đề tài:
Tìm hiểu kỹ thuật Text Mining và ứng dụng
Em xin chân thành cảm ơn đã giúp đỡ em hoàn thành nội dung đề tài này.
GVHD: TS. Nguyễn Mạnh Hùng - 1 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
MỤC LỤC
Các nhà kinh doanh phải đối phó với sự cạnh tranh khốc liệt và rộng khắp và chìa
GVHD: TS. Nguyễn Mạnh Hùng - 3 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
khóa cho sự thành công là sự tài tình trong việc giữ lại các khách hàng hiện tại và lôi
kéo được các khách hàng mới về phía mình. Data Mining là công nghệ tích hợp mà
cho phép nhà kinh doanh có thể phân tích các nhân tố mà ảnh hưởng đến kết quả đó.
- Sẳn sàng về mặt công nghệ: Công nghệ Data Mining trước đó chỉ tồn tại
trong phạm vi nghiên cứu ở các viện, nhưng hiện nay rất nhiều trong số chúng đã
được làm hoàn thiện và sẳn sàng áp dụng trong các ngành nghề lĩnh vực kinh doanh.
Các thuật toán đang dần chính xác hơn, hiệu quả hơn, và có thể xữ lý tốt hơn sự
phức tạp của dữ liệu. Hơn nữa, giao diện lập trình ứng dụng Data Mining (APIs) đã
và đang được chuẩn hóa, chúng sẽ cho phép các nhà phát triển xây dựng các ứng
dụng Data Mining tốt hơn nữa.
1.2 Các bài toán của Data Mining trong kinh doanh
- Phân tích thị trường: Những khách hàng nào có khả năng lớn nhất để chuyển
đổi sự cạnh tranh này? Truyền thông ngân hàng và ngành bảo hiểm luôn đối phó với
sự cạnh tranh khốc liệt hằng ngày. Trong số đó, mỗi một số điện thoại di động mới
của người dùng sẽ phải trả cho công ty sản xuất điện thoại một số tiền vượt quá
200$ trong việc đầu tư vào tiếp thị sản phẩm. Công việc kinh doanh hằng ngày
mong muốn giữ lại các khách hàng hiện tại là một vấn đề hợp lý. Phân tích thị
trường có thể trợ giúp việc quản lý tiếp thị dưới mặt lý trí khách hàng, cải thiện mối
quan hệ với khách hàng, và cuối cùng là tăng thêm lòng tin tưởng, trung thành của
các khách hàng với doanh nghiệp.
- Trao đổi mua bán: Các sản phẩm nào mà khách hàng muốn mua về? trao đổi mua
bán là một vấn đề thách thức quan trọng trong kinh doanh của các thương nhân. Rất nhiều
thương nhân, đặc biệt là các nhà buôn bán qua mạng sử dụng điểm này để tăng cường sự trao
đổi mua bán của họ. Ví dụ, Nếu bạn muốn lên mạng tìm sách trên mạng Amazon.com … để
mua một quyển sách, bạn sẽ được khuyến cáo rằng các site đó cho bạn một tập các khuyến
khích và ý kiến tiếp thị về cuốn sách có liên quan. Tất cả các ý kiến đó có thể là xuất phát từ
sự phân tích Data Mining.
Một trong đó là các lớp thuộc tính (thuộc tính dự báo). Nhiệm vụ này đòi hỏi sự tìm kiếm
một mẫu mà mô tả lớp thuộc tính như là các hàm của thuộc tính đầu vào. Cái đó thường
xuyên liên quan đến dữ liệu lịch sử. Thuật toán Data Mining cần một mục tiêu hướng đến
GVHD: TS. Nguyễn Mạnh Hùng - 5 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
thuật toán giám sát. Trong thuật toán phân loại, các mục tiêu được đưa vào Cây quyết
định,Naïve Bayes, mạng Neural và đưa ra quyết định.
- Kỹ thuật Clustering (phân cụm): Kỹ thuật này cũng có thể được gọi là phân
loại. Nó được sử dụng để nhận biết các nhóm tự nhiên của các trường hợp trên cơ sở
một tập thuộc tính. Các trường hợp trong một nhóm tương tự nhau có nhiều hoặc ít
các giá trị thuộc tính giống nhau. Clustering là một Data Mining không giám sát.
Không có thuộc tính đơn nào được sử dụng để chỉ dẫn các xử lý. Tất cả các thuộc
tính đầu vào được đối xử ngang bằng. Phần lớn các thuật toán Clustering được xây
dựng thông qua một mẫu lặp lại và chỉ dừng lại khi mô hình đã hồi quy, đó là khi
ranh giới giữa các cụm trở nên rõ ràng và ổn định.
- Luật kết hợp: Luật kết hợp là một dạng phổ biến khác của các nhiệm vụ Data
Mining. Kết hợp cũng được gọi là phân tích cái bọc thị trường. Sự kết hợp các vấn đề
kinh doanh điển hình là để phân tích một bảng quản lý giao dịch mua bán và nhận dạng
các sản phẩm thường được giao bán trong một cửa hiệu. Cách dùng phổ biến của sự kết
hợp để nhận dạng một tập các Items, và nguyên tắc chỉ định các trao đổi mua bán
(Rules). Trong các điều kiện của tập hợp, mỗi sản phẩm hay tổng quát hơn mỗi cặp thuộc
tính giá trị được coi là như một Item. Nhiệm vụ tập hợp có hai hướng đi: Tìm tập các
Item thường xuyên, và tìm nguyên tắc kết hợp. Hầu hết các loại thuật toán về luật kết
hợp tìm thấy thuộc tính thường xuyên bằng việc quét các dữ liệu phức tạp nhiều lần.
Giới hạn thường xuyên (hổ trợ) là một định nghĩa bởi người sử dụng trước khi xử lý các
mô hình. Mổi tập thường xuyên đó có một kích cỡ nhất định, đó là số các Items mà nó
chứa đựng. Hầu hết các loại thuật toán luật kết hợp cũng là các nguyên tắc tìm kiếm.
Một nguyên tắc tập hợp là có từ A,B => C với một xác suất, nơi A,B,C là các tập
thường xuyên. Một xác suất là một giá trị tranh luận, mà người sử dụng cần nó để định
rõ trước khi thực hiện mô hình tập hợp.
chuyển trong khi cái kia thì tính đến mỗi một Item trong một cửa hàng đến ngang
nhau và độc lập. Với mô hình chuỗi các sự kiện, thì việc mua một máy tính trước
một tai nghe khác với việc mua một tai nghe trước máy tính. Với một thuật toán kết
hợp thì sẽ có nhiều ý kiến trùng nhau trong một tập hợp các mục.
Phân tích hướng sự kiện là một nhiệm vụ mới của Data Mining. Nó trở nên
quan trọng hơn để được hưởng hai cái chính của ứng dụng là: Phân tích Web giải
thích và phân tích ADN. Có rất nhiều kỹ thuật phân tích chuỗi các sự kiện thông
GVHD: TS. Nguyễn Mạnh Hùng - 7 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
thường, sẳn có ngày nay như là xích Markov. Các nhà nghiên cứu đã hoạt động
khám phá ra các thuật toán mới trong lĩnh vực hoạt động này.
- Phân tích độ lệch: Phân tích độ lệch là tìm ra các trường hợp hiếm có mà rất
khác với tất cả các cái khác. Nó cũng được gọi là tìm kiếm ngoài, tìm kiếm các
thông tin thay đổi quan trọng từ các tập dữ liệu lịch sử. Phân tích độ lệch được ứng
dụng rất nhiều. Một ví dụ phổ biến đó là ứng dụng trong việc phát hiện gian lận việc
sử dụng Credit Card. Nhận dạng các trường hợp dị thường trong hàng triệu các dữ
liệu giao dịch là một vấn đề thách thức.
Không có một kỹ thuật chuẩn nào cho việc phân tích độ lệch. Nó vẫn là một đề
tài đang được nghiên cứu phát triển. Thường thì việc phân tích tận dụng các phiên bản
của cây quyết định, Clustering, hoặc các thuật toán mạng Neural cho nhiệm vụ này.
1.4 Kỹ thuật Data Mining
Mặc dù Data Mining là một lĩnh vực khá mới, phần lớn kỹ thuật Data Mining đã
tồn tại nhiều năm. Nếu chúng ta thấy được gốc của các thuật toán Data Mining thông
dụng, chúng ta sẽ thấy rằng chúng xuất phát từ 3 trường: Thống kê, máy thông minh và
CSDL. Phần lớn danh sách các nhiệm vụ của Data Mining trong phần trước đã có địa
chỉ trong cộng đồng ngành thống kê. Một con số lớn thuật toán Data Mining, kể cả hồi
quy, chuỗi thời gian, và cây quyết định được phát minh bởi các nhà thống kê. Kỹ thuật
hồi quy đã tồn tại cách đây 100 năm. Thuật toán chuỗi thời gian được đã được nghiên
cứu hàng thập kỹ nay. Và thuật toán cây quyết định là một trong những kỹ thuật mới
nhất hiện nay, nằm trong khoảng giữa thập kỹ 80.
Thuật toán sử dụng kết hợp xác xuất có điều kiện và không có điều kiện theo công thức:
( )
)(
)()|(
|
EP
HPHEP
EHP
×
=
Trong đó:
H: là giả thuyết
E: là điều kiện
P(H|E): là xác suất của giả thuyết H với điều kiện E
P(E|H): là xác suất của điều kiện E với giả thuyết H
c. Các tham số của thuật toán:
Vì sự thực hiện của thuật toán không phức tạp nên nó không đòi hỏi nhiều tham số.
Naïve Bayes có các tham số sau:
GVHD: TS. Nguyễn Mạnh Hùng - 9 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
- MAXIMUM_INPUT_ATTRIBUTES: Xác định số thuộc tính đầu vào cho huấn
luyện. Nếu có nhiều hơn số thuộc tính đầu vào này thì thuật toán sẽ chọn các đầu vào
quan trọng nhất và bỏ qua các thuộc tính còn lại. Thiết lập tham số này bằng 0 để thuật
toán chọn tất cả các thuộc tính. Giá trị mặc định là 255.
- MAXIMUM_OUTPUT_ATTRIBUTES: Xác định số thuộc tính đầu ra cho huần
luyện. Nếu có nhiều hơn số thuộc tính đầu ra này thì thuật toán sẽ chọn các đầu ra quan
trọng nhất và bỏ qua các thuộc tính còn lại. Thiết lập tham số này bằng 0 để thuật toán
chọn tất cả các thuộc tính. Giá trị mặc định là 255.
- MAXIMUM_STATES: điều khiển bao nhiêu trạng thái của một thuộc tính được
xem xét. Nếu một thuộc tính có nhiều trạng thái hơn số này, chỉ các trạng thái phổ biến
@NuclearWaste AS [Nuclear Waste]) as t
1.5.2 Thuật toán cây quyết đinh.
a. Trường hợp áp dụng:
Thuật toán cây quyết định dùng để phân loại, chẳng hạn để phân loại khách hàng
mua hàng trực tuyến và khách hàng mua trực tiếp, hoặc dùng trong các tác vụ hồi qui.
Thuật toán cây quyết định hỗ trợ cả thuộc tính rời rạc và thuộc tính liên tục.
b. Nguyên tắc của thuật toán:
Nguyên tắc của thuật toán cây quyết định (Decision trees) là chia nhỏ dữ liệu
một cách đệ qui thành các tập con và mỗi tập con này chứa các trạng thái đồng nhất
hoặc không đồng nhất. Tại mỗi nhánh trên cây, tất cả thuộc tính input được đánh giá
tầm ảnh hưởng của chúng lên các thuộc tính có thể dự đoán. Khi tiến trình đệ qui
này kết thúc một cây quyết định sẽ được hình thành.
- Đầu tiên thuật toán Decision trees sẽ lấy một thuộc tính để rẽ nhánh ở nút gốc
- Điều kiện để chọn thuộc tính rẽ nhánh sử dụng công thức tính số Entropy nếu
số entropy của thuộc tính nào nhỏ nhất thì thuộc tính đó sẽ được chọn:
Entropy (p
1
, p
2
, p
3
, …, p
n
) = - p
1
log
2
p
1
- p
- MAXIMUM_INPUT_ATTRIBUTES: Xác định số thuộc tính input mà thuật toán
có thể điều khiển trước khi nó gọi tới đặc tính lựa chọn. Đặt giá trị này bằng 0 để tắt đặc
tính lựa chọn. Mặc định là 255.
GVHD: TS. Nguyễn Mạnh Hùng - 11 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
- MAXIMUM_OUTPUT_ATTRIBUTES: Xác định số thuộc tính output mà thuật
toán có thể điều khiển trước khi nó gọi tới đặc tính lựa chọn. Đặt giá trị này bằng 0 để
tắt đặc tính lựa chọn. Mặc định là 255.
- SCORE_METHOD: Xác định phương thức sử dụng để tính toán điểm rẽ nhánh
Một số lựa chọn sẵn có: Entropy (1), Microsoftyesian with K2 Prior (2), or
Microsoftyesian Dirichlet Equivalent (BDE) Prior (3). Mặc định là 3.
- SPLIT_METHOD: xác định phương thức được sử dụng để chia nhỏ một node.
Available options: Binary (1), Complete (2), hoặc Both (3). Mặc định là 3.
- MINIMUM_SUPPORT: Xác định số tối thiểu của mức lá mà được yêu cầu để
sinh ra một nhánh trên cây quyết định. Mặc định là 10.
- COMPLEXITY_PENALTY: Điều khiển độ tăng trưởng của cây quyết định. Giá
trị thấp sẽ làm tằng số lượng các nhánh và ngược lại. giá trị mặc định dựa vào số lượng
thuộc tính của mô hình cụ thể, được liệt kê như sau:
Từ 1 đến 9 thuộc tính mặc định là 0.5. Từ 10 đến 99 thuộc tính mặc định là 0.9. Từ
100 thuộc tính trở lên mặc định là 0.99.
d. DMX:
Tạo mô hình:
Create mining model CollegePlan(
StudentId long Key,
Gender text discrete,
ParentIncome long discrete,
IQ long continuous,
ParentEncouragement text discrete,
CollegePlans text discrete predict
)Using Microsoft_Decision_Trees(Complexity_Penalty=0.5)
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
Một Neural Network chứa một tập các node (neuron), và các cạnh. Có ba loại
node: Đầu vào (Input node), node ẩn (Hident node) và đầu ra (Output node). Mổi
cạnh kết nối hai node với nhau với tập hợp các trọng số riêng biệt. Hướng của mổi
cạnh được miêu tả như một luồng dữ liệu trong suốt quá trình dự báo kết quả của
mô hình. Mỗi node là một đơn vị của quá trình xử lý. Các node đầu vào là từ layer
đầu tiên của mạng. Trong các mạng Neural Network phổ biến, mổi node đầu vào
được kết nối tới một thuộc tính đầu vào như tuổi thọ, giới tính hay thu nhập. Giá trị
gốc của một thuộc tính đầu vào cần được chuẩn hóa tới một miền giá trị số thực nhất
định (thường là từ -1 đến 1) trước khi xử lý.
Node ẩn là các node nằm trong các layer trung gian. Một node ẩn nhận đầu vào
từ các node trong layer đầu vào hoặc từ các layer tiền nhiệm. Nó kết hợp tất cả các
đầu vào dựa trên trọng số của các cạnh liên quan, xử lý các tính toán và đưa ra giá
trị kết quả đến layer tiếp theo.
Output nodes thường được coi là các thuộc tính dự báo. Một Neural Network có
thể có nhiều thuộc tính đầu ra, như trong hình 1(b). Nó có thể tách rời các Output
node với các mạng khác. Nhưng trong các trường hợp phổ biến, nó giảm bớt các lần
xử lý khi chúng kết hợp các mạng dùng chung của quá trình quét nguồn dữ liệu. Kết
quả của Output node thường là một số thực từ 0 đến 1.
Kỹ thuật dự báo của Neural Network không phức tạp. Các giá trị thuộc tính của các
Input case được chuẩn hóa và ánh xạ tới các neuron của layer đầu vào. Sau đó mổi node
Hidden layer phân tích các đầu vào và khởi sự các đầu ra cho layer tiếp theo. Cuối cùng
neuron đầu ra bắt đầu xử lý các giá trị tự sinh và các giá trị đầu ra. Giá trị này ánh xạ đến
mức co giản đầu vào (original scale - thuật ngữ của thuộc tính liên tục) hoặc một loại đầu
vào (original category - thuật ngữ của thuộc tính rời rạc). Trong quá trình phân tích xử lý,
một Neural Network tốn rất nhiều thời gian, tạo dự báo lại một mô hình Neural Network đã
huấn luyện thì hiệu quả mang lại là cao hơn.
Như minh họa trên hình 1, cấu trúc mạng Neural Network có thể biến đổi. Hình 1(a)
thể hiện một mạng rất đơn giản, nó có một thuộc tính đầu ra, với 1 hidden layer. Tất cả các
neuron input đều kết nối tới các neuron đầu ra trực tiếp. Đấy chính là mạng hồi quy hậu
Tương tự như cách mà mạng Neural Network sinh học làm việc, khi sử dụng hàm
kích hoạt, các thay đổi nhỏ của giá trị đầu vào đôi khi gây ra thay đổi lớn giá trị đầu ra và
thay đổi lớn của giá trị đầu vào lại hầu như tác động rất nhỏ hoặc không đáng kể tới giá trị
đầu ra. Cụ thể, giá trị đầu ra rất nhạy với các thay đổi của giá trị đầu vào khi giá trị đó xa
với mức trung bình của nó. Đặc tính làm nổi bật khả năng của Neural Network là nghiên
cứu được các quan hệ phi tuyến bên trong mạng. Một vài hàm toán học thỏa mãn đặc tính
này. Hàm phổ biến trong số đó là hàm xích-ma sigmoid (logistic) và tanh. Đó là hai hàm
phi tuyến và kết quả của nó cũng là trạng thái phi tuyến. Định nghĩa của hàm sigmoid và
tanh là:
( )
a
eOsigmoid += 11:
( ) ( )
aaaa
eeeeO
−−
+−=:tanh
Trong đó a là giá trị đầu vào và O là là giá trị đầu ra.
Hình 3 minh họa phân phối của hai hàm trên. Trục x là giá trị đầu vào, trục y là giá trị
đầu ra. Giá trị đầu ra của hàm sigmoid là từ 0 đến 1, còn tanh là từ -1 đến 1. Khi giá trị đầu
vào là 0 thì đầu ra thay đổi nhạy nhất so với thay đổi nhỏ của đầu vào. Khi giá trị đầu vào
được đưa vào là lớn thì thay đổi của giá trị đầu ra hầu như không đáng kể.
Microsoft Neural Network sử dụng hàm tanh như một hàm kích hoạt trong Hidden
nodes. Với Output nodes thì nó sử dụng hàm sigmoid.
GVHD: TS. Nguyễn Mạnh Hùng - 16 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
Hình 3: Hàm kích hoạt (Actiovation)
GVHD: TS. Nguyễn Mạnh Hùng - 17 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
- Backpropagation, Error Function, và Conjugate Gradient
của phân loại nhị phân binary classification (nếu số delta giữa giá trị dự báo và giá trị hiện
thời nhỏ hơn 0.5 thì sai số là 0 ngược lại là 1).
Công thức dưới đây đưa ra một phương thức thông thường cho tính toán sai số cho các
neuron tại output layer sử dụng đạo hàm của hàm lùi (logistic function). Microsoft Neural
Network sử dụng tổng của các sai số bình phương sum-of-squares error cho các giá trị liên
tục và cross-entropy cho các thuộc tính rời rạc:
( )( )
iiiii
OTOOErr −−= 1
Trong trường hợp trên, O
i
là đầu ra của output neuron đơn vị i. Và T
i
là giá trị hiện
thời cho output neuron đó dựa trên mẫu huấn luyện.
Tính toán sai số cho hidden neuron dựa trên sai số của các neuron trong các layer dưới
và kết hợp trọng số. Công thức như sau:
( )
∑
−=
j
ijjiii
wErrOOErr 1
Ở đây, O
i
là đầu ra của hidden neuron đơn vị i, và có j output đến các layer tiếp theo
đó. Err
j
là sai số của neuron đơn vị j, w
ij
Ví dụ này có 3 Input node và 1 Output node và nó ánh xạ tới 4 thuộc tính của mỗi 1
trường hợp. Giả sử rằng, trường hợp các mẫu là (1,1,0,1) là con số cuối của đầu ra.
Bước thứ nhất là tính toán đầu ra cho mỗi hidden và output neuron được minh họa
trong bảng 1:
Bảng 1: Tính toán đầu ra cho Hidden và Output neuron
GVHD: TS. Nguyễn Mạnh Hùng - 20 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
Chúng ta tính ra được giá trị đầu ra của neurons 6 là 0.667. Giá trị hiện thời được đưa
vào bằng ví dụ là 1. Theo cách đó chúng ta có thể tính toán sai số của output neuron. sử
dụng phương pháp backpropagation chúng ta có thể nhận được tất cả các sai số cho tất cả
các output neuron và hidden neuron như hiển thị trong bảng 2:
Bảng 2: Tính toán sai số cho Hidden và Output neuron
Ví dụ Neural Network sử dụng phương pháp case updating method. Khi một sai
số được tính toán, chúng ta điều chỉnh trọng số cho phù hợp. Bảng 3 cho ta một tập
mới các trọng số sau trường hợp huấn luyện thứ nhất. Độ lớn bước này là một hằng
số, với giá trị là 0.8.
Bảng 3: Tính toán các trọng số mới
c. Các tham số thuật toán:
- MAXIMUM_INPUT_ATTRIBUTES: Xác định số thuộc tính đầu vào cho huấn
luyện. Nếu có nhiều hơn số thuộc tính đầu vào này thì thuật toán sẽ chọn các đầu vào
quan trọng nhất và bỏ qua các thuộc tính còn lại. Thiết lập tham số này bằng 0 để thuật
toán chọn tất cả các thuộc tính. Giá trị mặc định là 255.
- MAXIMUM_OUTPUT_ATTRIBUTES: Xác định số thuộc tính đầu ra cho huần
luyện. Nếu có nhiều hơn số thuộc tính đầu ra này thì thuật toán sẽ chọn các đầu ra quan
GVHD: TS. Nguyễn Mạnh Hùng - 21 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
trọng nhất và bỏ qua các thuộc tính còn lại. Thiết lập tham số này bằng 0 để thuật toán
chọn tất cả các thuộc tính. Giá trị mặc định là 255.
- MAXIMUM_STATES: điều khiển bao nhiêu trạng thái của một thuộc tính được
xem xét. Nếu một thuộc tính có nhiều trạng thái hơn số này, chỉ các trạng thái phổ biến
Language (HTML) nhưng chúng không hề có cấu trúc. Phân tích các tài liệu dạng Text
trở nên rất quan trọng. Hai Data Mining Tasks cho Text Mining là sự phân loại và sự
phân đoạn (classification and segmentation). Một trong các lĩnh vực Text Mining phổ
biến là các phản hồi đóng góp của khách hàng (customer support). Trong ví dụ phân
loại (classification), chúng ta có thể có rất nhiều các ý kiến phản hồi từ Web và email,
và chúng ta muốn ấn định cho mỗi ý kiến khách hàng. Trong ví dụ phân đoạn, chúng ta
có thể nhóm các ý kiến phản hồi đó cùng nhau và gửi chúng đến đúng các cơ quan cần
thiết (theo đúng từng nhóm phản hồi).
Với SQL Server 2005, chúng ta có thể thực thi một dự án Text Mining sử dụng
SSIS (SQL Server Integration Service) và Data Mining. Một điển hình là bắt đầu với
việc sử dụng Term Extraction để xây dựng một từ điển cho lĩnh vực kinh doanh,
giao dịch hoặc lĩnh vực cần thực hiện. Bước thứ hai là sử dụng Term Lookup để tìm
các key terms từ các cột dữ liệu gốc, theo đó chuyển đổi các dữ liệu không cấu trúc
sang dữ liệu có cấu trúc. Bước thứ 3 là đặt vào các kỹ thuật Data Mining như Naïve
Bayes, Neural Network, Clustering, và Decision trees để xây dựng các mô hình Data
Mining trên đầu ra của Term Lookup. Thông thường thì đầu ra của Term Lookup
được đối xử như một bảng lồng nhau (nested table) trong mô hình mining.
2.1.1 Khái niệm và vị trí quan trọng của Textmining
Text mining là một sự chuyên môn hóa và mở rộng của Data Mining, một dạng
của khai phá tri thức (knowledge discovery). Các nguồn thông tin cho Text Mining
là các trường dữ liệu văn bản. Trong các bước tạo nên một mô hình Text Mining thì
trong đó có một bước rất quan trọng là sử dụng kỹ thuật Data Mining để phân tích.
Trong các bước tạo dựng và thực thi mô hình Text Mining thì bước quan trọng đầu
tiên là thực hiện biến đổi dữ liệu từ không có cấu trúc thành dữ liệu có cấu trúc. Các
dữ liệu dạng Text được chuẩn hóa và biến đổi trước khi đưa vào một mô hình Data
Mining sử dụng các thuật toán Data Mining như chúng ta đã nêu ở trên. Các thành
GVHD: TS. Nguyễn Mạnh Hùng - 23 - HVTH: Đậu Hoài Nam
Đồ án tốt nghiệp Kỹ thuật Text Mining và ứng dụng
phần của văn bản được đưa vào các công thức biến đổi dữ liệu có cấu trúc (well-
formulated data structures), ứng dụng kỹ thuật thống kê để thực hiện giảm bớt chiều
Cuối cùng, từ các dữ liệu không có cấu trúc phải tạo ra mô hình dữ liệu có cấu
trúc để thực hiện các mục đích tiếp theo. Để thực hiện được chúng ta phải thực hiện
quá trình khai phá trí thức các text không cấu trúc đưa vào bằng các phương pháp như
phân loại, quan hệ hóa và các nguyên tắc dự báo. Các quá trình thực hiện khai phá
thông qua phân cụm, tuyến tính hóa, phân tích trên các thông tin trích rút. Các thông
tin đó là nguồn dữ liệu cho một quá trình phân tích xử lý tiếp theo là Data Mining.
- Vị trí quan trọng của Text Mining
Kỹ thuật Text mining tương tác và chồng lấp lẫn nhau trong quá trình phát triển,
được ứng dụng ngày càng nhiều trên nhiều lĩnh vực. Hiện nay, kỹ thuật Text mining đã
có vị trí quan trọng không thể thiếu được trong quá trình phát triển của các ứng dụng
trên máy tính trong tình trạng tìm kiếm thông tin đang là vấn đề rất nóng và quan trọng.
Nó ứng dụng nhiều trong quản lý nội dung, tìm kiếm tra cứu và phân tích.
• Quản lý nội dung, quản lý tri thức, và phân phối nội dung:
Text Mining có thể đưa ra các lời khuyên hữu ích cho việc tăng thêm giá trị vào
quá trình quản lý nội dung (CM: Content Management), và các hệ thống cổng thông
tin. CM về cơ bản là cung cấp các văn bản hoạt động quá khứ của các hoạt động kinh
doanh hoặc hoạt động hành chính nào đó mà tiêu điểm là việc quản lý thông minh và
truy tìm thông tin dựa trên quá trình khai phá tri thức. Trong lĩnh vực kinh doanh,
quản lý tri thức (KM: Knowledge Management) về bản chất là đồng nghĩa với CM
với việc thêm các khía cạnh thông tin, các nguyên tắc kinh doanh thương mại, và
quản lý các kho siêu dữ liệu (metadata). Các máy chủ của các cổng thông tin sử dụng
các dao diện, cung cấp các kỹ thuật, kỹ xảo để tìm kiếm và phân phát các văn bản,
cung cấp các khả năng phân tích dữ liệu quan trọng mà cho phép người sử dụng trích
rút các thông tin dựa vào các quan hệ và nguyên tắc có trên mỗi tài liệu được lưu trữ.
• Enterprise, Desktop, và Web Search:
Tìm kiếm Enterprise là tìm kiếm các khả năng đến các chỉ mục văn bản trong
các định dạng khác nhau, có trong các kho chứa báo cáo, cơ sở dữ liệu và các files
hệ thống thông qua các tổ chức, truy tìm thông tin dựa trên việc tìm các thuật ngữ và
các đặc tính như tạo và chỉnh sửa dữ liệu, các định dạng văn bản, tác giả và phân
loại các đối tượng.