Mạng nơron tế bào và ứng dụng trong xử lý ảnh
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
--- ---
ĐẶNG THỊ THO – 0 3 0 3 0 6 0 2
Đề tài:
Nghiên cứu tiếp cận công nghệ mạng
nơron tế bào CNN
và ứng dụng trong xử lý ảnh
LUẬN VĂN CỬ NHÂN TIN HỌC
Giáo viên hướng dẫn
Ts: Hà Mạnh Đào
HÀ NỘI- NĂM 2007
SVTH Đặng Thị Tho
1
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
Nhận xét của giáo viên hướng dẫn
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SVTH Đặng Thị Tho
Sinh viên
Đặng Thị Tho
SVTH Đặng Thị Tho
4
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
LỜI MỞ ĐẦU
Trước kia nhiều người tưởng rằng hoạt động của máy tính điện tử phản
ánh cơ chế hoạt động của bộ não con người. Tuy nhiên hiện nay vấn đề đã trở
nên rõ ràng là nơron và các tế bào thần kinh có cơ chế hoạt động hoàn toàn khác.
Đối với các máy tính số hiện nay việc xử lý tín hiệu âm thanh, hình ảnh, hương
vị, tín hiệu tiếp xúc là những vấn đề phức tạp đòi hỏi độ tính toán lớn, ngược lại
ở các sinh vật sống việc xử lý các chuỗi tín hiệu này lại rất đơn giản. Do vậy cần
phải có một nguyên lý tính toán mới, cấu trúc mới để tiếp tục nâng cao được khả
năng tính toán và giải quyết được những vấn đề mà máy tính điện tử hiện hành
chưa giải quyết được.
Để có thể chế tạo được hệ thống điện tử có khả năng tính toán tương tự
như hệ nơron tính toán này, đòi hỏi ta phải thay đổi về kiến trúc máy tính, về
thuật toán, về công nghệ và khả năng xử lý song song của hàng vạn hoặc hàng
triệu bộ xử lý trên một chíp. Máy tính vạn năng CNN UM (Cellular Neural
Network Universal Machine) ra đời đã mở ra một hướng mới cho sự phát triển
của khoa học tính toán tiếp cận đến các phương thức xử lý, cảm nhận và hành
động của các tổ chức trong cơ thể sinh vật sống. Mạng nơron tế bào CNN
(Cellular Neural Network) là một giải pháp mở đầu cho loại máy tính vạn năng
xử lý dòng mảng dữ liệu đầy tiềm năng này.
Đây là một lĩnh vực khoa học công nghệ mới mẻ đầy triển vọng, hứa hẹn
tình giúp đỡ em trong quá trình thực hiện và hoàn thành đề tài này.
Em rất mong được sự góp ý, giúp đỡ của các thầy cô và bạn bè. Em xin
chân thành cám ơn!
Hà Nội. 09- 2007
Sinh viên thực hiện
Đặng Thị Tho
SVTH Đặng Thị Tho
6
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
ĐỀ CƯƠNG CHI TIẾT LUẬN VĂN TỐT NGHIỆP
Tên đề tài:
NGHIÊN CỨU TIẾP CẬN CÔNG NGHỆ MẠNG NƠRON TẾ BÀO CNN
VÀ ỨNG DỤNG TRONG XỬ LÝ ẢNH
1. Mục đích và ý nghĩa của đề tài
Mạng nơron nói chung và mạng nơ ron tế bào nói riêng là một lĩnh
vực của khoa học trí tuệ nhân tạo, được ứng dụng rộng rãi trong nhiều
ngành khoa học, kinh tế, giáo dục, y tế, quân sự,…Mạng nơron tế bào đã
mở ra một hướng mới cho sự phát triển của ngành khoa học tính toán. Đây
là một lĩnh vực khoa học công nghệ mới mẻ, đầy triển vọng và đa dạng
ứng dụng. Công nghệ mạng nơron tế bào đã tạo điều kiện cho khoa học
khám phá ra cơ chế hoạt động của nhiều tổ chức trong cơ thể con người và
các quy luật sự sống khác.
Với sự phát triển của công nghệ, các ứng dụng của CNN sẽ giải
quyết nhiều vấn đề mà các hệ máy tính hiện hành chưa giải quyết được.
Cùng các tính năng vượt trội, một ngày không xa công nghệ CNN sẽ thay
xử lý ảnh, xử lý tiếng nói và xử lý tín hiệu não.
* Ứng dụng của CNN vào xử lý ảnh
- Mô hình xử lý ảnh sử dụng CNN
- Thuật toán xử lý ảnh CNN
- Chương trình mô phỏng xử lý ảnh bằng CNN
3. Các nội dung cần đạt
- Nắm được những vấn đề cơ bản của công nghệ mạng nơ ron nhân tạo
trên cơ sở đó hiểu được mạng nơ ron tế bào CNN
- Mô hình ứng dụng CNN vào xử lý ảnh
- Xây dựng được chương trình mô phỏng sử dụng CNN xử lý ảnh
- Trình bày được hướng phát triển của đề tài
- Hoàn thành luận văn theo đúng qui định
SVTH Đặng Thị Tho
8
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
4. Môi trường cài đặt
- Máy tính cài đặt hệ điều hành windows 2k hoặc windows xp
- Cài đặt máy ảo java hoặc phần mềm Matlab
- Thực hiện cài đặt chương trình mô phỏng sử dụng công nghệ CNN vào
xử lý ảnh.
5. Thời gian thực hiện: 5 tháng
- Một tháng đầu: Tìm hiểu, nghiên cứu cơ sở lý thuyết về công nghệ mạng
nơron tế bào CNN
- Ba tháng sau: Tìm hiểu ứng dụng quan trọng của CNN, khảo sát tình hình
triển khai ứng dụng công nghệ CNN vào xử lý ảnh trong nước và trên thế
2.1 Tổng quan về mạng nơron tế bào CNN..............................27
2.1.1 Giới thiệu về mạng nơron tế bào...................................27
2.1.2 Khả năng ứng dụng của mạng CNN..............................30
2.1.3 Tình hình nghiên cứu hiện nay về
mạng nơron tế bào CNN.............................................32
2.1.3.1 Một số hướng nghiên cứu trên thế giới.................32
2.1.3.2 Tình hình nghiên cứu về công nghệ CNN
ở Việt Nam..........................................................35
2.2 Cơ sở toán học và hệ động lực trong mạng CNN...............37
2.3 Một số phương pháp thiết kế mẫu cho
mạng nơron tế bào CNN....................................................42
2.3.1 Mẫu trong CNN.............................................................42
2.3.2 Một số phương pháp thiết kế mẫu................................44
SVTH Đặng Thị Tho
10
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
2.4 Một số ứng dụng tiêu biểu của mạng nơron tế bào.............52
2.4.1 Máy tính vạn năng CNN UM.......................................52
2.4.2 Giải phương trình vi phân đạo hàm riêng.....................55
PHẦN HAI: ỨNG DỤNG MẠNG CNN TRONG XỬ LÝ ẢNH
Chương 3 Ứng dụng công nghệ CNN trong xử lý ảnh .................60
3.1 Những vấn đề cơ bản trong xử lý ảnh ................................60
3.1.1 Các giai đoạn xử lý ảnh ................................................60
3.1.2 Phương pháp tạo mẫu ảnh..............................................62
3.2 Một số hạn chế trong xử lý ảnh truyền thống.....................65
Lớp CNN.java....................................................................103
Lớp CNNimage.java.........................................................106
Lớp Template.java............................................................106
Lớp CNNcanvas.java........................................................107
Lớp CNNMath.java...........................................................107
SVTH Đặng Thị Tho
12
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
Danh mục các hình vẽ
Chương một.
1. Hình 1.1 Các thành phần của một nơron ...................................................17
2. Hình 1.2 Khớp nối (synapse)......................................................................18
3. Hình 1.3 Asimple nơron ............................................................................21
4. Hình 1.4 Học tham số có giám sát..............................................................23
5. Hình 1.5 Mạng nơron truyền thẳng & nhiều lớp........................................24
6. Hình 1.6 Mạng nơron hồi qui.....................................................................24
7. Hình 1.7 Sơ đồ hoạt động của một cell......................................................28
Chương hai.
1. Hình 2.1 Mạng nơron tế bào 2D, kích thước 4×4.....................................30
2. Hình 2.2 Liên kết cục bộ giữa các tế bào .................................................30
3. Hình 2.3 Ba kiểu lân cận tế bào ................................................................37
4. Hình 2.4 Ví dụ về mạch điện của 1 tế bào ...............................................39
5. Hình 2.5 Đặc tính của nguồn điều khiển phi tuyến...................................39
6. Hình 2.6 Sơ đồ khối của hệ động lực tế bào CNN tiêu chuẩn ..................40
Danh mục các bảng
Bảng 1: So sánh khả năng làm việc với máy tính ..........................................23
Bảng 2: Bảng về luật cục bộ............................................................................46
Bảng 3: So sánh nguyên lý hoạt động của máy tính số
và máy tính vạn năng CNN...............................................................55
Bảng 4: So sánh mạng nơron tế bào (CNN)
và phương trình vi phân đạo hàm riêng PDE....................................58
Bảng 5: Đặc trưng của đối tượng ảnh..............................................................71
SVTH Đặng Thị Tho
15
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
PHẦN 1
GIỚI THIỆU
VỀ CÔNG NGHỆ
SVTH Đặng Thị Tho
16
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
- Một đầu thần kinh ra (gọi là sợi trục axon).
- Một hệ thống dạng cây các dây thần kinh vào (gọi là dendrite).
Các dây thần kinh vào tạo thành một lưới dày đặc xung quanh thân tế bào,
chiếm diện tích khoảng 0.25 mm2, còn dây thần kinh ra tạo thành trục dài có thể
từ 1 cm cho đến hàng mét. Đường kính của nhân tế bào thường chỉ là 10 -4 m.
Trục dây thần kinh ra cũng có thể phân nhánh theo dạng cây để nối với các dây
thần kinh vào hoặc trực tiếp với nhân tế bào các nơron khác thông qua các khớp
nối (gọi là synapse – hình 1.2).
Hình 1.2 Khớp nối (Synapse)
Thông thường, mỗi nơron có thể gồm vài chục cho tới hàng trăm ngàn
khớp nối để nối với các nơron khác. Người ta ước lượng rằng lưới các dây thần
kinh ra cùng với các khớp nối bao phủ diện tích khoảng 90% bề mặt nơron.
Các tín hiệu truyền trong các dây thần kinh vào và dây thần kinh ra của
các nơron là tín hiệu điện và được thực hiện thông qua các quá trình phản ứng và
giải phóng các chất hữu cơ. Các chất này được phát ra từ các khớp nối dẫn tới
các dây thần kinh vào sẽ làm tăng hay giảm điện thế của nhân tế bào. Khi điện
thế này đạt tới một ngưỡng nào đó, sẽ tạo ra một xung điện dẫn tới trục dây thần
SVTH Đặng Thị Tho
18
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
kinh ra. Xung này được truyền theo trục, tới các nhánh rẽ khi chạm tới các khớp
nối với các nơron khác sẽ giải phóng các chất truyền điện. Người ta chia làm hai
loại khớp nối: khớp nối kích thích (excitatory) hoặc khớp nối ức chế (inhibitory).
Phát hiện quan trọng nhất trong ngành nghiên cứu về bộ não là các liên kết
So sánh khả năng làm việc của bộ não với máy tính
Bảng 1:
Máy tính
Bộ não người
Đơn vị tính toán
Bộ xử lý trung tâm với 10 5 Mạng 1011 nơron
Bộ nhớ
mạch logic cơ sở
109 bit RAM
1011 nơron
Thời gian xử lý
Thông lượng
1010 bit bộ nhớ ngoài
10-8 giây
109 bit/giây
1014 khớp nối thần kinh
10-3 giây
1014 bit/giây
Cập nhật thông tin
1.2. Khái quát về mạng nơron nhân tạo
Mạng nơron nhân tạo (Artificial Neural Network) gọi tắt là MMR bao
gồm các nút (đơn vị xử lý, nơron) được nối với nhau bởi các liên kết nơron. Mỗi
liên kết kèm theo một trọng số nào đó, đặc trưng cho đặc tính kích hoạt/ức chế
giữa các nơron. Có thể xem các trọng số là phương tiện để lưu giữ thông tin dài
hạn trong mạng nơron và nhiệm vụ của quá trình huấn luyện (học) mạng là cập
nhật các trọng số khi có thêm các thông tin về các mẫu học, hay nói một cách
khác, các trọng số được điều chỉnh sao cho dáng điệu vào ra của nó mô phỏng
hoàn toàn phù hợp môi trường đang xét. Mạng nơron có thể học từ dữ liệu mẫu
và tổng quát hoá dựa trên các dữ liệu mẫu học. Trong mạng nơron, các nơron
đón nhận tín hiệu vào gọi là nơron vào và các nơron đưa thông tin ra gọi là nơron
ra.
Ta có thể thấy mạng nơron nhân tạo là một thiết bị với nhiều đầu vào và
một đầu ra như sau (hình 1.3).
TEACH/USE
X1
X2
Neuron
INPUT
Xn
TEACHING INPUT
1.3. Hai cáchHình
nhìn1.3.
vềAmạng
nơron
simple nơron
thầy.
Học không có giám sát (unsupervised learning) hay còn gọi là
học không có thầy.
Học tăng cường.
SVTH Đặng Thị Tho
22
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
Trong học có giám sát, mạng được cung cấp một tập mẫu học {(X s, Ys)}
theo nghĩa Xs là các tín hiệu vào, thì kết quả ra đúng của hệ phải là Y s. Ở mỗi lần
học, véc tơ tín hiệu vào Xs được đưa vào mạng, sau đó so sánh sự sai khác giữa
các kết quả ra đúng Ys, với kết quả tính toán outs. Sai số này sẽ được dùng để
hiệu chỉnh lại các trọng số liên kết trong mạng. Quá trình cứ tiếp tục cho đến khi
thoả mãn một tiêu chuẩn nào đó. Có hai cách sử dụng tập mẫu học: hoặc dùng
các tập mẫu lần lượt, hết mẫu này đến mẫu khác, hoặc sử dụng đồng thời tất cả
các mẫu một lúc. Các mạng với cơ chế học không giám sát được gọi là các mạng
tự tổ chức. Các kỹ thuật học trong mạng nơron có thể nhằm vào hiệu chỉnh các
trọng số liên kết (gọi là học tham số) hoặc điều chỉnh, sửa đổi cấu trúc của mạng
bao gồm số lớp, số nơron, kiểu và trọng số các liên kết (gọi là học cấu trúc). Cả
hai mục đích học này có thể thực hiện đồng thời hoặc tách biệt.
- Học tham số: Giả sử có k nơron trong mạng và mỗi nơron có đúng 1
liên kết vào với các nơron khác. Khi đó, ma trận trọng số liên kết W sẽ có kích
thước kxl. Các thủ tục học tham số nhằm mục đích tìm kiếm ma trận W sao cho:
Ys = Tinh (Xs, W) đối với mọi mẫu học S = (Xs, Ys)
Ss
lưu giữ trạng thái trong của nó dưới dạng các ngưỡng kích hoạt ngoài các trọng
số liên kết nơron.
- Theo số lớp: Các nơron có thể tổ chức lại thành các lớp sao cho mỗi nơron
của lớp này chỉ được nối với các nơron ở lớp tiếp theo, không cho phép các liên
kết giữa các nơron trong cùng một lớp, hoặc từ nơron lớp dưới lên nơron lớp
trên. Tuy nhiên cũng không cho phép các liên kết nơron nhảy qua một lớp.
Lớp vào
Nơron vào
Lớp ẩn
Nơron ra
b) Mạng nơron truyền thẳng
Lớp ra
a) Mạng nơron nhiều lớp
Hình 1.5 Mạng nơron truyền thẳng và nhiều lớp
Hình 1.6 Mạng nơron hồi qui
SVTH Đặng Thị Tho
24
Mạng nơron tế bào và ứng dụng trong xử lý ảnh
Dễ thấy các nơron cùng một lớp nhận được tín hiệu từ lớp trên cùng một
lúc, do vậy về nguyên tắc chúng có thể xử lý song song. Thông thường, lớp