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

Giám sát hoạt động gia súc sử dụng cảm biến gia tốc 3 chiều

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 (19.75 MB, 66 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN ĐỨC TIẾN

GIÁM SÁT HOẠT ĐỘNG GIA SÚC SỬ DỤNG CẢM
BIẾN GIA TỐC 3 CHIỀU

LUẬN VĂN THẠC SỸ CÔNG NGHỆ ĐIỆN TỬ – VIỄN THÔNG

HÀ NỘI - 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

NGUYỄN ĐỨC TIẾN

GIÁM SÁT HOẠT ĐỘNG GIA SÚC SỬ DỤNG CẢM
BIẾN GIA TỐC 3 CHIỀU
NGÀNH: CÔNG NGHỆ ĐIỆN TỬ – VIỄN THÔNG
CHUYÊN NGÀNH: KỸ THUẬT ĐIỆN TỬ
MÃ SỐ: 60520203

LUẬN VĂN THẠC SỸ CÔNG NGHỆ ĐIỆN TỬ – VIỄN THÔNG

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. TRẦN ĐỨC TÂN

HÀ NỘI - 2015



LỜI NÓI ĐẦU
Sự phát triển trong công nghệ cảm biến đã diễn ra, và đó là quá trình có thể
được nhìn thấy trước, sẽ làm tăng lượng thông tin có liên quan đến giám sát động vật
và môi trường của chúng. Các thông tin trên sẽ góp phần làm tăng chất lượng các sản
phẩm liên quan từ động vật cũng như việc phát triển gia súc và sức khỏe của chúng.
Các hệ thống đã có sẵn hiện giờ mới xác định định danh và trọng lượng động vật và nó
là lý do để cho rằng sẽ có một hệ thống được phát triển để theo dõi động vật; để theo
dõi các yếu tố sinh lý cơ bản như nhiệt độ cơ thể và nhịp tim; và để đánh giá hình dạng
cơ thể bên ngoài, và một số khía cạnh giới hạn về thành phần bên trong. Việc áp dụng
các kỹ thuật hệ thống giám sát tích hợp, trong đó thông tin từ các cảm biến, cơ sở dữ
liệu, mô hình toán học và cơ sở tri thức được kết hợp và giải thích, sẽ cho phép tối đa
tiềm năng của các thông tin này để thực hiện được. Một số hệ thống có chứa một số
các yếu tố của một hệ thống giám sát tích hợp đã có sẵn tính thương mại cho lợn, gà
thịt và sản xuất sữa.
Những tiến bộ trong nghiên cứu sinh vật từ xa đã có thể phát triển hệ thống có
thể tự động giám sát và phân loại các hoạt động các hành vi trong nhiều loài gia súc,
bao gồm cả các loài đã được thuần hóa như bò sữa. Tự động phân loại hành vi có khả
năng cải thiện được sức khỏe và quá trình giám sát sự chăm sóc của gia súc. Các
nghiên cứu gần đây đã sử dụng cảm biến gia tốc và máy đo bước để phân loại các hoạt
động hành vi ở bò sữa, nhưng cách tiếp cận này thường không thể phân biệt chính xác
giữa các hành vi sinh học quan trọng như cho ăn, nằm, đứng hoặc động dục. Trong
luận văn này, tôi đã phát triển một thuật toán cây quyết định cải tiến mà sử dụng các
dữ liệu từ một cảm biến gia tốc gắn trên cổ bò để vừa có thể phân loại hành vi sinh học
quan trọng ở bò sữa như nằm, đứng, ăn và sử dụng một cảm biến gia tốc khác để đo
bước chân dùng để xác định hành vi động dục của bò sữa. Các hành vi này sẽ được
giám sát theo thời gian thực. Từ những hành vi của gia súc, chúng ta có thể biết được
trạng thái cũng như tình hình sức khỏe của chúng. Chúng ta có thể biết được con bò
nào lười ăn, con bò nào đau chân, con bò nào động dục mà có những chế độ ăn uống
cũng như chăm sóc hợp lý…


1


LỜI CẢM ƠN
Luận văn này là kết quả của năm tháng làm việc chăm chỉ cũng như những ý
kiến đóng góp nhiệt tình cùng sự hướng dẫn đúng đắn của thầy hướng dẫn, TS. Trần
Đức Tân. Với những đức tính của một nhà giáo, nhà nghiên cứu trẻ, thầy là hình mẫu
mà tôi noi theo trong công việc nghiên cứu hoàn thành luận văn này.
Tôi cũng xin được gửi lời cảm ơn đến các thầy, cô và bạn bè trong bộ môn Vi
cơ điện tử và Vi hệ thống và trong lớp K19ĐTVT, Khoa Điện Tử – Viễn Thông,
Trường Đại học Công nghệ, Đại học Quốc gia Hà nội đã có những nhận xét, góp ý cho
luận văn này của tôi.
Cuối cùng tôi xin được gửi lời cảm ơn đến gia đình tôi, những người đã tạo điều
kiện cho tôi học tập và nghiên cứu. Gia đình là động lực cho tôi vượt qua những thử
thách, luôn luôn ủng hộ và động viên tôi hoàn thành luận văn này.

2


LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này là sản phẩm của quá trình nghiên cứu, tìm hiểu
của cá nhân dưới sự hướng dẫn và chỉ bảo của các thầy hướng dẫn, thầy cô trong bộ
môn, trong khoa và các bạn bè.
Tôi không sao chép các tài liệu hay các công trình nghiên cứu của người khác
để làm luận văn này. Nếu vi phạm, tôi xin được chịu mọi trách nhiệm.

Học viên

Nguyễn Đức Tiến


3


MỤC LỤC
LỜI NÓI ĐẦU............................................................................................................ 1
MỤC LỤC .................................................................................................................. 4
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ................................................ 5
DANH MỤC CÁC BẢNG ......................................................................................... 6
DANH MỤC CÁC HÌNH VẼ .................................................................................... 7
CHƯƠNG 1. GIỚI THIỆU ....................................................................................... 9
1.1.
1.2.

TỔNG QUAN VỀ GIÁM SÁT HỖ TRỢ CHĂN NUÔI.............................................................................................. 9
TỔ CHỨC LUẬN VĂN ..............................................................................................................................13

CHƯƠNG 2. NGUYÊN CỨU CÁC THUẬT TOÁN PHÂN LOẠI HÀNH VI GIA
SÚC........................................................................................................................... 14
2.1.

2.2.
2.3.
2.4.
2.5.

TỔNG QUAN VỀ CÁC PHƯƠNG PHÁP HỌC MÁY .............................................................................................14
2.1.1.G IỚI THIỆU VỀ HỌC MÁY ................................................................................................................14
2.1.2.CÁC GIẢI THUẬT HỌC MÁY .............................................................................................................14
THUẬT TOÁN PHÂN CỤM K-MEANS ...........................................................................................................15
THUẬT TOÁN MÁY VECTOR HỖ TRỢ (SVM) .................................................................................................16

THUẬT TOÁN CÂY QUYẾT ĐỊNH .................................................................................................................21
SO SÁNH CÁC LOẠI THUẬT TOÁN PHÂN LOẠI VÀ NHẬN XÉT ...............................................................................24

CHƯƠNG 3. PHƯƠNG PHÁP ĐỀ XUẤT............................................................. 26
3.1.
3.2.
3.3.

ĐỀ XUẤT ............................................................................................................................................26
PHÂN LOẠI HÀNH VI CỦA GIA SÚC .............................................................................................................28
XÂY DỰNG BỘ THAM SỐ ĐÁNH GIÁ PHÂN LOẠI GIA SÚC ..................................................................................32

CHƯƠNG 4. KẾT QUẢ .......................................................................................... 39
4.1.
4.2.

MÔ PHỎNG VÀ ĐÁNH GIÁ VỀ MẶT CHẤT LƯỢNG ...........................................................................................39
VỀ MẶT HIỆU QUẢ CỦA THUẬT TOÁN CÂY QUYẾT ĐỊNH ...................................................................................58

KẾT LUẬN .............................................................................................................. 61
TÀI LIỆU THAM KHẢO ....................................................................................... 62

4


DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
Ký Hiệu

Tên Tiếng Anh


Tên Tiếng Việt

SVM

Support Vector Machine

Máy hỗ trợ vectơ

VeDBA

Vector of the dynamic body
acceleration

Vector tổng hợp gia tốc chuyển động
toàn thân

ODBA

Overall dynamic body
acceleration

Tổng gia tốc chuyển động toàn thân

DBA

Dynamic body acceleration

Gia tốc chuyển động toàn thân

SCAY


Static component of
acceleration in the y-axis

Thành phần gia tốc tĩnh theo trục y

TP

True Positive

Số đúng dương

TN

True Negative

Số đúng âm

FP

False Positive

Số sai dương

FN

False Negative

Số sai âm


TPR

True Positive Rate

Tỉ lệ số đúng dương

FPR

False Positive Rate

Tỉ lệ số sai dương

ROC

Receiver Operating Curve

Đường cong đặc trưng hoạt động của
bộ thu nhận

g

Gravity

Trọng lực

5


DANH MỤC CÁC BẢNG
Bảng 2.1. So sánh các thuật toán phân loại ...................................................... 25

Bảng 3.1 Ma trận nhầm lẫn. ............................................................................ 35
Bảng 4.1. Chuỗi dữ liệu thời gian khi bò đang nằm, g=9.8 m/s2 ...................... 39
Bảng 4.2. Dữ liệu đầu ra của cảm biến gia tốc ba chiều khi bò đang đứng trong
thời gian một phút...................................................................................................... 41
Bảng 4.3. Dữ liệu thời gian đầu ra cảm biến gia tốc ba chiều khi bò đang ăn .. 43
Bảng 4.4. Giá trị trung bình VeDBA và trạng thái ........................................... 47
Bảng 4.5. Kết quả ROC của VeDBA............................................................... 49
Bảng 4.6. Dữ liệu SCAY tương ứng với hành vi ............................................. 51
Bảng 4.7. Kết quả ROC của SCAY ................................................................. 54
Bảng 4.8. Giá trị tần suất di chuyển của bò ..................................................... 56
Bảng 4.9. Kết quả thực hiện phân loại với các thuật toán ................................ 58

6


DANH MỤC CÁC HÌNH VẼ
Hình 1.1: Đàn bò Hoàng anh Gia Lai. ............................................................ 10
Hình 1.2. Áp dụng công nghệ cao vào chăn nuôi bò ....................................... 11
Hình 1.3. Hệ thống giám sát tích hợp cho sản xuất chăn nuôi. ......................... 12
Hình 2.1. Sơ đồ giải thuật toán K-means ......................................................... 16
Hình 2.2. Quá trình xây dựng mô hình phân lớp .............................................. 18
Hình 2.3. Ước lượng độ chính xác của mô hình. ............................................. 19
Hình 2.4. Phân lớp dữ liệu mới ....................................................................... 19
Hình 2.5. Thuật toán SVM .............................................................................. 20
Hình 2.6. Ví dụ về cây quyết định ................................................................... 22
Hình 3.1. Mã giải thuật toán cây quyết định .................................................... 27
Hình 3.2. Hướng của các trục gia tốc gắn trên cổ bò ....................................... 28
Hình 3.3. Cảm biến Omnisense Series 500 Cluster Geolocation ..................... 29
Hình 3.4. Các trục cảm biến gia tốc khi bò đang đứng..................................... 29
Hình 3.5. Hướng cảm biến gia tốc khi bò đang nằm ........................................ 30

Hình 3.6. Cảm biến gia tốc gắn vào chân để đo số bước chân ......................... 30
Hình 3.7. Các trục gia tốc của cảm biến đo bước chân .................................... 30
Hình 4.1. Sơ đồ thuật toán của cây quyết định cải tiến .................................... 31
Hình 4.2. Cây quyết định phân loại hành vi ăn, nằm, đứng.............................. 32
Hình 4.3. Cây quyết định phân loại hành vi động dục ..................................... 32
Hình 3.9. Phương pháp cửa sổ trượt ................................................................ 34
Hình 3.10. Một ví dụ về đường cong ROC ...................................................... 37
Hình 4.4. Dữ liệu đầu ra của cảm biến gia tốc ba chiều khi bò đang nằm trong
thời gian mười phút ................................................................................................... 41
Hình 4.5. Chuỗi dữ liệu thời gian của cảm biến gia tốc 3 chiều trạng thái đứng
.................................................................................................................................. 43
Hình 4.6. Chuỗi dữ liệu thời gian của cảm biến gia tốc 3 chiều trạng thái đang
ăn trong mười phút .................................................................................................... 45
Hình 4.7. Giá trị trung bình VeDBA và SCAY của con bò trong cả ba trạng thái
.................................................................................................................................. 46
Hình 4.8. Hằng số ngưỡng VeDBA ................................................................. 49
Hình 4.9. Cây quyết định phân loại dựa trên hằng số ngưỡng VeDBA ............ 51
Hình 4.10. Hằng số ngưỡng SCAY ................................................................. 54
Hình 4.11. Cây quyết định phân loại hành vi đứng và nằm .............................. 55
7


Hình 4.12. Kết quả phân loại hành vi động dục của con bò. ............................ 57
Hình 4.13. Cây quyết định phân loại hành vi động dục.................................... 58

8


GIỚI THIỆU
1.1.


Tổng quan về giám sát hỗ trợ chăn nuôi.
Trong những năm gần đây, ngành chăn nuôi Việt Nam đã phát triển đáng kể.
Kể từ năm 1990 đến nay ngành chăn nuôi có hướng phát triển tương đối ổn định với
tốc độ tăng trưởng bình quân đạt đến 5,27% năm. Chăn nuôi gia cầm có tốc độ tăng
trưởng nhanh nhất 15 năm qua. Tốc độ tăng trưởng bình quân hàng năm tăng rõ rệt, từ
3,5% năm trong các giai đoạn 1990-1995 lên đến 6,7% năm trong giai đoạn 1996-2000
và trong các năm còn lại tăng lên tới 9,1% năm [14]. Chăn nuôi lấy thịt là hình thức
phổ biến nhất ở nước ta. Bên cạnh tình hình chăn nuôi lấy thịt, chăn nuôi bò sữa cũng
phát triển mạnh trong những năm gần đây và không chỉ cung cấp sữa tươi cho tiêu thụ
mà còn cung cấp cho các nhà máy chế biến sữa.
Tuy nhiên, ngành chăn nuôi Việt Nam vẫn tồn tại một số vấn đề. Thứ nhất,
quy mô trang trại quá nhỏ. Xu hướng phát triển các trang trại lợn công nghiệp quy mô
lớn là lực lượng xuất khẩu chính. Số lượng các trang trại này tăng mạnh từ năm 1996
đến nay. Năm 2003 cả nước có khoảng 2.000 trang trại chăn nuôi. Mặc dù vậy, tỉ lệ
trang trại chăn nuôi còn nhỏ, chỉ chiếm 2,9% trong tổng số trang trại các loại của cả
nước và phần lớn trang trại tập trung ở vùng Đông Nam Bộ [12]. Thứ hai, năng suất
nuôi lấy thịt của Việt Nam còn tương đối thấp và tăng chậm trong vòng 10 năm trở lại
đây. Bên cạnh đó, chất lượng thịt của Việt Nam còn thấp, biểu hiện ở tỉ lệ mỡ cao,
bệnh dịch thường xuyên xảy ra nhất là đại dịch cúm gia cầm gần đây.
Hình Error! No text of specified style in document..1 minh họa đàn bò của
Tập đoàn Hoàng Anh Gia Lai:

9


Hình Error! No text of specified style in document..1: Đàn bò Hoàng anh Gia Lai1
Phân tích về thực trạng ngành hiện nay, Lãnh đạo Cục Chăn nuôi, Bộ Nông
nghiệp và Phát triển Nông thôn (NN&PTNT) đánh giá, khó khăn lớn nhất của ngành
chăn nuôi hiện nay là thiếu sự phối hợp giữa người sản xuất và thị trường để tạo ra một

chuỗi liên kết ổn định [16]. Do đó, thu nhập thấp, giá trị gia tăng chưa lớn, gây khó
khăn cho người chăn nuôi và tạo ra tâm lý không muốn làm, dẫn tới giá cả biến động.
Người nông dân có thể vay vốn để mở rộng chăn nuôi. Các doanh nghiệp lớn cũng đã
bắt tay vào nhập các công nghệ cao chăn nuôi từ Isaren và Nhật Bản. Chẳng hạn như
doanh nghiệp TH True Milk đã nhập về hệ thống quản lý trang trại bò sữa mới theo
AFIMILK [1].
Hình Error! No text of specified style in document..2 minh họa hệ thống
giám sát AFIMILK:

1

/>
10


Hình Error! No text of specified style in document..2. Áp dụng công nghệ cao vào
chăn nuôi bò2
Trang trại thâm canh làm cho người nông dân hoàn toàn chịu trách nhiệm cho
tất cả gia súc dưới sự giám sát của mình. Gia súc bây giờ đã được cung cấp mạnh mẽ,
và duy trì trong điều kiện lý tưởng gần cho sự tăng trưởng và sản xuất trong phạm vi
giới hạn công nghệ hiện nay. Đa số các loài gia súc được chăn nuôi bên trong một tòa
nhà hoặc bãi chăn trong suốt cuộc đời của gia súc. Giám sát cho ăn, theo dõi môi
trường, theo dõi khả năng sinh sản, sức khỏe, phát triển, tiếp thị, vận chuyển và chất
lượng trở thành trách nhiệm của người chăn gia súc. Trách nhiệm này không chỉ là đạo
đức; nó cũng là lợi ích thương mại của người nông dân để đáp ứng những nhu cầu cơ
bản của vật nuôi của mình.
Hình Error! No text of specified style in document..3 minh họa cho hệ thống
giám sát chăn nuôi:

2


/>
11


Hình Error! No text of specified style in document..3. Hệ thống giám sát tích hợp
cho sản xuất chăn nuôi.
Thiết bị cảm ứng đang được phát triển trong đó có thể thu thập thêm nhiều
thông tin. Tuy nhiên với sự phát triển của các bộ cảm biến nó trở nên quan trọng hơn
để phát triển các hệ thống mà có thể thu thập, xử lý và sử dụng thông tin [33], [34]. Dữ
liệu thô là giá trị giới hạn. Những người chăn gia súc có thể tối đa hóa hiệu quả của
một hệ thống sản xuất chỉ bằng cách theo dõi tất cả các giai đoạn quan trọng và các
mục tiêu của mình và đảm bảo rằng chúng được lưu giữ gần tối ưu. Ví dụ, nó có thể là
cần thiết để đồng hóa số liệu về khí hậu trong và ngoài một tòa nhà, giống, số lượng,
tuổi, mức độ thức ăn và trọng lượng của động vật, tốc độ tăng trưởng, hoạt động và
sức khỏe của họ và hồ sơ yêu cầu thị trường.
Một hệ thống giám sát tích hợp là một trong đó thu thập thông tin từ nhiều
nguồn khác nhau, bao gồm cảm biến, cơ sở dữ liệu và cơ sở tri thức, xử lý dữ liệu, và
cung cấp các kết quả đầu ra, có thể kiến nghị với các nhà sản xuất, hoặc các hoạt động
kiểm soát quá trình trực tiếp.
12


Đầu vào cho hệ thống sẽ bao gồm các cảm biến đo lường ví dụ như điều kiện
khí hậu, thức ăn ăn vào, tốc độ tăng trưởng, hành vi động vật và chất lượng sản phẩm;
cơ sở dữ liệu chứa các giá trị quá khứ của các biến; và các mô hình để cho phép điều
kiện tương lai được dự đoán, hoặc các giá trị của các biến không đo được được suy
luận. Các thói quen giải thích sẽ sử dụng thông tin này để rút ra kết luận liên quan đến
sự tiến bộ của quá trình sản xuất trong các lĩnh vực như khí hậu và kiểm soát thức ăn,
và sức khỏe và tình trạng sinh sản của động vật. Trong giai đoạn cuối cùng kiến thức

chăn nuôi sẽ khởi xướng các hoạt động kiểm soát, hoặc báo cáo cho người sử dụng,
với các khuyến nghị cho các hành động.
Dữ liệu từ các cảm biến gia tốc đã thường xuyên được sử dụng để theo dõi,
phân loại và suy ra các hành vi của con người [32]. Ngoài ra các cảm biến gia tốc đã
được sử dụng trong cảm biến kĩ thuật số để có thể phát hiện có thể té ngã ở người cao
tuổi. Trong khóa luận này, dữ liệu từ các cảm biến gia tốc đã được sử dụng để có thể
theo dõi hành vi của gia súc.
Có nhiều thuật toán dùng để phân loại hành vi của gia súc như: Thuật toán
phân cụm k-means, thuật toán SVM, thuật toán cây quyết định. Các thuật toán kmeans, SVM, cây quyết định đều có những ưu điểm và nhược điểm nhất định. Trong
luận văn này, tôi sử dụng thuật toán cây quyết định cải tiến để phân loại hành vi của bò
sữa bởi vì thuật toán này nhanh, đơn giản, và độ chính xác cao khi thực hiện phân loại.
1.2.

Tổ chức luận văn
Phần còn lại của luận văn này được tổ chức như sau:

 Chương 2 nghiên cứu về các thuật toán phân loại hành vi:
o Trình bày tổng quan về các phương pháp học máy.
o Nghiên cứu từng thuật toán như k-means, SVM, Cây quyết định.
o So sánh các loại thuật toán với nhau đưa ra lí do vì sao sử dụng thuật
toán cây quyết định.
 Chương 3 đề xuất sử dụng cây quyết định cải tiến
o Đề xuất sử dụng cây quyết định cải tiến.
o Phân loại hành vi gia súc: ăn, nằm, đứng, động dục.
o Xây dựng bộ tham số để đánh giá phân loại gia súc.
 Chương 4 đưa ra những kết quả đạt được khi sử dụng phương pháp phân loại
bằng cây quyết định.

13



NGUYÊN CỨU CÁC THUẬT TOÁN PHÂN LOẠI
HÀNH VI GIA SÚC
2.1.

Tổng quan về các phương pháp học máy
2.1.1. Giới thiệu về học máy
Học máy, có tài liệu gọi là Máy học, là một lĩnh vực của trí tuệ nhân tạo liên
quan đến việc nghiên cứu và xây dựng các kĩ thuật cho phép các hệ thống "học" tự
động từ dữ liệu để giải quyết những vấn đề cụ thể. Ví dụ như các máy có thể "học"
cách phân loại thư điện tử xem có phải thư rác hay không và tự động xếp thư vào thư
mục tương ứng. Học máy rất gần với suy diễn thống kê tuy có khác nhau về thuật ngữ
[18].
Học máy có liên quan lớn đến thống kê, vì cả hai lĩnh vực đều nghiên cứu việc
phân tích dữ liệu, nhưng khác với thống kê, học máy tập trung vào sự phức tạp của các
giải thuật trong việc thực thi tính toán.
Học máy có hiện nay được áp dụng rộng rãi bao gồm máy truy tìm dữ liệu,
chẩn đoán y khoa, phân loại hành vi của gia súc phát hiện thẻ tín dụng giả, phân tích
thị trường chứng khoán, phân loại các chuỗi DNA, nhận dạng tiếng nói và chữ viết,
dịch tự động, chơi trò chơi và cử động rô-bốt [7].
2.1.2. Các giải thuật học máy
Các nhóm giải thuật học máy:
 Học có giám sát: là một kĩ thuật của ngành học máy để xây dựng một hàm
từ tập 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 vectơ), và đầu ra mong muốn. Đầu ra của một
hàm có thể là một giá trị liên tục (gọi là hồi qui), hay có thể là dự đoán một
nhãn phân loại cho một đối tượng đầu vào (gọi là phân loại). Phương pháp
này sử dụng cho các bài toán phân lớp [5].
 Học không giám sát: là phương pháp học máy nhằm tìm ra một mô hình
phù hợp với các quan sát. Cho trước một mẫu chỉ gồm các đối tượng,cần

tìm kiếm cấu trúc quan tâm của dữ liệu, và nhóm các đối tượng giống
nhau.. Phương pháp này sử dụng cho các bài toán phân cụm, gom cụm [9].
 Học bán giám sát: là một lớp của kỹ thuật học máy, sử dụng cả dữ liệu đã
gán nhãn và chưa gán nhãn để huấn luyện - điển hình là một lượng nhỏ dữ
liệu có gán nhãn cùng với lượng lớn dữ liệu chưa gán nhãn. Học bán giám
sát đứng giữa học không giám sát (không có bất kì dữ liệu đã được nhãn
nào) và có giám sát (toàn bộ dữ liệu đều được gán nhãn) [8].

14


 Học tăng cường: Máy tính đưa ra quyết định hành động và nhận kết quả
phản hồi từ môi trường. Sau đó máy tính tìm cách chỉnh sửa cách ra quyết
định hành động của mình [17].
Trong luận văn này, thuật toán k-means là học không giám sát, SVM và
decission-tree là học có giám sát.
2.2. Thuật toán phân cụm k-means
Phân cụm là kỹ thuật rất quan trọng trong khai phá dữ liệu, nó thuộc lớp các
phương pháp “Học không giám sát” trong Học Máy. Có rất nhiều định nghĩa khác
nhau về kỹ thuật này, nhưng về bản chất ta có thể hiểu phân cụm là các qui trình tìm
cách nhóm các đối tượng đã cho vào các cụm (clusters), sao cho các đối tượng trong
cùng 1 cụm tương tự nhau và các đối tượng khác cụm thì không tương tự nhau [4].
Mục đích của phân cụm là tìm ra bản chất bên trong các nhóm của dữ liệu. Các
thuật toán phân cụm đều sinh ra các cụm. Tuy nhiên, không có tiêu chí nào là được
xem là tốt nhất để đánh hiệu của của phân tích phân cụm, điều này phụ thuộc vào mục
đích của phân cụm như: data reduction, “natural clusters”, “useful” clusters, outlier
detection [4].
Khác với việc phân lớp đối tượng, nhãn của lớp là chưa biết. Điều này xảy ra
thường xuyên với những cơ sở dữ liệu lớn, vì viêc gán nhãn lớp cho số lượng đối
tượng dữ liệu lớn là một quá trình tốn kém. Việc phân cụm rất có ích trong đưa ra cái

nhìn tổng quan trên toàn thể dữ liệu.
k-means là thuật toán rất quan trọng và được sử dụng phổ biến trong kỹ thuật
phân cụm. Tư tưởng chính của thuật toán k-means là tìm cách phân nhóm các đối
tượng đã cho vào K cụm (K là số các cụm được xác định trước, K nguyên dương) sao
cho tổng bình phương khoảng cách giữa các đối tượng đến tâm nhóm là nhỏ nhất.
Thuật toán k-means thực hiện qua các bước chính sau:
a) Chọn ngẫu nhiên K tâm cho K cụm. Mỗi cụm được đại diện bằng các tâm của
cụm.
b) Tính khoảng cách giữa các đối tượng đến K tâm (thường dùng khoảng cách
Euclidean).
c) Nhóm các đối tượng vào nhóm gần nhất.
d) Xác định lại tâm mới cho các nhóm.
e) Thực hiện lại bước b) cho đến khi không có sự thay đổi nhóm nào của các đối
tượng [3].
Hình Error! No text of specified style in document..4 mô tả thuật toán kmeans:

15


Bắt đầu

Số
cluster K

Tính tâm cụm
Không thay đổi?

Kết thúc

Tính khoảng

cách từ dữ liệu

Nhóm dữ liệu
dựa trên
khoảng cách
Hình Error! No text of specified style in document..4. Sơ đồ giải thuật toán K-means
Thuật toán k-means là một thuật toán đơn giản, đệ quy (lặp đi lặp lại nhiều lần)
nên chi phí tính toán sẽ lớn.
2.3. Thuật toán máy vector hỗ trợ (SVM)
Thực tế đặt ra nhu cầu là từ một cơ sở dữ liệu với nhiều thông tin ẩn con người
có thể trích rút ra các quyết định nghiệp vụ thông minh. Phân lớp và dự đoán là hai
dạng của phân tích dữ liệu nhằm trích rút ra một mô hình mô tả các lớp dữ liệu quan
trọng hay dự đoán xu hướng dữ liệu tương lai. Phân lớp dự đoán giá trị của những
nhãn xác định hay những giá trị rời rạc, có nghĩa là phân lớp thao tác với những đối
tượng dữ liệu mà có bộ giá trị là biết trước [8]. Trong khi đó, dự đoán lại xây dựng mô
hình với các hàm nhận giá trị liên tục. Ví dụ mô hình phân lớp dự báo thời tiết có thể
cho biết thời tiết ngày mai là mưa, hay nắng dựa vào những thông số về độ ẩm, sức
gió, nhiệt độ,… của ngày hôm nay và các ngày trước đó. Hay nhờ các luật về xu
hướng mua hàng của khách hàng trong siêu thị, các nhân viên kinh doanh có thể ra
những quyết sách đúng đắn về lượng mặt hàng cũng như chủng loại bày bán… Một
mô hình dự đoán có thể dự đoán được lượng tiền tiêu dùng của các khách hàng tiềm
năng dựa trên những thông tin về thu nhập và nghề nghiệp của khách hàng.
16


Trong những năm qua, phân lớp dữ liệu đã thu hút sự quan tâm các nhà nghiên
cứu trong nhiều lĩnh vực khác nhau như học máy, chuyên gia hệ thống, thống kê ...
Công nghệ này cũng ứng dụng trong nhiều lĩnh vực khác nhau như: thương mại, nhà
băng, quảng cáo, nghiên cứu thị trường, bảo hiểm, y tế, giáo dục... Phần lớn các thuật
toán ra đời trước đều sử dụng cơ chế dữ liệu cư trú trong bộ nhớ, thường thao tác với

lượng dữ liệu nhỏ. Một số thuật toán ra đời sau này đã sử dụng kỹ thuật cư trú trên đĩa
cải thiện đáng kể khả năng mở rộng của thuật toán với những tập dữ liệu lớn lên tới
hàng tỉ bản ghi.
Bài toán phân lớp dữ liệu là quá trình phân lớp một đối tượng dữ liệu vào một
hay nhiều lớp cho trước nhờ một mô hình phân lớp mà mô hình này được xây dựng
dựa trên một tập hợp các đối tượng dữ liệu đã được gán nhãn từ trước gọi là tập dữ
liệu học (tập huấn luyện). Quá trình phân lớp còn được gọi là quá trình gán nhãn cho
các đối tượng dữ liệu [8].
Như vậy, nhiệm vụ của bài toán phân lớp dữ liệu là cần xây dựng mô hình
phân lớp để khi có một dữ liệu mới vào thì mô hình phân lớp sẽ cho biết dữ liệu đó
thuộc lớp nào.
Có nhiều bài toán phân lớp dữ liệu, như phân lớp nhị phân, phân lớp đa lớp,
phân lớp đa trị, … Phân lớp nhị phân là quá trình tiến hành việc phân lớp dữ liệu vào
một trong hai lớp khác nhau dựa vào việc dữ liệu đó có hay không một số đặc tính
theo quy định của bộ phân lớp. Phân lớp đa lớp là quá trình phân lớp với số lượng lớp
lớn hơn hai. Như vậy, tập hợp dữ liệu trong miền xem xét được phân chia thành nhiều
lớp chứ không đơn thuần chỉ là hai lớp như trong bài toán phân lớp nhị phân. Về bản
chất, bài toán phân lớp nhị phân là trường hợp riêng của bài toán phân lớp đa lớp.
Quá trình phân lớp dữ liệu gồm hai bước:
 Bước thứ nhất là quá trình học:
Quá trình học nhằm xây dựng một mô hình mô tả một tập các lớp dữ liệu hay
các khái niệm định trước. Đầu vào của quá trình này là một tập dữ liệu có cấu trúc
được mô tả bằng các thuộc tính và được tạo ra từ tập các bộ giá trị của các thuộc tính
đó. Mỗi bộ giá trị được gọi chung là một phần tử dữ liệu, có thể là các mẫu, ví dụ, đối
tượng, bản ghi hay trường hợp. Trong tập dữ liệu này, mỗi phần tử dữ liệu được giả sử
thuộc về một lớp định trước, lớp ở đây là giá trị của một thuộc tính được chọn làm
thuộc tính gán nhãn lớp hay thuộc tính phân lớp. Đầu ra của bước này thường là các
quy tắc phân lớp dưới dạng luật dạng if-then, cây quyết định, công thức logic, hay
mạng nơron [8].


17


Hình Error! No text of specified style in document..5 mô tả quá trình xây
dựng mô hình phân lớp:

Hình Error! No text of specified style in document..5. Quá trình xây dựng mô hình
phân lớp
 Bước thứ hai là quá trình phân lớp:
Phân lớp là dùng mô hình đã xây dựng ở bước trước (quá trình học) để phân lớp
dữ liệu mới. Trước tiên độ chính xác mang tính chất dự đoán của mô hình phân lớp
vừa tạo ra được ước lượng. Holdout là một kỹ thuật đơn giản để ước lượng độ chính
xác đó. Kỹ thuật này sử dụng một tập dữ liệu kiểm tra với các mẫu đã được gán nhãn
lớp. Các mẫu này được chọn ngẫu nhiên và độc lập với các mẫu trong tập dữ liệu đào
tạo. Độ chính xác của mô hình trên tập dữ liệu kiểm tra đã đưa là tỉ lệ phần trăm các
các mẫu trong tập dữ liệu kiểm tra được mô hình phân lớp đúng (so với thực tế). Nếu
độ chính xác của mô hình được ước lượng dựa trên tập dữ liệu đào tạo thì kết quả thu
được là rất khả quan vì mô hình luôn có xu hướng “quá vừa” dữ liệu. Quá vừa dữ liệu
là hiện tượng kết quả phân lớp trùng khít với dữ liệu thực tế vì quá trình xây dựng mô
hình phân lớp từ tập dữ liệu đào tạo có thể đã kết hợp những đặc điểm riêng biệt của
tập dữ liệu đó. Do vậy cần sử dụng một tập dữ liệu kiểm tra độc lập với tập dữ liệu đào
tạo. Nếu độ chính xác của mô hình là chấp nhận được, thì mô hình được sử dụng để
phân lớp những dữ liệu tương lai, hoặc những dữ liệu mà giá trị của thuộc tính phân
lớp là chưa biết [9].

18


Hình Error! No text of specified style in document..6 thể hiện ước lượng độ
chính xác của mô hình phân lớp:


Máy phân
lớp (Mô
hình)

Dữ liệu
kiểm tra

Tuổi
27
34
66
44

Loại xe
Sports
Family
Family
Sports

Rủi ro
High
Low
High
High

Rủi ro
High
Low
High

High

Hình Error! No text of specified style in document..6. Ước lượng độ chính xác của
mô hình.
Hình Error! No text of specified style in document..7 thể hiện phân lớp dữ liệu
mới:

Máy phân
lớp (Mô
hình)

Dữ liệu
mới

Tuổi
27
34
55
34

Loại xe Rủi ro
Sports
Minivan
Family
Sports

Rủi ro
High
Low
Low

High

Hình Error! No text of specified style in document..7. Phân lớp dữ liệu mới
Máy vector hỗ trợ (SVM):

19


 Là phương pháp dựa trên nền tảng của lý thuyết thống kê nên có một nền tảng
toán học chặt chẽ để đảm bảo rằng kết quả tìm được là chính xác.
 Là thuật toán học giám sát được sử dụng cho phân lớp dữ liệu.
 Là 1 phương pháp thử nghiệm, là 1 trong những phương pháp mạnh và chính
xác nhất trong số các thuật toán nổi tiếng về phân lớp dữ liệu.
 SVM là một phương pháp có tính tổng quát cao nên có thể được áp dụng cho
nhiều loại bài toán nhận dạng và phân loại [9].
Hình Error! No text of specified style in document..8 minh họa về tìm biên
lớn nhất của thuật toán SVM:

Hình Error! No text of specified style in document..8. Thuật toán SVM
Ý tưởng của phương pháp SVM là cho trước một tập huấn luyện, được biểu
diễn trong không gian vector, trong đó mỗi tài liệu là một điểm, phương pháp này tìm
ra một siêu phẳng quyết định tốt nhất có thể chia các điểm trên không gian này thành
hai lớp riêng biệt tương ứng là lớp + và lớp o. Một siêu phẳng là một hàm tương tự
như phương trình đường thẳng y = ax + b. Trong thực tế, nếu ta cần phân lớp tập dữ
liệu chỉ gồm 2 tính năng, siêu phẳng lúc này chính là một đường thẳng. Chất lượng của
siêu phẳng này được quyết định bởi khoảng cách (gọi là biên) của điểm dữ liệu gần
nhất của mỗi lớp đến mặt phẳng này. Khi đó, khoảng cách biên càng lớn thì mặt phẳng
quyết định càng tốt, đồng thời việc phân loại càng chính xác. Mục đích của phương
pháp SVM là tìm được khoảng cách biên lớn nhất [11].
20



Thuật toán SVM được thực hiện qua các bước sau:
 Chuyển dữ liệu đầu vào về dạng số của SVM.
 Tiền xử lý dữ liệu: Thực hiện biến đổi dữ liệu phù hợp cho quá trình tính toán,
tránh các số quá lớn mô tả các thuộc tính. Nên co giãn dữ liệu để chuyển về
đoạn [-1, 1] hoặc [0, 1].
 Chọn hàm hạt nhân: Lựa chọn hàm hạt nhân phù hợp tương ứng cho từng bài
toán cụ thể để đạt được độ chính xác cao trong quá trình phân lớp.
 Thực hiện việc kiểm tra chéo để xác định các tham số cho ứng dụng. Điều này
cũng quyết định đến tính chính xác của quá trình phân lớp.
 Sử dụng các tham số cho việc huấn luyện với tập mẫu. Trong quá trình huấn
luyện sẽ sử dụng thuật toán tối ưu hóa khoảng cách giữa các siêu phẳng trong
quá trình phân lớp, xác định hàm phân lớp trong không gian đặc trưng nhờ việc
ánh xạ dữ liệu vào không gian đặc trưng bằng cách mô tả hạt nhân, giải quyết
cho cả hai trường hợp dữ liệu là phân tách và không phân tách tuyến tính trong
không gian đặc trưng.
 Kiểm thử tập dữ liệu Kiểm tra [8].
2.4. Thuật toán cây quyết định
Trong lĩnh vực học máy, cây quyết định là một kiểu mô hình dự báo, nghĩa là
một ánh xạ từ các quan sát về một sự vật/hiện tượng tới các kết luận về giá trị mục tiêu
của sự vật/hiện tượng. Mỗi một nút trong tương ứng với một biến; đường nối giữa nó
với nút con của nó thể hiện một giá trị cụ thể cho biến đó. Mỗi nút lá đại diện cho giá
trị dự đoán của biến mục tiêu, cho trước các giá trị của các biến được biểu diễn bởi
đường đi từ nút gốc tới nút lá đó. Kỹ thuật học máy dùng trong cây quyết định được
gọi là học bằng cây quyết định, hay chỉ gọi với cái tên ngắn gọn là cây quyết định [10].
Cây quyết định cũng nằm trong bài toán phân lớp (học có giám sát). Để xây
dựng cây quyết định cũng cần phải có 2 bước là “Học” và “Phân lớp”.
Học bằng cây quyết định cũng là một phương pháp thông dụng trong khai phá
dữ liệu. Khi đó, cây quyết định mô tả một cấu trúc cây, trong đó, các lá đại diện cho

các phân loại còn cành đại diện cho các kết hợp của các thuộc tính dẫn tới phân loại
đó. Một cây quyết định có thể được học bằng cách chia tập hợp nguồn thành các tập
con dựa theo một kiểm tra giá trị thuộc tính . Quá trình này được lặp lại một cách đệ
qui cho mỗi tập con dẫn xuất. Quá trình đệ qui hoàn thành khi không thể tiếp tục thực
hiện việc chia tách được nữa, hay khi một phân loại đơn có thể áp dụng cho từng phần
tử của tập con dẫn xuất. Một bộ phân loại rừng ngẫu nhiên sử dụng một số cây quyết
định để có thể cải thiện tỉ lệ phân loại [4].
Cây quyết định cũng là một phương tiện có tính mô tả dành cho việc tính toán
các xác suất có điều kiện.
21


Hình Error! No text of specified style in document..9 thể hiện một ví dụ phân
lớp sử dụng cây quyết định:

Hình Error! No text of specified style in document..9. Ví dụ về cây quyết định
Trong cây quyết định:
 Gốc: là node trên cùng của cây
 Node trong: biểu diễn một kiểm tra trên một thuộc tính đơn (hình chữ
nhật)
 Nhánh: biểu diễn các kết quả của kiểm tra trên node trong (mũi tên)
 Node lá: biểu diễn lớp hay sự phân phối lớp (hình tròn)
Để phân lớp mẫu dữ liệu chưa biết, giá trị các thuộc tính của mẫu được đưa vào
kiểm tra trên cây quyết định. Mỗi mẫu tương ứng có một đường đi từ gốc đến lá và lá
biểu diễn dự đoán giá trị phân lớp mẫu đó [10].
Trong khóa luận này, cây quyết định được sử dụng để xử lý thuộc tính liên tục
như các giá trị dữ liệu của cảm biến gia tốc ba chiều x, y, z. Trong khi đó, với thuộc
tính liên tục (thuộc tính dạng số) thì tập giá trị là không xác định trước. Chính vì vậy,
trong quá trình phát triển cây, cần sử dụng kiểm tra dạng nhị phân: value(A) ≤ θ. Với θ
là hằng số ngưỡng được lần lượt xác định dựa trên từng giá trị riêng biệt hay từng cặp

giá trị liền nhau (theo thứ tự đã sắp xếp) của thuộc tính liên tục đang xem xét trong tập
dữ liệu đào tạo. Điều đó có nghĩa là nếu thuộc tính liên tục A trong tập dữ liệu đào tạo
có d giá trị phân biệt thì cần thực hiện d-1 lần kiểm tra value(A) ≤ θ-i với i = 1..d-1 để
tìm ra ngưỡng tốt nhất tương ứng với thuộc tính đó.
22


Ưu điểm của cây quyết đinh:
 Dễ dàng chuyển đổi:
Cây quyết định có khả năng sinh ra các quy tắc có thể chuyển đổi được sang
dạng tiếng Anh, hoặc các câu lệnh SQL. Đây là ưu điểm nổi bật của kỹ thuật này.
Thậm chí với những tập dữ liệu lớn khiến cho hình dáng cây quyết định lớn và phức
tạp, việc đi theo bất cứ đường nào trên cây là dễ dàng theo nghĩa phổ biến và rõ ràng.
Do vậy sự giải thích cho bất cứ một sự phân lớp hay dự đoán nào đều tương đối minh
bạch [10].
 Khả năng thực thi trong những lĩnh vực hướng quy tắc:
Điều này có nghe có vẻ hiển nhiên, nhưng quy tắc quy nạp nói chung và cây
quyết định nói riêng là lựa chọn hoàn hảo cho những lĩnh vực thực sự là các quy tắc.
Rất nhiều lĩnh vực từ di truyền tới các quá trình công nghiệp thực sự chứa các quy tắc
ẩn, không rõ ràng do khá phức tạp và tối nghĩa bởi những dữ liệu lỗi. Cây quyết định
là một sự lựa chọn tự nhiên khi chúng ta nghi ngờ sự tồn tại của các quy tắc ẩn, không
rõ ràng.
 Dễ dàng tính toán trong khi phân lớp:
Mặc dù như chúng ta đã biết, cây quyết định có thể chứa nhiều định dạng, nhưng trong
thực tế, các thuật toán sử dụng để tạo ra cây quyết định thường tạo ra những cây với số
phân nhánh thấp và các kiểm tra đơn giản tại từng node. Những kiểm tra điển hình là:
so sánh số, xem xét phần tử của một tập hợp, và các phép nối đơn giản. Khi thực thi
trên máy tính, những kiểm tra này chuyển thành các toán hàm logic và số nguyên là
những toán hạng thực thi nhanh và không đắt. Đây là một ưu điểm quan trọng bởi
trong môi trường thương mại, các mô hình dự đoán thường được sử dụng để phân lớp

hàng triệu thậm chí hàng tỉ bản ghi.
 Khả năng xử lý với cả thuộc tính liên tục và thuộc tính rời rạc:
Cây quyết định xử lý “tốt” như nhau với thuộc tính liên tục và thuộc tính rời
rạc. Tuy rằng với thuộc tính liên tục cần nhiều tài nguyên tính toán hơn. Những thuộc
tính rời rạc đã từng gây ra những vấn đề với mạng neural và các kỹ thuật thống kê lại
thực sự dễ dàng thao tác với các tiêu chuẩn phân chia trên cây quyết định: mỗi nhánh
tương ứng với từng phân tách tập dữ liệu theo giá trị của thuộc tính được chọn để phát
triển tại node đó. Các thuộc tính liên tục cũng dễ dàng phân chia bằng việc chọn ra
một số gọi là ngưỡng trong tập các giá trị đã sắp xếp của thuộc tính đó. Sau khi chọn
được ngưỡng tốt nhất, tập dữ liệu phân chia theo test nhị phân của ngưỡng đó.
 Thể hiện rõ ràng những thuộc tính tốt nhất:
Các thuật toán xây dựng cây quyết định đưa ra thuộc tính mà phân chia tốt
nhất tập dữ liệu đào tạo bắt đầu từ node gốc của cây. Từ đó có thể thấy những thuộc
tính nào là quan trọng nhất cho việc dự đoán hay phân lớp.
Nhược điểm cây quyết định:
23


×