SlideShare a Scribd company logo
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC TPHCM
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGUYỄN VĂN PHÚC
ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI
TRÁI CÂY
THÀNH PHỐ HỒ CHÍ MINH – 10/2019
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC TPHCM
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGUYỄN VĂN PHÚC
ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI
TRÁI CÂY
Ngành: CÔNG NGHỆ THÔNG TIN
Mã số: 60480201
NGƯỜI HƯỚNG DẪN KHOA HỌC:
TS. VŨ THANH HIỀN
THÀNH PHỐ HỒ CHÍ MINH – 10/2019
LỜI CAM ĐOAN
Tôi xin cam đoan đề tài: “Ứng dụng học sâu trong phân loại trái cây” là công
trình nghiên cứu được tôi thực hiện dưới sự hướng dẫn của giảng viên hướng dẫn
khoa học.
Các kết quả nghiên cứu và kết quả thử nghiệm nêu trong luận văn là trung thực và
chưa từng được công bố trong bất kỳ tài liệu nào khác.
Trong phần kiến thức chung nghiên cứu giải thuật áp dụng, luận văn có tham khảo ở
một số tài liệu và đã có trích dẫn đúng và đầy đủ.
Học Viên
Nguyễn Văn Phúc
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-2
LỜI CẢM ƠN
Tôi xin bày tỏ lòng biết ơn sâu sắc đến Thầy, TS. Vũ Thanh Hiền, người đã hết
lòng hướng dẫn, động viên và giúp đỡ cho tôi hoàn thành luận văn này.
Tôi cũng xin chân thành gửi lời cám ơn đến quý Thầy Cô trường Đại Học Ngoại
ngữ - Tin học TP.HCM đã tận tình dạy dỗ, chỉ bảo kiến thức quý báu giúp tôi hoàn
thành khóa học đúng tiến độ và là nền tảng cho nghiên cứu của mình. Xin cảm ơn
Ban Hợp tác và Đào tạo Sau đại học đã nhiệt tình hỗ trợ trong suốt quá trình học tập
tại trường.
Cuối cùng, xin chân thành cảm ơn bạn bè và đồng nghiệp đã khích lệ, động viên,
tạo điều kiện thuận lợi cho tôi trong suốt thời gian thực hiện luận văn.
TP. HCM, tháng 10 năm 2019
Học Viên
Nguyễn Văn Phúc
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-3
DANH MỤC CÁC CHỮ VIẾT TẮT
Chữ viết tắt Ý nghĩa
AI Artificial Intelligent
ANN Artificial neural networks
CNN Convolutional Neural Network
PCA Principal Component Analysis
SVM Support Vector Machine
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-4
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 2.1 Minh hoạ sơ đồ Deep Learning.................................................................13
Hình 2.2 Minh hoạ các lớp trong Deep Learning ....................................................14
Hình 2.3 Kiến trúc tổng quát của một ANN ............................................................18
Hình 2.4 Mô hình tích chập......................................................................................20
Hình 2.5 Mô hình mạng neuron tích chập ...............................................................22
Hình 2.6 Mô hình mạng perceptron đa tầng ............................................................24
Hình 2.7 Mô tả các neuron đầu vào .........................................................................25
Hình 2.8 Mô hình neuron cục bộ .............................................................................26
Hình 2.9 Mô hình neuron cục bộ .............................................................................26
Hình 2.10 Mô hình neuron cục bộ ...........................................................................27
Hình 2.11 Công thức xây dựng lớp tính Neuron......................................................28
Hình 2.12 Minh hoạ đặc trưng cấu trúc neuron .......................................................29
Hình 2.13 Bản đồ đặc trưng .....................................................................................30
Hình 2.14 Sơ đồ phân lớp ........................................................................................32
Hình 2.15 Sơ đồ phân lớp ........................................................................................32
Hình 2.16 Sơ đồ phân lớp ........................................................................................33
Hình 2.17 Kiến trúc AlexNet ...................................................................................34
Hình 2.18 Kiến trúc VGG 16 ...................................................................................35
Hình 2.19 Kiến trúc Inception..................................................................................36
Hình 2.20 Inception..................................................................................................36
Hình 3.1 Hình dạng khác nhau của cùng một loại táo.............................................37
Hình 3.2 Hình dạng quả nho ....................................................................................37
Hình 3.3 Trái cây Apple Braeburn...........................................................................42
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-5
Hình 3.4 Trái cây Apple Braeburn đã bị xoay .........................................................43
Hình 3.5 Trái cây Apple Golden 1...........................................................................44
Hình 3.6 Trái cây Apple Golden 1 đã bị xoay .........................................................45
Hình 3.9 Độ lỗi của mô hình trong quá trình huấn luyện dựa trên tensorboard ......50
Hình 3.10 Độ chính xác của mô hình trong quá trình huấn luyện dựa trên
tensorboard................................................................................................................50
Hình 3.7 Giao diện chính của ứng dụng ..................................................................52
Hình 3.8 Huấn luyện mô hình..................................................................................54
Hình 3.11 Kiểm tra trên tập dữ liệu test...................................................................55
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-6
DANH MỤC CÁC BẢNG BIỂU
Bảng 3.1 Các loại trái cây ........................................................................................41
Bảng 3.2 Các thông số của mô hình.........................................................................47
Bảng 3.3 Các chức năng của ứng dụng....................................................................53
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-7
TRANG THÔNG TIN VỀ LUẬN VĂN THẠC SĨ
1. Họ tên học viên: NGUYỄN VĂN PHÚC Nam/ Nữ: Nam
2. Ngày tháng năm sinh: 30 tháng 4 năm 1990 Nơi sinh: Campuchia
3. Ngành học: Công nghệ Thông tin Mã số: 60480201
4. Ngày nhập học: 2016
5. Các thay đổi trong quá trình đào tạo: (nếu có)
6. Tên đề tài luận văn (chính thức bảo vệ):
7. 6.1. Tên Tiếng Việt: “Ứng dụng học sâu trong phân loại trái cây”
6.2. Tên Tiếng Anh: “Apply Deep Learning to Classify Fruit”
Cán bộ hướng dẫn (họ tên, học hàm, học vị): TS. VŨ THANH HIỀN
8. Tóm tắt các kết quả của luận văn:
“Tóm tắt các kết quả của luận văn: Đã tìm hiểu cơ sở lý thuyết của mạng neuron
và đặc biệt là mô hình mạng neuron tích chập để giải quyết bài toán phân loại 60
loại trái cây trên cơ sở dữ liệu Fruit. Qua quá trình thực nghiệm, chúng tôi đã xác
định kiến trúc cũng như bộ tham số phù hợp để giải quyết bài toán với độ chính
xác cao”
9. Khả năng ứng dụng thực tiễn (nếu có)
10.Những hướng nghiên cứu tiếp theo (nếu có)
11.Các công trình đã công bố có liên quan đến luận văn:
CÁN BỘ HƯỚNG DẪN
(ký tên, họ và tên)
TS. Vũ Thanh Hiền
HỌC VIÊN
(ký tên, họ và tên)
Nguyễn Văn Phúc
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
2-8
LỜI MỞ ĐẦU
Ngày nay công nghệ thông tin là ngành chủ lực quan trọng góp phần thúc đẩy sự
phát triển mọi mặt của con người. Một trụ cột của thời đại công nghiệp 4.0 là sự phát
triển mạnh của Trí tuệ nhân tạo (Artificial Intelligence - AI). AI có mặt ở tất cả các
ứng dụng thông minh như nhận dạng giọng nói của Apple, dịch tự động, search engine
của Google, xe lái tự động của Tesla, … có thể nói AI đang là một trong những công
nghệ được quan tâm đầu tư nghiên cứu và phát triển nhất thời điểm hiện nay.
Ở nước ta hiện nay đã bắt đầu áp dụng Trí tuệ nhân tạo vào nghiên cứu và
kinh doanh đã cho ra những kết quả rất đáng kể. Trong lương lai nước ta sẽ áp dụng
và đưa công nghệ thông tin vào tất cả các lĩnh vực nhằm phát triển mạnh mẽ hơn để
có thể thay thế những thủ tục thủ công mà con người bấy lâu nay vẫn còn phụ thuộc…
Khi nền công nghiệp 4.0 được đưa vào áp dụng thì máy móc sẽ giúp cho con người
hoàn thành tốt công việc và thực hiện nhanh hơn, chính xác hơn và công sức tối ưu
nhất, tương lai máy móc sẽ thay thế con người làm việc trên mọi mặt, do đó, những
chuyên gia hay bất cứ ai nghiên cứu về lĩnh vực này luôn muốn tìm hiểu và nghiên
cứu sâu về sự thay đổi mạnh mẽ của công nghiệp 4.0 và sự phát triển mạnh của Trí
tuệ nhân tạo.
Bây giờ, Trí tuệ nhân tạo đang góp phần thay đổi sâu sắc nhiều khía cạnh của
cuộc sống, dần trở thành một yếu tố quan trọng trong hoạt động muôn màu muôn vẻ
của nhân loại. Nhiều bức tranh về tương lai xán lạn do trí tuệ nhân tạo mang tới cho
loài người đã được khắc họa. Riêng về mặt kinh tế cho thấy trí tuệ nhân tạo trở thành
cơ hội thương mại lớn nhất ngày nay trong nền kinh tế toàn cầu đang thay đổi nhanh
chóng với phần đóng góp của nó, Chính vì lý do đó, nhiều nước trên thế giới đã và
đang tiến hành xây dựng chiến lược phát triển trí tuệ nhân tạo quốc gia của họ.
MỤC LỤC
CHƯƠNG 1. TỔNG QUAN.....................................................................................2
1.1 ĐẶT VẤN ĐỀ.........................................................................................................2
1.2 GIỚI THIỆU TRÍ TUỆ NHÂN TẠO VÀ HỌC MÁY ...................................................4
1.3 TỔNG QUAN VỀ XỬ LÝ ẢNH SỐ ...........................................................................6
1.3.1 GIỚI THIỆU ........................................................................................................6
1.3.2 MỘT SỐ KHÁI NIỆM CƠ BẢN TRONG XỬ LÝ ẢNH................................................7
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT.......................................................................10
2.1 GIỚI THIỆU VỀ DEEP LEARNING......................................................................10
2.2 MỘT SỐ ỨNG DỤNG CỦA DEEP LEARNING ......................................................14
2.3 GIỚI THIỆU MẠNG NEURON.............................................................................17
2.4 MẠNG NEURON TÍCH CHẬP..............................................................................18
2.4.1 ĐỊNH NGHĨA MẠNG NEURON TÍCH CHẬP.........................................................19
2.4.2 CONVOLUTION (TÍCH CHẬP)............................................................................19
2.4.3 MÔ HÌNH MẠNG NƠ-RON TÍCH CHẬP ...............................................................20
2.4.4 XÂY DỰNG MẠNG NƠ-RON TÍCH CHẬP............................................................22
2.5 MỘT SỐ KIẾN TRÚC CONVOLUTIONAL NEURAL NETWORK THÔNG DỤNG ....34
2.5.1 KIẾN TRÚC ALEXNET [17] ..............................................................................34
2.5.2 KIẾN TRÚC VGG 16 [17].................................................................................35
2.5.3 KIẾN TRÚC INCEPTION/GOOGLENET [18].......................................................35
CHƯƠNG 3. PHÂN LOẠI ẢNH TRÁI CÂY ......................................................37
3.1 PHÁT BIỂU BÀI TOÁN ........................................................................................37
3.2 CƠ SỞ DỮ LIỆU TRÁI CÂY .................................................................................38
3.3 CẤU TRÚC THƯ MỤC CƠ SỞ DỮ LIỆU ẢNH TRÁI CÂY.......................................41
3.4 DỮ LIỆU MẪU ....................................................................................................41
3.5 PHƯƠNG PHÁP ĐỀ XUẤT ...................................................................................45
B. HÀM LOSS..............................................................................................................48
C. PHƯƠNG PHÁP HUẤN LUYỆN ...........................................................................48
CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN......................................49
4.1 THỰC NGHIỆM VÀ KẾT QUẢ .............................................................................49
4.2 KẾT LUẬN VÀ PHƯỚNG PHÁT TRIỂN ................................................................55
4.3 HƯỚNG PHÁT TRIỂN TIẾP THEO.......................................................................56
TÀI LIỆU THAM KHẢO ......................................................................................57
2
CHƯƠNG 1. TỔNG QUAN
1.1 Đặt vấn đề
- Cơ sở hình thành đề tài:
Trong luận văn này trình bày khái quát về xử lý ảnh, các phương pháp trích chọn đặc
trưng. Mạng neuron tích chập và sử dụng trong bài toán phân loại đối tượng.
Hiện nay, với sự phát triển của công nghiệp 4.0, công nghệ thông tin nói chung
và sự phát triển trong lĩnh vực Trí tuệ nhân tạo, các hệ thống phát hiện và nhận dạng
và ngày càng có nhiều ứng dụng trong thực tế như vấn đề an ninh, các hệ thống bảo
mật, nhận dạng người trên các bằng lái xe, hộ chiếu, nhận dạng người trong các hệ
thống tương tác người-máy, nhận dạng đối tượng, nhận dạng vân tay, nhận dạng màu
sắc, trong lĩnh vực giải trí...
Đặc biệt khi cách mạng công nghiệp 4.0 ra đời thì công nghệ ngày càng được
phát triển cao hơn, các công nghệ tối tân sẽ dần dẫn được đưa vào xử dụng nhằm
phục vụ cho con người. Nhu cầu tăng lên trong ứng dụng Trí tuệ nhân tạo, đã giúp
các nhà khoa học có thêm nhiều phương pháp mới để phát triển các dự án nghiên cứu.
Mặc dù ban đầu thực hiện gặp nhiều khó khăn do mới tiếp xúc công nghệ hoặc đang
áp dụng lý thuyết vào thực tế nhưng những kết quả đạt được trong thời gian đầu cũng
xem như một kết quả khả quan tạo động lực cho các công trình sau này. việc nhận
dạng đối tượng không thể chính xác được như các phương pháp nhận dạng khác như
nhận dạng vân tay, nhận dạng mặt người…nhưng đề tài này nó vẫn nhận được sự
quan tâm lớn của các nhà nghiên cứu trong lĩnh vực thị giác máy tính. Lý do chủ yếu
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
3
là trên thực tế, nhận dạng đối tượng vẫn là cách truyền thống để con người nhận dạng
và phát hiện ra đối tượng.
Có rất nhiều mô hình tính toán mô phỏng bộ não của người được nghiên cứu
trong đó có mạng neuron. Đề tài này cũng một phần áp dụng mạng neuron vào khả
năng giải quyết hàng loạt các bài toán như tính toán tối ưu, nhận dạng đối tượng, điều
khiển và được ứng dụng trong nhiều lĩnh vực của bài toán phát hiện và nhận dạng.
Một mạng neuron nhân tạo bao gồm một tập các đơn vị xử lý cơ bản, gọi là
neuron, chúng truyền thông tin bằng cách gửi các tín hiệu cho nhau qua các kênh kết
nối có trọng số. Mỗi neuron thực hiện một công việc tương đối đơn giản: nhận tín
hiệu từ các neuron lân cận hoặc từ nguồn bên ngoài, tính toán tín hiệu ra rồi truyền
sang cho các neuron khác. Ngoài việc xử lý này, nhiệm vụ thứ hai của neuron là điều
chỉnh lại các trọng số. Hệ thống sẽ được thực hiện song song vì nhiều neuron có thể
thực hiện tính toán ở cùng thời điểm. Xuất phát trong hoàn cảnh đó tôi đã quyết định
lựa chọn đề tài: “Nhận dạng ảnh xác định đối tượng của ảnh khi sử dụng mạng
Neuron” là một việc làm không chỉ có ý nghĩa khoa học và còn mang đậm tính thực
tiễn nhất khi thực tế đang đặt ra những yêu cầu đòi hỏi.
- Mục tiêu nghiên cứu:
• Tìm hiểu bài toán phân loại dữ liệu nói chung và bài toán phân loại dữ ảnh trái
cây nói riêng.
• Nghiên cứu mô hình mạng neuron đa tầng, các thuật toán lan truyền tiến, lan
truyền ngược để sử dụng và huấn luyện mạng neuron.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
4
• Nghiên cứu một số kiến trúc mạng neuron hiện đại giải quyết bài toán phân
loại dữ liệu ảnh
• Tiến hành xây dựng kiến trúc của mô hình, tiến hành thực nghiệm mô hình, và
đánh giá kết quả thực nghiệm của mô hình để giải quyết bài toán phân loại ảnh
trái cây
1.2 Giới thiệu trí tuệ nhân tạo và học máy
Trí tuệ nhân tạo là một hướng nghiên cứu của lĩnh vực Công nghệ thông tin
và Khoa học máy tính nhằm phát triển các hệ thống thông minh nhằm giải quyết các
bài toán trong thực tế giống như hoạt động của bộ não người. Trí tuệ nhân tạo được
bắt đầu nghiên cứu từ những năm 50 của thế kỷ 20 và trong khoảng 30 năm trở lại
đây đã được cộng đồng các nhà khoa học quan tâm mạnh mẽ. Rất nhiều các hội thảo
lớn về lĩnh vực này được tổ chức hàng năm trên thế giới. Các ứng dụng tiêu biểu của
trí tuệ nhân tạo vào đời sống xã hội bào gồm: người máy, robot, xử lý ngôn ngữ tự
nhiên, nhận dạng, phát hiện dị thường, an ninh quốc phòng, tin sinh học, khoa học vũ
trụ và trái đất,...
Trong khuôn khổ luận văn Thạc sỹ của mình, qua việc được trang bị các môn
học lỹ thuyết như thuật toán, xử lý ảnh, trí tuệ nhân tạo,... tôi đã lựa chọn đề tài Nghiên
cứu một số phương pháp cơ bản về nhận dạng và phát hiện một số loại trái cây thông
dụng trong ảnh màu. Chủ đề phân lớp dữ liệu là một nhánh quan trọng trong lĩnh vực
học máy (machine learning) của trí tuệ nhân tạo, có thể kể các ứng dụng của học máy
trong thực tế như người máy, robot, nhận dạng mặt người, nhận dạng tiếng nói và chữ
viết,...
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
5
+ Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu
• Nghiên cứu mạng neuron đa tầng và mạng neuron tích chập
• Nghiên cứu bài toán phân lớp ảnh trái cây
• Tìm hiểu xây dựng kiến trúc và thực nghiệm mô hình mạng neuron
tích chập để giải quyết bài toán phân lớp ảnh trái cây
- Phạm vi nghiên cứu
- Lý thuyết: Nghiên cứu lý thuyết về xử lý ảnh, Học máy, Deep Learning,
Mạng neuron tích chập.
- Thực nghiệm: Lập trình trên phần mềm Python cho chương trình phân
loại một số loại trái cây thông dụng trong ảnh.
+ Phương pháp nghiên cứu
- Thu thập, phân tích các tài liệu và thông tin liên quan đến đề tài từ đó đưa
ra cái nhìn tổng quan, các khó khăn gặp phải, các ràng buộc của bài toán...
- Tiến hành phân tích, xây dựng giải pháp phát hiện gồm có : Tiền xử lý,
trích chọn đặc trưng, huấn luyện mô hình dữ liệu, hậu xử lý.
- Xây dựng và kiểm thử việc đánh giá hiệu quả phương pháp mạng neuron
tích chập để phân loại đối tượng bằng ngôn ngữ Python.
+ Cấu trúc của luận văn
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
6
Cấu trúc của luận văn Nghiên cứu và ứng dụng mạng Neuron tích chập vào thực
nghiệm trên nhiều tầng khác nhau để tìm ra kết quả tốt nhất cho bài toán và
chương trình bao gồm những cấu trúc như sau:
Chương 1: Tổng quan về
Chương 2: Lý thuyết về Deep Learning và Mạng neuron tích chập.
Chương 3: Chương này sẽ đi sâu vào việc cài đặt ứng dụng cụ thể cho bài toán phát
hiện và phân loại một số loại trái cây thông dụng bằng phương pháp Deep Learning
trong mô hình mạng neuron tích chập.
Chương 4: Kết quả và hướng phát triển
Kết luận: Tóm tắt các vấn đề được tìm hiểu trong luận văn và các vấn đề liên quan
trong luận văn.
1.3 Tổng quan về xử lý ảnh số
1.3.1 Giới thiệu
Con người thu nhận thông tin qua các giác quan, trong đó thị giác đóng vai
trò quan trọng nhất. Những năm trở lại đây với sự phát triển của phần cứng máy tính,
xử lý ảnh và đồ hoạ đó phát triển một cách mạnh mẽ và có nhiều ứng dụng trong cuộc
sống. Xử lý ảnh và đồ hoạ đóng một vai trò quan trọng trong tương tác người và máy.
Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho
ra kết quả mong muốn. Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh
“tốt hơn” hoặc một kết luận.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
7
- Các bước cơ bản trong một hệ thống xử lý ảnh:
+ Khối thu nhận ảnh: có nhiệm vụ tiếp nhận ảnh đầu vào.
+ Khối tiền xử lý: có nhiệm vụ xử lý nâng cao chất lượng ảnh như giảm nhiễu,
phân vùng, tìm biên v.v..
+ Khối trich chọn đặc điểm: có nhiệm vụ trích chọn các đặc trưng quan trọng của
các bức ảnh đã được tiền xử lý để sử dụng trong hệ quyết định
+ Khối hậu xử lý: có nhiệm vụ xử lý các đặc điểm đã trích chọn, có thể lược bỏ
hoặc biến đổi các đặc điểm này để phù hợp với các kỹ thuật cụ thể sử dụng trong hệ
quyết định
+ Khối hệ quyết định và lưu trữ: có nhiệm vụ đưa ra quyết định (phân loại) dựa
trên dự liệu đã học lưu trong khối lưu trữ
+ Khối kết luận: đưa ra kết luận dựa vào quyết định của khối quyết định
1.3.2 Một số khái niệm cơ bản trong xử lý ảnh
+ Ảnh và điểm ảnh:
Điểm ảnh được xem như là dấu hiệu hay cường độ sáng tại một vị trí nào đó
của đối tượng trong không gian và ảnh được xem như là một tập hợp các
điểm ảnh.
+ Mức xám, màu:
Là số các giá trị có thể có của các điểm ảnh của ảnh
+ Nắn chỉnh biến dạng:
Ảnh thu nhận thường bị biến dạng do các thiết bị quang học và điện tử.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
8
+ Khử nhiễu:
Có 2 loại nhiễu cơ bản trong quá trình thu nhận ảnh mà chúng ta cần loại bỏ:
Nhiễu hệ thống: là nhiễu có quy luật có thể khử bằng các phép biến đổi
Nhiễu ngẫu nhiên: vết bẩn không rõ nguyên nhân có thể khắc phục bằng các
phép lọc
+ Chỉnh số mức xám:
Chỉnh số mức xám là nhằm khắc phục tính không đồng đều của hệ thống xử
lý ảnh, thông thường có 2 hướng tiếp cận:
Giảm số mức xám: Thực hiện bằng cách nhóm các mức xám gần nhau thành
một bó. Trường hợp giảm xuống 2 mức xám thì chính là chuyển về ảnh đen trắng.
Tăng số mức xám: Thực hiện nội suy ra các mức xám trung gian bằng kỹ thuật nội
suy. Kỹ thuật này nhằm tăng cường độ mịn cho ảnh.
Phân tích ảnh: Là khâu quan trọng trong quá trình xử lý ảnh để tiến tới hiểu
ảnh. Trong phân tích ảnh việc trích chọn đặc điểm là một bước quan trọng. Các đặc
điểm của đối tượng được trích chọn tuỳ theo mục đích nhận dạng trong quá trình xử
lý ảnh. Có thể nêu ra một số đặc điểm của ảnh sau đây:
Đặc điểm không gian: Phân bố mức xám, phân bố xác suất, biên độ, điểm uốn v.v..
Đặc điểm biến đổi: Các đặc điểm loại này được trích chọn bằng việc thực hiện lọc
vùng (zonal filtering). Các bộ vùng được gọi là “mặt nạ đặc điểm” (feature mask)
thường là các khe hẹp với hình dạng khác nhau (chữ nhật, tam giác, cung tròn v.v..)
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
9
+ Nén ảnh:
Nén ảnh là kỹ thuật nhằm giảm thiểu không gian lưu trữ. Có hai hướng tiếp cận
chính là nén có bảo toàn và không bảo toàn thông tin. Nén không bảo toàn thì thường
có khả năng nén cao hơn nhưng không phục hồi được ảnh gốc, ngược lại nén có bảo
toàn cho phép khôi phục hoàn toàn ảnh gốc. Nén ảnh nói chung có 4 cách tiếp cận cơ
bản:
Nén ảnh thống kê: Kỹ thuật nén này dựa vào việc thống kê tần xuất xuất hiện của giá
trị các điểm ảnh, trên cơ sở đó mà có chiến lược mã hóa thích hợp. Một ví dụ điển
hình cho kỹ thuật mã hóa này là *.TIF
Nén ảnh không gian: Kỹ thuật này dựa vào vị trí không gian của các điểm ảnh để tiến
hành mã hóa. Kỹ thuật lợi dụng sự giống nhau của các điểm ảnh trong các vùng gần
nhau. Ví dụ cho kỹ thuật này là mã nén *.PCX
Nén ảnh sử dụng phép biến đổi: Đây là kỹ thuật tiếp cận theo hướng nén không bảo
toàn và do vậy tỉ lệ nén tương đối cao. *.JPG chính là tiếp cận theo kỹ thuật nén này.
Nén ảnh Fractal: Sử dụng tính chất Fractal của các đối tượng ảnh. Tính chất Fractal
của ảnh thể hiện sự lặp lại của các chi tiết tại nhiều vị trí khác nhau với kích thước và
hướng khác nhau. Kỹ thuật nén sẽ tính toán để chỉ cần lưu trữ phần gốc ảnh và quy
luật sinh ra ảnh theo nguyên lý Fractal.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
10
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
2.1 Giới thiệu về Deep Learning
Deep Learning là một phương pháp của Học máy. Nó cho phép huấn luyện một
tập dữ liệu có thể dự đoán được các đầu ra dựa vào một tập các đầu vào. Cả hai phương
pháp có giám sát và không giám sát đều có thể sử dụng để huấn luyện. Sẽ huấn luyện
nó bằng phương pháp học có giám sát.
Nói rộng ra, deep learning là một tên gọi dễ hiểu hơn của mạng neuron nhân tạo.
Từ "deep" trong deep learning đề cập đến độ sâu của mạng lưới. Một mạng neuron
nhân tạo cũng có thể rất cạn. Mạng neuron được lấy cảm hứng từ cấu trúc của vỏ não.
Mức cơ bản được gọi là perceptron, biểu diễn toán học của một neural sinh học. Giống
như vỏ não, có thể có nhiều lớp perceptron kết nối với nhau.
Lớp đầu tiên là lớp input (đầu vào). Mỗi nút trong lớp này lấy một đầu vào, và
sau đó chuyển output (đầu ra) của nó làm đầu vào cho mỗi nút trong lớp tiếp theo.
Nói chung không có kết nối giữa các nút trong cùng một lớp và lớp cuối cùng tạo nên
kết quả đầu ra. gọi phần giữa là lớp ẩn. Những neuron này không có kết nối với bên
ngoài (ví dụ như đầu vào hoặc đầu ra) và chỉ được kích hoạt bởi các nút trong lớp
trước.
Điều mà nhiều người không nhận ra là tất cả các công nghệ này, về mặt bản
chất đều xuất phát từ cùng một nguồn gốc. Chúng được phát triển từ “deep learning”,
một nhánh đặc biệt trong trí tuệ nhân tạo (AI). Nhiều nhà khoa học vẫn thích gọi nó
theo tên nguyên gốc là deep neural network (mạng neuron sâu).
Trên thực tế, chẳng kỹ sư nào có thể lập trình cho máy tính thực hiện được
những tính năng đề cập ở trên. Thay vào đó, họ tạo ra một thuật toán giúp máy tính
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
11
có khả năng tự học rồi cho nó tiếp xúc với hàng terabyte các dữ liệu liên quan –
chẳng hạn như vài trăm ngàn bức ảnh các loại chó, hay những băng ghi giọng nói kéo
dài hàng năm trời.
Sự tiếp xúc liên tục này sẽ dần dần “huấn luyện” máy tính và khiến nó tự nhận
diện được những hình ảnh, giọng nói được yêu cầu. Cũng giống như cách một đứa
trẻ học hỏi về thế giới xung quanh, sau một thời gian dài được xem những hình ảnh
mặc định là chó hay nghe cách người ta phát âm từ gì đó, máy tính sẽ “nhìn” được
đâu là chó và “nghe” được người ta đang nói gì.
Người ta có thể tự hỏi tại sao việc học sâu chỉ mới được công nhận là một công
nghệ quan trọng mặc dù các thí nghiệm đầu tiên với mạng thần kinh nhân tạo được
tiến hành vào những năm 1950. Học tập sâu đã được sử dụng thành công trong các
ứng dụng thương mại từ những năm 1990, nhưng thường được coi là nghệ thuật hơn
là một công nghệ và thứ mà chỉ có một chuyên gia mới có thể sử dụng, cho đến gần
đây. Đúng là một số kỹ năng là cần thiết để có được hiệu suất tốt từ một thuật toán
học tập sâu. May mắn thay, số lượng kỹ năng cần thiết giảm khi lượng dữ liệu đào
tạo tăng lên. Các thuật toán học tập đạt được hiệu suất của con người trên các nhiệm
vụ phức tạp ngày, Ngày càng có nhiều hoạt động diễn ra trên máy tính, ngày càng
nhiều những tính toán được ghi lại. Khi các công nghệ ngày càng phát triển, việc tập
trung những bản ghi này và sắp xếp chúng trở nên dễ dàng hơn vào một tập dữ liệu
thích hợp cho các ứng dụng học máy. Và khi một thời điểm bùng nổ Dữ liệu lớn (Big
Data) đã khiến cho việc học máy trở nên dễ dàng hơn nhiều vì gánh nặng chính của
ước lượng thống kê - tổng quát hóa dữ liệu mới sau khi quan sát chỉ một lượng nhỏ
dữ liệu - đã được làm sáng tỏ một cách đáng kể, và nguyên tắc cơ bản là thuật toán
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
12
học được giám sát sẽ đạt được hiệu suất chấp nhận được với khoảng 5.000 ví dụ được
gắn nhãn cho mỗi danh mục và sẽ khớp hoặc vượt quá hiệu suất của con người khi
được đào tạo với tập dữ liệu chứa ít nhất 10 triệu ví dụ được gắn nhãn. Làm việc
thành công với các tập dữ liệu nhỏ hơn đây là một lĩnh vực nghiên cứu quan trọng,
tập trung đặc biệt vào cách có thể tận dụng số lượng lớn các ví dụ không dán nhãn,
với việc học không giám sát hoặc bán giám sát.
Deep Learning Là Gì?
Deep Learning là một thuật toán dựa trên một số ý tưởng từ não bộ tới việc tiếp
thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tượng, qua đó làm rõ nghĩa của các loại dữ
liệu.
Deep Learning được ứng dụng trong nhận diện hình ảnh, nhận diện giọng nói, xử lý
ngôn ngữ tự nhiên.
Điểm đặc biệt của Deep Learning là tính chính xác dựa vào lượng dữ liệu, lượng
dữ liệu có thể có kích thước khổng lồ mà không bị hạn chế.
Để hiểu được Deep Learning là gì, trước hết chúng ta cần phải hiểu được mối
quan hệ giữa Deep Learning và machine learning, mạng neuron, và trí tuệ nhân tạo.
Cách tốt nhất để hiểu về mối quan hệ này là mường tượng chúng thành những vòng
tròn đồng tâm:
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
13
Hình 2.1 Minh hoạ sơ đồ Deep Learning
https://blog.algorithmia.com/ai-why-deep-learning-matters
Ở vòng ngoài cùng, bạn có trí thông minh nhân tạo (sử dụng máy tính và lập
luận). Bên trong lớp này là machine learning. Với mạng neuron nhân tạo và deep
learning tại trung tâm. Nói rộng ra, deep learning là một tên gọi dễ hiểu hơn của
mạng neuron nhân tạo. Từ "deep" trong deep learning đề cập đến độ sâu của mạng
lưới. Một mạng neuron nhân tạo cũng có thể rất cạn.
Mạng neuron được lấy cảm hứng từ cấu trúc của vỏ não. Mức cơ bản được gọi
là perceptron, biểu diễn toán học của một neuron sinh học. Giống như vỏ não, có thể
có nhiều lớp perceptron kết nối với nhau.
Lớp đầu tiên là lớp input (đầu vào). Mỗi nút trong lớp này lấy một đầu vào, và
sau đó chuyển output (đầu ra) của nó làm đầu vào cho mỗi nút trong lớp tiếp theo.
Nói chung không có kết nối giữa các nút trong cùng một lớp và lớp cuối cùng tạo nên
kết quả đầu ra.
Chúng ta gọi phần giữa là lớp ẩn. Những neuron này không có kết nối với bên
ngoài (ví dụ như đầu vào hoặc đầu ra) và chỉ được kích hoạt bởi các nút trong lớp
trước.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
14
Hình 2.2 Minh hoạ các lớp trong Deep Learning
https://github.com/rcassani/mlp-example
Deep learning là kỹ thuật học tập trong mạng neuron sử dụng nhiều lớp trừu
tượng để giải quyết các vấn đề nhận dạng khuôn mẫu. Machine learning được coi là
một nhánh hoặc phương pháp tiếp cận trí tuệ nhân tạo, trong khi deep learning là một
loại machine learning chuyên biệt.
Machine learning liên quan đến trí thông minh máy tính mà chưa biết câu trả
lời trước. Thay vào đó, chương trình sẽ đi ngược lại dữ liệu bài giảng (training data),
xác minh sự thành công của những nỗ lực đó, và sửa đổi phương pháp tiếp cận sao
cho phù hợp.
Machine learning điển hình yêu cầu một nền tảng kiến thức chuyên nghiệp, bao
gồm công nghệ phần mềm và khoa học máy tính đến các phương pháp thống kê và
đại số tuyến tính.
2.2 Một số ứng dụng của Deep Learning
Máy tính từ lâu đã có các kỹ thuật để nhận ra các đặc điểm bên trong của hình
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
15
ảnh. Kết quả không phải lúc nào cũng tuyệt vời. Thị giác máy tính (computer vision)
là lợi ích chính của deep learning. Thị giác máy tính sử dụng deep learning hiện nay
đã ngang ngửa với con người trong nhiều nhiệm vụ nhận dạng hình ảnh.
Facebook đã thành công lớn trong việc nhận dạng khuôn mặt trong các bức ảnh
bằng cách sử dụng deep learning. Nó không chỉ là một cải tiến nhỏ nhặt, mà là một
sự thay đổi xu hướng: "Khi được hỏi liệu hai bức ảnh lạ mặt trên là cùng một người,
thì con người sẽ mất 97.53% thời gian. Phần mềm mới được phát triển bởi các nhà
nghiên cứu tại Facebook có thể đạt được 97,25% trong cùng một thử thách, bất kể sự
thay đổi ánh sáng nào hay liệu người trong ảnh có trực tiếp đối mặt với camera hay
không."
Nhận dạng giọng nói là một lĩnh vực khác chịu ảnh hưởng sâu sắc của deep
learning. Ngôn ngữ nói chuyện thực sự quá rộng và mơ hồ. Google đang sử dụng
deep learning để quản lý năng lượng tại trung tâm dữ liệu của công ty. Họ đã cắt giảm
nhu cầu năng lượng làm mát khoảng 40%. Điều đó làm tăng thêm 15% hiệu suất sử
dụng điện cho công ty và hàng trăm triệu đô la tiền tiết kiệm.
Illustration Tagger. Phiên bản thực của Illustration2Vec, ứng dụng này có thể gắn
thẻ một hình ảnh có đánh giá an toàn, có vấn đề hoặc rõ ràng, bản quyền, và phân loại
chung để biết được nhiều thứ hơn về hình ảnh. DeepFilter là một ứng dụng chuyển
đổi phong cách giúp áp dụng bộ lọc nghệ thuật cho hình ảnh.
Ứng dụng phân loại độ tuổi (age classification) sử dụng tính năng nhận diện khuôn
mặt để xác định độ tuổi của người trong bức ảnh. Places365 Classifier sử dụng dữ
liệu CNN có sẵn và dựa trên Places: An Image Database for Deep Scene
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
16
Understanding B. Zhou, et al., 2016 để xác định vị trí cụ thể trong các hình ảnh, chẳng
hạn như sân, hiệu thuốc, phòng khách sạn, sông băng, núi, etc. Cuối cùng,
InceptionNet, một phiên bản thực của Google's InceptionNet sử dụng TensorFlow.
Phải cần một hình ảnh (như một chiếc xe hơi) và cho ra 5 mô hình dự đoán tốt nhất
có liên quan đến hình ảnh.
Một Số Dự Án Deep Learning Công Khai
Các deep learning được tiếp cận bởi một số dự án được mở công khai. Một số
công nghệ phổ biến nhất bao gồm, nhưng không giới hạn ở đó, Deeplearning4j
(DL4j), Theano, Torch, TensorFlow và Caffe. Các yếu tố quyết định để sử dụng dựa
vào mục tiêu được nhắm tới, liệu chúng có ở cấp thấp, thông dụng hoặc là ứng dụng
tập trung không. Dưới đây là tổng quan về mỗi loại:
DL4J:
Dựa trên JVM
Distrubted
Tích hợp với Hadoop và Spark
Theano:
Rất phổ biến trong Academia
Mức độ tương đối thấp
Tương tác với Python và Numpy
Torch:
Dựa trên Lua
Phiên bản trong nhà được sử dụng bởi Facebook và Twitter
Bao gồm các mô hình được đào tạo
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
17
TensorFlow:
Phiên bản tiếp theo của Google sau Theano
Tương tác với Python và Numpy
Khá phổ biến
Có thể hơi chậm đối với một số loại vấn đề nhất định
Caffe:
Không dùng cho mục đích chung. Tập trung vào các vấn đề về thị giác máy
tính
Hoạt động trong C++ và rất nhanh
Có một giao diện Python
2.3 Giới thiệu Mạng Neuron
Mạng Neuron nhân tạo (Artificial Neural Network- ANN) là mô hình xử lý thông
tin được mô phỏng dựa trên hoạt động của hệ thống thần kinh của sinh vật, bao gồm
số lượng lớn các Neuron được gắn kết để xử lý thông tin. ANN giống như bộ não con
người, được học bởi kinh nghiệm (thông qua huấn luyện), có khả năng lưu giữ những
kinh nghiệm hiểu biết (tri thức) và sử dụng những tri thức đó trong việc dự đoán các
dữ liệu chưa biết (unseen data).
Kết hợp chặt chẽ với logic mờ, mạng neuron nhân tạo đã tạo nên cuộc cách mạng
thực sự trong việc thông minh hóa và vạn năng hóa các bộ điều khiển kỹ thuật cao
cho cả hiện nay và trong tương lai. Ví dụ như ứng dụng tự động điều khiển hệ thống
lái tàu, hệ thống dự báo sự cố,…
Mạng neuron dựa trên việc mô phỏng cấp thấp hệ thống neuron sinh học. Trong
tương lai với sự phát triển mô phỏng neuron sinh học, chúng ta có thể có loại máy
tính thông minh thật sự.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
18
Các ứng dụng của mạng Neuron được sử dụng trong rất nhiều lĩnh vực như điện,
điện tử, kinh tế, quân sự,… để giải quyết các bài toán có độ phức tạp và đòi hỏi có độ
chính xác cao như điều khiển tự động, khai phá dữ liệu, nhận dạng,…
Kiến trúc chung của một mạng neuron nhân tạo gồm 3 thành phần đó là: Input
Layer, Hidden Layer và Output Layer (Xem Hình).
Hình 2.3 Kiến trúc tổng quát của một ANN
Trong đó, lớp ẩn (Hidden Layer) gồm các Neuron nhận dữ liệu input từ các
Neuron ở lớp (Layer) trước đó và chuyển đổi các input này cho các lớp xử lý tiếp
theo. Trong một ANN có thể có nhiều lớp ẩn.
Trong đó các Processing Elements (PE) của ANN gọi là Neuron, mỗi Neuron nhận
các dữ liệu vào (Inputs) xử lý chúng và cho ra một kết quả (Output) duy nhất. Kết
quả xử lý của một Neuron có thể làm Input cho các Neuron khác.
2.4 Mạng Neuron tích chập
Để máy tính xử lí được các dạng dữ liệu tự nhiên (âm thanh, hình ảnh, cảm giác...)
cần phải có một kiến trúc đặc biệt giống như cấu trúc của hệ thần kinh. Với khả năng
xử lí tuần tự của máy PC hiện nay cho dù có tốc độ rất cao cũng không thể xử lí kịp
thời và không đáp ứng được trong các tác vụ điều khiển. Do vậy, muốn có một hệ xử
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
19
lí nhanh, đa luồng cần có một hệ xử lí song song đồng thời của nhiều chíp xử lí như
hệ thần kinh của cơ thể sống.
Công nghệ mạng neuron tế bào CNN (Cenllular Neural Networks) đã được các
nhà khoa học Mỹ và Hungary phát minh ra vào năm 1988 có tốc độ xử lí của một tế
bào là 1012 phép tính/giây, cả hệ có khoảng 16 000 CPU xử lí đồng thời. Đây là bước
đột phá về cấu trúc của CNN là các CPU song song được kết nối thành mạng tích hợp
trong một chip.
2.4.1 Định nghĩa mạng Neuron tích chập
Những năm gần đây, ta đã chứng kiến được nhiều thành tựu vượt bậc trong ngành
Thị giác máy tính (Computer Vision). Các hệ thống xử lý ảnh lớn nhỏ Facebook,
Google hay Amazon đã đưa vào sản phẩm của mình những chức năng thông minh như
nhận diện khuôn mặt người dùng, phát triển xe hơi tự lái hay drone giao hàng tự động.
Convolutional Neural Network (CNNs – Mạng neuron tích chập) là một trong
những mô hình Deep Learning tiên tiến giúp cho chúng ta xây dựng được những hệ
thống thông minh với độ chính xác cao như hiện nay. Trong luận văn này, sẽ trình
bày về Convolution (tích chập) cũng như ý tưởng của mô hình CNNs trong phân lớp
đối tượng để phát hiện và nhận dạng trái cây trong ảnh màu.
2.4.2 Convolution (tích chập)
Tích chập được sử dụng đầu tiên trong xử lý tín hiệu số ( Signal processing).
Nhờ vào nguyên lý biến đổi thông tin, các nhà khoa học đã áp dụng kĩ thuật này vào
xử lý ảnh và video số.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
20
Để dễ hình dung, có thể xem tích chập như một cửa sổ trượt (sliding window)
áp đặt lên một ma trận. Có thể theo dõi cơ chế của tích chập qua hình minh hoạ bên
dưới
Hình 2.4 Mô hình tích chập
https://leonardoaraujosantos.gitbooks.io/artificial-inteligence/content/convolution.html
Ma trận bên trái là một bức ảnh đen trắng. Mỗi giá trị của ma trận tương đương
với một điểm ảnh (pixel), 0 là màu đen, 1 là màu trắng (nếu là ảnh grayscale thì giá
trị biến thiên từ 0 đến 255).
Sliding window còn có tên gọi là kernel, filter hay feature detector. Ở đây, dùng
một ma trận filter 3×3 nhân từng thành phần tương ứng (element-wise) với ma trận
ảnh bên trái. Giá trị đầu ra do tích của các thành phần này cộng lại. Kết quả của tích
chập là một ma trận (convoled feature) sinh ra từ việc trượt ma trận filter và thực hiện
tích chập cùng lúc lên toàn bộ ma trận ảnh bên trái.
2.4.3 Mô hình mạng nơ-ron tích chập
Bây giờ, đã biết thế nào là convolution. Vậy CNNs là gì? CNNs chỉ đơn giản
gồm một vài layer của convolution kết hợp với các hàm kích hoạt phi tuyến (nonlinear
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
21
activation function) như ReLU hay tanh để tạo ra thông tin trừu tượng hơn
(abstract/higher-level) cho các leyer tiếp theo.
Trong mô hình Feedforward Neural Network ( mạng nơ-ron truyền thẳng), các
layer kết nối trực tiếp với nhau thông qua một trọng số w (weighted vector). Các leyer
này còn được gọi là kết nối đầy đủ (fully connected layer) hay affine layer.
Trong mô hình CNNs thì ngược lại. Các layer liên kết được với nhau thông qua
cơ chế convolution. Layer tiếp theo là kết quả convolution từ layer trước đó, nhờ vậy
mà có được các kết nối cục bộ. Nghĩa là mỗi neuron ở layer tiếp theo sinh ra từ Filter
áp đặt tên lên một vùng ảnh cục bộ của neuron layer trước đó.
Mỗi layer như vậy được áp đặt các Filter khác nhau, thông thường có vào trăm
đến vài nghìn filter như vậy. Một số layer khác như pooling/subsampling layer dùng
để chắt lọc lại các thông tin hữu ích hơn (loại bỏ các thông tin nhiễu). Tuy nhiên, sẽ
không đi sâu vào khái niệm của các layer này.
Trong suốt quá trình huấn luyện, CNNs sẽ tự động học được các thông số cho
các filter. Ví dụ trong tác vụ phân lớp ảnh, CNNs sẽ cố gắng tìm ra thông số tối ưu
cho các filter tương ứng theo thứ tự raw pixel > edges > shapes > facial > high-level
features. Layer cuối cùng được dùng để phân lớp ảnh.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
22
Hình 2.5 Mô hình mạng neuron tích chập
https://www.kdnuggets.com/2016/11/intuitive-explanation-convolutional-neural-
networks.html/3
CNNs có tính bất biến và tính kết hợp cục bộ (Location Invariance and
Compositionality). Với cùng một đối tượng, nếu đối tượng này được chiếu theo các
gốc độ khác nhau (translation, rotation, scaling) thì độ chính xác của thuật toán sẽ bị
ảnh hưởng đáng kể. Pooling layer sẽ cho bạn tính bất biến đối với phép dịch chuyển
(translation), phép quay (rotation) và phép co giãn (scaling).
Tính kết hợp cục bộ cho ta các cấp độ biểu diễn thông tin từ mức độ thấp đến
mức độ cao và trừu tượng hơn thông qua convolution từ các filter. Đó là lý do tại sao
CNNs cho ra mô hình với độ chính xác rất cao. Cũng giống như cách con người nhận
biết các vật thể trong tự nhiên. Phân biệt được một con chó với một con mèo nhờ vào
các đặc trưng từ mức độ thấp (có 4 chân, có đuôi) đến mức độ cao (dáng đi, hình thể,
màu lông).
2.4.4 Xây dựng mạng Nơ-ron tích chập
Phần này sẽ giới thiệu một trong những mạng sâu được sử dụng rộng rãi đó là
mạng tích chập sâu (deep convolutional networks). Bài toán sẽ làm việc cụ thể với
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
23
mạng tích chập để giải quyết bài toán phân loại trái cây trên ảnh màu. Sẽ bắt đầu
mạng tích chập với việc sử dụng mạng truyền thống để giải quyết bài toán này trong
phần trước. Mặc dù nhiều phép toán lặp nhưng sẽ xây dựng mạng hiệu quả hơn. Luận
văn này sẽ khám phá ra rất nhiều kĩ thuật hiệu quả: Tích chập (convolution), giảm số
chiều (pooling), sử dụng GPUs để huấn luyện được nhiều dữ liệu hơn đã thực hiện
trên mạng cũ, mở rộng giải thuật huấn luyện dữ liệu (để giảm quá khớp – overfitting),
sử dụng kĩ thuật dropout để giảm overfitting, việc sử dụng tổng hợp các mạng và các
kĩ thuật khác. Kết quả là hệ thống làm việc gần như con người. Trong số 10.000 bức
ảnh huấn luyện, hệ thống sẽ phân loại đúng 9.967 bức ảnh.
Phần còn lại của chương sẽ thảo luận về học sâu dưới góc độ tổng quan và chi
tiết. Bài toán sẽ tìm hiểu làm thế nào để các mô hình mạng neuron tích chập có thể
ứng dụng để giải quyết các kỹ thuật phân loại trái cây trên ảnh màu, luận văn sẽ
nghiên cứu về mạng neuron trong tương lai và học sâu (deep learning), từ các ý tưởng
như giao diện người sử dụng hướng đích đến vai trò của học sâu trong trí tuệ nhân
tạo.
Phần này xây dựng dựa trên các phần trước sử dụng các ý tưởng như: lan truyền
ngược (backpropagation), regularization, hàm softmax....
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
24
Hình 2.6 Mô hình mạng perceptron đa tầng
http://neuralnetworksanddeeplearning.com/chap5.html
Đặc biệt, đối với mỗi điểm ảnh trong ảnh đầu vào, sẽ được mã hóa cường độ của
điểm ảnh là giá trị của neuron tương ứng trong tầng đầu vào. Đối với bức ảnh kích
thước 28x28 điểm ảnh đang sử dụng, mạng có 784 (28x28) neuron đầu vào. Sau đó
huấn luyện trọng số (weight) và độ lệch (bias) để đầu ra của mạng như mong đợi là
xác định chính xác ảnh các chữ số „0‟, „1‟, „2‟,....,‟8‟ hay „9‟.
Mạng neuron trước đây làm việc khá tốt: đã đạt được độ chính xác trên 98%, sử
dụng tập dữ liệu huấn luyện và kiểm thử từ tập dữ liệu ≈ lợi thế của các cấu trúc
không gian? Trong phần này, luận văn mô tả mạng neuron tích chập.
Những mạng này sử dụng một kiến trúc đặc biệt phù hợp cho bài toán phân loại
ảnh. Sử dụng kiến trúc này làm cho mạng tích chập huấn luyện nhanh hơn. Kết quả
là giúp huấn luyện sâu, mạng nhiều tầng, rất phù hợp cho phân loại ảnh. Ngày nay,
mạng tích chập sâu hoặc một số biến thể của nó được sử dụng trong các mạng neuron
để nhận dạng ảnh.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
25
Mạng tích chập sử dụng 3 ý tưởng cơ bản: các trường tiếp nhận cục bộ (local receptive
field), trọng số chia sẻ (shared weights) và tổng hợp (pooling).
Trường tiếp nhận cục bộ (Local receptive fields): Trong các tầng kết nối đầy đủ
được chỉ ra trước đây, đầu vào đã được mô tả là một đường thẳng đứng chứa các
neuron. Trong mạng tích chập, sẽ thay thế các đầu vào là 28 × 28 neuron, giá trị tương
ứng với 28 x28 cường độ điểm ảnh mà bài toán sử dụng:
Hình 2.7 Mô tả các neuron đầu vào
Như thường lệ mô hình sẽ kết nối các điểm ảnh đầu vào cho các neuron ở tầng
ẩn. Nhưng sẽ không kết nối mỗi điểm ảnh đầu vào cho mỗi neuron ẩn. Thay vào đó,
chỉ kết nối trong phạm vi nhỏ, các vùng cục bộ của bức ảnh.
Để được chính xác hơn, mỗi neuron trong lớp ẩn đầu tiên sẽ được kết nối với
một vùng nhỏ của các neuron đầu vào, ví dụ, một vùng 5 × 5, tương ứng với 25 điểm
ảnh đầu vào. Vì vậy, đối với một neuron ẩn cụ thể, có thể có các kết nối như sau:
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
26
Hình 2.8 Mô hình neuron cục bộ
Vùng đó trong bức ảnh đầu vào được gọi là vùng tiếp nhận cục bộ cho
neuron ẩn. Đó là một cửa sổ nhỏ trên các điểm ảnh đầu vào. Mỗi kết nối sẽ học một
trọng số. Và neuron ẩn cũng sẽ học một độ lệch (overall bias), có thể hiểu rằng neuron
lớp ẩn cụ thể là học để phân tích trường tiếp nhận cục bộ cụ thể của nó.
Sau đó trượt trường tiếp nhận cục bộ trên toàn bộ bức ảnh. Đối với mỗi trường
tiếp nhận cục bộ, có một neuron ẩn khác trong tầng ẩn đầu tiên . Để minh họa điều
này một cách cụ thể, hãy bắt đầu với một trường tiếp nhận cục bộ ở góc trên bên trái:
Hình 2.9 Mô hình neuron cục bộ
Sau đó, trượt trường tiếp nhận cục bộ trên bởi một điểm ảnh bên phải (tức là bằng
một neuron), để kết nối với một neuron ẩn thứ hai:
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
27
Hình 2.10 Mô hình neuron cục bộ
Và như vậy, việc xây dựng các lớp ẩn đầu tiên. Lưu ý rằng nếu có một ảnh đầu vào
28 × 28 và 5 × 5 trường tiếp nhận cục bộ thì ta sẽ có 24 × 24 neuron trong lớp ẩn.
Có được điều này là do chỉ có thể di chuyển các trường tiếp nhận cục bộ ngang qua
23 neuron (hoặc xuống dưới 23 neuron), trước khi chạm với phía bên phải (hoặc
dưới) của ảnh đầu vào.
Như vậy, việc xây dựng các lớp ẩn đầu tiên. Lưu ý rằng nếu có một ảnh đầu vào 28
× 28 và 5 × 5 trường tiếp nhận cục bộ, sau đó sẽ có 24 × 24 neuron trong lớp ẩn. Điều
này là bởi vì chỉ có thể di chuyển các trường tiếp nhận cục bộ 23 neuron ngang qua
(hoặc 23 neuron xuống), trước khi chạm với phía bên phải (hoặc dưới) của ảnh đầu
vào.
Trọng số và độ lệch (Shared weights and biases) : Mỗi một neuron ẩn có một độ
lệch (bias) và 5 × 5 trọng số liên kết với trường tiếp nhận cục bộ. Những gì chưa đề
cập đến là sẽ sử dụng các trọng số và độ lệch tương tự cho mỗi neuron ẩn 24 × 24.
Nói cách khác, đối với những neuron ẩn thứ j, k, đầu ra là:
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
28
Hình 2.11 Công thức xây dựng lớp tính Neuron
Ở đây,  là hàm kích hoạt neuron, có lẽ là hàm sigmoid ta sử dụng trong các chương
trước, b là giá trị chung cho độ lệch. M(wl), m là một mảng 5x5 của trọng số chia sẻ,
cuối cùng, sử dụng axy biểu thị giá trị kích hoạt vào tại vị trí x,y.
Do đó, chưa xác định chính xác khái niệm về đặc trưng, có thể nghĩ rằng của đặc
trưng là loại mẫu đầu vào mà làm cho neuron hoạt động: ví dụ, nó có thể là biên của
ảnh hoặc có thể là một dạng hình khối khác, ngay tại các vị trí khác nhau của ảnh đầu
vào. Tại sao điều này lại có lí, giả sử rằng các trọng số và độ lệch mà các neuron ẩn
chọn ra, một biên thẳng đứng (vertical edge) trong trường tiếp nhận cục bộ. Khả năng
đó rất hữu ích ở các vị trí khác nhau trong bức ảnh. Do đó, nó là hữu ích để áp dụng
phát hiện các đặc trưng giống nhau trong ảnh. Để đặt nó trong thuật ngữ trừu tượng
hơn một chút, mạng chập được thích nghi với bất biến dịch (translation invariance)
của các ảnh: di chuyển ảnh của một con mèo một ít, và nó vẫn là một hình ảnh của
một con mèo.
Đôi khi gọi các bản đồ từ các lớp đầu vào cho lớp ẩn là bản đồ đặc trưng (feature
map), gọi các trọng số xác định các bản đồ đặc trưng là trọng số chia sẻ (shared
weights), gọi độ lệch xác định bản đồ đặc trưng là độ lệch chia sẻ (shared bias). Các
trọng số được chia sẻ và độ lệch thường được gọi là hạt nhân (kernel) hay bộ lọc
(filter).
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
29
Cấu trúc mạng đã vừa mô tả có thể phát hiện một bản đồ đặc trưng . Để phát
hiện và nhận dạng ảnh thì cần nhiều hơn một bản đồ đặc trưng và một lớp tích chập
hoàn chỉnh bao gồm vài bản đồ đặc trưng:
Hình 2.12 Minh hoạ đặc trưng cấu trúc neuron
Trong ví dụ, có 3 bản đồ đặc trưng. Mỗi bản đồ đặc trưng được xác định bởi một
tập 5 × 5 trọng số chia sẻ, và một độ lệch chia sẻ duy nhất. Kết quả là các mạng có
thể phát hiện 3 loại đặc trưng khác nhau, với mỗi đặc trưng được phát hiện trên toàn
bộ ảnh, đã chỉ ra 3 bản đồ đặc trưng, để làm cho cho sơ đồ ở trên đơn giản. Tuy
nhiên, trong thực tế mạng chập có thể sử dụng nhiều bản đồ đặc trưng hơn. Một
trong những mạng chập đầu tiên là LeNet-5, sử dụng 6 bản đồ đặc trưng, mỗi bản
đồ được liên kết đến một trường tiếp nhận cục bộ 5 × 5. Vì vậy, các ví dụ minh họa
ở trên là thực sự khá gần LeNet-5. Trong ví dụ phát triển sau này của chương này sẽ
sử dụng lớp tích chập với 20 và 40 bản đồ đặc trưng. hãy xem qua một số bản đồ
đặc trưng đã được học.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
30
Hình 2.13 Bản đồ đặc trưng
Trên đây là 20 ảnh tương ứng với 20 bản đồ đặc trưng khác nhau (hay còn gọi là bộ
lọc, hay là nhân). Mỗi bản đồ được thể hiện là một hình khối kích thước 5 × 5,
tương ứng với 5 × 5 trọng số trong trường tiếp nhận cục bộ. Khối trắng có nghĩa là
một trọng số nhỏ hơn, vì vậy các bản đồ đặc trưng đáp ứng ít hơn để tương ứng với
điểm ảnh đầu vào. Khối sẫm màu hơn có nghĩa là trọng số lớn hơn, do đó, các bản
đồ đặc trưng đáp ứng nhiều hơn với các điểm ảnh đầu vào tương ứng. Những hình
ảnh trên cho thấy các kiểu đặc trưng mà lớp tích chập đáp ứng.
Một ưu điểm quan trọng của trọng số và độ lệch chia sẻ là nó làm giảm đáng
kể số lượng các tham số liên quan đến một mạng tích chập. Đối với mỗi bản đồ đặc
trưng
cần 25 = 5 × 5 trọng số chia sẻ và một độ lệch chia sẻ duy nhất. Vì vậy, mỗi bản đồ
đực trưng cần 26 tham số. Nếu có 20 bản đồ đặc trưng thì cần 20 x 26 = 520 tham số
để xác định lớp tích chập. Bây giờ hãy làm phép so sánh, giả sử chúng ta có lớp đầu
tiên kết nối đầy đủ, tức là có 784 = 28 × 28.784 = 28 × 28 neuron đầu vào, và số
neuron lớp ẩn khiêm tốn là 30. Như vậy cần 784 × 30 trọng số, cộng thêm 30 sai lệch
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
31
(bias), tổng số 23,550 tham số (parameter). Nói cách khác, lớp kết nối đầy đủ (fully
– connected layer) sẽ cần số lượng tham số nhiều gấp 40 lần so với lớp tích chập
(convolutional layer).
Tất nhiên, không thể thực sự làm một so sánh trực tiếp giữa số lượng các tham
số, bởi vì hai mô hình này khác nhau. Nhưng về trực giác dường như việc sử dụng
bất biến dịch của các lớp tích chập sẽ giảm số lượng các tham số cần thiết mà vẫn đạt
được hiệu quả giống như các mô hình kết nối đầy đủ. Mô hình mạng tích chập sẽ cho
kết quả huấn luyện nhanh hơn giúp xây dựng mạng sâu hơn sử dụng các lớp tích
chập. Cái tên “convolutional” xuất phát là các hoạt động trong phương trình đôi khi
được biết đến như convolution. Chính xác hơn một chút, đôi khi viết phương trình
như: a1 = σ (b + w * a0), trong đó a1 là tập kích hoạt đầu ra từ một bản đồ đặc trưng,
a0 là tập hợp các kích hoạt đầu vào, và * được gọi là phép toán chập.
Lớp chứa hay lớp tổng hợp (Pooling layer): Ngoài các lớp tích chập vừa mô tả,
mạng neuron tích chập cũng chứa các lớp pooling. Lớp pooling thường được sử dụng
ngay sau lớp tích chập. Những gì các lớp pooling làm là đơn giản hóa các thông tin ở
đầu ra từ các lớp tích chập.
Ví dụ, mỗi đơn vị trong lớp pooling có thể thu gọn một vùng 2 × 2 neuron trong lớp
trước. Một thủ tục pooling phổ biến là max-pooling. Trong max- pooling, một đơn vị
pooling chỉ đơn giản là kết quả đầu ra kích hoạt giá trị lớn nhất trong vùng đầu vào 2
× 2, như minh họa trong sơ đồ sau:
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
32
Hình 2.14 Sơ đồ phân lớp
Bởi vì có 24 × 24 neuron đầu ra từ các lớp tích chập, sau khi pooling có 12 × 12
neuron. Như đã đề cập ở trên, lớp tích chập thường có nhiều hơn một bản đồ đặc
trưng, áp dụng max-pooling cho mỗi bản đồ đặc trưng riêng biệt. Vì vậy, nếu có ba
bản đồ đặc trưng, các lớp tích chập và max-pooling sẽ kết hợp như sau:
có thể hiểu max-pooling như là một cách cho mạng để hỏi xem một đặc trưng nhất
được tìm thấy ở bất cứ đâu trong một khu vực của ảnh. Sau đó nó bỏ đi những thông
tin định vị chính xác. Trực giác là một khi một đặc trưng đã được tìm thấy, vị trí chính
xác của nó là không quan trọng như vị trí thô của nó so với các đặc trưng khác. Một
Hình 2.15 Sơ đồ phân lớp
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
33
lợi ích lớn là có rất nhiều tính năng gộp ít hơn (fewer pooled features), điều này sẽ
giúp giảm số lượng các tham số cần thiết trong các lớp sau.
Max-pooling không phải là kỹ thuật duy nhất được sử dụng để pooling. Một
phương pháp phổ biến khác được gọi là L2 pooling. Ở đây, thay vì lấy giá trị kích
hoạt tối đa (maximum activation) của một vùng 2 × 2 neuron, chúng ta lấy căn bậc
hai của tổng các bình phương của kích hoạt trong vùng 2 × 2. Trong khi các chi tiết
thì khác nhau, nhưng về một khía cạnh khác thì tương tự như max-pooling: L2
pooling là một cách để cô đọng thông tin từ các lớp tích chập. Trong thực tế, cả hai
kỹ thuật đã được sử dụng rộng rãi, đôi khi người ta sử dụng các loại pooling khác.
Đặt tất cả chúng lại với nhau (Putting it all together): Bây giờ có thể đặt tất cả
những ý tưởng lại với nhau để tạo thành một mạng tích chập hoàn chỉnh. Nó tương
tự như kiến trúc nhìn vào, nhưng có thêm một lớp 10 neuron đầu ra, tương ứng với
10 giá trị có thể cho các số MNIST ( '0', '1', '2', v.v...):
Hình 2.16 Sơ đồ phân lớp
Mạng bắt đầu với 28 × 28 neuron đầu vào, được sử dụng để mã hóa các cường
độ điểm ảnh cho ảnh MNIST. Sau đó là một lớp tích chập sử dụng 5 × 5 trường tiếp
nhận cục bộ và 3 bản đồ đặc trưng. Kết quả là một lớp 3 × 24 × 24 neuron lớp ẩn.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
34
Bước tiếp theo là một lớp max-pooling, áp dụng cho 2 × 2 vùng qua 3 bản đồ đặc
trưng (feauture maps). Kết quả là một lớp 3 × 12 × 12 neuron đặc trưng ở tầng ẩn.
Lớp cuối cùng của các kết nối trong mạng là một lớp đầy đủ kết nối. Đó là, lớp
này nối mọi neuron từ lớp max-pooled tới mọi neuron của tầng ra. Kiến trúc kết nối
đầy đủ này cũng giống như mô hình sử dụng trong các chương trước.
Kiến trúc tích chập này hoàn toàn khác với các kiến trúc được sử dụng trong
các chương trước. Nhưng về tổng thể thì tương tự: mạng cấu tạo từ nhiều đơn vị đơn
giản, hành vi của nó được xác định bởi trọng số và độ lệch. Và mục tiêu tổng thể là
vẫn như nhau: sử dụng dữ liệu huấn luyện để huấn luyện trọng số và độ lệch của
mạng vì vậy mạng hiện tốt việc phân loại các chữ số đầu vào.
Đặc biệt, như phần đầu đã trình bày, sẽ huấn luyện mạng sử dụng gradient
descent ngẫu nhiên và lan truyền ngược. Tuy nhiên, cần thay đổi thủ tục lan truyền
ngược (backpropagation). Lý do là công thức của lan truyền ngược là cho các mạng
với các tầng kết nối đầy đủ, nó đơn giản để thay đổi công thức lan truyền ngược cho
các lớp tích chập và các lớp max- pooling
2.5 Một số kiến trúc convolutional neural network thông dụng
2.5.1 Kiến trúc AlexNet [17]
Hình 2.17 Kiến trúc AlexNet
https://www.researchgate.net/figure/AlexNet-CNN-architecture-layers_fig1_318168077
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
35
Kiến trúc AlexNet do Alex Krizhevsky phát triển vào năm 2012 để khi tham gia
cuộc thi ImageNet. Mô hình này đã đạt giải nhất trong cuộc thi 2012 ImageNet.
Mô hình gồm 5 tầng convolitional và 3 tầng fully connected với các tham số như
trong hình vẽ trên.
Số lượng tham số: 60 triệu tham số
2.5.2 Kiến trúc VGG 16 [17]
Hình 2.18 Kiến trúc VGG 16
https://www.quora.com/What-is-the-VGG-neural-network
Kiến trúc VGG 16 do Simonyan và Zissermanphát triển vào năm 2014 để khi tham
gia cuộc thi ILSVRC 2014. Mô hình này đã đạt giải nhì trong cuộc thi ILSVRC
2014.
Mô hình gồm tổng cộng 16 tầng, trong đó có 13 tầng convolitional và 3 tầng fully
connected với các tham số như trong hình vẽ trên.
Số lượng tham số: 138 triệu tham số
2.5.3 Kiến trúc Inception/GoogleNet [18]
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
36
Hình 2.19 Kiến trúc Inception
https://medium.com/coinmonks/paper-review-of-googlenet-inception-v1-winner-of-ilsvlc-
2014-image-classification-c2b3565a64e7
Kiến trúc Inception do Google phát triển và đã chiến thắng trong cuộc thi ILSVRC
2014.
Mô hình gồm 22 tầng convolitional và không có tầng fully connected. Trong mô
hình Inception, các tác giả đã đưa ra module đặt tên là Inception. Inception gồm các
phép toan filter được thực hiện song song trên input của tầng trước đó. Mỗi
inception gồm có 3 convolutional có kích thước (1x1, 3x3, 5x5) và 1 tầng max
pooling kích thước 3x3.
Hình 2.20 Inception
https://medium.com/coinmonks/paper-review-of-googlenet-inception-v1-winner-of-ilsvlc-
2014-image-classification-c2b3565a64e7
Số lượng tham số: 5 triệu tham số
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
37
CHƯƠNG 3. PHÂN LOẠI ẢNH TRÁI CÂY
3.1 Phát biểu bài toán
Phân lớp các đối tượng trong ảnh là bài toán quan trọng trong thị giác máy tính,
đây là giai đoạn quan trọng trong việc hiểu các đối tượng trong ảnh. Tuy nhiên, cho
tới thời điểm này, mặc dù đã có nhiều giải pháp hiệu quả giải quyết bài toán phân lớp
trên từng loại cơ sở dữ liệu ảnh cụ thể, bài toán phân lớp ảnh nói chung vẫn còn là
bài toán thách thức.
Trong luận văn này sẽ tìm hiểu bài toán phân lớp ảnh trái cây màu. Đầu vào của
bài toán là ảnh màu của trái cây có kích thước 100 × 100. Đầu ra của bài toán là mã
số màu của ảnh trái cây. Có tất cả 60 loại trái cây.
Ví dụ 1: Một số ảnh quả táo cần nhận dạng
Hình 3.1 Hình dạng khác nhau của cùng một loại táo
Ví dụ 2: Một số ảnh quả Nho cần nhận dạng
Hình 3.2 Hình dạng quả nho
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
38
Chúng ta có thể mô hình lại bài toán như sau
Input: đầu vào của bài toán là một ảnh: 𝑥 ∈ ℝ100×100×3
Output: đầu ra của bài toán là nhãn của ảnh 𝑥, cho biết ảnh thuộc loại trái cấy nào,
hay là một hàm 𝑓(𝑥) ∈ [0, 59] với 𝑥 ∈ ℝ100×100×3
3.2 Cơ sở dữ liệu trái cây
Tên cơ sở dữ liêu trái cây Fruits-360 do Horea Muresan [1] phát triển năm 2017. Cơ
sở dữ liệu Fruits-360 có tất cả 38409 ảnh trái cây và chia làm 2 tập ảnh: Training và
Testing
• Kích thước tập Training: 28736 ảnh
• Kích thước tập Testing: 9673 ảnh
• Kích thước ảnh: 100x100 pixels
• Số lớp: 60 lớp tương ứng với 60 loại trái cây
Toàn bộ 60 loại trái cây có tên và mã số tương ứng được cho như trong bảng sau
Mã số Tên trái cây
0 Apple Braeburn
1 Apple Golden 1
2 Apple Golden 2
3 Apple Golden 3
4 Apple Granny Smith
5 Apple Red 1
6 Apple Red 2
7 Apple Red 3
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
39
8 Apple Red Delicious
9 Apple Red Yellow
10 Apricot
11 Avocado
12 Avocado ripe
13 Banana
14 Banana Red
15 Cactus fruit
16 Carambula
17 Cherry
18 Clementine
19 Cocos
20 Dates
21 Granadilla
22 Grape Pink
23 Grape White
24 Grape White 2
25 Grapefruit Pink
26 Grapefruit White
27 Guava
28 Huckleberry
29 Kaki
30 Kiwi
31 Kumquats
32 Lemon
33 Lemon Meyer
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
40
34 Limes
35 Litchi
36 Mandarine
37 Mango
38 Maracuja
39 Nectarine
40 Orange
41 Papaya
42 Passion Fruit
43 Peach
44 Peach Flat
45 Pear
46 Pear Abate
47 Pear Monster
48 Pear Williams
49 Pepino
50 Pineapple
51 Pitahaya Red
52 Plum
53 Pomegranate
54 Quince
55 Raspberry
56 Salak
57 Strawberry
58 Tamarillo
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
41
59 Tangelo
Bảng 3.1 Các loại trái cây
Chúng ta mô tả cơ sở dữ liệu Fruits dưới dạng 𝐷 = {𝑥(𝑖)
, 𝑦(𝑖)
}1
𝑚
. Trong đó: 𝑥 là
ảnh trái cây với 3 kênh màu RGB, 𝑥 ∈ ℝ100×100×3
, 𝑦 là nhãn của ảnh 𝑥, 𝑦 ∈ [0 … 59],
𝑚 là số lượng dữ liệu huấn luyện.
3.3 Cấu trúc thư mục cơ sở dữ liệu ảnh trái cây
Dữ liệu trong cơ sở dữ liệu Fruits-360 được tổ chức thành 2 thư mục
• Thư mục Training: chứa các file ảnh dùng để training mô hình
• Thư mục Validation: chưa các file ảnh dùng để kiểm tra mô hình
Trong mỗi thư mục Training, Validation, chứa 60 thư mục con tương ứng với 60 loại
trái cây (các ảnh cùng loại trái cây sẽ nằm trong cùng một thư mục).
Tên file ảnh: Tên file ảnh được đặt tên ImageIndex_100.jpg hay
r_ImageIndex_100.jpg
• ImageIndex là mã số cho biết ảnh thứ mấy
• 100 là kích thước file ảnh là 100x100
• r cho biết ảnh đã bị xoay
3.4 Dữ liệu mẫu
Một số ảnh táo (apple) thuộc loại Apple Braeburn được cho như trong hình sau
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
42
Hình 3.3 Trái cây Apple Braeburn
Các ảnh của một loại có thể được chụp ở các gốc nhìn khác nhau. Ví dụ trong
hình sau loại táo Apple Braeburn được chụp ở các gốc nhìn khác nhau.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
43
Hình 3.4 Trái cây Apple Braeburn đã bị xoay
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
44
Hình 3.5 Trái cây Apple Golden 1
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
45
Hình 3.6 Trái cây Apple Golden 1 đã bị xoay
3.5 Phương pháp đề xuất
Convolutional Neural Network (CNN) có nhiều đột phá trong các bài toán phân
lớp dữ liệu ảnh. CNN là mô hình học theo chiến lược end-to-end, nghĩa là tích hợp
phần học đặc trưng và phần học phân lớp trong cùng một mô hình. Tuy nhiên, do đặc
điểm của mỗi bài toán khác nhau nên khi áp dụng mô hình CNN, chúng ta cần phải
thiết kế kiến trúc mô hình phù hợp với bài toán đang giải quyết.
A. Kiến trúc
Kiến trúc tổng quan của mô hình giải quyết bài toán được thiết kế gồm 2 phần:
phần thứ nhất, gồm có các tầng Convolution để biểu diễn đặc trưng. Phần thứ hai
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
46
theo sau đó là một mạng Fully Connected để phân lớp dữ liệu. Thông tin các tầng
được mô tả như sau:
• Tầng Input: Tầng input chấp nhận ảnh có kích thước 100 × 100 pixels với 3
kênh màu RGB. Đầu vào của tầng input nhận ảnh 𝑥 ∈ ℝ100×100×3
• Tầng Convolution: Có 5 tầng Convolutions dùng để khám phá đặc trưng trong
ảnh dữ liệu.
• Hàm activation: Tất cả các tầng (tầng convolution và tầng Fully Connected)
đều dùng hàm activation ReLU (Rectified Linear Units) 𝑓(𝑥) = max⁡(0, 𝑥)
để giúp mạng không bị dày đặc và giúp việc huấn luyện mạng nhanh hơn.
• Tầng Pooling: Các thông tin ở tầng trước (thông tin cấp thấp) được dùng để
tổng hợp thành thông tin ở tầng sau (thông tin cấp cao hơn), và để tổng hợp
hiệu quả, thông tin lớp trước cũng cần phải được giản lược bớt độ phức tạp.
Cho nên chúng tôi dùng max pooling giải quyết vấn đề này. Max pooling dùng
ở đây có giá trị stride bằng với giá trị padding.
• Tầng Fully Connected: Có 3 tầng Fully Connected dùng để phân lớp dữ liệu.
Tất cả các tầng Fully Connected chúng tôi dung kỹ thuật Dropout giúp tránh
vấn đề overfitting.
• Tầng output: Tầng output có 60 neuron, mỗi neuron tương ứng với một lớp.
Xác xuất của mỗi lớp được xác định thông qua hàm softmax.
Trong đó, 𝑝𝑖 là xác suất của từng lớp, 𝑜𝒊 là giá trị output ở lớp 𝑖, 𝑛𝑦 là số lớp của
bài toán.
Các thông số của từng tầng được cho trong bảng sau:
STT Tầng Kích thước
Chiều rộng Chiều cao Chiều sâu
𝑝𝒊 =
𝑒𝑜𝒊
∑ 𝑒𝑜𝒌
𝑛𝑦
𝒌=1
, ∀𝑖
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
47
0 Input 32 32 3
1 Convolution 9 9 32
2 ReLU 9 9 32
3 Pooling 9 9 32
4 Convolution 7 7 64
5 ReLU 7 7 64
6 Pooling 7 7 64
7 Convolution 5 5 128
8 ReLU 5 5 128
9 Pooling 5 5 128
10 Convolution 5 5 256
11 ReLU 5 5 256
12 Pooling 5 5 256
13 Convolution 3 3 512
14 ReLU 3 3 512
15 Pooling 3 3 512
16 Fully Connected 1 1 2048
17 ReLU 1 1 2048
18 Fully Connected 1 1 1024
19 ReLU 1 1 1024
20 Fully Connected 1 1 60
21 Softmax 1 1 60
Bảng 3.2 Các thông số của mô hình
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
48
B. Hàm loss
Để đánh giá lỗi giữa output của mạng và giá trị ground truth của tập dữ liệu,
chúng tôi chọn hàm loss là hàm category cross entropy
𝐿(𝑦, 𝑦
̂) = − ∑(𝑦(𝑖)
log(𝑦
̂(𝑖)
) + (1 − 𝑦(𝑖)
) log(1 − 𝑦
̂(𝑖)
))
𝑚
𝑖=1
Trong đó, 𝑦(𝑖)
là ground truth label của điểm dữ liệu 𝑥(𝑖)
, 𝑦
̂(𝑖)
là giá trị dự đoán
C. Phương pháp huấn luyện
Để training các tham số, chúng tôi dùng thuật toán Adaptive Moment Estimation
(Adam) để tối ưu hóa hàm Loss.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
49
CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
4.1 Thực nghiệm và kết quả
A. Môi trường:
• Hệ thống phát triển trên môi trường Python 3.5
• Framework: Dùng Framework Tensorflow để phát triển Convolutional
Neural Network
• Cấu hình máy dùng để huấn luyện mô hình:
o RAM: 16 GB
o Card đồ họa: Một card đồ họa NVIDIA GTX 1070, 8GB
o Ổ cứng: SSD 250 GB
B. Thực nghiệm
• Tỷ lệ dữ liệu dùng training và testing: 75% training (28736 ảnh), 25%
testing (9673 ảnh)
• Các hyper parameters:
o Kích thước một batch: 100 ảnh
o Khởi tạo các trọng số: Các trọng được khởi tạo ngẫu nhiên theo
phương pháp Xavier
o Hệ số học có giá trị: 0.001
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
50
Quá trình giảm lỗi trong quá trình huấn luyện
Hình 4.1 Độ lỗi của mô hình trong quá trình huấn luyện dựa trên tensorboard
Mô hình có độ lỗi giảm khá nhanh, chỉ trong vòng 300 lần lặp, mức độ lỗi đã giảm
từ 4 xuống gần bằng 0. Điều này phản ánh mức độ hội tụ của mô hình khá nhanh.
Hình 4.2 Độ chính xác của mô hình trong quá trình huấn luyện dựa trên
tensorboard
Mô hình có độ chính xác tăng khá tốt, chỉ trong vòng 300 lần lặp, mức độ chính xác
của mô hình đã tăng từ gần 0% lên hơn 90%. Điều này phản ánh khả năng học của
mô hình khá nhanh.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
51
C. Kết quả thực nghiệm:
Số tầng convolutional Số tầng fully connected Độ chính xác
4
2 92.12%
3 95.23%
4 94.52%
5
2 95.17%
3 97.47%
4 94.30%
6
2 94.27%
3 95.19%
4 94.72%
Qua thực nghiệm các mô hình với các thông số khác nhau, mô hình có kết quả tốt là
có 5 tầng convolutional và 3 tầng fully connected với độ chính xác 97.47%
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
52
D. Giao diện chính của chương trình
Hình 4.3 Giao diện chính của ứng dụng
Các thành phần của giao diện được cho trong bảng sau
STT Chức năng
1 Thư mục chứa dữ liệu huấn luyện
2 Thư mục chứa dữ liệu kiểm tra
3 Chọn thư mục chứa dữ liệu huấn luyện
4 Chọn thư mục chứa dữ liệu kiểm tra
1
2
3
4
5
6
10
7
9
8
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
53
5 Huấn luyện mô hình
6 Kiểm tra mô hình trên tập dữ liệu kiểm tra
7 Chọn một ảnh để kiểm tra
8 Cửa sổ hiện kết quả
9 Xóa thông tin của sở hiện kết quả
10 Đóng chương trình
Bảng 4.1 Các chức năng của ứng dụng
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
54
Quá trình huấn luyện
Hình 4.4 Huấn luyện mô hình
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
55
Hình 4.5 Kiểm tra trên tập dữ liệu test
4.2 Kết luận và phướng phát triển
Luận văn đã phân tích, thiết kế một mô hình CNN để phân loại trái cây, mô
hình sử dụng cả ba kênh RGB để phân lớp ảnh. Kết quả thực nghiệm cho thấy độ
chính xác của mô hình là 95.01%. So với kết quả của Horea Muresan [2] có độ chính
xác là 94.59%, mô hình phát triển trong luận văn tốt hơn 0.42%
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
56
4.3 Hướng phát triển tiếp theo
Hướng phát triển tiếp theo là xem xét việc sinh thêm dữ liệu bằng cách gây
nhiễu trên các ảnh gốc, tạo nền cho các ảnh để có thể sử dụng được mô hình trên dữ
liệu ảnh có nền. Biến đổi ảnh sang ảnh có một kênh màu và kết hợp một số mô hình
lại với nhau để cho độ chính xác cao hơn.
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
57
TÀI LIỆU THAM KHẢO
[1] Fruits dataset, https://www.kaggle.com/moltean/fruits (truy cập ngày 18/5/2018).
[2] Horea Muresan, Mihai Oltean, “Fruit recognition from images using deep
learning”, Technical Report, Babes-Bolyai University, 2017.
[3] Srivastava, N., Hinton, G., Krizhevsky, A., Sutskever, I., & Salakhutdinov, R.
“Dropout: A simple way to prevent neural networks from overfitting”, The Journal
of Machine Learning Research, 15(1), p.1929-1958, 2014.
[4] Martín Abadi , Paul Barham , Jianmin Chen , Zhifeng Chen , Andy Davis, Jeffrey
Dean , Matthieu Devin , Sanjay Ghemawat , Geoffrey Irving , Michael Isard ,
Manjunath Kudlur , Josh Levenberg , Rajat Monga , Sherry Moore , Derek G. Murray
, Benoit Steiner , Paul Tucker , Vijay Vasudevan , Pete Warden , Martin Wicke ,
Yuan Yu , Xiaoqiang Zheng, “TensorFlow: a system for large-scale machine
learning”, Proceedings of the 12th USENIX conference on Operating Systems Design
and Implementation, 2016.
[5] .Y. LeCun and Y. Bengio.“Convolutional networks for images, speech, and time-
series.” In M. A. Arbib, editor, The Handbook of Brain Theory and Neural Networks.
MIT Press, 1995.
[6] .Fabien Lauer, ChingY. Suen, Gérard Bloch,”A trainable feature extractor for
handwritten digit recognition“,Elsevier, october 2006.
[7] Proceedings of the Seventh International Conference on Document Analysis
and Recognition (ICDAR 2003) 0-7695-1960-1/03 $17.00 © 2003 IEEE
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
58
[8] Chirag N. Paunwala & Suprava Patnaik. “A Novel Multiple License Plate
Extraction Techniquefor Complex Background in Indian Traffic Conditions”,
Sarvajanik College of Engineering and Technology, 2010
[9] Choo Kar Soon, Kueh Chiung Lin, Chung Ying Jeng and Shahrel A. Suandi ,
“Malaysian Car Number Plate Detection and Recognition System”, 2012
[10] Tran Duc Duan, Duong Anh Duc, Tran Le Hong Du, “Combining Hough
Transform and Contour Algorithm for detecting Vehicles License-Plates”, University
of Natural Sciences, 2004
[11] Nobuyuki Otsu, "A threshold selection method from gray-level histograms”,
1979
[12] R.C. Gonzalez, R.E. Woods, Digital Image Processing, Addison-Wesley, 1993.
[13] Các tài liệu về EmguCV tại www.emgucv.com OPenCV tại www.opencv.com
[14] http://genk.vn/giai-ngo-ve-deep-learning-cong-nghe-dang-giup-cho-tri-tue-
nhan-tao-sanh-duoc-voi-con-nguoi-20160816002755886.chn (Ngày truy cập
20/07/2018)
[15] https://ongxuanhong.wordpress.com/category/data-science/deep-learning/
(Ngày truy cập 20/07/2018)
[16] Alex Krizhevsky, “Imagenet classification with deep convolutional neural
networks”, Advances in neural information processing systems, 2012
[17] Karen Simonyan, Andrew Zisserman, “Very Deep Convolutional Networks for
Large-Scale Image Recognition”, arXiv:1409.1556, 2014
Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011
59
[18] Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed,
Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, Andrew Rabinovich,
“Going Deeper with Convolutions”, 2014

More Related Content

What's hot

Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
Toan Pham
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
Võ Phúc
 
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOTĐề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đĐề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...
Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...
Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...hoainhan1501
 
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAYLuận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đĐề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhBáo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
nataliej4
 
Luận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAY
Luận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAYLuận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAY
Luận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Luận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv
Luận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencvLuận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv
Luận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv
Dịch vụ viết thuê Luận Văn - ZALO 0932091562
 
Đề tài: Xây dựng website bán hàng trực tuyến, HAY
Đề tài: Xây dựng website bán hàng trực tuyến, HAYĐề tài: Xây dựng website bán hàng trực tuyến, HAY
Đề tài: Xây dựng website bán hàng trực tuyến, HAY
Dịch vụ viết thuê Khóa Luận - ZALO 0932091562
 
Đề tài chương trình quản lý các lớp ngoại ngữ, HAY
Đề tài  chương trình quản lý các lớp ngoại ngữ, HAYĐề tài  chương trình quản lý các lớp ngoại ngữ, HAY
Đề tài chương trình quản lý các lớp ngoại ngữ, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Luận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đ
Luận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đLuận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đ
Luận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đ
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAYĐề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơnKĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Nguyen Thieu
 
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAYĐề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Xử lý ảnh PTIT
Xử lý ảnh PTITXử lý ảnh PTIT
Xử lý ảnh PTITTran Tien
 
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
Vi Thái
 
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNHBÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
Hoà Đoàn
 

What's hot (20)

Slide đồ án tốt nghiệp
Slide đồ án tốt nghiệpSlide đồ án tốt nghiệp
Slide đồ án tốt nghiệp
 
Giáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tinGiáo trình phân tích thiết kế hệ thống thông tin
Giáo trình phân tích thiết kế hệ thống thông tin
 
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOTĐề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
Đề tài: Xây dựng website giới thiệu sản phẩm phần mềm, HOT
 
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đĐề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
Đề tài: Quản lý cửa hàng vật liệu xây dựng, HAY, 9đ
 
Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...
Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...
Báo Cáo Cuối Ký Thực Tập Tốt Nghiệp Xậy Dựng Web Bán Hàng Trực Tuyến bằng Ope...
 
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAYLuận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
Luận văn: Xây dựng ứng dụng Android xem video trực tuyến, HAY
 
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đĐề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
 
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minhBáo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
 
Luận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAY
Luận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAYLuận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAY
Luận văn: Ứng dụng công nghệ IoT cho giám sát môi trường, HAY
 
Luận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv
Luận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencvLuận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv
Luận văn Thạc sĩ Xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv
 
Đề tài: Xây dựng website bán hàng trực tuyến, HAY
Đề tài: Xây dựng website bán hàng trực tuyến, HAYĐề tài: Xây dựng website bán hàng trực tuyến, HAY
Đề tài: Xây dựng website bán hàng trực tuyến, HAY
 
Đề tài chương trình quản lý các lớp ngoại ngữ, HAY
Đề tài  chương trình quản lý các lớp ngoại ngữ, HAYĐề tài  chương trình quản lý các lớp ngoại ngữ, HAY
Đề tài chương trình quản lý các lớp ngoại ngữ, HAY
 
Luận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đ
Luận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đLuận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đ
Luận văn: Ứng dụng kỹ thuật học máy vào phát hiện mã độc, 9đ
 
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAYĐề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
 
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơnKĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
 
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAYĐề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
Đề tài: Chế tạo mô hình nhà thông minh sử dụng Arduino, HAY
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
 
Xử lý ảnh PTIT
Xử lý ảnh PTITXử lý ảnh PTIT
Xử lý ảnh PTIT
 
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
 
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNHBÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
BÁO CÁO CÔNG NGHỆ PHẦN MỀM 8 điểm-QUẢN LÝ CỬA HÀNG BÁN MÁY ẢNH
 

Similar to LUẬN VĂN THẠC SĨ: ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI TRÁI CÂY

Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin
Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin
Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin
Dịch vụ viết bài trọn gói ZALO: 0936 885 877
 
Kỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di động
Kỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di độngKỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di động
Kỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di động
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Khóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGap
Khóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGapKhóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGap
Khóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGap
Điềm Nguyễn Văn
 
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmỨng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
hieu anh
 
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmĐề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Luận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAY
Luận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAYLuận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAY
Luận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAYĐề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Luận văn: Mô hình hóa luồng tương tác ifml trong phát triển di động
Luận văn: Mô hình hóa luồng tương tác ifml trong phát triển di độngLuận văn: Mô hình hóa luồng tương tác ifml trong phát triển di động
Luận văn: Mô hình hóa luồng tương tác ifml trong phát triển di động
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đHệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
Phan Hữu Linh
 
Thiết kế và chế tạo hệ thống chống trộm xe máy.pdf
Thiết kế và chế tạo hệ thống chống trộm xe máy.pdfThiết kế và chế tạo hệ thống chống trộm xe máy.pdf
Thiết kế và chế tạo hệ thống chống trộm xe máy.pdf
Man_Ebook
 
Baocaothuctapcuoiky
BaocaothuctapcuoikyBaocaothuctapcuoiky
BaocaothuctapcuoikyVăn Tiến
 
Demo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdfDemo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdf
OanhVThKiu1
 
Baocaothuctapcuoiky
BaocaothuctapcuoikyBaocaothuctapcuoiky
BaocaothuctapcuoikyTrần Nam
 
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đĐề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Maubaocao thuctap totnghiepcntt
Maubaocao thuctap totnghiepcnttMaubaocao thuctap totnghiepcntt
Maubaocao thuctap totnghiepcntt
Hiếu Ngô
 
Báo cáo đồ án cơ sở đề tài xây dựng ứng dụng chat tự động với deep learning
Báo cáo đồ án cơ sở đề tài  xây dựng ứng dụng chat tự động với deep learningBáo cáo đồ án cơ sở đề tài  xây dựng ứng dụng chat tự động với deep learning
Báo cáo đồ án cơ sở đề tài xây dựng ứng dụng chat tự động với deep learning
nataliej4
 
Luận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mở
Luận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mởLuận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mở
Luận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mở
Aubrey Yundt
 
Luận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đ
Luận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đLuận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đ
Luận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đ
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
BaoCaoThucTap_NguyenTruongNhatNam
BaoCaoThucTap_NguyenTruongNhatNamBaoCaoThucTap_NguyenTruongNhatNam
BaoCaoThucTap_NguyenTruongNhatNamNguyễn Nam
 

Similar to LUẬN VĂN THẠC SĨ: ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI TRÁI CÂY (20)

Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin
Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin
Luận văn: Quản lý đào tạo trình độ thạc sĩ ngành Công nghệ thông tin
 
Kỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di động
Kỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di độngKỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di động
Kỹ thuật mô hình hóa luồng tương tác IFML trong ứng dụng di động
 
Khóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGap
Khóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGapKhóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGap
Khóa Luận Tìm Hiểu Về Ngôn Ngữ Lập Trình Độc Lập Trên Mobile - PhoneGap
 
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmỨng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
 
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩmĐề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
Đề tài: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
 
Luận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAY
Luận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAYLuận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAY
Luận văn: Theo dõi đối tượng dựa trên giải thuật di truyền, HAY
 
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAYĐề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
Đề tài: Xây dựng, triển khai và quản lý mô hình mạng, HAY
 
Luận văn: Mô hình hóa luồng tương tác ifml trong phát triển di động
Luận văn: Mô hình hóa luồng tương tác ifml trong phát triển di độngLuận văn: Mô hình hóa luồng tương tác ifml trong phát triển di động
Luận văn: Mô hình hóa luồng tương tác ifml trong phát triển di động
 
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đHệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
Hệ thống tự động phân luồng câu hỏi và giải đáp yêu cầu, 9đ
 
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
 
Thiết kế và chế tạo hệ thống chống trộm xe máy.pdf
Thiết kế và chế tạo hệ thống chống trộm xe máy.pdfThiết kế và chế tạo hệ thống chống trộm xe máy.pdf
Thiết kế và chế tạo hệ thống chống trộm xe máy.pdf
 
Baocaothuctapcuoiky
BaocaothuctapcuoikyBaocaothuctapcuoiky
Baocaothuctapcuoiky
 
Demo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdfDemo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdf
 
Baocaothuctapcuoiky
BaocaothuctapcuoikyBaocaothuctapcuoiky
Baocaothuctapcuoiky
 
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đĐề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
Đề tài: Ứng dụng học từ vựng tiếng anh trên điện thoại, HAY, 9đ
 
Maubaocao thuctap totnghiepcntt
Maubaocao thuctap totnghiepcnttMaubaocao thuctap totnghiepcntt
Maubaocao thuctap totnghiepcntt
 
Báo cáo đồ án cơ sở đề tài xây dựng ứng dụng chat tự động với deep learning
Báo cáo đồ án cơ sở đề tài  xây dựng ứng dụng chat tự động với deep learningBáo cáo đồ án cơ sở đề tài  xây dựng ứng dụng chat tự động với deep learning
Báo cáo đồ án cơ sở đề tài xây dựng ứng dụng chat tự động với deep learning
 
Luận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mở
Luận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mởLuận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mở
Luận văn Xây dựng hệ thống mạng doanh nghiệp sử dụng mã nguồn mở
 
Luận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đ
Luận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đLuận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đ
Luận văn: Ứng dụng công nghệ Webrtc cho giải pháp cộng tác, 9đ
 
BaoCaoThucTap_NguyenTruongNhatNam
BaoCaoThucTap_NguyenTruongNhatNamBaoCaoThucTap_NguyenTruongNhatNam
BaoCaoThucTap_NguyenTruongNhatNam
 

More from ssuserc1c2711

LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...
LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...
LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...
LUẬN VĂN THẠC SĨ:  ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...LUẬN VĂN THẠC SĨ:  ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...
LUẬN VĂN THẠC SĨ: ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...
LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...
LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...
LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...
LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...
LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...
LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...
LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...
LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAM
LUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAMLUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAM
LUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAM
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...
LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...
LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...
LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...
LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...
LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...
LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜI
LUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜILUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜI
LUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜI
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
ssuserc1c2711
 
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
ssuserc1c2711
 

More from ssuserc1c2711 (20)

LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...
LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...
LUẬN VĂN THẠC SĨ:  PHÂN LẬP, TUYỂN CHỌN VI KHUẨN SINH TỔNG HỢP ENZYME CHITIN ...
 
LUẬN VĂN THẠC SĨ: ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...
LUẬN VĂN THẠC SĨ:  ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...LUẬN VĂN THẠC SĨ:  ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...
LUẬN VĂN THẠC SĨ: ĐÁNH GIÁ NGUỒN GEN CÂY ĐẬU TƯƠNG CÚC BÓNG TẠI HUYỆN VÕ NHA...
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT PHÂN TÍCH HÌNH ẢNH HUỲNH QUANG...
 
LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...
LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...
LUẬN VĂN THẠC SĨ: PHÂN LẬP VÀ ĐÁNH GIÁ HOẠT ĐỘNG CỦA PROMOTER CHUYÊN BIỆT HẠT...
 
LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...
LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...
LUẬN VĂN THẠC SĨ: TÀI NGUYÊN DU LỊCH BIỂN VIỆT NAM CHO PHÁT TRIỂN DU LỊCH NGH...
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TUYẾN ĐIỂM DU LỊCH VIỆT NAM ƯA THÍCH CỦA KHÁCH N...
 
LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...
LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...
LUẬN VĂN THẠC SĨ: THỰC TRẠNG VÀ MỘT SỐ GIẢI PHÁP MARKETING DU LỊCH CHO THÀNH ...
 
LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...
LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...
LUẬN VĂN THẠC SĨ: XÂY DỰNG CHIẾN LƯỢC ĐỊNH VỊ SẢN PHẨM DU LỊCH TEAMBUILDING T...
 
LUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAM
LUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAMLUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAM
LUẬN VĂN THẠC SĨ: PHÁT TRIỂN DU LỊCH SÁNG TẠO Ở VIỆT NAM
 
LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...
LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...
LUẬN VĂN THẠC SĨ: CÁC GIẢI PHÁP ĐẨY MẠNH PHÁT TRIỂN DU LỊCH MICE TẠI TP. HỒ C...
 
LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...
LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...
LUẬN VĂN THẠC SĨ: GIẢI PHÁP CỔNG BIÊN DỊCH ĐỊA CHỈ MẠNG CHO CÁC GIAO THỨC GIA...
 
LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...
LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...
LUẬN VĂN THẠC SĨ: HỆ THỐNG ĐIỂM DANH HỌC SINH THÔNG QUA NHẬN DẠNG ĐẦU HỌC SIN...
 
LUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜI
LUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜILUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜI
LUẬN VĂN THẠC SĨ: ỨNG DỤNG LBP-CNN CHO BÀI TOÁN NHẬN DIỆN CẢM XÚC MẶT NGƯỜI
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU TÁC ĐỘNG CỦA CẤU TRÚC VỐN ĐẾN HIỆU QUẢ TÀI CHÍNH...
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CÁC NHÂN TỐ ẢNH HƯỞNG ĐẾN HIỆU QUẢ KINH DOANH CỦ...
 
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
 
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
 
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...
LUẬN VĂN THẠC SĨ: NGHIÊN CỨU CẤU TRÚC VỐN CỦA CÁC CÔNG TY NIÊM YẾT TRÊN SỞ GI...
 
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
LUẬN VĂN THẠC SĨ: PHÂN TÍCH SỰ ẢNH HƯỞNG CỦA SỞ HỮU NHÀ NƯỚC ĐẾN KHẢ NĂNG CẠN...
 
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
LUẬN VĂN THẠC SĨ: HOÀN THIỆN CÔNG TÁC THẨM ĐỊNH TÀI CHÍNH DỰ ÁN ĐẦU TƯ TẠI NG...
 

Recently uploaded

CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
Nguyen Thanh Tu Collection
 
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
Nguyen Thanh Tu Collection
 
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
ngocnguyensp1
 
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
duykhoacao
 
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptxDẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
nvlinhchi1612
 
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdfGIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
Điện Lạnh Bách Khoa Hà Nội
 
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nayẢnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
chinhkt50
 
BAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdf
BAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdfBAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdf
BAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdf
phamthuhoai20102005
 
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
https://www.facebook.com/garmentspace
 
AV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in englishAV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in english
Qucbo964093
 

Recently uploaded (10)

CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
CHUYÊN ĐỀ BỒI DƯỠNG HỌC SINH GIỎI KHOA HỌC TỰ NHIÊN 9 CHƯƠNG TRÌNH MỚI - PHẦN...
 
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
98 BÀI LUYỆN NGHE TUYỂN SINH VÀO LỚP 10 TIẾNG ANH DẠNG TRẮC NGHIỆM 4 CÂU TRẢ ...
 
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
30 - ĐỀ THI HSG - HÓA HỌC 9 - NĂM HỌC 2021 - 2022.pdf
 
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
Chương III (Nội dung vẽ sơ đồ tư duy chương 3)
 
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptxDẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
Dẫn luận ngôn ngữ - Tu vung ngu nghia.pptx
 
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdfGIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
GIÁO TRÌNH 2-TÀI LIỆU SỬA CHỮA BOARD MONO TỦ LẠNH MÁY GIẶT ĐIỀU HÒA.pdf
 
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nayẢnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
Ảnh hưởng của nhân sinh quan Phật giáo đến đời sống tinh thần Việt Nam hiện nay
 
BAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdf
BAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdfBAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdf
BAI TAP ON HE LOP 2 LEN 3 MON TIENG VIET.pdf
 
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
Khoá luận tốt nghiệp ngành Truyền thông đa phương tiện Xây dựng kế hoạch truy...
 
AV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in englishAV6 - PIE CHART WRITING skill in english
AV6 - PIE CHART WRITING skill in english
 

LUẬN VĂN THẠC SĨ: ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI TRÁI CÂY

  • 1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC TPHCM LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGUYỄN VĂN PHÚC ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI TRÁI CÂY THÀNH PHỐ HỒ CHÍ MINH – 10/2019
  • 2. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC TPHCM LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGUYỄN VĂN PHÚC ỨNG DỤNG HỌC SÂU TRONG PHÂN LOẠI TRÁI CÂY Ngành: CÔNG NGHỆ THÔNG TIN Mã số: 60480201 NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. VŨ THANH HIỀN THÀNH PHỐ HỒ CHÍ MINH – 10/2019
  • 3. LỜI CAM ĐOAN Tôi xin cam đoan đề tài: “Ứng dụng học sâu trong phân loại trái cây” là công trình nghiên cứu được tôi thực hiện dưới sự hướng dẫn của giảng viên hướng dẫn khoa học. Các kết quả nghiên cứu và kết quả thử nghiệm nêu trong luận văn là trung thực và chưa từng được công bố trong bất kỳ tài liệu nào khác. Trong phần kiến thức chung nghiên cứu giải thuật áp dụng, luận văn có tham khảo ở một số tài liệu và đã có trích dẫn đúng và đầy đủ. Học Viên Nguyễn Văn Phúc
  • 4. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-2 LỜI CẢM ƠN Tôi xin bày tỏ lòng biết ơn sâu sắc đến Thầy, TS. Vũ Thanh Hiền, người đã hết lòng hướng dẫn, động viên và giúp đỡ cho tôi hoàn thành luận văn này. Tôi cũng xin chân thành gửi lời cám ơn đến quý Thầy Cô trường Đại Học Ngoại ngữ - Tin học TP.HCM đã tận tình dạy dỗ, chỉ bảo kiến thức quý báu giúp tôi hoàn thành khóa học đúng tiến độ và là nền tảng cho nghiên cứu của mình. Xin cảm ơn Ban Hợp tác và Đào tạo Sau đại học đã nhiệt tình hỗ trợ trong suốt quá trình học tập tại trường. Cuối cùng, xin chân thành cảm ơn bạn bè và đồng nghiệp đã khích lệ, động viên, tạo điều kiện thuận lợi cho tôi trong suốt thời gian thực hiện luận văn. TP. HCM, tháng 10 năm 2019 Học Viên Nguyễn Văn Phúc
  • 5. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-3 DANH MỤC CÁC CHỮ VIẾT TẮT Chữ viết tắt Ý nghĩa AI Artificial Intelligent ANN Artificial neural networks CNN Convolutional Neural Network PCA Principal Component Analysis SVM Support Vector Machine
  • 6. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-4 DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 2.1 Minh hoạ sơ đồ Deep Learning.................................................................13 Hình 2.2 Minh hoạ các lớp trong Deep Learning ....................................................14 Hình 2.3 Kiến trúc tổng quát của một ANN ............................................................18 Hình 2.4 Mô hình tích chập......................................................................................20 Hình 2.5 Mô hình mạng neuron tích chập ...............................................................22 Hình 2.6 Mô hình mạng perceptron đa tầng ............................................................24 Hình 2.7 Mô tả các neuron đầu vào .........................................................................25 Hình 2.8 Mô hình neuron cục bộ .............................................................................26 Hình 2.9 Mô hình neuron cục bộ .............................................................................26 Hình 2.10 Mô hình neuron cục bộ ...........................................................................27 Hình 2.11 Công thức xây dựng lớp tính Neuron......................................................28 Hình 2.12 Minh hoạ đặc trưng cấu trúc neuron .......................................................29 Hình 2.13 Bản đồ đặc trưng .....................................................................................30 Hình 2.14 Sơ đồ phân lớp ........................................................................................32 Hình 2.15 Sơ đồ phân lớp ........................................................................................32 Hình 2.16 Sơ đồ phân lớp ........................................................................................33 Hình 2.17 Kiến trúc AlexNet ...................................................................................34 Hình 2.18 Kiến trúc VGG 16 ...................................................................................35 Hình 2.19 Kiến trúc Inception..................................................................................36 Hình 2.20 Inception..................................................................................................36 Hình 3.1 Hình dạng khác nhau của cùng một loại táo.............................................37 Hình 3.2 Hình dạng quả nho ....................................................................................37 Hình 3.3 Trái cây Apple Braeburn...........................................................................42
  • 7. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-5 Hình 3.4 Trái cây Apple Braeburn đã bị xoay .........................................................43 Hình 3.5 Trái cây Apple Golden 1...........................................................................44 Hình 3.6 Trái cây Apple Golden 1 đã bị xoay .........................................................45 Hình 3.9 Độ lỗi của mô hình trong quá trình huấn luyện dựa trên tensorboard ......50 Hình 3.10 Độ chính xác của mô hình trong quá trình huấn luyện dựa trên tensorboard................................................................................................................50 Hình 3.7 Giao diện chính của ứng dụng ..................................................................52 Hình 3.8 Huấn luyện mô hình..................................................................................54 Hình 3.11 Kiểm tra trên tập dữ liệu test...................................................................55
  • 8. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-6 DANH MỤC CÁC BẢNG BIỂU Bảng 3.1 Các loại trái cây ........................................................................................41 Bảng 3.2 Các thông số của mô hình.........................................................................47 Bảng 3.3 Các chức năng của ứng dụng....................................................................53
  • 9. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-7 TRANG THÔNG TIN VỀ LUẬN VĂN THẠC SĨ 1. Họ tên học viên: NGUYỄN VĂN PHÚC Nam/ Nữ: Nam 2. Ngày tháng năm sinh: 30 tháng 4 năm 1990 Nơi sinh: Campuchia 3. Ngành học: Công nghệ Thông tin Mã số: 60480201 4. Ngày nhập học: 2016 5. Các thay đổi trong quá trình đào tạo: (nếu có) 6. Tên đề tài luận văn (chính thức bảo vệ): 7. 6.1. Tên Tiếng Việt: “Ứng dụng học sâu trong phân loại trái cây” 6.2. Tên Tiếng Anh: “Apply Deep Learning to Classify Fruit” Cán bộ hướng dẫn (họ tên, học hàm, học vị): TS. VŨ THANH HIỀN 8. Tóm tắt các kết quả của luận văn: “Tóm tắt các kết quả của luận văn: Đã tìm hiểu cơ sở lý thuyết của mạng neuron và đặc biệt là mô hình mạng neuron tích chập để giải quyết bài toán phân loại 60 loại trái cây trên cơ sở dữ liệu Fruit. Qua quá trình thực nghiệm, chúng tôi đã xác định kiến trúc cũng như bộ tham số phù hợp để giải quyết bài toán với độ chính xác cao” 9. Khả năng ứng dụng thực tiễn (nếu có) 10.Những hướng nghiên cứu tiếp theo (nếu có) 11.Các công trình đã công bố có liên quan đến luận văn: CÁN BỘ HƯỚNG DẪN (ký tên, họ và tên) TS. Vũ Thanh Hiền HỌC VIÊN (ký tên, họ và tên) Nguyễn Văn Phúc
  • 10. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 2-8 LỜI MỞ ĐẦU Ngày nay công nghệ thông tin là ngành chủ lực quan trọng góp phần thúc đẩy sự phát triển mọi mặt của con người. Một trụ cột của thời đại công nghiệp 4.0 là sự phát triển mạnh của Trí tuệ nhân tạo (Artificial Intelligence - AI). AI có mặt ở tất cả các ứng dụng thông minh như nhận dạng giọng nói của Apple, dịch tự động, search engine của Google, xe lái tự động của Tesla, … có thể nói AI đang là một trong những công nghệ được quan tâm đầu tư nghiên cứu và phát triển nhất thời điểm hiện nay. Ở nước ta hiện nay đã bắt đầu áp dụng Trí tuệ nhân tạo vào nghiên cứu và kinh doanh đã cho ra những kết quả rất đáng kể. Trong lương lai nước ta sẽ áp dụng và đưa công nghệ thông tin vào tất cả các lĩnh vực nhằm phát triển mạnh mẽ hơn để có thể thay thế những thủ tục thủ công mà con người bấy lâu nay vẫn còn phụ thuộc… Khi nền công nghiệp 4.0 được đưa vào áp dụng thì máy móc sẽ giúp cho con người hoàn thành tốt công việc và thực hiện nhanh hơn, chính xác hơn và công sức tối ưu nhất, tương lai máy móc sẽ thay thế con người làm việc trên mọi mặt, do đó, những chuyên gia hay bất cứ ai nghiên cứu về lĩnh vực này luôn muốn tìm hiểu và nghiên cứu sâu về sự thay đổi mạnh mẽ của công nghiệp 4.0 và sự phát triển mạnh của Trí tuệ nhân tạo. Bây giờ, Trí tuệ nhân tạo đang góp phần thay đổi sâu sắc nhiều khía cạnh của cuộc sống, dần trở thành một yếu tố quan trọng trong hoạt động muôn màu muôn vẻ của nhân loại. Nhiều bức tranh về tương lai xán lạn do trí tuệ nhân tạo mang tới cho loài người đã được khắc họa. Riêng về mặt kinh tế cho thấy trí tuệ nhân tạo trở thành cơ hội thương mại lớn nhất ngày nay trong nền kinh tế toàn cầu đang thay đổi nhanh chóng với phần đóng góp của nó, Chính vì lý do đó, nhiều nước trên thế giới đã và đang tiến hành xây dựng chiến lược phát triển trí tuệ nhân tạo quốc gia của họ.
  • 11. MỤC LỤC CHƯƠNG 1. TỔNG QUAN.....................................................................................2 1.1 ĐẶT VẤN ĐỀ.........................................................................................................2 1.2 GIỚI THIỆU TRÍ TUỆ NHÂN TẠO VÀ HỌC MÁY ...................................................4 1.3 TỔNG QUAN VỀ XỬ LÝ ẢNH SỐ ...........................................................................6 1.3.1 GIỚI THIỆU ........................................................................................................6 1.3.2 MỘT SỐ KHÁI NIỆM CƠ BẢN TRONG XỬ LÝ ẢNH................................................7 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT.......................................................................10 2.1 GIỚI THIỆU VỀ DEEP LEARNING......................................................................10 2.2 MỘT SỐ ỨNG DỤNG CỦA DEEP LEARNING ......................................................14 2.3 GIỚI THIỆU MẠNG NEURON.............................................................................17 2.4 MẠNG NEURON TÍCH CHẬP..............................................................................18 2.4.1 ĐỊNH NGHĨA MẠNG NEURON TÍCH CHẬP.........................................................19 2.4.2 CONVOLUTION (TÍCH CHẬP)............................................................................19 2.4.3 MÔ HÌNH MẠNG NƠ-RON TÍCH CHẬP ...............................................................20 2.4.4 XÂY DỰNG MẠNG NƠ-RON TÍCH CHẬP............................................................22 2.5 MỘT SỐ KIẾN TRÚC CONVOLUTIONAL NEURAL NETWORK THÔNG DỤNG ....34 2.5.1 KIẾN TRÚC ALEXNET [17] ..............................................................................34 2.5.2 KIẾN TRÚC VGG 16 [17].................................................................................35 2.5.3 KIẾN TRÚC INCEPTION/GOOGLENET [18].......................................................35 CHƯƠNG 3. PHÂN LOẠI ẢNH TRÁI CÂY ......................................................37 3.1 PHÁT BIỂU BÀI TOÁN ........................................................................................37 3.2 CƠ SỞ DỮ LIỆU TRÁI CÂY .................................................................................38 3.3 CẤU TRÚC THƯ MỤC CƠ SỞ DỮ LIỆU ẢNH TRÁI CÂY.......................................41 3.4 DỮ LIỆU MẪU ....................................................................................................41 3.5 PHƯƠNG PHÁP ĐỀ XUẤT ...................................................................................45 B. HÀM LOSS..............................................................................................................48 C. PHƯƠNG PHÁP HUẤN LUYỆN ...........................................................................48 CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN......................................49 4.1 THỰC NGHIỆM VÀ KẾT QUẢ .............................................................................49 4.2 KẾT LUẬN VÀ PHƯỚNG PHÁT TRIỂN ................................................................55 4.3 HƯỚNG PHÁT TRIỂN TIẾP THEO.......................................................................56 TÀI LIỆU THAM KHẢO ......................................................................................57
  • 12. 2 CHƯƠNG 1. TỔNG QUAN 1.1 Đặt vấn đề - Cơ sở hình thành đề tài: Trong luận văn này trình bày khái quát về xử lý ảnh, các phương pháp trích chọn đặc trưng. Mạng neuron tích chập và sử dụng trong bài toán phân loại đối tượng. Hiện nay, với sự phát triển của công nghiệp 4.0, công nghệ thông tin nói chung và sự phát triển trong lĩnh vực Trí tuệ nhân tạo, các hệ thống phát hiện và nhận dạng và ngày càng có nhiều ứng dụng trong thực tế như vấn đề an ninh, các hệ thống bảo mật, nhận dạng người trên các bằng lái xe, hộ chiếu, nhận dạng người trong các hệ thống tương tác người-máy, nhận dạng đối tượng, nhận dạng vân tay, nhận dạng màu sắc, trong lĩnh vực giải trí... Đặc biệt khi cách mạng công nghiệp 4.0 ra đời thì công nghệ ngày càng được phát triển cao hơn, các công nghệ tối tân sẽ dần dẫn được đưa vào xử dụng nhằm phục vụ cho con người. Nhu cầu tăng lên trong ứng dụng Trí tuệ nhân tạo, đã giúp các nhà khoa học có thêm nhiều phương pháp mới để phát triển các dự án nghiên cứu. Mặc dù ban đầu thực hiện gặp nhiều khó khăn do mới tiếp xúc công nghệ hoặc đang áp dụng lý thuyết vào thực tế nhưng những kết quả đạt được trong thời gian đầu cũng xem như một kết quả khả quan tạo động lực cho các công trình sau này. việc nhận dạng đối tượng không thể chính xác được như các phương pháp nhận dạng khác như nhận dạng vân tay, nhận dạng mặt người…nhưng đề tài này nó vẫn nhận được sự quan tâm lớn của các nhà nghiên cứu trong lĩnh vực thị giác máy tính. Lý do chủ yếu
  • 13. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 3 là trên thực tế, nhận dạng đối tượng vẫn là cách truyền thống để con người nhận dạng và phát hiện ra đối tượng. Có rất nhiều mô hình tính toán mô phỏng bộ não của người được nghiên cứu trong đó có mạng neuron. Đề tài này cũng một phần áp dụng mạng neuron vào khả năng giải quyết hàng loạt các bài toán như tính toán tối ưu, nhận dạng đối tượng, điều khiển và được ứng dụng trong nhiều lĩnh vực của bài toán phát hiện và nhận dạng. Một mạng neuron nhân tạo bao gồm một tập các đơn vị xử lý cơ bản, gọi là neuron, chúng truyền thông tin bằng cách gửi các tín hiệu cho nhau qua các kênh kết nối có trọng số. Mỗi neuron thực hiện một công việc tương đối đơn giản: nhận tín hiệu từ các neuron lân cận hoặc từ nguồn bên ngoài, tính toán tín hiệu ra rồi truyền sang cho các neuron khác. Ngoài việc xử lý này, nhiệm vụ thứ hai của neuron là điều chỉnh lại các trọng số. Hệ thống sẽ được thực hiện song song vì nhiều neuron có thể thực hiện tính toán ở cùng thời điểm. Xuất phát trong hoàn cảnh đó tôi đã quyết định lựa chọn đề tài: “Nhận dạng ảnh xác định đối tượng của ảnh khi sử dụng mạng Neuron” là một việc làm không chỉ có ý nghĩa khoa học và còn mang đậm tính thực tiễn nhất khi thực tế đang đặt ra những yêu cầu đòi hỏi. - Mục tiêu nghiên cứu: • Tìm hiểu bài toán phân loại dữ liệu nói chung và bài toán phân loại dữ ảnh trái cây nói riêng. • Nghiên cứu mô hình mạng neuron đa tầng, các thuật toán lan truyền tiến, lan truyền ngược để sử dụng và huấn luyện mạng neuron.
  • 14. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 4 • Nghiên cứu một số kiến trúc mạng neuron hiện đại giải quyết bài toán phân loại dữ liệu ảnh • Tiến hành xây dựng kiến trúc của mô hình, tiến hành thực nghiệm mô hình, và đánh giá kết quả thực nghiệm của mô hình để giải quyết bài toán phân loại ảnh trái cây 1.2 Giới thiệu trí tuệ nhân tạo và học máy Trí tuệ nhân tạo là một hướng nghiên cứu của lĩnh vực Công nghệ thông tin và Khoa học máy tính nhằm phát triển các hệ thống thông minh nhằm giải quyết các bài toán trong thực tế giống như hoạt động của bộ não người. Trí tuệ nhân tạo được bắt đầu nghiên cứu từ những năm 50 của thế kỷ 20 và trong khoảng 30 năm trở lại đây đã được cộng đồng các nhà khoa học quan tâm mạnh mẽ. Rất nhiều các hội thảo lớn về lĩnh vực này được tổ chức hàng năm trên thế giới. Các ứng dụng tiêu biểu của trí tuệ nhân tạo vào đời sống xã hội bào gồm: người máy, robot, xử lý ngôn ngữ tự nhiên, nhận dạng, phát hiện dị thường, an ninh quốc phòng, tin sinh học, khoa học vũ trụ và trái đất,... Trong khuôn khổ luận văn Thạc sỹ của mình, qua việc được trang bị các môn học lỹ thuyết như thuật toán, xử lý ảnh, trí tuệ nhân tạo,... tôi đã lựa chọn đề tài Nghiên cứu một số phương pháp cơ bản về nhận dạng và phát hiện một số loại trái cây thông dụng trong ảnh màu. Chủ đề phân lớp dữ liệu là một nhánh quan trọng trong lĩnh vực học máy (machine learning) của trí tuệ nhân tạo, có thể kể các ứng dụng của học máy trong thực tế như người máy, robot, nhận dạng mặt người, nhận dạng tiếng nói và chữ viết,...
  • 15. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 5 + Đối tượng và phạm vi nghiên cứu - Đối tượng nghiên cứu • Nghiên cứu mạng neuron đa tầng và mạng neuron tích chập • Nghiên cứu bài toán phân lớp ảnh trái cây • Tìm hiểu xây dựng kiến trúc và thực nghiệm mô hình mạng neuron tích chập để giải quyết bài toán phân lớp ảnh trái cây - Phạm vi nghiên cứu - Lý thuyết: Nghiên cứu lý thuyết về xử lý ảnh, Học máy, Deep Learning, Mạng neuron tích chập. - Thực nghiệm: Lập trình trên phần mềm Python cho chương trình phân loại một số loại trái cây thông dụng trong ảnh. + Phương pháp nghiên cứu - Thu thập, phân tích các tài liệu và thông tin liên quan đến đề tài từ đó đưa ra cái nhìn tổng quan, các khó khăn gặp phải, các ràng buộc của bài toán... - Tiến hành phân tích, xây dựng giải pháp phát hiện gồm có : Tiền xử lý, trích chọn đặc trưng, huấn luyện mô hình dữ liệu, hậu xử lý. - Xây dựng và kiểm thử việc đánh giá hiệu quả phương pháp mạng neuron tích chập để phân loại đối tượng bằng ngôn ngữ Python. + Cấu trúc của luận văn
  • 16. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 6 Cấu trúc của luận văn Nghiên cứu và ứng dụng mạng Neuron tích chập vào thực nghiệm trên nhiều tầng khác nhau để tìm ra kết quả tốt nhất cho bài toán và chương trình bao gồm những cấu trúc như sau: Chương 1: Tổng quan về Chương 2: Lý thuyết về Deep Learning và Mạng neuron tích chập. Chương 3: Chương này sẽ đi sâu vào việc cài đặt ứng dụng cụ thể cho bài toán phát hiện và phân loại một số loại trái cây thông dụng bằng phương pháp Deep Learning trong mô hình mạng neuron tích chập. Chương 4: Kết quả và hướng phát triển Kết luận: Tóm tắt các vấn đề được tìm hiểu trong luận văn và các vấn đề liên quan trong luận văn. 1.3 Tổng quan về xử lý ảnh số 1.3.1 Giới thiệu Con người thu nhận thông tin qua các giác quan, trong đó thị giác đóng vai trò quan trọng nhất. Những năm trở lại đây với sự phát triển của phần cứng máy tính, xử lý ảnh và đồ hoạ đó phát triển một cách mạnh mẽ và có nhiều ứng dụng trong cuộc sống. Xử lý ảnh và đồ hoạ đóng một vai trò quan trọng trong tương tác người và máy. Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho ra kết quả mong muốn. Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh “tốt hơn” hoặc một kết luận.
  • 17. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 7 - Các bước cơ bản trong một hệ thống xử lý ảnh: + Khối thu nhận ảnh: có nhiệm vụ tiếp nhận ảnh đầu vào. + Khối tiền xử lý: có nhiệm vụ xử lý nâng cao chất lượng ảnh như giảm nhiễu, phân vùng, tìm biên v.v.. + Khối trich chọn đặc điểm: có nhiệm vụ trích chọn các đặc trưng quan trọng của các bức ảnh đã được tiền xử lý để sử dụng trong hệ quyết định + Khối hậu xử lý: có nhiệm vụ xử lý các đặc điểm đã trích chọn, có thể lược bỏ hoặc biến đổi các đặc điểm này để phù hợp với các kỹ thuật cụ thể sử dụng trong hệ quyết định + Khối hệ quyết định và lưu trữ: có nhiệm vụ đưa ra quyết định (phân loại) dựa trên dự liệu đã học lưu trong khối lưu trữ + Khối kết luận: đưa ra kết luận dựa vào quyết định của khối quyết định 1.3.2 Một số khái niệm cơ bản trong xử lý ảnh + Ảnh và điểm ảnh: Điểm ảnh được xem như là dấu hiệu hay cường độ sáng tại một vị trí nào đó của đối tượng trong không gian và ảnh được xem như là một tập hợp các điểm ảnh. + Mức xám, màu: Là số các giá trị có thể có của các điểm ảnh của ảnh + Nắn chỉnh biến dạng: Ảnh thu nhận thường bị biến dạng do các thiết bị quang học và điện tử.
  • 18. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 8 + Khử nhiễu: Có 2 loại nhiễu cơ bản trong quá trình thu nhận ảnh mà chúng ta cần loại bỏ: Nhiễu hệ thống: là nhiễu có quy luật có thể khử bằng các phép biến đổi Nhiễu ngẫu nhiên: vết bẩn không rõ nguyên nhân có thể khắc phục bằng các phép lọc + Chỉnh số mức xám: Chỉnh số mức xám là nhằm khắc phục tính không đồng đều của hệ thống xử lý ảnh, thông thường có 2 hướng tiếp cận: Giảm số mức xám: Thực hiện bằng cách nhóm các mức xám gần nhau thành một bó. Trường hợp giảm xuống 2 mức xám thì chính là chuyển về ảnh đen trắng. Tăng số mức xám: Thực hiện nội suy ra các mức xám trung gian bằng kỹ thuật nội suy. Kỹ thuật này nhằm tăng cường độ mịn cho ảnh. Phân tích ảnh: Là khâu quan trọng trong quá trình xử lý ảnh để tiến tới hiểu ảnh. Trong phân tích ảnh việc trích chọn đặc điểm là một bước quan trọng. Các đặc điểm của đối tượng được trích chọn tuỳ theo mục đích nhận dạng trong quá trình xử lý ảnh. Có thể nêu ra một số đặc điểm của ảnh sau đây: Đặc điểm không gian: Phân bố mức xám, phân bố xác suất, biên độ, điểm uốn v.v.. Đặc điểm biến đổi: Các đặc điểm loại này được trích chọn bằng việc thực hiện lọc vùng (zonal filtering). Các bộ vùng được gọi là “mặt nạ đặc điểm” (feature mask) thường là các khe hẹp với hình dạng khác nhau (chữ nhật, tam giác, cung tròn v.v..)
  • 19. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 9 + Nén ảnh: Nén ảnh là kỹ thuật nhằm giảm thiểu không gian lưu trữ. Có hai hướng tiếp cận chính là nén có bảo toàn và không bảo toàn thông tin. Nén không bảo toàn thì thường có khả năng nén cao hơn nhưng không phục hồi được ảnh gốc, ngược lại nén có bảo toàn cho phép khôi phục hoàn toàn ảnh gốc. Nén ảnh nói chung có 4 cách tiếp cận cơ bản: Nén ảnh thống kê: Kỹ thuật nén này dựa vào việc thống kê tần xuất xuất hiện của giá trị các điểm ảnh, trên cơ sở đó mà có chiến lược mã hóa thích hợp. Một ví dụ điển hình cho kỹ thuật mã hóa này là *.TIF Nén ảnh không gian: Kỹ thuật này dựa vào vị trí không gian của các điểm ảnh để tiến hành mã hóa. Kỹ thuật lợi dụng sự giống nhau của các điểm ảnh trong các vùng gần nhau. Ví dụ cho kỹ thuật này là mã nén *.PCX Nén ảnh sử dụng phép biến đổi: Đây là kỹ thuật tiếp cận theo hướng nén không bảo toàn và do vậy tỉ lệ nén tương đối cao. *.JPG chính là tiếp cận theo kỹ thuật nén này. Nén ảnh Fractal: Sử dụng tính chất Fractal của các đối tượng ảnh. Tính chất Fractal của ảnh thể hiện sự lặp lại của các chi tiết tại nhiều vị trí khác nhau với kích thước và hướng khác nhau. Kỹ thuật nén sẽ tính toán để chỉ cần lưu trữ phần gốc ảnh và quy luật sinh ra ảnh theo nguyên lý Fractal.
  • 20. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 10 CHƯƠNG 2. CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu về Deep Learning Deep Learning là một phương pháp của Học máy. Nó cho phép huấn luyện một tập dữ liệu có thể dự đoán được các đầu ra dựa vào một tập các đầu vào. Cả hai phương pháp có giám sát và không giám sát đều có thể sử dụng để huấn luyện. Sẽ huấn luyện nó bằng phương pháp học có giám sát. Nói rộng ra, deep learning là một tên gọi dễ hiểu hơn của mạng neuron nhân tạo. Từ "deep" trong deep learning đề cập đến độ sâu của mạng lưới. Một mạng neuron nhân tạo cũng có thể rất cạn. Mạng neuron được lấy cảm hứng từ cấu trúc của vỏ não. Mức cơ bản được gọi là perceptron, biểu diễn toán học của một neural sinh học. Giống như vỏ não, có thể có nhiều lớp perceptron kết nối với nhau. Lớp đầu tiên là lớp input (đầu vào). Mỗi nút trong lớp này lấy một đầu vào, và sau đó chuyển output (đầu ra) của nó làm đầu vào cho mỗi nút trong lớp tiếp theo. Nói chung không có kết nối giữa các nút trong cùng một lớp và lớp cuối cùng tạo nên kết quả đầu ra. gọi phần giữa là lớp ẩn. Những neuron này không có kết nối với bên ngoài (ví dụ như đầu vào hoặc đầu ra) và chỉ được kích hoạt bởi các nút trong lớp trước. Điều mà nhiều người không nhận ra là tất cả các công nghệ này, về mặt bản chất đều xuất phát từ cùng một nguồn gốc. Chúng được phát triển từ “deep learning”, một nhánh đặc biệt trong trí tuệ nhân tạo (AI). Nhiều nhà khoa học vẫn thích gọi nó theo tên nguyên gốc là deep neural network (mạng neuron sâu). Trên thực tế, chẳng kỹ sư nào có thể lập trình cho máy tính thực hiện được những tính năng đề cập ở trên. Thay vào đó, họ tạo ra một thuật toán giúp máy tính
  • 21. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 11 có khả năng tự học rồi cho nó tiếp xúc với hàng terabyte các dữ liệu liên quan – chẳng hạn như vài trăm ngàn bức ảnh các loại chó, hay những băng ghi giọng nói kéo dài hàng năm trời. Sự tiếp xúc liên tục này sẽ dần dần “huấn luyện” máy tính và khiến nó tự nhận diện được những hình ảnh, giọng nói được yêu cầu. Cũng giống như cách một đứa trẻ học hỏi về thế giới xung quanh, sau một thời gian dài được xem những hình ảnh mặc định là chó hay nghe cách người ta phát âm từ gì đó, máy tính sẽ “nhìn” được đâu là chó và “nghe” được người ta đang nói gì. Người ta có thể tự hỏi tại sao việc học sâu chỉ mới được công nhận là một công nghệ quan trọng mặc dù các thí nghiệm đầu tiên với mạng thần kinh nhân tạo được tiến hành vào những năm 1950. Học tập sâu đã được sử dụng thành công trong các ứng dụng thương mại từ những năm 1990, nhưng thường được coi là nghệ thuật hơn là một công nghệ và thứ mà chỉ có một chuyên gia mới có thể sử dụng, cho đến gần đây. Đúng là một số kỹ năng là cần thiết để có được hiệu suất tốt từ một thuật toán học tập sâu. May mắn thay, số lượng kỹ năng cần thiết giảm khi lượng dữ liệu đào tạo tăng lên. Các thuật toán học tập đạt được hiệu suất của con người trên các nhiệm vụ phức tạp ngày, Ngày càng có nhiều hoạt động diễn ra trên máy tính, ngày càng nhiều những tính toán được ghi lại. Khi các công nghệ ngày càng phát triển, việc tập trung những bản ghi này và sắp xếp chúng trở nên dễ dàng hơn vào một tập dữ liệu thích hợp cho các ứng dụng học máy. Và khi một thời điểm bùng nổ Dữ liệu lớn (Big Data) đã khiến cho việc học máy trở nên dễ dàng hơn nhiều vì gánh nặng chính của ước lượng thống kê - tổng quát hóa dữ liệu mới sau khi quan sát chỉ một lượng nhỏ dữ liệu - đã được làm sáng tỏ một cách đáng kể, và nguyên tắc cơ bản là thuật toán
  • 22. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 12 học được giám sát sẽ đạt được hiệu suất chấp nhận được với khoảng 5.000 ví dụ được gắn nhãn cho mỗi danh mục và sẽ khớp hoặc vượt quá hiệu suất của con người khi được đào tạo với tập dữ liệu chứa ít nhất 10 triệu ví dụ được gắn nhãn. Làm việc thành công với các tập dữ liệu nhỏ hơn đây là một lĩnh vực nghiên cứu quan trọng, tập trung đặc biệt vào cách có thể tận dụng số lượng lớn các ví dụ không dán nhãn, với việc học không giám sát hoặc bán giám sát. Deep Learning Là Gì? Deep Learning là một thuật toán dựa trên một số ý tưởng từ não bộ tới việc tiếp thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tượng, qua đó làm rõ nghĩa của các loại dữ liệu. Deep Learning được ứng dụng trong nhận diện hình ảnh, nhận diện giọng nói, xử lý ngôn ngữ tự nhiên. Điểm đặc biệt của Deep Learning là tính chính xác dựa vào lượng dữ liệu, lượng dữ liệu có thể có kích thước khổng lồ mà không bị hạn chế. Để hiểu được Deep Learning là gì, trước hết chúng ta cần phải hiểu được mối quan hệ giữa Deep Learning và machine learning, mạng neuron, và trí tuệ nhân tạo. Cách tốt nhất để hiểu về mối quan hệ này là mường tượng chúng thành những vòng tròn đồng tâm:
  • 23. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 13 Hình 2.1 Minh hoạ sơ đồ Deep Learning https://blog.algorithmia.com/ai-why-deep-learning-matters Ở vòng ngoài cùng, bạn có trí thông minh nhân tạo (sử dụng máy tính và lập luận). Bên trong lớp này là machine learning. Với mạng neuron nhân tạo và deep learning tại trung tâm. Nói rộng ra, deep learning là một tên gọi dễ hiểu hơn của mạng neuron nhân tạo. Từ "deep" trong deep learning đề cập đến độ sâu của mạng lưới. Một mạng neuron nhân tạo cũng có thể rất cạn. Mạng neuron được lấy cảm hứng từ cấu trúc của vỏ não. Mức cơ bản được gọi là perceptron, biểu diễn toán học của một neuron sinh học. Giống như vỏ não, có thể có nhiều lớp perceptron kết nối với nhau. Lớp đầu tiên là lớp input (đầu vào). Mỗi nút trong lớp này lấy một đầu vào, và sau đó chuyển output (đầu ra) của nó làm đầu vào cho mỗi nút trong lớp tiếp theo. Nói chung không có kết nối giữa các nút trong cùng một lớp và lớp cuối cùng tạo nên kết quả đầu ra. Chúng ta gọi phần giữa là lớp ẩn. Những neuron này không có kết nối với bên ngoài (ví dụ như đầu vào hoặc đầu ra) và chỉ được kích hoạt bởi các nút trong lớp trước.
  • 24. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 14 Hình 2.2 Minh hoạ các lớp trong Deep Learning https://github.com/rcassani/mlp-example Deep learning là kỹ thuật học tập trong mạng neuron sử dụng nhiều lớp trừu tượng để giải quyết các vấn đề nhận dạng khuôn mẫu. Machine learning được coi là một nhánh hoặc phương pháp tiếp cận trí tuệ nhân tạo, trong khi deep learning là một loại machine learning chuyên biệt. Machine learning liên quan đến trí thông minh máy tính mà chưa biết câu trả lời trước. Thay vào đó, chương trình sẽ đi ngược lại dữ liệu bài giảng (training data), xác minh sự thành công của những nỗ lực đó, và sửa đổi phương pháp tiếp cận sao cho phù hợp. Machine learning điển hình yêu cầu một nền tảng kiến thức chuyên nghiệp, bao gồm công nghệ phần mềm và khoa học máy tính đến các phương pháp thống kê và đại số tuyến tính. 2.2 Một số ứng dụng của Deep Learning Máy tính từ lâu đã có các kỹ thuật để nhận ra các đặc điểm bên trong của hình
  • 25. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 15 ảnh. Kết quả không phải lúc nào cũng tuyệt vời. Thị giác máy tính (computer vision) là lợi ích chính của deep learning. Thị giác máy tính sử dụng deep learning hiện nay đã ngang ngửa với con người trong nhiều nhiệm vụ nhận dạng hình ảnh. Facebook đã thành công lớn trong việc nhận dạng khuôn mặt trong các bức ảnh bằng cách sử dụng deep learning. Nó không chỉ là một cải tiến nhỏ nhặt, mà là một sự thay đổi xu hướng: "Khi được hỏi liệu hai bức ảnh lạ mặt trên là cùng một người, thì con người sẽ mất 97.53% thời gian. Phần mềm mới được phát triển bởi các nhà nghiên cứu tại Facebook có thể đạt được 97,25% trong cùng một thử thách, bất kể sự thay đổi ánh sáng nào hay liệu người trong ảnh có trực tiếp đối mặt với camera hay không." Nhận dạng giọng nói là một lĩnh vực khác chịu ảnh hưởng sâu sắc của deep learning. Ngôn ngữ nói chuyện thực sự quá rộng và mơ hồ. Google đang sử dụng deep learning để quản lý năng lượng tại trung tâm dữ liệu của công ty. Họ đã cắt giảm nhu cầu năng lượng làm mát khoảng 40%. Điều đó làm tăng thêm 15% hiệu suất sử dụng điện cho công ty và hàng trăm triệu đô la tiền tiết kiệm. Illustration Tagger. Phiên bản thực của Illustration2Vec, ứng dụng này có thể gắn thẻ một hình ảnh có đánh giá an toàn, có vấn đề hoặc rõ ràng, bản quyền, và phân loại chung để biết được nhiều thứ hơn về hình ảnh. DeepFilter là một ứng dụng chuyển đổi phong cách giúp áp dụng bộ lọc nghệ thuật cho hình ảnh. Ứng dụng phân loại độ tuổi (age classification) sử dụng tính năng nhận diện khuôn mặt để xác định độ tuổi của người trong bức ảnh. Places365 Classifier sử dụng dữ liệu CNN có sẵn và dựa trên Places: An Image Database for Deep Scene
  • 26. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 16 Understanding B. Zhou, et al., 2016 để xác định vị trí cụ thể trong các hình ảnh, chẳng hạn như sân, hiệu thuốc, phòng khách sạn, sông băng, núi, etc. Cuối cùng, InceptionNet, một phiên bản thực của Google's InceptionNet sử dụng TensorFlow. Phải cần một hình ảnh (như một chiếc xe hơi) và cho ra 5 mô hình dự đoán tốt nhất có liên quan đến hình ảnh. Một Số Dự Án Deep Learning Công Khai Các deep learning được tiếp cận bởi một số dự án được mở công khai. Một số công nghệ phổ biến nhất bao gồm, nhưng không giới hạn ở đó, Deeplearning4j (DL4j), Theano, Torch, TensorFlow và Caffe. Các yếu tố quyết định để sử dụng dựa vào mục tiêu được nhắm tới, liệu chúng có ở cấp thấp, thông dụng hoặc là ứng dụng tập trung không. Dưới đây là tổng quan về mỗi loại: DL4J: Dựa trên JVM Distrubted Tích hợp với Hadoop và Spark Theano: Rất phổ biến trong Academia Mức độ tương đối thấp Tương tác với Python và Numpy Torch: Dựa trên Lua Phiên bản trong nhà được sử dụng bởi Facebook và Twitter Bao gồm các mô hình được đào tạo
  • 27. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 17 TensorFlow: Phiên bản tiếp theo của Google sau Theano Tương tác với Python và Numpy Khá phổ biến Có thể hơi chậm đối với một số loại vấn đề nhất định Caffe: Không dùng cho mục đích chung. Tập trung vào các vấn đề về thị giác máy tính Hoạt động trong C++ và rất nhanh Có một giao diện Python 2.3 Giới thiệu Mạng Neuron Mạng Neuron nhân tạo (Artificial Neural Network- ANN) là mô hình xử lý thông tin được mô phỏng dựa trên hoạt động của hệ thống thần kinh của sinh vật, bao gồm số lượng lớn các Neuron được gắn kết để xử lý thông tin. ANN giống như bộ não con người, được học bởi kinh nghiệm (thông qua huấn luyện), có khả năng lưu giữ những kinh nghiệm hiểu biết (tri thức) và sử dụng những tri thức đó trong việc dự đoán các dữ liệu chưa biết (unseen data). Kết hợp chặt chẽ với logic mờ, mạng neuron nhân tạo đã tạo nên cuộc cách mạng thực sự trong việc thông minh hóa và vạn năng hóa các bộ điều khiển kỹ thuật cao cho cả hiện nay và trong tương lai. Ví dụ như ứng dụng tự động điều khiển hệ thống lái tàu, hệ thống dự báo sự cố,… Mạng neuron dựa trên việc mô phỏng cấp thấp hệ thống neuron sinh học. Trong tương lai với sự phát triển mô phỏng neuron sinh học, chúng ta có thể có loại máy tính thông minh thật sự.
  • 28. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 18 Các ứng dụng của mạng Neuron được sử dụng trong rất nhiều lĩnh vực như điện, điện tử, kinh tế, quân sự,… để giải quyết các bài toán có độ phức tạp và đòi hỏi có độ chính xác cao như điều khiển tự động, khai phá dữ liệu, nhận dạng,… Kiến trúc chung của một mạng neuron nhân tạo gồm 3 thành phần đó là: Input Layer, Hidden Layer và Output Layer (Xem Hình). Hình 2.3 Kiến trúc tổng quát của một ANN Trong đó, lớp ẩn (Hidden Layer) gồm các Neuron nhận dữ liệu input từ các Neuron ở lớp (Layer) trước đó và chuyển đổi các input này cho các lớp xử lý tiếp theo. Trong một ANN có thể có nhiều lớp ẩn. Trong đó các Processing Elements (PE) của ANN gọi là Neuron, mỗi Neuron nhận các dữ liệu vào (Inputs) xử lý chúng và cho ra một kết quả (Output) duy nhất. Kết quả xử lý của một Neuron có thể làm Input cho các Neuron khác. 2.4 Mạng Neuron tích chập Để máy tính xử lí được các dạng dữ liệu tự nhiên (âm thanh, hình ảnh, cảm giác...) cần phải có một kiến trúc đặc biệt giống như cấu trúc của hệ thần kinh. Với khả năng xử lí tuần tự của máy PC hiện nay cho dù có tốc độ rất cao cũng không thể xử lí kịp thời và không đáp ứng được trong các tác vụ điều khiển. Do vậy, muốn có một hệ xử
  • 29. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 19 lí nhanh, đa luồng cần có một hệ xử lí song song đồng thời của nhiều chíp xử lí như hệ thần kinh của cơ thể sống. Công nghệ mạng neuron tế bào CNN (Cenllular Neural Networks) đã được các nhà khoa học Mỹ và Hungary phát minh ra vào năm 1988 có tốc độ xử lí của một tế bào là 1012 phép tính/giây, cả hệ có khoảng 16 000 CPU xử lí đồng thời. Đây là bước đột phá về cấu trúc của CNN là các CPU song song được kết nối thành mạng tích hợp trong một chip. 2.4.1 Định nghĩa mạng Neuron tích chập Những năm gần đây, ta đã chứng kiến được nhiều thành tựu vượt bậc trong ngành Thị giác máy tính (Computer Vision). Các hệ thống xử lý ảnh lớn nhỏ Facebook, Google hay Amazon đã đưa vào sản phẩm của mình những chức năng thông minh như nhận diện khuôn mặt người dùng, phát triển xe hơi tự lái hay drone giao hàng tự động. Convolutional Neural Network (CNNs – Mạng neuron tích chập) là một trong những mô hình Deep Learning tiên tiến giúp cho chúng ta xây dựng được những hệ thống thông minh với độ chính xác cao như hiện nay. Trong luận văn này, sẽ trình bày về Convolution (tích chập) cũng như ý tưởng của mô hình CNNs trong phân lớp đối tượng để phát hiện và nhận dạng trái cây trong ảnh màu. 2.4.2 Convolution (tích chập) Tích chập được sử dụng đầu tiên trong xử lý tín hiệu số ( Signal processing). Nhờ vào nguyên lý biến đổi thông tin, các nhà khoa học đã áp dụng kĩ thuật này vào xử lý ảnh và video số.
  • 30. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 20 Để dễ hình dung, có thể xem tích chập như một cửa sổ trượt (sliding window) áp đặt lên một ma trận. Có thể theo dõi cơ chế của tích chập qua hình minh hoạ bên dưới Hình 2.4 Mô hình tích chập https://leonardoaraujosantos.gitbooks.io/artificial-inteligence/content/convolution.html Ma trận bên trái là một bức ảnh đen trắng. Mỗi giá trị của ma trận tương đương với một điểm ảnh (pixel), 0 là màu đen, 1 là màu trắng (nếu là ảnh grayscale thì giá trị biến thiên từ 0 đến 255). Sliding window còn có tên gọi là kernel, filter hay feature detector. Ở đây, dùng một ma trận filter 3×3 nhân từng thành phần tương ứng (element-wise) với ma trận ảnh bên trái. Giá trị đầu ra do tích của các thành phần này cộng lại. Kết quả của tích chập là một ma trận (convoled feature) sinh ra từ việc trượt ma trận filter và thực hiện tích chập cùng lúc lên toàn bộ ma trận ảnh bên trái. 2.4.3 Mô hình mạng nơ-ron tích chập Bây giờ, đã biết thế nào là convolution. Vậy CNNs là gì? CNNs chỉ đơn giản gồm một vài layer của convolution kết hợp với các hàm kích hoạt phi tuyến (nonlinear
  • 31. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 21 activation function) như ReLU hay tanh để tạo ra thông tin trừu tượng hơn (abstract/higher-level) cho các leyer tiếp theo. Trong mô hình Feedforward Neural Network ( mạng nơ-ron truyền thẳng), các layer kết nối trực tiếp với nhau thông qua một trọng số w (weighted vector). Các leyer này còn được gọi là kết nối đầy đủ (fully connected layer) hay affine layer. Trong mô hình CNNs thì ngược lại. Các layer liên kết được với nhau thông qua cơ chế convolution. Layer tiếp theo là kết quả convolution từ layer trước đó, nhờ vậy mà có được các kết nối cục bộ. Nghĩa là mỗi neuron ở layer tiếp theo sinh ra từ Filter áp đặt tên lên một vùng ảnh cục bộ của neuron layer trước đó. Mỗi layer như vậy được áp đặt các Filter khác nhau, thông thường có vào trăm đến vài nghìn filter như vậy. Một số layer khác như pooling/subsampling layer dùng để chắt lọc lại các thông tin hữu ích hơn (loại bỏ các thông tin nhiễu). Tuy nhiên, sẽ không đi sâu vào khái niệm của các layer này. Trong suốt quá trình huấn luyện, CNNs sẽ tự động học được các thông số cho các filter. Ví dụ trong tác vụ phân lớp ảnh, CNNs sẽ cố gắng tìm ra thông số tối ưu cho các filter tương ứng theo thứ tự raw pixel > edges > shapes > facial > high-level features. Layer cuối cùng được dùng để phân lớp ảnh.
  • 32. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 22 Hình 2.5 Mô hình mạng neuron tích chập https://www.kdnuggets.com/2016/11/intuitive-explanation-convolutional-neural- networks.html/3 CNNs có tính bất biến và tính kết hợp cục bộ (Location Invariance and Compositionality). Với cùng một đối tượng, nếu đối tượng này được chiếu theo các gốc độ khác nhau (translation, rotation, scaling) thì độ chính xác của thuật toán sẽ bị ảnh hưởng đáng kể. Pooling layer sẽ cho bạn tính bất biến đối với phép dịch chuyển (translation), phép quay (rotation) và phép co giãn (scaling). Tính kết hợp cục bộ cho ta các cấp độ biểu diễn thông tin từ mức độ thấp đến mức độ cao và trừu tượng hơn thông qua convolution từ các filter. Đó là lý do tại sao CNNs cho ra mô hình với độ chính xác rất cao. Cũng giống như cách con người nhận biết các vật thể trong tự nhiên. Phân biệt được một con chó với một con mèo nhờ vào các đặc trưng từ mức độ thấp (có 4 chân, có đuôi) đến mức độ cao (dáng đi, hình thể, màu lông). 2.4.4 Xây dựng mạng Nơ-ron tích chập Phần này sẽ giới thiệu một trong những mạng sâu được sử dụng rộng rãi đó là mạng tích chập sâu (deep convolutional networks). Bài toán sẽ làm việc cụ thể với
  • 33. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 23 mạng tích chập để giải quyết bài toán phân loại trái cây trên ảnh màu. Sẽ bắt đầu mạng tích chập với việc sử dụng mạng truyền thống để giải quyết bài toán này trong phần trước. Mặc dù nhiều phép toán lặp nhưng sẽ xây dựng mạng hiệu quả hơn. Luận văn này sẽ khám phá ra rất nhiều kĩ thuật hiệu quả: Tích chập (convolution), giảm số chiều (pooling), sử dụng GPUs để huấn luyện được nhiều dữ liệu hơn đã thực hiện trên mạng cũ, mở rộng giải thuật huấn luyện dữ liệu (để giảm quá khớp – overfitting), sử dụng kĩ thuật dropout để giảm overfitting, việc sử dụng tổng hợp các mạng và các kĩ thuật khác. Kết quả là hệ thống làm việc gần như con người. Trong số 10.000 bức ảnh huấn luyện, hệ thống sẽ phân loại đúng 9.967 bức ảnh. Phần còn lại của chương sẽ thảo luận về học sâu dưới góc độ tổng quan và chi tiết. Bài toán sẽ tìm hiểu làm thế nào để các mô hình mạng neuron tích chập có thể ứng dụng để giải quyết các kỹ thuật phân loại trái cây trên ảnh màu, luận văn sẽ nghiên cứu về mạng neuron trong tương lai và học sâu (deep learning), từ các ý tưởng như giao diện người sử dụng hướng đích đến vai trò của học sâu trong trí tuệ nhân tạo. Phần này xây dựng dựa trên các phần trước sử dụng các ý tưởng như: lan truyền ngược (backpropagation), regularization, hàm softmax....
  • 34. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 24 Hình 2.6 Mô hình mạng perceptron đa tầng http://neuralnetworksanddeeplearning.com/chap5.html Đặc biệt, đối với mỗi điểm ảnh trong ảnh đầu vào, sẽ được mã hóa cường độ của điểm ảnh là giá trị của neuron tương ứng trong tầng đầu vào. Đối với bức ảnh kích thước 28x28 điểm ảnh đang sử dụng, mạng có 784 (28x28) neuron đầu vào. Sau đó huấn luyện trọng số (weight) và độ lệch (bias) để đầu ra của mạng như mong đợi là xác định chính xác ảnh các chữ số „0‟, „1‟, „2‟,....,‟8‟ hay „9‟. Mạng neuron trước đây làm việc khá tốt: đã đạt được độ chính xác trên 98%, sử dụng tập dữ liệu huấn luyện và kiểm thử từ tập dữ liệu ≈ lợi thế của các cấu trúc không gian? Trong phần này, luận văn mô tả mạng neuron tích chập. Những mạng này sử dụng một kiến trúc đặc biệt phù hợp cho bài toán phân loại ảnh. Sử dụng kiến trúc này làm cho mạng tích chập huấn luyện nhanh hơn. Kết quả là giúp huấn luyện sâu, mạng nhiều tầng, rất phù hợp cho phân loại ảnh. Ngày nay, mạng tích chập sâu hoặc một số biến thể của nó được sử dụng trong các mạng neuron để nhận dạng ảnh.
  • 35. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 25 Mạng tích chập sử dụng 3 ý tưởng cơ bản: các trường tiếp nhận cục bộ (local receptive field), trọng số chia sẻ (shared weights) và tổng hợp (pooling). Trường tiếp nhận cục bộ (Local receptive fields): Trong các tầng kết nối đầy đủ được chỉ ra trước đây, đầu vào đã được mô tả là một đường thẳng đứng chứa các neuron. Trong mạng tích chập, sẽ thay thế các đầu vào là 28 × 28 neuron, giá trị tương ứng với 28 x28 cường độ điểm ảnh mà bài toán sử dụng: Hình 2.7 Mô tả các neuron đầu vào Như thường lệ mô hình sẽ kết nối các điểm ảnh đầu vào cho các neuron ở tầng ẩn. Nhưng sẽ không kết nối mỗi điểm ảnh đầu vào cho mỗi neuron ẩn. Thay vào đó, chỉ kết nối trong phạm vi nhỏ, các vùng cục bộ của bức ảnh. Để được chính xác hơn, mỗi neuron trong lớp ẩn đầu tiên sẽ được kết nối với một vùng nhỏ của các neuron đầu vào, ví dụ, một vùng 5 × 5, tương ứng với 25 điểm ảnh đầu vào. Vì vậy, đối với một neuron ẩn cụ thể, có thể có các kết nối như sau:
  • 36. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 26 Hình 2.8 Mô hình neuron cục bộ Vùng đó trong bức ảnh đầu vào được gọi là vùng tiếp nhận cục bộ cho neuron ẩn. Đó là một cửa sổ nhỏ trên các điểm ảnh đầu vào. Mỗi kết nối sẽ học một trọng số. Và neuron ẩn cũng sẽ học một độ lệch (overall bias), có thể hiểu rằng neuron lớp ẩn cụ thể là học để phân tích trường tiếp nhận cục bộ cụ thể của nó. Sau đó trượt trường tiếp nhận cục bộ trên toàn bộ bức ảnh. Đối với mỗi trường tiếp nhận cục bộ, có một neuron ẩn khác trong tầng ẩn đầu tiên . Để minh họa điều này một cách cụ thể, hãy bắt đầu với một trường tiếp nhận cục bộ ở góc trên bên trái: Hình 2.9 Mô hình neuron cục bộ Sau đó, trượt trường tiếp nhận cục bộ trên bởi một điểm ảnh bên phải (tức là bằng một neuron), để kết nối với một neuron ẩn thứ hai:
  • 37. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 27 Hình 2.10 Mô hình neuron cục bộ Và như vậy, việc xây dựng các lớp ẩn đầu tiên. Lưu ý rằng nếu có một ảnh đầu vào 28 × 28 và 5 × 5 trường tiếp nhận cục bộ thì ta sẽ có 24 × 24 neuron trong lớp ẩn. Có được điều này là do chỉ có thể di chuyển các trường tiếp nhận cục bộ ngang qua 23 neuron (hoặc xuống dưới 23 neuron), trước khi chạm với phía bên phải (hoặc dưới) của ảnh đầu vào. Như vậy, việc xây dựng các lớp ẩn đầu tiên. Lưu ý rằng nếu có một ảnh đầu vào 28 × 28 và 5 × 5 trường tiếp nhận cục bộ, sau đó sẽ có 24 × 24 neuron trong lớp ẩn. Điều này là bởi vì chỉ có thể di chuyển các trường tiếp nhận cục bộ 23 neuron ngang qua (hoặc 23 neuron xuống), trước khi chạm với phía bên phải (hoặc dưới) của ảnh đầu vào. Trọng số và độ lệch (Shared weights and biases) : Mỗi một neuron ẩn có một độ lệch (bias) và 5 × 5 trọng số liên kết với trường tiếp nhận cục bộ. Những gì chưa đề cập đến là sẽ sử dụng các trọng số và độ lệch tương tự cho mỗi neuron ẩn 24 × 24. Nói cách khác, đối với những neuron ẩn thứ j, k, đầu ra là:
  • 38. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 28 Hình 2.11 Công thức xây dựng lớp tính Neuron Ở đây,  là hàm kích hoạt neuron, có lẽ là hàm sigmoid ta sử dụng trong các chương trước, b là giá trị chung cho độ lệch. M(wl), m là một mảng 5x5 của trọng số chia sẻ, cuối cùng, sử dụng axy biểu thị giá trị kích hoạt vào tại vị trí x,y. Do đó, chưa xác định chính xác khái niệm về đặc trưng, có thể nghĩ rằng của đặc trưng là loại mẫu đầu vào mà làm cho neuron hoạt động: ví dụ, nó có thể là biên của ảnh hoặc có thể là một dạng hình khối khác, ngay tại các vị trí khác nhau của ảnh đầu vào. Tại sao điều này lại có lí, giả sử rằng các trọng số và độ lệch mà các neuron ẩn chọn ra, một biên thẳng đứng (vertical edge) trong trường tiếp nhận cục bộ. Khả năng đó rất hữu ích ở các vị trí khác nhau trong bức ảnh. Do đó, nó là hữu ích để áp dụng phát hiện các đặc trưng giống nhau trong ảnh. Để đặt nó trong thuật ngữ trừu tượng hơn một chút, mạng chập được thích nghi với bất biến dịch (translation invariance) của các ảnh: di chuyển ảnh của một con mèo một ít, và nó vẫn là một hình ảnh của một con mèo. Đôi khi gọi các bản đồ từ các lớp đầu vào cho lớp ẩn là bản đồ đặc trưng (feature map), gọi các trọng số xác định các bản đồ đặc trưng là trọng số chia sẻ (shared weights), gọi độ lệch xác định bản đồ đặc trưng là độ lệch chia sẻ (shared bias). Các trọng số được chia sẻ và độ lệch thường được gọi là hạt nhân (kernel) hay bộ lọc (filter).
  • 39. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 29 Cấu trúc mạng đã vừa mô tả có thể phát hiện một bản đồ đặc trưng . Để phát hiện và nhận dạng ảnh thì cần nhiều hơn một bản đồ đặc trưng và một lớp tích chập hoàn chỉnh bao gồm vài bản đồ đặc trưng: Hình 2.12 Minh hoạ đặc trưng cấu trúc neuron Trong ví dụ, có 3 bản đồ đặc trưng. Mỗi bản đồ đặc trưng được xác định bởi một tập 5 × 5 trọng số chia sẻ, và một độ lệch chia sẻ duy nhất. Kết quả là các mạng có thể phát hiện 3 loại đặc trưng khác nhau, với mỗi đặc trưng được phát hiện trên toàn bộ ảnh, đã chỉ ra 3 bản đồ đặc trưng, để làm cho cho sơ đồ ở trên đơn giản. Tuy nhiên, trong thực tế mạng chập có thể sử dụng nhiều bản đồ đặc trưng hơn. Một trong những mạng chập đầu tiên là LeNet-5, sử dụng 6 bản đồ đặc trưng, mỗi bản đồ được liên kết đến một trường tiếp nhận cục bộ 5 × 5. Vì vậy, các ví dụ minh họa ở trên là thực sự khá gần LeNet-5. Trong ví dụ phát triển sau này của chương này sẽ sử dụng lớp tích chập với 20 và 40 bản đồ đặc trưng. hãy xem qua một số bản đồ đặc trưng đã được học.
  • 40. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 30 Hình 2.13 Bản đồ đặc trưng Trên đây là 20 ảnh tương ứng với 20 bản đồ đặc trưng khác nhau (hay còn gọi là bộ lọc, hay là nhân). Mỗi bản đồ được thể hiện là một hình khối kích thước 5 × 5, tương ứng với 5 × 5 trọng số trong trường tiếp nhận cục bộ. Khối trắng có nghĩa là một trọng số nhỏ hơn, vì vậy các bản đồ đặc trưng đáp ứng ít hơn để tương ứng với điểm ảnh đầu vào. Khối sẫm màu hơn có nghĩa là trọng số lớn hơn, do đó, các bản đồ đặc trưng đáp ứng nhiều hơn với các điểm ảnh đầu vào tương ứng. Những hình ảnh trên cho thấy các kiểu đặc trưng mà lớp tích chập đáp ứng. Một ưu điểm quan trọng của trọng số và độ lệch chia sẻ là nó làm giảm đáng kể số lượng các tham số liên quan đến một mạng tích chập. Đối với mỗi bản đồ đặc trưng cần 25 = 5 × 5 trọng số chia sẻ và một độ lệch chia sẻ duy nhất. Vì vậy, mỗi bản đồ đực trưng cần 26 tham số. Nếu có 20 bản đồ đặc trưng thì cần 20 x 26 = 520 tham số để xác định lớp tích chập. Bây giờ hãy làm phép so sánh, giả sử chúng ta có lớp đầu tiên kết nối đầy đủ, tức là có 784 = 28 × 28.784 = 28 × 28 neuron đầu vào, và số neuron lớp ẩn khiêm tốn là 30. Như vậy cần 784 × 30 trọng số, cộng thêm 30 sai lệch
  • 41. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 31 (bias), tổng số 23,550 tham số (parameter). Nói cách khác, lớp kết nối đầy đủ (fully – connected layer) sẽ cần số lượng tham số nhiều gấp 40 lần so với lớp tích chập (convolutional layer). Tất nhiên, không thể thực sự làm một so sánh trực tiếp giữa số lượng các tham số, bởi vì hai mô hình này khác nhau. Nhưng về trực giác dường như việc sử dụng bất biến dịch của các lớp tích chập sẽ giảm số lượng các tham số cần thiết mà vẫn đạt được hiệu quả giống như các mô hình kết nối đầy đủ. Mô hình mạng tích chập sẽ cho kết quả huấn luyện nhanh hơn giúp xây dựng mạng sâu hơn sử dụng các lớp tích chập. Cái tên “convolutional” xuất phát là các hoạt động trong phương trình đôi khi được biết đến như convolution. Chính xác hơn một chút, đôi khi viết phương trình như: a1 = σ (b + w * a0), trong đó a1 là tập kích hoạt đầu ra từ một bản đồ đặc trưng, a0 là tập hợp các kích hoạt đầu vào, và * được gọi là phép toán chập. Lớp chứa hay lớp tổng hợp (Pooling layer): Ngoài các lớp tích chập vừa mô tả, mạng neuron tích chập cũng chứa các lớp pooling. Lớp pooling thường được sử dụng ngay sau lớp tích chập. Những gì các lớp pooling làm là đơn giản hóa các thông tin ở đầu ra từ các lớp tích chập. Ví dụ, mỗi đơn vị trong lớp pooling có thể thu gọn một vùng 2 × 2 neuron trong lớp trước. Một thủ tục pooling phổ biến là max-pooling. Trong max- pooling, một đơn vị pooling chỉ đơn giản là kết quả đầu ra kích hoạt giá trị lớn nhất trong vùng đầu vào 2 × 2, như minh họa trong sơ đồ sau:
  • 42. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 32 Hình 2.14 Sơ đồ phân lớp Bởi vì có 24 × 24 neuron đầu ra từ các lớp tích chập, sau khi pooling có 12 × 12 neuron. Như đã đề cập ở trên, lớp tích chập thường có nhiều hơn một bản đồ đặc trưng, áp dụng max-pooling cho mỗi bản đồ đặc trưng riêng biệt. Vì vậy, nếu có ba bản đồ đặc trưng, các lớp tích chập và max-pooling sẽ kết hợp như sau: có thể hiểu max-pooling như là một cách cho mạng để hỏi xem một đặc trưng nhất được tìm thấy ở bất cứ đâu trong một khu vực của ảnh. Sau đó nó bỏ đi những thông tin định vị chính xác. Trực giác là một khi một đặc trưng đã được tìm thấy, vị trí chính xác của nó là không quan trọng như vị trí thô của nó so với các đặc trưng khác. Một Hình 2.15 Sơ đồ phân lớp
  • 43. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 33 lợi ích lớn là có rất nhiều tính năng gộp ít hơn (fewer pooled features), điều này sẽ giúp giảm số lượng các tham số cần thiết trong các lớp sau. Max-pooling không phải là kỹ thuật duy nhất được sử dụng để pooling. Một phương pháp phổ biến khác được gọi là L2 pooling. Ở đây, thay vì lấy giá trị kích hoạt tối đa (maximum activation) của một vùng 2 × 2 neuron, chúng ta lấy căn bậc hai của tổng các bình phương của kích hoạt trong vùng 2 × 2. Trong khi các chi tiết thì khác nhau, nhưng về một khía cạnh khác thì tương tự như max-pooling: L2 pooling là một cách để cô đọng thông tin từ các lớp tích chập. Trong thực tế, cả hai kỹ thuật đã được sử dụng rộng rãi, đôi khi người ta sử dụng các loại pooling khác. Đặt tất cả chúng lại với nhau (Putting it all together): Bây giờ có thể đặt tất cả những ý tưởng lại với nhau để tạo thành một mạng tích chập hoàn chỉnh. Nó tương tự như kiến trúc nhìn vào, nhưng có thêm một lớp 10 neuron đầu ra, tương ứng với 10 giá trị có thể cho các số MNIST ( '0', '1', '2', v.v...): Hình 2.16 Sơ đồ phân lớp Mạng bắt đầu với 28 × 28 neuron đầu vào, được sử dụng để mã hóa các cường độ điểm ảnh cho ảnh MNIST. Sau đó là một lớp tích chập sử dụng 5 × 5 trường tiếp nhận cục bộ và 3 bản đồ đặc trưng. Kết quả là một lớp 3 × 24 × 24 neuron lớp ẩn.
  • 44. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 34 Bước tiếp theo là một lớp max-pooling, áp dụng cho 2 × 2 vùng qua 3 bản đồ đặc trưng (feauture maps). Kết quả là một lớp 3 × 12 × 12 neuron đặc trưng ở tầng ẩn. Lớp cuối cùng của các kết nối trong mạng là một lớp đầy đủ kết nối. Đó là, lớp này nối mọi neuron từ lớp max-pooled tới mọi neuron của tầng ra. Kiến trúc kết nối đầy đủ này cũng giống như mô hình sử dụng trong các chương trước. Kiến trúc tích chập này hoàn toàn khác với các kiến trúc được sử dụng trong các chương trước. Nhưng về tổng thể thì tương tự: mạng cấu tạo từ nhiều đơn vị đơn giản, hành vi của nó được xác định bởi trọng số và độ lệch. Và mục tiêu tổng thể là vẫn như nhau: sử dụng dữ liệu huấn luyện để huấn luyện trọng số và độ lệch của mạng vì vậy mạng hiện tốt việc phân loại các chữ số đầu vào. Đặc biệt, như phần đầu đã trình bày, sẽ huấn luyện mạng sử dụng gradient descent ngẫu nhiên và lan truyền ngược. Tuy nhiên, cần thay đổi thủ tục lan truyền ngược (backpropagation). Lý do là công thức của lan truyền ngược là cho các mạng với các tầng kết nối đầy đủ, nó đơn giản để thay đổi công thức lan truyền ngược cho các lớp tích chập và các lớp max- pooling 2.5 Một số kiến trúc convolutional neural network thông dụng 2.5.1 Kiến trúc AlexNet [17] Hình 2.17 Kiến trúc AlexNet https://www.researchgate.net/figure/AlexNet-CNN-architecture-layers_fig1_318168077
  • 45. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 35 Kiến trúc AlexNet do Alex Krizhevsky phát triển vào năm 2012 để khi tham gia cuộc thi ImageNet. Mô hình này đã đạt giải nhất trong cuộc thi 2012 ImageNet. Mô hình gồm 5 tầng convolitional và 3 tầng fully connected với các tham số như trong hình vẽ trên. Số lượng tham số: 60 triệu tham số 2.5.2 Kiến trúc VGG 16 [17] Hình 2.18 Kiến trúc VGG 16 https://www.quora.com/What-is-the-VGG-neural-network Kiến trúc VGG 16 do Simonyan và Zissermanphát triển vào năm 2014 để khi tham gia cuộc thi ILSVRC 2014. Mô hình này đã đạt giải nhì trong cuộc thi ILSVRC 2014. Mô hình gồm tổng cộng 16 tầng, trong đó có 13 tầng convolitional và 3 tầng fully connected với các tham số như trong hình vẽ trên. Số lượng tham số: 138 triệu tham số 2.5.3 Kiến trúc Inception/GoogleNet [18]
  • 46. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 36 Hình 2.19 Kiến trúc Inception https://medium.com/coinmonks/paper-review-of-googlenet-inception-v1-winner-of-ilsvlc- 2014-image-classification-c2b3565a64e7 Kiến trúc Inception do Google phát triển và đã chiến thắng trong cuộc thi ILSVRC 2014. Mô hình gồm 22 tầng convolitional và không có tầng fully connected. Trong mô hình Inception, các tác giả đã đưa ra module đặt tên là Inception. Inception gồm các phép toan filter được thực hiện song song trên input của tầng trước đó. Mỗi inception gồm có 3 convolutional có kích thước (1x1, 3x3, 5x5) và 1 tầng max pooling kích thước 3x3. Hình 2.20 Inception https://medium.com/coinmonks/paper-review-of-googlenet-inception-v1-winner-of-ilsvlc- 2014-image-classification-c2b3565a64e7 Số lượng tham số: 5 triệu tham số
  • 47. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 37 CHƯƠNG 3. PHÂN LOẠI ẢNH TRÁI CÂY 3.1 Phát biểu bài toán Phân lớp các đối tượng trong ảnh là bài toán quan trọng trong thị giác máy tính, đây là giai đoạn quan trọng trong việc hiểu các đối tượng trong ảnh. Tuy nhiên, cho tới thời điểm này, mặc dù đã có nhiều giải pháp hiệu quả giải quyết bài toán phân lớp trên từng loại cơ sở dữ liệu ảnh cụ thể, bài toán phân lớp ảnh nói chung vẫn còn là bài toán thách thức. Trong luận văn này sẽ tìm hiểu bài toán phân lớp ảnh trái cây màu. Đầu vào của bài toán là ảnh màu của trái cây có kích thước 100 × 100. Đầu ra của bài toán là mã số màu của ảnh trái cây. Có tất cả 60 loại trái cây. Ví dụ 1: Một số ảnh quả táo cần nhận dạng Hình 3.1 Hình dạng khác nhau của cùng một loại táo Ví dụ 2: Một số ảnh quả Nho cần nhận dạng Hình 3.2 Hình dạng quả nho
  • 48. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 38 Chúng ta có thể mô hình lại bài toán như sau Input: đầu vào của bài toán là một ảnh: 𝑥 ∈ ℝ100×100×3 Output: đầu ra của bài toán là nhãn của ảnh 𝑥, cho biết ảnh thuộc loại trái cấy nào, hay là một hàm 𝑓(𝑥) ∈ [0, 59] với 𝑥 ∈ ℝ100×100×3 3.2 Cơ sở dữ liệu trái cây Tên cơ sở dữ liêu trái cây Fruits-360 do Horea Muresan [1] phát triển năm 2017. Cơ sở dữ liệu Fruits-360 có tất cả 38409 ảnh trái cây và chia làm 2 tập ảnh: Training và Testing • Kích thước tập Training: 28736 ảnh • Kích thước tập Testing: 9673 ảnh • Kích thước ảnh: 100x100 pixels • Số lớp: 60 lớp tương ứng với 60 loại trái cây Toàn bộ 60 loại trái cây có tên và mã số tương ứng được cho như trong bảng sau Mã số Tên trái cây 0 Apple Braeburn 1 Apple Golden 1 2 Apple Golden 2 3 Apple Golden 3 4 Apple Granny Smith 5 Apple Red 1 6 Apple Red 2 7 Apple Red 3
  • 49. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 39 8 Apple Red Delicious 9 Apple Red Yellow 10 Apricot 11 Avocado 12 Avocado ripe 13 Banana 14 Banana Red 15 Cactus fruit 16 Carambula 17 Cherry 18 Clementine 19 Cocos 20 Dates 21 Granadilla 22 Grape Pink 23 Grape White 24 Grape White 2 25 Grapefruit Pink 26 Grapefruit White 27 Guava 28 Huckleberry 29 Kaki 30 Kiwi 31 Kumquats 32 Lemon 33 Lemon Meyer
  • 50. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 40 34 Limes 35 Litchi 36 Mandarine 37 Mango 38 Maracuja 39 Nectarine 40 Orange 41 Papaya 42 Passion Fruit 43 Peach 44 Peach Flat 45 Pear 46 Pear Abate 47 Pear Monster 48 Pear Williams 49 Pepino 50 Pineapple 51 Pitahaya Red 52 Plum 53 Pomegranate 54 Quince 55 Raspberry 56 Salak 57 Strawberry 58 Tamarillo
  • 51. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 41 59 Tangelo Bảng 3.1 Các loại trái cây Chúng ta mô tả cơ sở dữ liệu Fruits dưới dạng 𝐷 = {𝑥(𝑖) , 𝑦(𝑖) }1 𝑚 . Trong đó: 𝑥 là ảnh trái cây với 3 kênh màu RGB, 𝑥 ∈ ℝ100×100×3 , 𝑦 là nhãn của ảnh 𝑥, 𝑦 ∈ [0 … 59], 𝑚 là số lượng dữ liệu huấn luyện. 3.3 Cấu trúc thư mục cơ sở dữ liệu ảnh trái cây Dữ liệu trong cơ sở dữ liệu Fruits-360 được tổ chức thành 2 thư mục • Thư mục Training: chứa các file ảnh dùng để training mô hình • Thư mục Validation: chưa các file ảnh dùng để kiểm tra mô hình Trong mỗi thư mục Training, Validation, chứa 60 thư mục con tương ứng với 60 loại trái cây (các ảnh cùng loại trái cây sẽ nằm trong cùng một thư mục). Tên file ảnh: Tên file ảnh được đặt tên ImageIndex_100.jpg hay r_ImageIndex_100.jpg • ImageIndex là mã số cho biết ảnh thứ mấy • 100 là kích thước file ảnh là 100x100 • r cho biết ảnh đã bị xoay 3.4 Dữ liệu mẫu Một số ảnh táo (apple) thuộc loại Apple Braeburn được cho như trong hình sau
  • 52. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 42 Hình 3.3 Trái cây Apple Braeburn Các ảnh của một loại có thể được chụp ở các gốc nhìn khác nhau. Ví dụ trong hình sau loại táo Apple Braeburn được chụp ở các gốc nhìn khác nhau.
  • 53. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 43 Hình 3.4 Trái cây Apple Braeburn đã bị xoay
  • 54. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 44 Hình 3.5 Trái cây Apple Golden 1
  • 55. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 45 Hình 3.6 Trái cây Apple Golden 1 đã bị xoay 3.5 Phương pháp đề xuất Convolutional Neural Network (CNN) có nhiều đột phá trong các bài toán phân lớp dữ liệu ảnh. CNN là mô hình học theo chiến lược end-to-end, nghĩa là tích hợp phần học đặc trưng và phần học phân lớp trong cùng một mô hình. Tuy nhiên, do đặc điểm của mỗi bài toán khác nhau nên khi áp dụng mô hình CNN, chúng ta cần phải thiết kế kiến trúc mô hình phù hợp với bài toán đang giải quyết. A. Kiến trúc Kiến trúc tổng quan của mô hình giải quyết bài toán được thiết kế gồm 2 phần: phần thứ nhất, gồm có các tầng Convolution để biểu diễn đặc trưng. Phần thứ hai
  • 56. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 46 theo sau đó là một mạng Fully Connected để phân lớp dữ liệu. Thông tin các tầng được mô tả như sau: • Tầng Input: Tầng input chấp nhận ảnh có kích thước 100 × 100 pixels với 3 kênh màu RGB. Đầu vào của tầng input nhận ảnh 𝑥 ∈ ℝ100×100×3 • Tầng Convolution: Có 5 tầng Convolutions dùng để khám phá đặc trưng trong ảnh dữ liệu. • Hàm activation: Tất cả các tầng (tầng convolution và tầng Fully Connected) đều dùng hàm activation ReLU (Rectified Linear Units) 𝑓(𝑥) = max⁡(0, 𝑥) để giúp mạng không bị dày đặc và giúp việc huấn luyện mạng nhanh hơn. • Tầng Pooling: Các thông tin ở tầng trước (thông tin cấp thấp) được dùng để tổng hợp thành thông tin ở tầng sau (thông tin cấp cao hơn), và để tổng hợp hiệu quả, thông tin lớp trước cũng cần phải được giản lược bớt độ phức tạp. Cho nên chúng tôi dùng max pooling giải quyết vấn đề này. Max pooling dùng ở đây có giá trị stride bằng với giá trị padding. • Tầng Fully Connected: Có 3 tầng Fully Connected dùng để phân lớp dữ liệu. Tất cả các tầng Fully Connected chúng tôi dung kỹ thuật Dropout giúp tránh vấn đề overfitting. • Tầng output: Tầng output có 60 neuron, mỗi neuron tương ứng với một lớp. Xác xuất của mỗi lớp được xác định thông qua hàm softmax. Trong đó, 𝑝𝑖 là xác suất của từng lớp, 𝑜𝒊 là giá trị output ở lớp 𝑖, 𝑛𝑦 là số lớp của bài toán. Các thông số của từng tầng được cho trong bảng sau: STT Tầng Kích thước Chiều rộng Chiều cao Chiều sâu 𝑝𝒊 = 𝑒𝑜𝒊 ∑ 𝑒𝑜𝒌 𝑛𝑦 𝒌=1 , ∀𝑖
  • 57. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 47 0 Input 32 32 3 1 Convolution 9 9 32 2 ReLU 9 9 32 3 Pooling 9 9 32 4 Convolution 7 7 64 5 ReLU 7 7 64 6 Pooling 7 7 64 7 Convolution 5 5 128 8 ReLU 5 5 128 9 Pooling 5 5 128 10 Convolution 5 5 256 11 ReLU 5 5 256 12 Pooling 5 5 256 13 Convolution 3 3 512 14 ReLU 3 3 512 15 Pooling 3 3 512 16 Fully Connected 1 1 2048 17 ReLU 1 1 2048 18 Fully Connected 1 1 1024 19 ReLU 1 1 1024 20 Fully Connected 1 1 60 21 Softmax 1 1 60 Bảng 3.2 Các thông số của mô hình
  • 58. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 48 B. Hàm loss Để đánh giá lỗi giữa output của mạng và giá trị ground truth của tập dữ liệu, chúng tôi chọn hàm loss là hàm category cross entropy 𝐿(𝑦, 𝑦 ̂) = − ∑(𝑦(𝑖) log(𝑦 ̂(𝑖) ) + (1 − 𝑦(𝑖) ) log(1 − 𝑦 ̂(𝑖) )) 𝑚 𝑖=1 Trong đó, 𝑦(𝑖) là ground truth label của điểm dữ liệu 𝑥(𝑖) , 𝑦 ̂(𝑖) là giá trị dự đoán C. Phương pháp huấn luyện Để training các tham số, chúng tôi dùng thuật toán Adaptive Moment Estimation (Adam) để tối ưu hóa hàm Loss.
  • 59. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 49 CHƯƠNG 4. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 4.1 Thực nghiệm và kết quả A. Môi trường: • Hệ thống phát triển trên môi trường Python 3.5 • Framework: Dùng Framework Tensorflow để phát triển Convolutional Neural Network • Cấu hình máy dùng để huấn luyện mô hình: o RAM: 16 GB o Card đồ họa: Một card đồ họa NVIDIA GTX 1070, 8GB o Ổ cứng: SSD 250 GB B. Thực nghiệm • Tỷ lệ dữ liệu dùng training và testing: 75% training (28736 ảnh), 25% testing (9673 ảnh) • Các hyper parameters: o Kích thước một batch: 100 ảnh o Khởi tạo các trọng số: Các trọng được khởi tạo ngẫu nhiên theo phương pháp Xavier o Hệ số học có giá trị: 0.001
  • 60. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 50 Quá trình giảm lỗi trong quá trình huấn luyện Hình 4.1 Độ lỗi của mô hình trong quá trình huấn luyện dựa trên tensorboard Mô hình có độ lỗi giảm khá nhanh, chỉ trong vòng 300 lần lặp, mức độ lỗi đã giảm từ 4 xuống gần bằng 0. Điều này phản ánh mức độ hội tụ của mô hình khá nhanh. Hình 4.2 Độ chính xác của mô hình trong quá trình huấn luyện dựa trên tensorboard Mô hình có độ chính xác tăng khá tốt, chỉ trong vòng 300 lần lặp, mức độ chính xác của mô hình đã tăng từ gần 0% lên hơn 90%. Điều này phản ánh khả năng học của mô hình khá nhanh.
  • 61. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 51 C. Kết quả thực nghiệm: Số tầng convolutional Số tầng fully connected Độ chính xác 4 2 92.12% 3 95.23% 4 94.52% 5 2 95.17% 3 97.47% 4 94.30% 6 2 94.27% 3 95.19% 4 94.72% Qua thực nghiệm các mô hình với các thông số khác nhau, mô hình có kết quả tốt là có 5 tầng convolutional và 3 tầng fully connected với độ chính xác 97.47%
  • 62. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 52 D. Giao diện chính của chương trình Hình 4.3 Giao diện chính của ứng dụng Các thành phần của giao diện được cho trong bảng sau STT Chức năng 1 Thư mục chứa dữ liệu huấn luyện 2 Thư mục chứa dữ liệu kiểm tra 3 Chọn thư mục chứa dữ liệu huấn luyện 4 Chọn thư mục chứa dữ liệu kiểm tra 1 2 3 4 5 6 10 7 9 8
  • 63. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 53 5 Huấn luyện mô hình 6 Kiểm tra mô hình trên tập dữ liệu kiểm tra 7 Chọn một ảnh để kiểm tra 8 Cửa sổ hiện kết quả 9 Xóa thông tin của sở hiện kết quả 10 Đóng chương trình Bảng 4.1 Các chức năng của ứng dụng
  • 64. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 54 Quá trình huấn luyện Hình 4.4 Huấn luyện mô hình
  • 65. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 55 Hình 4.5 Kiểm tra trên tập dữ liệu test 4.2 Kết luận và phướng phát triển Luận văn đã phân tích, thiết kế một mô hình CNN để phân loại trái cây, mô hình sử dụng cả ba kênh RGB để phân lớp ảnh. Kết quả thực nghiệm cho thấy độ chính xác của mô hình là 95.01%. So với kết quả của Horea Muresan [2] có độ chính xác là 94.59%, mô hình phát triển trong luận văn tốt hơn 0.42%
  • 66. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 56 4.3 Hướng phát triển tiếp theo Hướng phát triển tiếp theo là xem xét việc sinh thêm dữ liệu bằng cách gây nhiễu trên các ảnh gốc, tạo nền cho các ảnh để có thể sử dụng được mô hình trên dữ liệu ảnh có nền. Biến đổi ảnh sang ảnh có một kênh màu và kết hợp một số mô hình lại với nhau để cho độ chính xác cao hơn.
  • 67. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 57 TÀI LIỆU THAM KHẢO [1] Fruits dataset, https://www.kaggle.com/moltean/fruits (truy cập ngày 18/5/2018). [2] Horea Muresan, Mihai Oltean, “Fruit recognition from images using deep learning”, Technical Report, Babes-Bolyai University, 2017. [3] Srivastava, N., Hinton, G., Krizhevsky, A., Sutskever, I., & Salakhutdinov, R. “Dropout: A simple way to prevent neural networks from overfitting”, The Journal of Machine Learning Research, 15(1), p.1929-1958, 2014. [4] Martín Abadi , Paul Barham , Jianmin Chen , Zhifeng Chen , Andy Davis, Jeffrey Dean , Matthieu Devin , Sanjay Ghemawat , Geoffrey Irving , Michael Isard , Manjunath Kudlur , Josh Levenberg , Rajat Monga , Sherry Moore , Derek G. Murray , Benoit Steiner , Paul Tucker , Vijay Vasudevan , Pete Warden , Martin Wicke , Yuan Yu , Xiaoqiang Zheng, “TensorFlow: a system for large-scale machine learning”, Proceedings of the 12th USENIX conference on Operating Systems Design and Implementation, 2016. [5] .Y. LeCun and Y. Bengio.“Convolutional networks for images, speech, and time- series.” In M. A. Arbib, editor, The Handbook of Brain Theory and Neural Networks. MIT Press, 1995. [6] .Fabien Lauer, ChingY. Suen, Gérard Bloch,”A trainable feature extractor for handwritten digit recognition“,Elsevier, october 2006. [7] Proceedings of the Seventh International Conference on Document Analysis and Recognition (ICDAR 2003) 0-7695-1960-1/03 $17.00 © 2003 IEEE
  • 68. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 58 [8] Chirag N. Paunwala & Suprava Patnaik. “A Novel Multiple License Plate Extraction Techniquefor Complex Background in Indian Traffic Conditions”, Sarvajanik College of Engineering and Technology, 2010 [9] Choo Kar Soon, Kueh Chiung Lin, Chung Ying Jeng and Shahrel A. Suandi , “Malaysian Car Number Plate Detection and Recognition System”, 2012 [10] Tran Duc Duan, Duong Anh Duc, Tran Le Hong Du, “Combining Hough Transform and Contour Algorithm for detecting Vehicles License-Plates”, University of Natural Sciences, 2004 [11] Nobuyuki Otsu, "A threshold selection method from gray-level histograms”, 1979 [12] R.C. Gonzalez, R.E. Woods, Digital Image Processing, Addison-Wesley, 1993. [13] Các tài liệu về EmguCV tại www.emgucv.com OPenCV tại www.opencv.com [14] http://genk.vn/giai-ngo-ve-deep-learning-cong-nghe-dang-giup-cho-tri-tue- nhan-tao-sanh-duoc-voi-con-nguoi-20160816002755886.chn (Ngày truy cập 20/07/2018) [15] https://ongxuanhong.wordpress.com/category/data-science/deep-learning/ (Ngày truy cập 20/07/2018) [16] Alex Krizhevsky, “Imagenet classification with deep convolutional neural networks”, Advances in neural information processing systems, 2012 [17] Karen Simonyan, Andrew Zisserman, “Very Deep Convolutional Networks for Large-Scale Image Recognition”, arXiv:1409.1556, 2014
  • 69. Luận văn thạc sĩ công nghệ thông tin – Học Viên Nguyễn Văn Phúc – MSHV: 12CH201011 59 [18] Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, Andrew Rabinovich, “Going Deeper with Convolutions”, 2014