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

NGHIÊN CỨU TÌM HIỂU CÁC THUẬT TOÁN HỌC SÂU, ỨNG DỤNG VÀO HỆ THỐNG PHÂN LOẠI BỆNH TRÊN CÂY KHOAI TÂY DỰA VÀO HÌNH ẢNH

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 (3.34 MB, 75 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
======* * * ======

ĐỒ ÁN CHUYÊN NGÀNH
NGÀNH: KHOA HỌC MÁY TÍNH
ĐỀ TÀI: NGHIÊN CỨU TÌM HIỂU CÁC THUẬT TỐN HỌC SÂU,
ỨNG DỤNG VÀO HỆ THỐNG PHÂN LOẠI BỆNH TRÊN CÂY KHOAI
TÂY DỰA VÀO HÌNH ẢNH

GVHD:

TS. Nguyễn Mạnh Cường

Lớp:

ĐỒ ÁN CHUYÊN NGÀNH – K15

Nhóm:

18

Thành viên:

1. Hồng Chí Bằng
2. Trương Mạnh Hùng
3. Bùi Hải Linh - 2020606348

Năm- 2023



MỤC LỤC
-

LỜI NÓI ĐẦU ...................................................................................... 3

-

DANH MỤC CÁC CHỮ VIẾT TẮT................................................... 4

-

DANH MỤC BẢNG BIỂU .................................................................. 5

-

DANH MỤC HÌNH ẢNH .................................................................... 6

CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI ................................................ 9
1.1.

Tên đề tài ................................................................................... 12

1.2.

Lý do chọn đề tài ....................................................................... 12

1.3.

Mục tiêu của đề tài .................................................................... 13


1.3.1. Mục tiêu tổng quát ................................................................ 13
1.3.2. Mục tiêu cụ thể ..................................................................... 13
1.4.

Đối tượng và phạm vi nghiên cứu............................................. 13

1.5.

Kết quả dự kiến đạt được .......................................................... 14

1.6.

Tổng kết chương 1 .................................................................... 14

CHƯƠNG 2. BÀI TOÁN PHÂN LOẠI BỆNH TRÊN CÂY KHOAI
TÂY VÀ MƠ HÌNH MẠNG NO-RON CƠ BẢN ......................................... 15
2.1.

Bài toán phân loại bệnh trên cây khoai tây ............................... 15

2.2.

Tìm hiểu học có giám sát .......................................................... 16

2.2.1. Hồi quy.................................................................................. 16
2.2.2. Phân loại học có giám sát ..................................................... 21
2.3.

Mơ hình mạng neuron cơ bản ................................................... 25


2.3.1. Perceptron cơ bản ................................................................. 25
2.3.2. Các hàm kích hoạt................................................................. 27
CHƯƠNG 3. CƠ SỞ LÝ THUYẾT VÀ PHƯƠNG PHÁP TRIỂN KHAI
34
Năm- 2023


3.1.

Mạng nơron tích chập (Convolutional Neural Network).......... 34

3.1.1. Feature (Đặc trưng) ............................................................... 34
3.1.2. Convolutional Layer (lớp tích chập)..................................... 35
3.1.3. Pooling Layer (lớp gộp) ........................................................ 38
3.1.4. Fully Connected Layer (lớp kết nối đầy đủ) ......................... 39
3.1.5. Mơ hình mạng CNN hồn chỉnh ........................................... 41
3.2.

Áp dụng vào bài toán ................................................................ 43

3.3.

Tăng cường dữ liệu ................................................................... 45

3.4.

Kết quả thí nghiệm .................................................................... 50

3.5.


Các thuật toán tối ưu sử dụng ................................................... 55

3.5.1. Tối ưu hàm loss (Multi – Class Cross – Entropy Loss)........ 55
3.5.2. Thuật toán tối ưu Adam (Multi – Class Cross – Entropy Loss)
56
3.6.

Một số thư viện sử dụng............................................................ 60

3.6.1. TensorFlow ........................................................................... 60
3.6.2. Keras ..................................................................................... 61
CHƯƠNG 4. CÀI ĐẶT HỆ THỐNG VÀ MỘT SỐ KẾT QUẢ ........... 62
4.1.

Bộ dữ liệu sử dụng .................................................................... 62

4.2.

Mơ hình bài tốn ....................................................................... 63

4.2.1. Cài đặt thư viện cần thiết ...................................................... 63
4.2.2. Xử lý dữ liệu ......................................................................... 63
4.2.3. Thiết lập mơ hình .................................................................. 65
4.2.4. Tiến hành training ................................................................. 67
4.2.5. Chạy thử trên tập test ............................................................ 69
2


4.2.6. Giao diện hệ thống hoàn thiện .............................................. 71
-


KẾT LUẬN ........................................................................................ 73

-

TÀI LIỆU THAM KHẢO .................................................................. 74

3


DANH MỤC CÁC CHỮ VIẾT TẮT
STT

Từ viết tắt

Giải thích

1

AI

Artificial Intelligence

2

CNN

Convolution Neural Network

3


CNTT

Công Nghệ Thông Tin

4

DL

Deep Learning

5

ML

Machine Learning

6

TF

TensorFlow

7

H

Height

8


W

Width

9

D

Deep

10

CNTK

CognitiveToolkit

4


DANH MỤC BẢNG BIỂU
Bảng 1.1 Mục tiêu cụ thể (nguyên tắc SMART)

13

Bảng 2.1 Dữ liệu và thông số giá nhà

17

Bảng 2.2 Dữ liệu về chỉ số đường huyết của các bệnh nhân


22

Bảng 2.3 Bảng đối chiếu y và y ̂ của mơ hình luận lý

24

5


DANH MỤC HÌNH ẢNH
Hình 2.1 Học có giám sát

16

Hình 2.2 Biểu đồ phân tán hồi quy tuyến tính

18

Hình 2.3 Hyperplane ở đồ thị hai chiều (hình I) và ba chiều (hình II)

19

Hình 2.4 Đồ thị hàm số phi tuyến tính (NonLinear Function)

19

Hình 2.5 Biểu đồ hồi quy đa thức (tương quan của cá qua từng độ tuổi) 20
Hình 2.6 Biểu đồ thể hiện chỉ số đường huyết bệnh tiểu đường


22

Hình 2.7 Biểu đồ phân loại các ca bệnh tiểu đường

23

Hình 2.8 Ma trận lỗi

24

Hình 2.9 Ma trận lỗi bài tốn phân loại nhị phân

25

Hình 2.10 Ảnh minh họa Neuron sinh học

27

Hình 2.11 Ảnh minh họa Perceptron

27

Hình 2.12 Hàm bước nhị phân (Binary step function. Hard limit function)
28
Hình 2.13 Hàm sigmoid (Sigmoid fuction)

29

Hình 2.14 Hàm sigmoid lưỡng cực (Bipolar sigmoid function)


30

Hình 2.15 Hàm Tanh

31

Hình 2.16 Hàm ReLU

32

Hình 3.1 Minh hoạ một mạng nơ-ron tích chập

34

Hình 3.2 Phép tính tích chập

36

Hình 3.3 Ma trận X khi thêm viền 0 bên ngồi

37

Hình 3.4 stride=1, padding=1

37

Hình 3.5 stride=2, padding=1

38


Hình 3.6 Phân loại các lớp Pooling

39

Hình 3.7 Làm phẳng ma trận các features

40

Hình 3.8 Lớp kết nối đầy đủ

40

Hình 3.9 Một mơ hình phân loại động vật điển hình bằng CNN

41

Hình 3.10 Mơ hình mạng CNN tổng quan

42

Hình 3.11 Mơ hình phương pháp học sâu được đề xuất
6

43


Hình 3.12 Lớp mơ tả chi tiết của mơ hình

44


Hình 3.13 Hàm mật độ xác suất cho nhiễu Gaussian

47

Hình 3.14 Hình ảnh gốc

48

Hình 3.15 Hình ảnh phản chiếu quanh trục X

48

Hình 3.16 Hình ảnh phản chiếu quanh trục Y

48

Hình 3.17 Hình ảnh phản chiếu quanh trục XY

48

Hình 3.18 Áp dụng nhiễu Gaussian với ảnh gốc

49

Hình 3.19 Ảnh được phóng to từ [0,0] thành [150,150]

49

Hình 3.20 Ảnh được phóng to từ [50,50] thành [200,200]


49

Hình 3.21 Ảnh được phóng to từ [0,0] thành [150,150] và phản chiếu qua
trục X

49

Hình 3.22 Ảnh được phóng to từ [0,0] thành [150,150] và phản chiếu qua
trục Y

50

Hình 3.23 Ảnh được phóng to từ [0,0] thành [150,150] và phản chiếu qua
trục XY

50

Hình 3.24 Ảnh được phóng to từ [0,0] thành [150,150] và nhiễu Gaussian
được áp dụng

50

Hình 3.25 Ma trận nhầm lẫn cho một trong các thử nghiệm trên bộ dữ liệu
gốc (khơng tăng cường)

51

Hình 3.26 Ma trận nhầm lẫn cho một trong các thử nghiệm trên bộ dữ liệu
tăng cường


52

Hình 3.27 Độ chính xác của User’s Accuracy trên bộ dữ liệu gốc

53

Hình 3.28 Độ chính xác của User’s Accuracy trên bộ dữ liệu tăng cường
53
Hình 3.29 Các chỉ số hiệu suất trên bộ dữ liệu gốc và trên bộ dữ liệu tăng
cường

54

Hình 3.30 Mơ tả Thuật tốn tối ưu hàm Loss

56

Hình 3.31 Biểu đồ áp dụng Gradient Descent

57

Hình 3.32 Mơ tả q trình SGD

57
7


Hình 3.33 So sánh sử dụng GD và GD with momentum

58


Hình 3.34 Biểu đồ áp dụng GD with Momentum

58

Hình 3.35 Ứng dụng thuật tốn Adam với Heavy Ball

60

Hình 4.1 Kaggle

85

Hình 5.2 Tập dữ liệu huấn luyện

87

Hình 4.3 Tập dữ liệu xác thực

87

Hình 4.4 Tập dữ liệu kiểm tra

87

Hình 4.5 Thiết lập model dữ liệu

88

Hình 4.6 Sử dụng Dropout chống Overfitting


89

Hình 4.7 Sử dụng hàm Adam

90

Hình 4.8 Tiến hành train dữ liệu

90

Hình 4.9 Tiến hành đánh giá mơ hình

90

Hình 4.10 Các đường cong mất mát và chính xác

91

Hình 4.11 Hàm dự đốn

92

Hình 4.12 Chạy trên tập test

92

Hình 4.13 Kết quả khi chạy thử trên tập test

93


Hình 4.16 Màn hình choose file

95

Hình 4.17 Màn hình sau khi tải ảnh lên

96

Hình 4.18 Màn hình kết quả phân loại

96
0

8


LỜI CẢM ƠN
Để hoàn thành được đồ án tốt nghiệp này, em xin được gửi lời cảm ơn chân
thành đến các thầy cô trong khoa Công nghệ thông tin Trường Đại học Cơng
Nghiệp Hà Nội đã tận tình giảng dạy và trang bị kiến thức cho em trong suốt
thời gian em học tập tại trường. Thầy giáo hướng dẫn đề tài – TS.Nguyễn
Mạnh Cường, giảng viên Khoa Công nghệ Thông tin Trường Đại học Công
Nghiệp Hà Nội – đã tận tụy hết lòng giúp đỡ, hướng dẫn, chỉ dẫn tận tình để
giúp em hồn thành được đồ án.
Trong q trình làm bài chắc chắn khó tránh khỏi những thiếu sót. Do đó
nhóm kính mong nhận được những lời góp ý của thầy/cơ để bản báo cáo này
ngày càng hồn thiện hơn.
Em xin chân thành cảm ơn !


9


LỜI NĨI ĐẦU
Ngày nay, việc ứng dụng cơng nghệ thơng tin vào việc phân loại đã phát
triển mạnh ở các nước tiên tiến trên thế giới đặt biệt ở các nước chuyển đổi số
mạnh mẽ như Mỹ, Trung Quốc. Trong thời gian gần đây đã bùng nổ về các
công nghệ học máy, học sâu ứng dụng cho các bài toán thực tiễn. Góp phần
nâng cao năng suất một cách hiệu quả và liên tục trên diện rộng
Do đó việc phân loại đối tượng đang là một trong những xu thế mới hiện
nay, đặc biệt là nhu cầu về phân loại bệnh trên các loại cây trồng một cách
nhanh chóng và hiệu quả,… Chính vì vậy, em đã chọn đề tài luận văn “Nghiên
cứu tìm hiểu các thuật tốn học sâu, ứng dụng vào hệ thống phân loại bệnh trên
cây khoai tây dựa vào hình ảnh” góp phần thực hiện việc phân loại, chuẩn đốn
bệnh nhanh chóng và chính xác.
Báo cáo được chia thành 4 chương như sau:
Chương 1. Tổng quan đề tài: Nội dung của chương này nếu được tên đề tài của
nhóm, lý do chọn đề tài và mục tiêu của đề tài và nhóm mong muốn
Chương 2. Bài tốn phân loại bệnh trên cây khoai tây và mơ hình mạng no-ron
cơ bản: Trong nội dung của chương này, nhóm tìm hiểu bài tốn phân loại bệnh
trên cây khoai tây, tìm hiểu học có giám sát bao gồm( hồi quy và phân loại có
giám sát), tìm hiểu về mơ hình mạng no-ron cơ bản bao gồm(Perceptron cơ
bản, các hàm kích hoạt)
Chương 3. Cơ sở lí thuyết và phương pháp triển khai: Trong nội dung chương
này, nhóm chúng em tìm hiểu về mạng nơ-ron tích chập, từ đó áp dụng vào bài
tốn, tăng cường dữ liệu và kết quả thí nghiệm.
Chương 4. Xây dựng hệ thống và một số kết quả : Trong nội dung chương 4
này, nhóm chúng em nghiên cứu về các bộ dữ liệu được sử dụng, mơ hình của
bài tốn bao gồm( cài đặt các thư viện cần thiết, xử lí dữ liệu, thiết lập mơ hình,
tiến hành training, chạy thử trên tập test và dao diện của hẹ thống.

10


Hi vọng thông qua 4 chương của báo cáo này, nhóm sẽ làm rõ được bài
Tốn phân loại bệnh của cây khoai tây dựa vào hình ảnh, một số kỹ thuật để
giải quyết và đặc biệt là kỹ thuật mạng nơ-ron cơ bản.

11


CHƯƠNG 1.
1.1.

TỔNG QUAN VỀ ĐỀ TÀI

Tên đề tài
Nghiên cứu tìm hiểu các thuật toán học sâu, ứng dụng vào hệ thống phân

loại bệnh trên cây khoai tây dựa vào hình ảnh
1.2.

Lý do chọn đề tài
Hiện nay ở các nước đang phát triển nói chung và nước ta nói riêng ngành

nơng nghiệp đang là một trong những ngành sản xuất chủ yếu, nhưng chưa
được áp dụng nhiều công nghệ. Trong nông nghiệp, sâu bệnh luôn là mối đe
dọa nghiêm trọng đối với sự tăng trưởng của cây trồng và trong việc lưu trữ các
sản phẩm nơng nghiệp. Nếu việc phán đốn sâu bệnh chỉ dựa vào nhận dạng
thủ công bằng mắt thường thì phải có thời gian quan sát dài và khơng có biện
pháp phịng ngừa và xử lý kịp thời, làm ảnh hưởng đến năng suất và sản lượng.

Khoa học công nghệ đã và đang phát triển mạnh mẽ, việc áp dụng các thành
tựu và phát minh kỹ thuật vào đời sống trở nên phổ biến và mang lại nhiều dấu
hiệu tích cực cho con người. Những năm gần đây, ta nhận thấy trí tuệ nhân tạo
đang dần được biết đến rộng rãi và được phát triển mạnh mẽ như một bằng
chứng của cuộc cách mạng công nghiệp lần thứ tư (4.0). Trong cuộc cách mạng
công nghiệp lần thứ tư, ta đã chứng kiến nhiều sự đột phá trong lĩnh vực khoa
học máy tính, đặc biệt là lĩnh vực thị giác máy tính. Sự phát triển vượt bậc của
các phương pháp Học sâu (DL - Deep Learning) giúp cho thị giác máy tính đạt
được các thành tựu đáng kể trong lĩnh vực phân loại, nhận dạng ảnh. Thông
qua việc sử dụng hình ảnh, hình ảnh của sâu bệnh trên cây nơng nghiệp dễ dàng
được phân loại. Vì vậy, đề tài “Nghiên cứu tìm hiểu các thuật tốn học sâu,
ứng dụng vào hệ thống phân loại bệnh trên cây khoai tây dựa vào hình
ảnh” được đưa ra với hy vọng bước đầu có thể áp dụng mơ hình học sâu vào
ngành nông nghiệp khoai tây để phân loại bệnh trên khoai tây dựa vào hình ảnh

12


thay cho con người nhằm phán đoán bệnh trên cây khoai tây sớm hơn để có
phương pháp phịng ngừa kịp thời tránh ảnh hưởng đến năng suất cây trồng.
1.3.

Mục tiêu của đề tài

1.3.1. Mục tiêu tổng quát
Xây dựng một hệ thống bằng tiếng Việt, cho phép phân loại bệnh cây khoai
tây từ các ảnh thư viện sử dụng từ nhũng mơ hình huấn luyện đã có sẵn và tối
ưu, dự đoán tên bệnh mà cây khoai tây đang gặp phải
1.3.2. Mục tiêu cụ thể
Mục tiêu cụ thể của đề tài được trình bày trong Bảng 1, theo theo nguyên

tắc SMART [6]:
Tìm hiểu các thuật tốn học sâu, áp dụng thuật tốn
trên tập dữ liệu đã thu thập
Thu thập hình ảnh và thông tin của lá cây khoai tây,
với mỗi loại bệnh thì thu thập khoảng trên 1000 bức
ảnh để đưa vào q trình huấn luyện, sau đó thực hiện
tiền xử lý hình ảnh để kết quả dự đốn cao hơn 85%
Ứng dụng được xây dựng và có thể triển khai tại
Tính khả thi
phịng nơng nghiệp của các địa phương có trồng khoai
(Achievable)
tây để thử nghiệm phân loại bệnh cho cây khoai tây
một cách chính xác và kịp thời.
Phạm vi nghiên cứu của đề tài này là phù hợp với trình
Tính thực tế
độ của người thực hiện cũng như là kết quả mà đề tài
(Realistic)
mang lại là phù hợp với tình hình thực tế hiện nay.
Đề tài sẽ hồn thành theo đúng tiến độ của đồ án tốt
Tính thời hạn
nghiệp mà trường Đại học Công Nghiệp Hà Nội đã
(Timely)
công bố.
Bảng 1.1 Mục tiêu cụ thể (nguyên tắc SMART)

Tính cụ thể
(Specific)
Tính đo lường
(Measurable)


1.4.

Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của đề tài là phương pháp học sâu và ứng dụng phân

loại bệnh cây khoai tây từ hình ảnh.
Đề tài là sự nghiên cứu đánh giá, tuy nhiên không ở mức cao nhất do còn
hạn chế về kiến thức, nhân lực và giới hạn phần cứng. Đồ án chỉ tập trung vào
13


việc hồn thiện 2 phần, đó là phân loại bệnh trên cây khoai tây dựa trên hình
ảnh đầu vào và thiết kế giao diện đơn giản để người dùng có thể dễ dàng sử
dụng. Đề tài tập trung nhiều nhất vào việc đảm bảo chức năng phân loại bệnh
cây khoai tây dựa vào hình ảnh chứ khơng q tập trung cải tiến các giải thuật
học máy cũng như xây dựng và tối ưu các mơ hình.
1.5.

Kết quả dự kiến đạt được
- Thiết kế và xây dựng giao diện hệ thống đơn giản để người dùng dễ dàng
sử dụng.

1.6.

Tổng kết chương 1
Trong chương này em đã trình bày những hướng cơ bản trong nghiên cứu

để tìm hiểu về đề tài. Em tìm hiểu các nội dung về lý do chọn đề tài, mục tiêu
của đề tài, đối tượng và phạm vi nghiên cứu từ đó tìm ra hướng để tìm hiểu và
hoàn thành đề tài.


14


CHƯƠNG 2.

BÀI TOÁN PHÂN LOẠI BỆNH TRÊN CÂY

KHOAI TÂY VÀ MƠ HÌNH MẠNG NO-RON CƠ BẢN
2.1.

Bài tốn phân loại bệnh trên cây khoai tây
Phân loại bệnh trên cây khoai tây là một bài tốn điển hình của phân lớp

trong trí tuệ nhân tạo. Phân loại bệnh cây khoai tây là bài tốn thuộc nhóm học
có giám sát (Supervised Learning) trong Học máy. Bài tốn u cầu dữ liệu cần
có nhãn (label). Mơ hình sẽ học từ dữ liệu có nhãn đó, sau đó được dùng để dự
đốn nhãn cho các dữ liệu mới mà mơ hình chưa gặp.
Bài tốn đặt ra ở đây là với mỗi một mẫu dữ liệu dạng hình ảnh bệnh trên
cây bất kỳ, ngẫu nhiên, sau đó qua máy học ta có thể phân loại được loại bệnh
mà ảnh chụp được theo các loại cho trước. Trong bài tốn, chúng ta sẽ từ từ xây
dựng mơ hình mạng neuron cơ bản và kiến trúc mạng CNN để phát hiện bệnh
trên cây. Các thể loại bệnh cho trước bao gồm:
- Potato Early Blight: Bệnh cháy lá sớm ở cây khoai tây
- Potato Late Blight: Bệnh mốc sương cây khoai tây
- Potato Healthy: Cây khoai tây khỏe mạnh
Với bài toán phân loại bệnh trên cây khoai tây chúng ta sử dụng các mơ
hình phổ biến như mơ hình Mạng neuron Perceptron đơn, Mạng neuron tích
chập CNN để giải quyết bài toán này.


15


2.2.

Tìm hiểu học có giám sát

Hình 2.1 Học có giám sát
2.2.1. Hồi quy
2.2.1.1.

Hồi quy tuyến tính

Hồi quy là một hình thức học trong Học máy với mục đích là tạo ra một mơ
hình dự đốn đầu ra là các giá trị liên tục, chẳng hạn giá cả, số lượng, khối
lượng hoặc các giá trị vô hướng khác. Hồi quy cho thấy được mối quan hệ giữa
các biến trong dữ liệu (đặc trưng) mà chúng ta cần quan sát và biến mà chúng
ta cần dự đốn (nhãn). Trong mơ hình này, một tập dữ liệu cần phải được gắn
nhãn. Tập dữ liệu sau đó được chia thành hai phần:
● Tập dữ liệu huấn luyện (training dataset): Dữ liệu sử dụng trong mơ
hình nhằm xác định một hàm số biểu thị mối quan hệ giữa các biến
đặc trưng và các nhãn.
● Tập dữ liệu thẩm định (validation dataset)/ kiểm tra (test dataset): Dữ
liệu dùng để đánh giá hàm số đã tìm được trong mơ hình sau khi sử
dụng tập dữ liệu huấn luyện ở bước trước đó bằng cách so sánh giá
trị dự đoán và giá trị thực tế.

16



Ví dụ: Người ta thu thập các số liệu của hơn 20.000 căn nhà ở thành phố
Portland, tiểu bang Oregon, Mỹ được các thơng tin như sau: diện tích ngơi nhà
(x1, m2), diện tích đất (x2, m2), số phịng ngủ (x3), số tầng (x4), số nhà vệ
sinh/nhà tắm (x5), tuổi căn nhà (x6) và cuối cùng là giá bán (y, triệu đồng). Lưu
ý là các số liệu đã được chuyển đổi feet2 sang m2, Đô-la Mỹ sang VNĐ. Liệu
rằng chúng ta có thể đốn biết giá của một căn nhà nếu dựa vào các số liệu cịn
lại được hay khơng?
Diện
Diện
tích căn tích đất
nhà
(m2)
(m2)
110
525
239
673
72
929
183
465
157
751



Số
phịng
ngủ


Số
tầng

Số nhà vệ
sinh/nhà
tắm

Tuổi
căn
nhà

3
1
1
5
3
2
3
5
2
1
1
5
4
1
3
5
3
1
2

5




Bảng 2.1 Dữ liệu và thơng số giá nhà

Giá bán
(triệu đồng)

5103
12374
4140
13892
11730


Hình 2.2 Biểu đồ phân tán hồi quy tuyến tính
Tập dữ liệu thu thập được ký hiệu là {(𝑥(i), 𝑦(i)), ∀𝑖 = 1,2, …, 𝑚} Trong
đó, x(i) là véctơ tương ứng với dữ liệu đầu vào của căn nhà thứ i, 𝑥 ∈ 𝑅n (x là
biến phụ thuộc), y(i) là giá bán của căn nhà thứ i (y là biến độc lập), m là số
17


lượng căn nhà thu thập được. Với mỗi đặc trưng j của x(i) ta ký hiệu là 𝑥𝑗 (𝑖),
∀𝑗 = 1,2, …, 𝑛. Giá trị y là một số thực 𝑅, 𝑥(i) = {𝑥1(i), 𝑥2(i), …, 𝑥n(m)}. Nói
cách khác, mục đích của mơ hình này là tìm ra một hàm số f nào đó sao cho y
= f(x).
Trong hình trên, với mỗi dấu x đỏ trên biểu đồ tương ứng với một cặp giá
trị (𝑥1(i), 𝑦 (i)) của 20 căn nhà đầu tiên và một đường thẳng đi ngang qua với

các điểm giá trị bao quanh nó. Đường thẳng chính là mối quan hệ tuyến tính
của 𝑥1(i) 𝑣à 𝑦 (i), chính là đồ thị của hàm số 𝑦 (i) = 𝑓 (𝑥1(i)), mơ hình này gọi
là hồi quy tuyến tính. Tuy nhiên, khơng phải lúc nào mà đường tuyến tính cũng
có thể vừa khớp với tất cả dữ liệu được, những điểm nằm ngoài đường thẳng
sẽ tạo ra một sai số hoặc phương sai. Một thuật toán trong Hồi quy sẽ tìm hàm
số sao cho đường tuyến tính có phương sai nhỏ nhất có thể. Lúc này, gọi giá trị
dự đoán là 𝑦̂, giá trị thực tế 𝑦 ≈ 𝑓(𝑥) = 𝑦̂.
Hồi quy đơn tuyến tính được biểu diễn dưới dạng: 𝑓 (𝑥1) = 𝜃0 + 𝜃0𝑥1. Với
nhiều hơn một đặc trưng, thì mối quan hệ giữa các biến đặc trưng và giá nhà là
𝑓(𝑥) = 𝜃0 + 𝜃1𝑥1 + 𝜃2𝑥2 + 𝜃3𝑥3 + 𝜃4𝑥4 + 𝜃5𝑥5 + 𝜃6𝑥6. Đây được gọi là hồi
quy đa tuyến tính. Trong đó, 𝜃j, ∀𝑗 = 1,2, … ,6 là các hằng số, 𝜃0 là thiên kiến
(bias). Mục tiêu của hồi quy tuyến tính sẽ tìm ra các hệ số 𝜃j tối ưu.

Hình 2.3 Hyperplane ở đồ thị hai chiều (hình I) và ba chiều (hình II)

18


Đồ thị hàm số ở hình trên trong khơng gian hai chiều (hai trục toạ độ) là
một đường thẳng (line). Nếu trong không gian ba chiều, hàm số được gọi là
tuyến tính nếu đồ thị của hàm số là một mặt phẳng (plane). Cịn trong khơng
gian nhiều hơn 3 chiều, đồ thị hàm số là một siêu phẳng (hyperplane).
2.2.1.2.

Hồi quy phi tuyến tính

Trong hồi quy phi tuyến tính, hàm số f(x) khơng thể được xem như là tuyến
tính nếu như các tham số khơng phải là tuyến tính [11]. Đồ thị của hàm số phi
tuyến tính là một đường cong. Hàm số phi tuyến tính được ký hiệu như sau: 𝑦̂
= 𝑓 (𝑥, 𝜃).

Ví dụ: Một hàm số phi tuyến tính là 𝑦̂ = 𝜃0 + 𝜃1 𝑒𝑥𝑝(𝜃3 𝑥)

Hình 2.4 Đồ thị hàm số phi tuyến tính (NonLinear Function)
Trong hình trên, các điểm giá trị có xu hướng tạo thành một đường cong,
nếu sử dụng hồi quy tuyến tính (đường thẳng màu xanh) thì hàm số tìm được
sẽ có phương sai lớn. Để tìm được hàm số phi tuyến tính này, sử dụng thuật
tốn bình phương tối thiểu Levenberg–Marquardt.
2.2.1.3.

Hồi quy đa thức

Như đã đề cập ở phần trên, đa hồi quy là một dạng của hồi quy, trong đó có
nhiều hơn một biến độc lập. Đa hồi quy bao gồm một kỹ thuật gọi là hồi quy
19


đa thức. Trong hồi quy đa thức, biến phụ thuộc hồi quy vào luỹ thừa của các
biến độc lập.
Ví dụ: Vào năm 1981, n = 78 con cá Thái Dương xanh (Bluegrill) được lấy
mẫu ngẫu nhiên ở Lake Mary, tiểu bang Minnesota, Mỹ. Nhà nghiên cứu đã đo
lường và ghi lại các dữ liệu sau:
● Chiều dài (y) của con cá, đơn vị mili-mét.
● Độ tuổi (x) của con cá đó, đơn vị năm
Kết quả thu thập được được thể hiện qua biểu đồ sau:

Hình 2.5 Biểu đồ hồi quy đa thức (tương quan của cá qua từng độ tuổi)
Mặc dù chiều dài của con cá tăng lên qua từng độ tuổi, nhưng lại khơng
hồn tồn theo tuyến tính (Hình 8). Để mơ hình hố dữ liệu này, người ta xây
dựng một mơ hình đa thức bậc 2, hay cịn gọi là hàm số bậc 2 như sau:
𝑦̂ (𝑖) = 𝜃0 + 𝜃1𝑥(i) 𝜃2(𝑥(i))2

Trong đó:
𝑦̂ (𝑖) là chiều dài của con cá Thái dương xanh thứ i (mm)
20


𝑥 (𝑖) là tuổi của con cá Thái dương xanh thứ i (năm)
Bên cạnh đa thức bậc 2, hồi quy đa thức cịn có các dạng khác từ bậc 3 đến
n. Công thức tổng quát:
𝑦̂ = 𝜃0 + 𝜃1𝑥 + 𝜃2𝑥2 + ⋯ + 𝜃i 𝑥i, ∀𝑖 = 1,2, …, n
Để tìm các tham số ta sử dụng phương pháp bình phương tối thiểu

2.2.2. Phân loại học có giám sát
2.2.2.1.

Phân loại Nhị phân và Đa lớp

Phân loại là một hình thức học trong Học máy với mục đích là tạo ra một
mơ hình dự đốn đầu ra là các giá trị rời rạc: thể loại (category) hoặc lớp (class),
chẳng hạn dựa vào thông tin xét nghiệm máu, chiều cao, cân nặng, huyết áp, ...
mà dự đốn có mắc bệnh tiểu đường hay khơng.
Ví dụ: Một trạm y tế sử dụng thông tin đường huyết trong máu của các bệnh
nhân, thu được bảng số liệu sau:
Chỉ số đường huyết
Bị Tiểu đường
82
0
92
0
112
0

107
1
109
1


Bảng 2.2 Dữ liệu về chỉ số đường huyết của các bệnh nhân

21


Hình 2.6 Biểu đồ thể hiện chỉ số đường huyết bệnh tiểu đường
Trong ví dụ này, kết quả tiểu đường được chia thành hai trường hợp (hoặc
hai lớp) là không bị tiểu tường (non-diabetic) và bị tiểu đường (diabetic). Đây
được gọi là phân loại nhị phân. Kết quả phân loại dựa vào xác suất để có giá trị
0 (khơng thể) và 1 (chắc chắn). Tổng xác suất cho mỗi lớp là 1 (hoặc bị tiểu
đường hoặc không bị tiểu đường). Điều đó có nghĩa là nếu một bệnh nhân có
xác suất dự đốn bị tiểu đường là 0,4 thì xác suất tương ứng cho khơng bị tiểu
đường là 0,6. Có một giá trị ngưỡng, thường là 0,5 nhằm xác định kết quả lớp
dự đoán. Nếu xác suất dự đoán lớn hơn hoặc bằng ngưỡng, thì lớp dự đốn
được gọi là positive class (trong trường hợp này là bị tiểu đường) và ngược lại,
negative class (không bị tiểu đường). Người ta gọi ngưỡng đó là ranh giới quyết
định.
- Nếu f(x) ≥ 5, dự đoán y = 1 (bị tiểu đường)
- Nếu f(x) < 5, dự đốn y = 0 (khơng bị tiểu đường)
Hồi quy luận lý (Logistic regression): 0 ≤ 𝑓(𝑥) ≤ 1
Mơ hình hồi quy luận lý: 𝑓(𝑥) = 𝑔(𝜃i’ 𝑥)
22



Trong đó: g(z)=1/(1+e^(-z) ) được gọi là hàm sigmoid hay hàm luận lý.
Đồ thị của hàm sigmoid có dạng một đường cong bị chặn trên và chặn dưới,
được minh hoạ trong hình dưới đây:

Hình 2.7 Biểu đồ phân loại các ca bệnh tiểu đường
𝑓 (𝑥) = 𝑃 (𝑦 = 1|𝑥; 0) là xác suất để y = 1 với x đã có và tham số θ.
Giả sử nếu: 𝑓(𝑥) = 𝑃 (𝑥; 0) = 0,4 𝑡ℎì 𝑃 (𝑥; 0) = 1 − 0,4 = 0,6
Ngồi ra cịn có mơ hình phân loại đa lớp với số lớp phân loại nhiều hơn 2.
Chẳng hạn, để làm rõ hơn mức độ bị tiểu đường, người ta chia thành các trường
hợp: không bị tiểu đường, tiểu đường loại 1 và tiểu đường loại 2. Tổng xác suất
của mỗi lớp vẫn là 1, có nghĩa là tình trạng của bệnh nhân chỉ rơi vào một trong
ba trường hợp đã kể trên.
Có một số thuật tốn để tối ưu trong mơ hình này: Gradient descent, BFGS,
L-BFGS, và Conjugategradient.
Quay lại ví dụ trên, khi so sánh các nhãn dự đốn dựa trên hàm luận lý của
mơ hình (𝑦̂) và các nhãn thực tế (y) trên một vài dữ liệu x, suy được:
23


x
y
𝑦̂
83
0
0
119
1
1
104
1

0
105
0
1
86
0
0
109
1
1
Bảng 2.3 Bảng đối chiếu y và y ̂ của mơ hình luận lý
Chuyển đổi bảng trên thành ma trận lỗi tương ứng, được:

Hình 2.8 Ma trận lỗi
Ma trận tổng qt cho hai nhãn dự đốn (0 và 1):

Hình 2.9 Ma trận lỗi bài toán phân loại nhị phân
Từ ma trận này có thể tính được các giá trị sau:
- Accuracy (A) = (TP+TN)/(TP+TN+FP+FN) là tỷ lệ dự đoán đúng
cho cả 2 trường hợp 𝑦̂ = 1, 𝑦 = 0.

24


×