Tải bản đầy đủ (.pdf) (75 trang)

hệ thống hỗ trợ tư vấn tuyển sinh đại học

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.76 MB, 75 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
NGÀNH HỆ THỐNG THÔNG TIN

Đề tài
HỆ THỐNG HỖ TRỢ
TƯ VẤN TUYỂN SINH ĐẠI HỌC

Sinh viên: Nguyễn Nam Nhi
Mã số: 1111248
Khóa: K37
Đỗ Lê Nhật Thanh
Mã số: 1117813
Khóa: K37

Cần Thơ, 05/2015


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
BỘ MÔN HỆ THỐNG THÔNG TIN

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
NGÀNH HỆ THỐNG THÔNG TIN

Đề tài
HỆ THỐNG HỖ TRỢ


TƯ VẤN TUYỂN SINH ĐẠI HỌC

Người hướng dẫn
TS. Nguyễn Thái Nghe

Sinh viên thực hiện
Nguyễn Nam Nhi
Mã số: 1111248
Khóa: K37
Đỗ Lê Nhật Thanh
Mã số: 1117813
Khóa: K37

Cần Thơ, 05/2015


LỜI CẢM ƠN
Trong suốt quá trình 4 năm học tại Trường Đại Học Cần Thơ, chúng em đã
được các thầy cô giảng dạy tận tình và truyền thụ cho chúng em thật nhiều bài học bổ
ích không chỉ cho ngành nghề, mà còn cả những bài học về cuộc sống. Chúng em xin
gởi những lời cảm ơn đến quý thầy cô đã dành nhiều thời gian và công sức quý báu
của mình để hướng dẫn chúng em. Đặc biệt, chúng em xin gởi lời cảm ơn chân thành
nhất đến các thầy cô Khoa Công Nghệ Thông Tin Và Truyền Thông nói chung, quý
thầy cô bộ môn Hệ Thống Thông Tin nói riêng.
Chúng em rất cảm ơn Thầy TS Nguyễn Thái Nghe là giáo viên hướng dẫn luận
văn cho chúng em, thầy đã dành rất nhiều thời gian theo sát, quan tâm, hướng dẫn,
hỗ trợ và khích lệ chúng em rất nhiều để chúng em có được thành quả như ngày hôm
nay.
Xin gởi lời cảm ơn đến anh ThS Nguyễn Thế Anh, anh đã dành thời gian quý
báu để giúp chúng em hiểu và hoàn thành các phần trong luận văn tốt nghiệp này.

Đề thực hiện đề tài này chúng em đã cố gắng rất nhiều và hoàn thiện nhất. Tuy
nhiên, vẫn còn nhiều hạn chế và thiếu sót, chúng em rất mong nhận được sự đóng
góp của thầy cô và các bạn để đề tài này được hoàn thiện hơn nữa.
Sau cùng, chúng em xin kính chúc quý Thầy Cô Khoa Công Nghệ Thông Tin
Và Truyền Thông nói chung, quý thầy cô bộ môn Hệ Thống Thông tin nói riêng dồi
dào sức khỏe, niềm tin để tiếp tục thực hiện sứ mệnh cao đẹp của mình là truyền đạt
kiến thức cho thế hệ mai sau.
Xin chân thành cảm ơn!
TP. Cần Thơ, ngày 15 tháng 05 năm 2015


MỤC LỤC
DANH MỤC ĐỒ THỊ, BIỂU BẢNG VÀ HÌNH ẢNH.......................................................1
TÓM LƯỢC .............................................................................................................................................. 3
ABSTRACT ............................................................................................................................................... 4
PHẦN I – GIỚI THIỆU ...................................................................................................................... 5
1.
2.
3.
4.
5.
6.
7.

ĐẶT VẤN ĐỀ ..................................................................................................5
LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ ...................................................................6
MỤC TIÊU ĐỀ TÀI .........................................................................................7
ĐỐI TƯỢNG VÀ PHẠM VI NGUYÊN CỨU ................................................7
NỘI DUNG NGHIÊN CỨU.............................................................................8
NHỮNG ĐÓNG GÓP CỦA ĐỀ TÀI ...............................................................8

BỐ CỤC ...........................................................................................................9

PHẦN II – NỘI DUNG ..................................................................................................................... 10
CHƯƠNG 1. MÔ TẢ BÀI TOÁN .........................................................................10
1.1. Mô tả chi tiết bài toán .............................................................................10
1.2. Các giải pháp liên quan ..........................................................................11
1.2.1. Truyền tải dữ liệu số .................................................................................... 11
1.2.2. Khai mỏ dữ liệu ........................................................................................... 18
1.2.3. Phân lớp văn bản .......................................................................................... 21

CHƯƠNG 2. THIẾT KẾ VÀ CÀI ĐẶT GIẢI PHÁP ............................................30
2.1. Môi trường cài đặt ......................................................................................30
2.1.1. Ngôn ngữ lập trình và Framework liên quan ............................................... 30
2.1.2. Hệ quản trị cơ sở dữ liệu .............................................................................. 31

2.2. Xây dựng hệ thống ......................................................................................32
2.2.1.
2.2.2.
2.2.3.
2.2.4.
2.2.5.
2.2.6.
2.2.7.

Tổng quan hệ thống, thiết kế tổng thể ......................................................... 32
Cài đặt mô-đun gửi/nhận tin nhắn SMS ...................................................... 35
Cài đặt mô-đun gửi/nhận email.................................................................... 37
Cài đặt mô-đun phân loại câu hỏi bằng SVM .............................................. 37
Cài đặt mô-đun huấn luyện lại mô hình phân loại ....................................... 40
Cài đặt mô-đun tính độ tương đồng ............................................................. 41

Xây dựng website quản lý, cấu hình hệ thống ............................................. 42

CHƯƠNG 3. KIỂM THỬ VÀ ĐÁNH GIÁ ...........................................................49
3.1. Kiểm thử và kết quả ....................................................................................49
3.2. Đánh giá ......................................................................................................50
PHẦN III - KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .................................................... 51
1.
2.

KẾT LUẬN ....................................................................................................51
HƯỚNG PHÁT TRIỂN .................................................................................52

TÀI LIỆU THAM KHẢO ...................................................................................... 53
PHỤ LỤC ................................................................................................................. 54


DANH MỤC ĐỒ THỊ, BIỂU BẢNG VÀ HÌNH ẢNH
1. Danh mục hình ảnh
Hình 1. Hệ thống thông tin di động ..........................................................................11
Hình 2. Quá trình gửi tin nhắn ..................................................................................12
Hình 3. Chức năng của SMS Gateway......................................................................12
Hình 4. Ứng dụng SMS kết nối tới SMSC không qua trung gian SMS Gateway ....13
Hình 5. Ứng dụng SMS kết nối tới SMSC qua trung gian SMS Gateway ...............13
Hình 6. Một ứng dụng SMS kết nối đến điện thoại di động hoặc modem thông qua
một SMS Gateway ....................................................................................................14
Hình 7. Quá trình khám phá tri thức .........................................................................18
Hình 8. Phân lớp tuyến tính với SVM ......................................................................20
Hình 9. Sơ đồ phân lớp văn bản với SVM ................................................................23
Hình 10. Tách từ theo phương pháp so khớp tối đa ..................................................25
Hình 11. Mô hình tổng quan hệ thống ......................................................................33

Hình 12. Quy trình nhận và trả lời câu hỏi thông qua tin nhắn sms .........................34
Hình 13. Quy trình nhận và trả lời câu hỏi thông qua email .....................................34
Hình 14. Giao diện trang chủ website .......................................................................42
Hình 15. Chức năng của khách truy cập ...................................................................43
Hình 16. Chức năng của cán bộ ................................................................................43
Hình 17. Chức năng của admin .................................................................................44
Hình 18. Mô hình thực thể kết hợp (ERD) ...............................................................44
Hình 19. Giao diện khi đăng nhập với quyền cán bộ ................................................45
Hình 20. Giao diện xem, sửa thông tin cá nhân của cán bộ ......................................45
Hình 21. Giao diện trả lời và phân loại lại câu hỏi của cán bộ .................................46
Hình 22. Giao diện cập nhật chuyên ngành (phân lớp).............................................47
Hình 23. Giao diện cập nhật, phân loại tin nhắn bán tự động ...................................47
Hình 24. Giao diện cấu hình hệ thống ......................................................................48
Hình 25. Giao diện thống kê tin nhắn .......................................................................48
Hình 26. Giao diện tạo tài khoản cán bộ mới ...........................................................49
Hình 27. Biểu đồ thể hiện mức độ chính xác từng giải thuật ...................................50

1


2. Danh mục bảng
Bảng 1. Phân công công việc ......................................................................................8
Bảng 2. Một số lệnh AT liên quan đến việc gửi tin nhắn .........................................14
Bảng 3. Một số lệnh AT liên quan đến việc nhận tin nhắn SMS ..............................15
Bảng 4. Một số hàm nhân thường được dùng ...........................................................21
Bảng 5. Các điểm khác biệt chính giữa tiếng Việt và tiếng Anh ..............................24
Bảng 6. Các thông số cấu hình modem cần thiết để gửi/đọc tin nhắn qua modem 3G
...................................................................................................................................35
Bảng 7. Các thông số cấu hình cơ sở dữ liệu hệ thống. ............................................35
Bảng 8.Các thuộc tính cần quan tâm của bảng smsserver_in. ..................................36

Bảng 9. Các thuộc tính cần quan tâm của bảng smsserver_out. ...............................37
Bảng 10. Các thuộc tính cần quan tâm của cấu hình mail. .......................................37
Bảng 11. Các chuyên ngành tư vấn tuyển sinh. ........................................................37
Bảng 12. Kết quả thực nghiệm tỉ lệ chính xác các giải thuật ....................................50
Bảng 13. CAN_BO (cán bộ) lưu trữ thông tin cá nhân của các cán bộ. ...................65
Bảng 14. LINH_VUC (lĩnh vực) chứa thông tin liên quan đến lĩnh vực tư vấn ......66
Bảng 15. Bảng HOC_HÀM (học hàm) .....................................................................66
Bảng 16. HOI_TRALOI (câu hỏi trả lời) chứa thông tin câu hỏi và câu trả lời ......67
Bảng 17. HOC_VI (học vị) ......................................................................................68
Bảng 18. NGUOI_DAT_CAU_HOI (người đặt câu hỏi) .........................................68
Bảng 19. DON_VI (đơn vị).....................................................................................69
Bảng 20. CANBO_LINHVUC (cán bộ có lĩnh vực) ................................................69
Bảng 21. THONG_TIN_DANG_NHAP (thông tin đăng nhập) ..............................70
Bảng 22. DAT_CAU_HOI (đặt câu hỏi) ..................................................................70

2


TÓM LƯỢC
Bộ Giáo dục và Đào tạo Việt Nam tổ chức các kỳ thi tuyển sinh vào các trường
cao đẳng và các trường đại học ở Việt Nam hằng năm. Mọi thông tin về các kỳ thi là
điều mà các bạn học sinh rất quan tâm, là các bạn bước vào giai đoạn thi tuyển vào
đại học, cao đẳng. Hơn thế nữa, mỗi năm các qui chế, qui định mới lại thay đổi đôi
lúc làm học sinh và phụ huynh lúng túng trong việc cập nhật thông tin chính xác nhất.
Vì thế, việc thành lập và phát triển một hệ thống có thể giúp các bạn học sinh cập
nhật những điều cần thiết trong những kì thi này là điều quan trọng và có thể chọn
lựa chọn chính cho tương lai của mình một ngành nghề phù hợp.
Hệ thống hỗ trợ tư vấn tuyển sinh cung cấp các trang web cho phép khách, giáo
viên, thí sinh đặt câu hỏi và trả lời câu hỏi bởi các cán bộ có chuyên môn cao. Bên
cạnh đó, hệ thống này hỗ trợ máy chủ sms – tin nhắn văn bản điện thoại, là hệ thống

tự động nhận sms từ và gửi sms cho khách và cán bộ chuyên trách. Sau khi nhận được
câu hỏi, hệ thống sẽ phân loại này và gửi đến chuyên viên. Khi nhận được câu trả lời
từ chuyên viên, hệ thống sẽ gửi cho khách đặt câu hỏi tương ứng.
Hệ thống sử dụng kĩ thuật SVM và thư viện vnTokenizer để phân loại câu hỏi
và thư viện SMSlib để trở thành một máy chủ gửi và nhận tin nhắn SMS tự động. Hệ
thống hỗ trợ một trang web để hỗ trợ quá trình tư vấn và cấu hình toàn bộ hệ thống
của Spring MVC framework, hệ quản trị cơ sở dữ liệu MySQL.
Đây là công cụ tốt nhất cho sinh viên, giáo viên, cán bộ viên để cập nhật, hướng
dẫn và cung cấp rất nhiều thông tin cần thiết về kì thi một cách hiệu quả.

3


ABSTRACT
Vietnam Ministry of Education and Training organizes entrance examinations
into colleges & universities in Viet Nam every year. The information about these
exams are needed to understand carefully by students who will take entrance exam.
Therefore, it is important to design and develop a system that could help students
update many necessary things in every annual period and have the best choosing
major for their future.
Admissions advisory support system provide websites for guests, candidates,
teachers to make questions, answer questions respectively. Besides, this system aslo
supports sms server, which is auto system receiving sms from and sending sms to
guest and staff. After receiving question, system is going to classify this and send
them to specialize staff. When receiving answer from staff, system is sending this to
guest making the question imediately.
This system uses SVM technical and vnTokenizer library to classify questions
and libSMS library to become a server sms sending and receiving sms automatically.
There is a website to support advisory process and configure whole system by Spring
MVC framework, database mangement system MySQL.

This is best tool for students, teachers, specialize staff to update, guide and
provide a lot of necessary information about exam effectively.

4


PHẦN I – GIỚI THIỆU
1. ĐẶT VẤN ĐỀ
Xã hội ngày càng phát triển, trình độ của con người ngày càng tiến bộ. Mỗi
người trong xã hội đều cố gắng nâng cao trình độ tri thức, góp phần làm giàu cho bản
thân, gia đình và xã hội. Để phục vụ cho nhu cầu quan trọng đó, việc tìm kiếm và có
được một công việc thích hợp cho bản thân mỗi người là điều đáng được chú ý và
quan tâm sâu sắc. Trước khi bước vào ngưỡng cửa tương lai, từ khi còn rất sớm, khi
còn ngồi trên ghế nhà trường các bạn học sinh phải tự định hướng cho mình con
đường nghề nghiệp: có thể thi vào các trường đại học, cao đẳng hoặc trường trung
cấp nghề,…Theo khả năng, sở thích và nguyện vọng của từng bạn. Bên cạnh những
bạn đã lựa chọn, tìm hiểu và biết được nhu cầu cũng như nguyện vọng của mình cho
tương lai thì vẫn còn không ít những bạn chưa biết, làm thế nào để lựa chọn cho mình
con đường phù hợp - việc lựa chọn ngành nghề và con đường thích hợp là việc vô
cùng quan trọng cho mỗi cá nhân để phát triển, nâng cao về mặt nhận thức, trình độ
và góp phần phát triển bản thân, gia đình và toàn xã hội. Mặt khác, nước ta vẫn đang
trong quá trình hoàn thiện về giáo dục và đào tạo, mỗi năm lại có những thay đổi
đáng kể trong việc tuyển sinh các bậc đại học, cao đẳng, trung cấp, điều đó gây cho
các bạn học sinh, các bậc phụ huynh và những cá nhân có quan tâm không ít những
băn khoăn, lo lắng, … họ rất cần nhận được giúp đỡ từ các cán bộ có chuyên môn,
trách nhiệm để có thể giảm bớt lo lắng, hiểu rõ hơn và thực hiện đúng theo quy định
đã được đề ra.
Mỗi năm, ở nước ta đều diễn ra kỳ thi tuyển sinh vào các trường đại học, cao
đẳng và trung cấp với số lượng lớn các bạn học sinh trong cả nước. Đồng thời, số
lượng ngành nghề ngày càng đa dạng và phong phú. Vì thế nhu cầu tìm hiểu về các

ngành nghề là rất lớn. Trong đó, có nhiều ngành còn khá mới, lạ, các bạn có nhu cầu
được biết về phương thức đào tạo, môi trường làm việc sau khi tốt nghiệp cũng như
nhu cầu của xã hội đối với ngành nghề đó. Nắm bắt được nhu cầu thiết thực này của
các bạn học sinh, phụ huynh và các thầy cô giáo các đài truyền hình, tổ chức, các
trường đại học, cao đẳng đã đưa ra các buổi toạ đàm tư vấn tuyển sinh, các ngày hội
tuyển sinh, tư vấn việc làm cho các bạn sắp tốt nghiệp trung học phổ thông ở nhiều
khu vực trên toàn quốc. Công tác tuyển sinh được xác định là nhiệm vụ quan trọng
của nhà trường, là truyền thống và cũng là điều bắt buộc của bộ giáo dục và đào tạo
nhằm định hướng và hướng dẫn các em học sinh trung học phổ thông có lựa chọn, và
hiểu biết đúng đắn nhằm chọn cho mình ngành nghề phù hợp nhất. Nhiệm vụ của
những buổi tư vấn hướng nghiệp là nắm bắt tâm tư, nguyện vọng của học sinh để có
biện pháp tư vấn, hướng nghiệp phù hợp nhất cho các học sinh bước vào ngưỡng cửa
lựa chọn tương lai, cùng với đó phải giúp các học sinh có khả năng nhận thức được
khả năng đánh giá năng lực của bản thân trong quá trình chọn nghề. Tránh tình trạng
chạy theo xu hướng hay định hướng sẵn của người khác (gia đình) mà không hiểu
khả năng của mình có theo được hay không hoặc không rõ bản thân có yêu thích
ngành nghề đó hay không.
Các trường đại học, cao đẳng đã giúp đỡ các bạn học sinh có nhu cầu được biết
về quy chế, các ngành nghề, đào tạo của mình đã cùng nhau tổ chức nhiều ngày hội
5


tư vấn tuyển sinh, hoặc về trường tư vấn và giúp các bạn có định hướng nghề nghiệp
cho tương lai. Với sự phát triển của mạng thông tin và các thiết bị di động hiện đại,
khả năng tiếp cận với tri thức thông qua mạng Internet và mạng thông tin di động
càng ngày càng trở nên đơn giản và phổ biến với tất cả mọi thành phần trong xã
hội, đặc biệt là đối với học sinh. Ngoài các buổi gặp mặt trực tiếp, các trường còn
mở các website, tổng đài tư vấn thông qua mạng Internet nhằm giúp giải đáp phần
nào thắc mắc của các bạn trong kỳ thi tuyển sinh đại học cao đẳng này. Các hệ thống
tiếp nhận câu hỏi thắc mắc còn chưa đáp ứng kịp số lượng nhiều câu hỏi và tiếp nhận

câu hỏi từ mọi lúc trong ngày, còn phụ thuộc rất nhiều vào thao tác và thời gian của
cá nhân có trách nhiệm, …. hệ thống tư vấn giải đáp thắc mắc về quy chế ngành nghề
vẫn còn nhiều hạn chế, và chưa thuận tiện cho người dùng.
Trong thời đại ngày nay, cùng với sự phát triển của xã hội công nghệ thông
tin và các giải pháp máy học đã phát triển khá mạnh mẽ và được ứng dụng khá
nhiều trong cuộc sống con người. Tuy nhiên để áp dụng công nghệ kĩ thuật này
vào công tác tư vấn hướng nghiệp vẫn còn khó khăn và hạn chế. Một phần là do
nguồn dữ liệu về các quy định quy chế, ngành nghề của công tác tư vấn tuyển sinh
dành cho khai phá dữ liệu (data mining) còn rất hiếm hoi. Và hiện nay, vẫn chưa
có hệ thống tự động tiếp nhận những câu hỏi của các bạn học sinh thông qua giao
diện web, email hay tin nhắn từ điện thoại di động.
Từ những nhu cầu đặt ra đó, cần thiết xây dựng một hệ thống nhằm hỗ trợ về
những điều cần biết, giải đáp thắc mắc về ngành nghề, quy chế cho các thí sinh
trong kì thi cao đẳng, đại học hằng năm. Đồng thời để thu thập dữ liệu thực tế
trong lĩnh vực này là nhu cầu cần thiết cho công tác tư vấn hướng nghiệp ở các
trường và tạo nguồn dữ liệu để phát triển các hệ thống có liên quan sau này. Hệ
thống này sẽ đáp ứng nhanh chóng, kịp thời trả lời những câu hỏi từ các bạn và
chuyển cho các cán bộ có chuyên môn, trách nhiệm. Hệ thống nói trên thực hiện
liên tục 24/24 giờ trong ngày nhằm tiếp nhận thắc mắc mọi lúc từ các bạn học
sinh, ngay khi các bạn có nhu cầu cần được giải đáp.
2. LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ
Nhiều năm qua các hệ thống, website giúp thí sinh tìm hiểu các thông tin cần
thiết trước kì thi càng lúc càng nhiều do nhu cầu lớn của thí sinh cũng như sự phát
triển mạnh mẽ của Internet. Nhưng đa số các website hầu hết nội dung đều giống
nhau. Đưa ra dưới dạng tin tức, rất nhiều nhưng lại thiếu đi tính chuyên sâu. Việc thí
sinh có thể tìm đúng thắc mắc của mình là rất khó vì đặc tính của mỗi ngành nghề,
mỗi trường hầu như đều khác nhau. Ở các trường đại học trong nước, một số trường
đã có hệ thống hỗ trợ tư vấn tuyển sinh, nhưng hệ thống hoạt động một cách thủ công,
thí sinh phải tự đặt câu hỏi và lựa chọn lĩnh vực, sau đó hệ thống sẽ chuyển tiếp cho
các cán bộ có trách nhiệm. Tuy đã đáp ứng phần nhiều của một hệ thống hỗ trợ tư

vấn tuyển sinh, nhưng các hệ thống đã có hầu như không hỗ trợ việc cho phép tự động
phân loại các câu hỏi theo từng lĩnh vực, chưa hỗ trợ việc gởi email tự động cho cán
bộ có chuyên trách và người đặt câu hỏi và không hỗ trợ việc hỏi và tư vấn thông qua
tin nhắn điện thoại.

6


Chính vì những lý do đó mà các hệ thống, website này chưa đáp ứng được nhu
cầu của thí sinh, chưa phải là địa chỉ quen thuộc để thí sinh tìm đến khi có những thắc
mắc, câu hỏi mà chỉ có nhưng người trong ngành mới có thể giải đáp được.
3. MỤC TIÊU ĐỀ TÀI
Để xây dựng được một hệ thống tư vấn tuyển sinh hoàn chỉnh, hoàn toàn tự
động thì cần trải qua hai giai đoạn:
Giai đoạn một: Xây dựng hệ thống hỗ trợ tư vấn tuyển sinh qua mạng Internet
và tin nhắn SMS một cách bán tự động (có sự giám sát của điều phối viên) để thu
thập và xây dựng tập dữ liệu làm nền tảng cho việc phát triển giai đoạn hai của nghiên
cứu.
Giai đoạn hai: Xây dựng hệ thống tư vấn tuyển sinh qua mạng Internet và tin
nhắn SMS một cách hoàn toàn tự động (không cần sự giám sát của điều phối viên).
Mục tiêu của luận văn là hoàn thành được giai đoạn một của đề tài, là xây dựng
được một hệ thống bán tự động để hỗ trợ việc tư vấn qua mạng thông tin di động,
website (có sự giám sát của con người) để thu thập và xây dựng tập dữ liệu làm nền
tảng cho việc phát triển giai đoạn hai của đề tài.
Mục tiêu cụ thể cần đạt được của giai đoạn một là:
a. Xây dựng được mô-đun tiếp nhận và phân loại (tự động) câu hỏi theo từng
lĩnh vực bằng kỹ thuật phân loại máy học véc-tơ hỗ trợ (SVM).
b. Xây dựng được mô-đun quản lý, tiếp nhận câu hỏi và hiển thị câu trả lời qua
giao diện web.
c. Xây dựng được mô-đun quản lý, gửi và nhận email.

d. Xây dựng được mô-đun quản lý, gửi và nhận SMS.
e. Xây dựng được mô-đun phân loại nội dung tin nhắn (bán tự động).
f. Xây dựng được mô-đun quản lý cán bộ và nội dung phản hồi từ cán bộ.
g. Xây dựng được mô-đun tiếp nhận và đưa ra những câu hỏi có nội dung tương
tự câu hỏi đó.
h. Xây dựng được website tích hợp các mô-đun trên.
4. ĐỐI TƯỢNG VÀ PHẠM VI NGUYÊN CỨU
Nguyên cứu và tìm hiểu cơ sở lý thuyết bao gồm:
a. Tìm hiểu, thu thập và xử lý dữ liệu (các câu hỏi/vấn đề) liên quan đến ngành
nghề, quy chế tuyển sinh đại học cao đẳng.
b. SMS và cách gửi nhận tin nhắn văn bản.
c. Cách gửi nhận email tự động.
d. Kỹ thuật phân loại văn bản tự động với SVM, các kỹ thuật tách từ tiếng việt.

7


e. Kỹ thuật xác định độ tương đồng ngữ nghĩa của văn bản bằng phương pháp
Consine Similarity.
5. NỘI DUNG NGHIÊN CỨU
a. Mô-đun quản lý, gửi, nhận tin nhắn văn bản.
b. Mô-đun quản lý, gửi, nhận câu hỏi từ website.
c. Mô-đun quản lý, gửi câu trả lời qua email.
d. Mô-đun phân loại nội dung câu hỏi tự động.
e. Mô-đun quản lý cán bộ và nội dung phản hồi từ cán bộ.
f. Mô-đun thử nghiệm phân loại tự động nội dung tin nhắn văn bản bằng kỹ thuật
phân loại Máy học Vectơ Hỗ trợ (SVM).
g. Một website để tích hợp các mô-đun trên.
Bảng 1. Phân công công việc
STT

1
2
3
4
5

Công việc
Tìm hiểu, thiết kế và xây dựng hệ thống
Xây dựng website Tư Vấn Tuyển Sinh bằng Spring
MVC
Xây dựng mô-đun gởi email cho cán bộ có chuyên
trách và phản hổi lại cho người đặt câu hỏi
Xây dựng mô- đun phân loại câu hỏi bằng LibSVM
bao gồm tách từ - tiếng việt.
Xây dựng mô-đun Tư vấn tuyển sinh thông qua nhận
và gởi tin nhắn văn bản

Người thực hiện
Nguyễn Nam Nhi
Đỗ Lê Nhật Thanh
Nguyễn Nam Nhi
Nguyễn Nam Nhi
Đỗ Lê Nhật Thanh
Đỗ Lê Nhật Thanh

6. NHỮNG ĐÓNG GÓP CỦA ĐỀ TÀI
Đưa ứng dụng vào thực tế sử dụng và khai thác để hỗ trợ kịp thời về thông tin
cho thí sinh. Xây dựng một hệ thống dựa trên tri thức thực sự để đưa ra những hỗ trợ
nhanh chóng nhất, chính xác nhất, với chi phí hợp lý nhất, đáp ứng đầy đủ những thắc
mắc, yêu cầu của thí sinh.

Sau một thời gian vận hành và khai thác, hệ thống sẽ thu thập được một lượng
dữ liệu cần thiết, kết hợp với công nghệ khai phá dữ liệu, xử lý văn bản để xây dựng
một hệ thống tư vấn tuyển sinh thông qua giao diện web, thư điện tử và mạng thông
tin di động một cách hoàn toàn tự động.
Nếu mô hình này thành công thì sẽ có thể nhân rộng sang nhiều mô hình khác,
nhiều nhóm ngành nghề, những điều cần biết trong tư vấn tuyển sinh trong giáo dục
và cả các lĩnh vực xã hội khác.

8


7. BỐ CỤC
Nội dung đề tài được trình bày trong 3 phần:
 Phần Giới Thiệu giới thiệu vấn đề cần giải quyết, mục tiêu cần đạt, đối tượng
và phạm vi của nghiên cứu. Đồng thời nêu lên nội dung nghiên cứu, kết quả
chính đạt được của nghiên cứu.
 Phần Nội Dung
-

Chương 1: Mô tả bài toán mô tả chi tiết đề tài, các chức năng trông đợi
của phần mềm, nêu lên các giải pháp có liên quan đến bài toán.

-

Chương 2: Thiết kế và cài đặt giải pháp nêu lên thiết kế tổng thể của hệ
thống, mô tả cách thức cài đặt của phần mềm bằng Java trên nền Eclipse.

-

Chương 3: Kiểm thử và đánh giá


 Phần Kết Luận bao gồm kết quả đạt được của đề tài và hướng phát triển
 Tài liệu tham khảo
 Phụ lục

9


PHẦN II – NỘI DUNG
CHƯƠNG 1. MÔ TẢ BÀI TOÁN
1.1.

Mô tả chi tiết bài toán

Khi thí sinh truy cập vào website Tư Vấn Tuyển Sinh, đặt câu hỏi – thông tin
các ngành nghề, quy chế tuyển sinh và điểm chuẩn nguyện vọng, câu hỏi sẽ được hệ
thống phân loại, xem câu hỏi vừa gởi tới thuộc lĩnh vực nào từ đó sẽ gởi đến cho cán
bộ có lĩnh vực tương ứng. Ngay sau khi nhận được câu trả lời từ các cán bộ chuyên
trách hệ thống sẽ phản hổi qua email được cung cấp từ người dùng, đồng thời hiển
thị câu trả lời cho đặt câu hỏi tương ứng. Hệ thống làm việc song song tiếp nhận và
phản hồi các câu trả lời thông qua website, email và tin nhắn di động hoạt động liên
tục mỗi ngày trong tuần.
Để xây dựng một hệ thống hoàn chỉnh cần trải qua hai giai đoạn như phần mục
đích của đề tài đã trình bày. Trong khuôn khổ luận văn chỉ thực hiện giai đoạn một
của đề tài là “Xây dựng hệ thống tư vấn tuyển sinh qua mạng Internet và tin nhắn
SMS một cách bán tự động (có sự giám sát của điều phối viên)” để thu thập và xây
dựng tập dữ liệu làm nền tảng cho việc phát triển giai đoạn hai của đề tài.
Khi hệ thống tiếp nhận câu hỏi từ học sinh qua mô-đun: tiếp nhận câu hỏi và
hiển thị câu trả lời thông qua giao diện web, trả lời qua email, gửi nhận tin nhắn SMS,
mô-đun phân loại tin nhắn tự động sẽ tự động thực hiện một số bước tiền xử lý cơ

bản. Sau khi tách từ, do văn bản là tin nhắn, nên số lượng từ khóa không nhiều và ít
khi lặp lại, nghiên cứu đưa ra hai phương án chọn từ khóa là phương án thủ công và
phương án tự động. Với phương án thủ công thì hệ thống sẽ giữ lại những từ có trong
danh sách từ khóa (tập đặc trưng văn bản) đã được xây dựng thủ công bởi các cán bộ
từ trước, sau đó véc-tơ hóa các từ được giữ lại đó và đưa vào mô hình của phương án
này để phân loại. Với phương án tự động thì hệ thống sẽ chọn từ khóa bằng cách loại
bỏ các từ dừng (stopwords) là những từ thường xuất hiện trong văn bản nhưng không
có giá trị phân loại chẳng hạn như từ “và”, “nhưng”, “có”, “không”, sau đó véc-tơ
hóa tất cả các từ còn lại và đưa vào mô hình phân loại của phương án này để phân
loại. Trong giai đoạn ban đầu này, bộ từ khóa và tập dữ liệu do tác giả thu thập và
xây dựng trong quá trình làm luận văn chưa nhiều, chưa phong phú, đa dạng và khách
quan nên việc phân loại tự động chỉ nhằm mục đích minh họa cho mô-đun phân loại
tự động và kiểm tra việc vận hành của hệ thống, còn việc phân loại vẫn là một hệ
thống bán tự động, có sự kiểm tra, giám sát của con người. Do hệ thống hiện là bán
tự động nên điều phối viên cần kiểm tra kết quả phân loại của mô-đun tự động và
thực hiện phân loại lại để làm cơ sở cho việc xây dựng và huấn luyện lại mô hình,
sau khi điều phối viên phân loại, câu hỏi mới được chuyển đến cán bộ thích hợp để
trả lời. Khi nhận được câu trả lời từ cán bộ, hệ thống tự động gửi nội dung trả lời cho
thí sinh.
Khi hệ thống nhận đủ số lượng tin nhắn SMS mới đến, hệ thống sẽ tự động xây
dựng lại bộ từ khóa và huấn luyện lại mô hình với bộ từ khóa và dữ liệu mới, sau khi
huấn luyện xong hệ thống sẽ sử dụng mô hình mới huấn luyện vào phân loại tin nhắn
mới đến hệ thống. Hệ thống sẽ lặp đi lặp đi lặp lại việc xây dựng lại bộ từ khóa và
10


huấn luyện lại mô hình cho đến khi lượng dữ liệu thu thập đủ lớn và độ chính xác
phân loại là chấp nhận được thì hệ thống sẽ chuyển sang giai đoạn hai của đề tài là
xây dựng hệ thống hỗ trợ tư vấn tuyển sinh một cách tự động.
1.2. Các giải pháp liên quan

1.2.1. Truyền tải dữ liệu số
1.2.1.1. Hệ thống tin nhắn văn bản (SMS)
a. Giới thiệu
SMS là viết tắt của Short Message Services (dịch vụ tin nhắn ngắn). Công nghệ
SMS cho phép gửi và nhận tin nhắn giữa điện thoại di động với nhau, giữa máy vi
tính hoặc thiết bị cầm tay với điện thoại di động. Mỗi tin nhắn SMS chứa tối đa 140
bytes dữ liệu, vì vậy mỗi tin nhắn chứa:
 Không quá 160 ký tự nếu sử dụng kiểu mã hóa 7-bit (mã hóa ký tự 7 bit phù
hợp với kiểu mã hóa ký tự La-tinh chẳng hạn như bảng chữ cái tiếng Anh).
 Không quá 70 ký tự nếu sử dụng kiểu mã hóa UCS2 Unicode (tin nhắn văn
bản chứa những ký tự không phải ký tự La-tinh chẳng hạn như tiếng Trung
Hoa, là kiểu mã hóa ký tự 16 bit).
Tin nhắn văn bản SMS hỗ trợ đa ngôn ngữ toàn cầu. Tin nhắn SMS có thể truyền
tải dữ liệu nhị phân do đó SMS có thể được sử dụng như là một phương tiện truyền
tải vô tuyến. Công nghệ SMS cho phép “đẩy” thông tin. Điều này khác với mô hình
“kéo” là mô hình mà thiết bị phải thường xuyên thăm dò máy chủ để kiểm tra xem
có thông tin mới nào không. Mô hình “kéo” thường không phù hợp cho các ứng dụng
cảnh báo và thông báo vì nó lãng phí băng thông và tăng tải cho máy chủ. Hình 1. mô
tả hệ thống SMS và các thiết bị.

Hình 1. Hệ thống thông tin di động

11


b. Trung tâm tin nhắn SMS (SMSC)
Trung tâm tin nhắn SMS chịu trách nhiệm xử lý các hoạt động SMS của mạng
vô tuyến. Khi một tin nhắn được gửi từ một thiết bị nhắn tin, trước tiên tin nhắn đó
sẽ được gửi đến trung tâm tin nhắn SMS. Sau đó trung tâm tin nhắn sẽ chuyển tiếp
tin nhắn này đến máy đích. Một tin nhắn SMS có thể phải đi qua nhiều hơn một trạm

(nhiều SMSC và nhiều SMS Gateway) trước khi nó đến được máy đích. Nhiệm vụ
chính của SMSC là định tuyến tin nhắn SMS và điều chỉnh những tiến trình này. Nếu
máy nhận chưa sẵn sàng (đang tắt máy hoặc hết pin) thì SMSC sẽ lưu trữ tin nhắn đó,
và nó sẽ chuyển tiếp tin nhắn khi máy nhận đã sẵn sàng. Hình 2. mô tả cách thức SMS
hoạt động thông qua một trung tâm tin nhắn SMS.

Hình 2. Quá trình gửi tin nhắn
c. SMS Gateway
Một vấn đề của việc truyền tải tin nhắn SMS là những SMSC được phát triển
bởi những tổ chức khác nhau sử dụng giao thức truyền thông riêng và hầu hết các
giao thức này là độc quyền. Chẳng hạn, Nokia có một giao thức SMSC gọi là CIMD
trong khi một nhà cung cấp khác là CMG lại có một giao thức gọi là EMI. Không thể
kết nối hai SMSC này lại với nhau nếu chúng không hỗ trợ cùng một giao thức SMSC
chung. Để giải quyết vấn đề này, một SMS Gateway được đặt giữa hai SMSC như
minh họa trong hình 3.

Hình 3. Chức năng của SMS Gateway
SMS Gateway hoạt động như một cầu nối giữa hai SMSC. Nó biên dịch giao
thức SMSC này thành giao thức SMSC kia và ngược lại. Bằng cách đó, nó có thể kết
nối các nhà mạng khác nhau lại để có thể trao đổi tin nhắn SMS trên liên mạng. SMS
Gateway làm giảm sự phức tạp và thời gian cho việc phát triển các ứng dụng SMS.
Hình 4. minh họa một ứng dụng tin nhắn SMS kết nối đến SMSC mà không qua trung
gian SMS Gateway.

12


Hình 4. Ứng dụng SMS kết nối tới SMSC không qua trung gian SMS Gateway
Ứng dụng SMS nếu không qua SMS Gateway sẽ cần phải hỗ trợ nhiều giao thức
SMSC cụ thể bởi vì các nhà mạng khác nhau có thể sử dụng SMSC của các nhà cung

cấp khác nhau. Với việc cài đặt SMS Gateway để tạo kết nối đến SMSC, ta có thể
giải quyết vấn đề phức tạp này. Khi đó các ứng dụng SMS chỉ cần biết làm thế nào
để kết nối tới SMS Gateway, các việc còn lại do SMS Gateway tự xử lý. Để hỗ trợ
thêm SMSC, chỉ cần bổ sung các thiết lập của SMS Gateway vào ứng dụng SMS.
Hình 5. minh họa một ứng dụng SMS kết nối đến SMSC thông qua một SMS
Gateway.

Hình 5. Ứng dụng SMS kết nối tới SMSC qua trung gian SMS Gateway
Bên cạnh việc sử dụng một kết nối trực tiếp đến trung tâm tin nhắn SMS của
nhà mạng không dây để gửi hoặc nhận tin nhắn, có một cách khác để gửi và nhận tin
nhắn SMS từ máy vi tính đó là sử dụng điện thoại di động hoặc modem
GSM/GPRS/3G kết nối trực tiếp vào máy tính. Để làm được điều đó, ứng dụng SMS
phải biết làm thế nào để giao tiếp với các thiết bị gửi tin này bằng cách sử dụng lệnh
AT. Một vài SMS Gateway có khả năng nắm giữ kết nối đến các thiết bị gửi tin này,
13


nhờ đó để gửi và nhận tin nhắn SMS từ máy tính với một điện thoại di động hoặc
modem được kết nối, ứng dụng SMS chỉ cần biết làm cách nào để giao tiếp được với
SMS Gateway và không cần phải biết gì về lệnh AT.

Hình 6. Một ứng dụng SMS kết nối đến điện thoại di động hoặc modem thông
qua một SMS Gateway
d. Cách gửi tin nhắn SMS
Về tổng thể, có 2 cách để gửi tin nhắn SMS từ máy tính đến điện thoại di động:
Cách 1: Kết nối điện thoại di động hoặc modem GSM/GPRS/3G vào máy tính.
Sau đó dùng tập lệnh AT để chỉ thị cho điện thoại hoặc modem gửi tin nhắn SMS.
Để gửi tin nhắn, trước hết cần lắp SIM được nhà mạng không dây cung cấp vào
điện thoại hoặc modem, sau đó kết nối modem vào máy vi tính bằng dây cáp, hồng
ngoại hay bluetooth. Sau khi kết nối thành công, ta có thể điều khiển modem bằng

cách gửi chỉ thị đến nó. Chỉ thị được sử dụng để điều khiển modem được gọi là tập
lệnh AT. Tập lệnh AT là những chỉ thị được sử dụng để điều khiển modem hay điện
thoại di động. AT là từ viết tắt của ATtention. Mọi dòng lệnh đều bắt đầu bởi “AT”
hay “at”.
Bảng 2. Một số lệnh AT liên quan đến việc gửi tin nhắn
Lệnh AT
Công dụng
AT + CMGS Gửi tin nhắn
AT + CMSS Gửi tin nhắn từ bộ lưu
trữ
AT + CMGW Ghi tin nhắn vào bộ
nhớ
AT + CMGD Xóa tin nhắn
AT + CMMS Gửi thêm tin nhắn
Cách 2: Kết nối máy tính với Trung tâm SMS (SMSC) hoặc SMS Gateway của
mạng không dây hoặc nhà cung cấp dịch vụ SMS. Sau đó gửi tin nhắn SMS bằng
cách sử dụng các giao thức/giao diện được hỗ trợ bởi SMSC hoặc SMS Gateway.

14


Cách gửi tin nhắn thông qua modem hay điện thoại di động kết nối trực tiếp với
máy tính có hạn chế là tốc độ gửi tin nhắn SMS rất thấp. Nếu cần tốc độ gửi cao hơn
thì cần thiết phải thiết lập kết nối trực tiếp đến Trung tâm SMS hoặc SMS Gateway
của mạng không dây. Kết nối này có thể được thực hiện qua mạng Internet hoặc kết
nối quay số. Nếu không thể kết nối trực tiếp đến Trung tâm SMS hoặc SMS Gateway
của mạng không dây thì ta có thể kết nối đến SMS Gateway của một nhà cung cấp
dịch vụ SMS nào đó, lúc đó SMS Gateway này sẽ chuyển tiếp tin nhắn SMS đến một
Trung tâm SMS thích hợp.
Sau khi đăng ký và thiết lập tài khoản với nhà mạng không dây hoặc nhà cung

cấp dịch vụ SMS, ta đã có thể bắt đầu gửi tin nhắn SMS bằng cách sử dụng các giao
thức/giao diện được hỗ trợ bởi SMSC hoặc SMS Gateway.
e. Cách nhận tin nhắn SMS
Tương tự như việc gửi tin SMS, ta cũng có 2 cách để nhận tin nhắn SMS trên
máy tính.
Cách 1: Kết nối điện thoại di động hoặc modem GSM/GPRS/3G vào máy tính.
Sau đó dùng máy tính và tập lệnh AT để đọc tin nhắn nhận được từ điện thoại đi động
hoặc modem.
Việc nhận tin nhắn SMS thông qua một modem có một lợi thế là nhà mạng
không dây thường không tính phí nhận tin nhắn khi dùng với một Mô-đun Nhận diện
Thuê bao (thẻ SIM). Bất lợi của việc nhận tin nhắn theo cách này là modem không
thể xử lý một số lượng lớn lưu lượng tin nhắn SMS truy cập. Có một cách để giải
quyết vấn đề này đó là sử dụng nhiều modem để cân bằng tải lưu lượng SMS truy
cập. Mỗi một modem sẽ có một thẻ SIM và số thuê bao riêng. Trong lập trình, việc
gửi và nhận tin nhắn SMS thông qua một modem là tương tự nhau. Những gì cần phải
làm là gửi các chỉ thị (dưới dạng lệnh AT) cho modem, các việc còn lại modem tự
thực hiện.
Bảng 3. Một số lệnh AT liên quan đến việc nhận tin nhắn SMS
Lệnh AT

Công dụng

AT + CNMI
AT + CMGL
AT + CMGR

Để xác định tin nhắn mới
Liệt kê tất cả tin nhắn
Đọc tin nhắn


Cách 2: Truy cập đến Trung tâm tin nhắn (SMSC) hoặc SMS Gateway của
mạng không dây. Mọi tin nhắn SMS nhận được sẽ được chuyển tiếp đến máy tính
thông qua giao thức/giao diện được hỗ trợ bởi SMSC hoặc SMS Gateway.
Cũng giống như việc gửi tin nhắn, việc nhận tin nhắn thông qua điện thoại hoặc
modem GSM/GPRS có một số hạn chế, đó là tốc độ truyền tải SMS quá thấp. Nếu
cần tốc độ cao hơn thì cần thiết phải thiết lập kết nối trực tiếp đến Trung tâm SMS
hoặc SMS Gateway của mạng không dây.
Sau khi thiết lập một tài khoản với nhà mạng không dây hoặc nhà cung cấp dịch
vụ SMS, SMSC hoặc SMS Gateway sẽ bắt đầu chuyển tiếp các tin nhắn đến ứng dụng
15


SMS bằng cách sử dụng một số các giao thức/giao diện. Cũng giống như việc gửi tin,
để kết nối đến SMSC, bắt buộc phải có các giao thức SMSC. Việc nhận tin nhắn theo
cách này cũng dễ như việc gửi.
1.2.1.2. Thư điện tử
a. Khái niệm
Thư điện tử, hay email (từ chữ electronic mail), đôi khi được dịch không chính
xác là điện thư, là một hệ thống chuyển nhận thư từ qua các mạng máy tính.
Email là một phương tiện thông tin rất nhanh. Một mẫu thông tin (thư từ) có thể
được gửi đi ở dạng mã hoá hay dạng thông thường và được chuyển qua các mạng
máy tính đặc biệt là mạng Internet. Nó có thể chuyển mẫu thông tin từ một máy nguồn
tới một hay rất nhiều máy nhận trong cùng lúc.
Ngày nay, email chẳng những có thể truyền gửi được chữ, nó còn có thể truyền
được các dạng thông tin khác như hình ảnh, âm thanh, phim, và đặc biệt các phần
mềm thư điện tử kiểu mới còn có thể hiển thị các email dạng sống động tương thích
với kiểu tệp HTML.
Phần mềm thư điện tử (email software) là loại phần mềm nhằm hỗ trợ cho người
dùng việc chuyển và nhận các mẫu thông tin (thường là dạng chữ). Thông tin có thể
đưa vào phần mềm thư điện tử bằng cách thông dụng nhất là gõ chữ bàn phím hay

cách phương cách khác ít dùng hơn như là dùng máy quét hình (scanner), dùng máy
ghi hình số (digital camera) đặc biệt là các Web cam. Phần mềm thư điện tử giúp đỡ
cho việc tiến hành soạn thảo, gửi, nhận, đọc, in, xoá hay lưu giữ các (điện) thư. Có
hai trường hợp phân biệt phần mềm thư điện tử là
Loại phần mềm thư điện tử được cài đặt trên từng máy tính của người dùng gọi
là email client, hay phần mềm thư điện tử (cho) máy khách. Các thí dụ loại phần mềm
này bao gồm: Microsoft Outlook, Microsoft Outlook Express, Netscape
Comunicator, hay Eudora. Phần mềm thư điện tử này còn có tên là MUA (từ chữ mail
user agent) tức là Tác nhân sử dụng thư. Một cách gọi tên thông dụng khác của email
client là ứng dụng thư điện tử (email application) nếu không bị nhầm lẫn
Ngược lại, loại phần mềm thư điện tử không cần phải cài đặt mà nó được cung
ứng bởi các máy chủ (web server) trên Internet gọi là WebMail, hay Phần mềm thư
điện tử qua Web. Để dùng được các phần mềm loại này thường các máy tính nối vào
phải có một máy truy cập tương thích với sự cung ứng của WebMail. Thí dụ loại này
là mail.Yahoo.com, hay hotmail.com.
Nơi cung ứng phần mềm cũng như phương tiện chuyển thư điện tử gọi là nhà
cung ứng dịch vụ thư điện tử (email sevice provider).
Máy tính làm việc cung ứng các dịch vụ thư điện tử là MTA (từ chữ mail
transfer agent) hay là đại lý chuyển thư. Vì đây là máy chủ nên khi không bị nhầm
lẫn với các loại máy chủ khác thì người ta cũng gọi MTA là máy chủ hay rõ hơn
là máy chủ thư điện tử.

16


Các dịch vu thư điện tử có thể được cung ứng miễn phí hay có lệ phí tuỳ theo
nhu cầu và mụch đích của ngưòi dùng. Ngày nay, email thường được cung cấp kèm
với các phương tiện Internet khi người tiêu dùng ký hợp đồng với các dịch vụ Internet
một cách miễn phí.
b. Phương thức hoạt động của một hệ thống thư điện tử

Hoạt động của hệ thống email hiện nay có thể dược minh họa qua phân tích một
thí dụ như sau
Nguyễn dùng MUA của mình để soạn một lá thư có địa chỉ người nhận là Trần
với địa chỉ là Nguyễn nhấn nút Send và phần mềm thư điện tử của
Nguyễn áp dụng SMTP để gửi mẫu thông tin (lá thư) đến MTA, hay máy chủ thư
điện tử, của Nguyễn. Trong thí dụ thì máy chủ này là smtp.a.org được cung cấp từ dịch
vụ Internet của Nguyễn.
MTA này sẽ đọc địa chỉ chỗ nhận () và dựa vào phần tên
miền nó sẽ tìm hỏi địa chỉ của tên miền này, nơi có máy chủ sẽ nhận email gửi đến,
qua Hệ thống Tên miền.
Máy chủ DNS của b.org là ns.b.org sẽ trả lời về một bản ghi trao đổi thư từ, đây
là bảng ghi chỉ ra cách thức làm thế nào định tuyến cho email này. Trong thí dụ thì
mx.b.org là máy chủ từ dịch vụ cung ứng Internet của Trần.
smtp.a.org gửi mẫu thông tin tới mx.b.org dùng giao thức SMTP, điều này sẽ
phân phối lá thư đến hộp thư của Trần.
Khi đọc Trần ra lệnh nhận thư trên máy (MUA) của Trần, điều này tạo ra việc
lấy về mẫu thông tin bằng cách áp dụng giao thức POP3.
Trong trường hợp Nguyễn không có MUA mà chỉ dùng Webmail chẳng hạn thì
bước 1 sẽ không xảy ra tức là MTA của Nguyễn sẽ làm việc trực tiếp. Tưong tự cho
trường hợp Trần không có MUA riêng.
Trước đây, nếu một MTA không thể gửi tới đích thì nó có thể ít nhất ngừng lại
ở chỗ gần với chỗ nhận. Sự ngừng này sẽ tạo cơ hội để máy đích có thể nhận về các
mẫu thông tin trong thời gian trễ hơn. Nhiều MTA sẽ chấp nhận tất cả mẫu thông tin
từ người gửi bất kì và tìm mọi cách để phân nó về đến máy đích. Những MTA như
vậy gọi là những ngưng đọng thư mở (open mail relays). Điều này khá cần thiết vì sự
chất lượng liên lạc của hệ thống Internet lúc đó còn yếu
c. Các giao thức
SMTP (từ chữ Simple Mail Transfer Protocol) -- hay là giao thức chuyển thư
đơn giản. Đây là một giao thức lo về việc vận chuyển email giữa các máy chủ trên
đường trung chuyển đến địa chỉ nhận cũng như là lo việc chuyển thư điện tử từ máy

khách đến máy chủ. Hầu hết các hệ thống thư điện tử gửi thư qua Internet đều dùng
giao thức này. Các mẫu thông tin có thể được lấy ra bởi một email client. Những
email client này phải dùng giao thức POP hay giao thức IMAP.
IMAP (từ chữ Internet Message Access Protocol) -- hay là giao thức truy nhập
thông điệp (từ) Internet. Giao thức này cho phép truy nhập và quản lý các mẫu thông
17


tin về từ các máy chủ. Với giao thức này người dùng email có thể đọc, tạo ra, thay
đổi, hay xoá các ngăn chứa, các mẫu tin đồng thời có thể tìm kiếm các nội dung trong
hộp thư mà không cần phải tải các thư về. Phiên bản mới nhất của IMAP là IMAP4
tương tự nhưng có nhiều chức năng hơn giao thức POP3. IMAP nguyên thuỷ được
phát triển bởi đại học Standford năm 1986.
POP (từ chữ Post Office Protocol) -- hay là giao thức phòng thư. Giao thức này
được dùng để truy tìm các email từ một MTA. Hầu hết các MUA đều dùng đến giao
thức POP mặc dù một số MTA cũng có thể dùng giao thức mới hơn là IMAP.
Hiện có hai phiên bản của POP. Phiên bản đầu tiên là POP2 đã trở thành tiêu chuẩn
vào thập niên 80, nó đòi hỏi phải có giao thức SMTP để gửi đi các mẫu thông tin.
Phiên bản mới hơn POP3 có thể được dùng mà không cần tới SMTP.
1.2.2. Khai mỏ dữ liệu
1.2.2.1. Khám phá tri thức và khai mỏ dữ liệu
Công nghệ khám phá tri thức từ dữ liệu được định nghĩa là sự trích xuất từ dữ
liệu những thông tin hữu ích nhưng tiềm ẩn và chưa được biết đến. Khai mỏ dữ liệu
là một bước quan trọng trong quá trình khám phá tri thức từ dữ liệu. Khai mỏ dữ liệu
thực hiện việc khảo sát, thống kê, phân tích tỉ mỉ một lượng lớn dữ liệu nhằm phát
hiện ra các mẫu hoặc các luật có ý nghĩa.

Hình 7. Quá trình khám phá tri thức
Quá trình khám phá tri thức là một quá trình lặp phức tạp, sử dụng nhiều kỹ
thuật như cơ sở dữ liệu, máy học, phương pháp thống kê trong phân tích dữ liệu, hiển

thị dữ liệu, trí tuệ nhân tạo, nhằm tìm ra tri thức từ kho dữ liệu khổng lồ.
Quá trình khám phá tri thức gồm 3 bước chính: tiền xử lý, khai mỏ dữ liệu và
đánh giá kết quả.
 Tiền xử lý bao gồm các bước:
- Tập hợp dữ liệu.
- Chọn dữ liệu cần thiết cho mục tiêu đề ra, mẫu tin, trường dữ liệu.
- Biểu diễn dữ liệu, chuyển đổi kiểu sao cho phù hợp với giải thuật khai
mỏ dữ liệu mà bước tiếp theo sử dụng.

18


- Làm sạch dữ liệu, khắc phục đối với những trường hợp dữ liệu rỗng,
dư thừa hoặc dữ liệu không hợp lệ, có thể tinh giảm dữ liệu hơn.
 Khai mỏ dữ liệu
Sau khi tiền xử lý dữ liệu xong, đến bước khai mỏ dữ liệu tiến hành xây
dựng các mô hình với sự hỗ trợ của:
- Máy học.
- Trí tuệ nhân tạo.
- Phân tích dữ liệu nhiều chiều bằng phương pháp thống kê hoặc bằng
phương pháp trực quan hiển thị dữ liệu.
Các giải thuật khai mỏ dữ liệu được sử dụng nhiều trong cộng đồng khám
phá tri thức bao gồm: Luật kết hợp (Association Rule), K láng giềng (KNearest Neighbor), Bayes thơ ngây (Naive Bayes), Cây quyết định (Decision
Tree), Bagging, Boosting, Máy học Véc-tơ Hỗ trợ (Support Vector Machine),
Rừng ngẫu nhiên (Random Forests), Gom cụm kMeans.
Bước khai mỏ dữ liệu được xem là trung tâm của quá trình khám phá tri
thức. Công việc rất phức tạp, lặp đi lặp lại các công việc như: xây dựng mô
hình, tạo tri thức về dữ liệu, kiểm định lại mô hình, nếu chưa đạt thì phải xây
dựng mô hình khác.
Khai mỏ dữ liệu tập trung giải quyết các vấn đề cơ bản như phân lớp

(classification, supervised classification), hồi quy (regression), gom nhóm
(clustering, unsupervised classification) và luật kết hợp.
 Đánh giá kết quả
Sau bước khai mỏ dữ liệu, kế tiếp phải đánh giá tri thức sinh ra từ việc
tiền xử lý và khai mỏ dữ liệu. Kiểm định kết quả dựa vào mục tiêu ban đầu
của ứng dụng. Nghĩa là chỉ có người sử dụng hoặc cán bộ về lĩnh vực mới có
khả năng đánh giá được tri thức sinh ra. Chính vì vậy kết quả được sinh ra từ
quá trình khám phá tri thức cần dễ hiểu, dễ diễn dịch kết quả để giúp người sử
dụng hoặc cán bộ có thể đánh giá và hiểu được kết quả sinh ra. Nếu kết quả
không đạt được so với mục tiêu đề ra, người ta có thể quay lại bước tiền xử lý
hay khai mỏ dữ liệu để lặp lại quá trình khám phá tri thức.
Tóm lại, khám phá tri thức và khai mỏ dữ liệu là một lĩnh vực rất rộng lớn.
Trong phạm vi nghiên cứu, khóa luận này chỉ giới thiệu một phần của vấn đề khai
mỏ dữ liệu là bài toán phân lớp và giải thuật Máy học Véc-tơ Hỗ trợ.
1.2.2.2.

Bài toán phân lớp

Bài toán phân lớp là một bài toán kinh điển trong lĩnh vực khai mỏ dữ liệu. Mục
tiêu của bài toán là xây dựng một mô hình phân lớp dựa trên tập dữ liệu học có nhãn
(lớp). Ví dụ: cho sẵn một tập dữ liệu các câu hỏi đã được gán nhãn là câu hỏi thuộc
các lĩnh vực là quy chế - hồ sơ (chẳng hạn “hồ sơ”, “quy định”, “khu vực”…), vấn
đề là cần một phương pháp huấn luyện để xây dựng một mô hình phân lớp từ tập dữ

19


liệu mẫu này sau đó dùng mô hình này dự đoán lớp của những tin nhắn mới (chưa
biết nhãn).
1.2.2.3.


Máy học Véc-tơ Hỗ trợ (SVM)

a. Giải thuật học SVM
Phương pháp SVM ra đời từ lý thuyết học thống kê do Vapnik và Chervonenkis
xây dựng và có nhiều tiềm năng phát triển về mặt lý thuyết cũng như ứng dụng trong
thực tiễn. SVM được đánh giá là 1 trong 10 giải thuật quan trọng của khai mỏ dữ liệu.
Các ứng dụng thực tế cho thấy phương pháp SVM có khả năng phân loại khá tốt đối
với bài toán phân loại văn bản cũng như trong nhiều ứng dụng khác (như nhận dạng
chữ viết tay, phát hiện mặt người trong các ảnh, ước lượng hồi quy, ...).

Hình 8. Phân lớp tuyến tính với SVM
Bài toán cơ bản của SVM là bài toán phân loại hai lớp: Cho trước n điểm trong
không gian d chiều (mỗi điểm thuộc vào một lớp kí hiệu là +1 hoặc –1, mục đích của
giải thuật SVM là tìm một siêu phẳng (hyperplane) phân hoạch tối ưu cho phép chia
n điểm này thành hai phần sao cho các điểm cùng một lớp nằm về một phía với siêu
phẳng này. Hình 8 minh họa phân lớp với SVM trong mặt phẳng.
Xét tập dữ liệu mẫu có thể tách rời tuyến tính {(x1,y1),(x2,y2),...,(xn,yn)} với xi
 R và yi {±1}. Siêu phẳng tối ưu phân tập dữ liệu này thành hai lớp là siêu phẳng
có thể tách rời dữ liệu thành hai lớp riêng biệt với lề (margin) lớn nhất. Tức là, cần
tìm siêu phẳng H: y = w.x + b = 0 và hai siêu phẳng H1, H2 hỗ trợ song song với H
và có cùng khoảng cách đến H. Với điều kiện không có phần tử nào của tập mẫu nằm
giữa H1 và H2, khi đó:
d

w.x + b >= +1 với y = +1
w.x + b >= 1 với y = 1
Kết hợp hai điều kiện trên ta có:
y(w.x + b) >= 1.
Khoảng cách của siêu phẳng H1 và H2 đến H là ||w||. Ta cần tìm siêu phẳng H

với lề lớn nhất, tức là giải bài toán tối ưu tìm min w với ràng buộc y(w.x + b) >= 1.
w.b

20


Người ta có thể chuyển bài toán sang bài toán tương đương nhưng dễ giải hơn là
min
w.b

1 2
w với ràng buộc y(w.x + b) >= 1. Lời giải cho bài toán tối ưu này là cực tiểu
2

hóa hàm Lagrange:
L( w, b, a ) 

n
1 2
w  i 1 t ( yt ( w, xt  b)  1) (1)
2

Trong đó α là các hệ số Lagrange, α≥0. Sau đó người ta chuyển thành bài toán
đối ngẫu là cực đại hóa hàm W(α):
maxα W(α) = maxα (minw,bL(w,b,a))

(2)

Từ đó giải để tìm được các giá trị tối ưu cho w,b và α. Về sau, việc phân loại
một mẫu mới chỉ là việc kiểm tra hàm dấu sign(wx +b).

Giải thuật SVM cơ bản giải quyết được bài toán phân lớp tuyến tính, tuy nhiên
nếu ta kết hợp SVM với phương pháp hàm nhân (kernel – based method), sẽ cho phép
giải quyết một số bài toán phi tuyến bằng cách ánh xạ dữ liệu vào một không gian có
số chiều lớn hơn. Không có bất kỳ thay đổi cần thiết nào về mặt giải thuật, việc duy
nhất cần làm là thay thế các tích vô hướng của hai véc-tơ u.v bởi hàm nhân K(u,v).
Bảng 4. Một số hàm nhân thường được dùng
Kiểu hàm
Công thức
Tuyến tính
K(u,v) = u.v
Đa thức bậc d
K(u,v) = (u.v +c)d
Radial
Basis K(u,v) = exp(-||uFunction
v||2)
Trong luận văn này, chúng tôi thực hiện xây dựng và huấn luyện mô hình phân
loại nhờ vào sự hỗ trợ của công cụ LibSVM.
b. Công cụ LibSVM
LibSVM (Library for Support Vector Machines) là một phần mềm mã nguồn
mở sử dụng kỹ thuật SVM để huấn luyện dữ liệu và dựa vào kết quả huấn luyện để
xác định một dữ liệu thuộc một phân lớp nào đó. Phần mềm này được xây dựng bởi
nhóm Chih-Chung Chang và Chih-Jen Lin trường đại học Quốc gia Đài Loan.
1.2.3. Phân lớp văn bản
1.2.3.1. Khái niệm
Phân lớp văn bản được định nghĩa là việc gán tên các chủ đề (tên lớp/nhãn lớp)
cho trước vào các văn bản dựa trên nội dung của nó. Phân lớp văn bản là công việc
được sử dụng để hỗ trợ cho quá trình tìm kiếm thông tin (Information Retrieval), chiết
lọc thông tin (Information Extraction), lọc văn bản hoặc tự động dẫn đường cho các
văn bản tới những chủ đề xác định trước đó. Để xây dựng bộ phân lớp văn bản tự
động, người ta sử dụng các thuật toán máy học (machine learning) có giám sát.

Học có giám sát là một kĩ thuật của ngành máy học để xây dựng một hàm
(function) từ dữ liệu huấn luyện. Dữ liệu huấn luyện bao gồm các cặp gồm đối tượng
đầu vào (thường dạng vec-tơ) và đối tượng đầu ra mong muốn. Đầu ra của một hàm

21


×