Các máy tính thông thường hiện nay có thể giải được nhưng với tốc độ hạn chế, một số trường hợp không đáp ứng được với ứng dụng trong thời gian thực.. Việc áp dụng công nghệ mạng nơron t
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
MAI PHƯƠNG LINH
NGHIÊN CỨU ỨNG DỤNG CÔNG NGHỆ MẠNG NƠRON TẾ BÀO VÀO GIẢI PHƯƠNG TRÌNH BURGER
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Thái Nguyên - Năm 2014
THÔNG TIN VÀ TRUYỀN THÔNG
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM
MAI PHƯƠNG LINH
NGHIÊN CỨU ỨNG DỤNG CÔNG NGHỆ MẠNG NƠRON TẾ BÀO VÀO GIẢI PHƯƠNG TRÌNH BURGER
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC
TS VŨ ĐỨC THÁI
Thái Nguyên - Năm 2014
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Trang 3LỜI CAM ĐOAN
Những kết quả nghiên cứu được trình bày trong luận văn là hoàn toàn trung thực, không vi phạm bất cứ điều gì trong luật sở hữu trí tuệ và pháp luật Việt Nam Nếu sai, tôi hoàn toàn chịu trách nhiệm trước pháp luật
Thái nguyên, ngày 10 tháng 9 năm 2014
Tác giả luận văn
Mai Phương Linh
Trang 4LỜI CẢM ƠN
Trước hết, tôi xin bày tỏ lòng cảm ơn chân thành tới thầy giáo, TS Vũ Đức Thái, người tận tình hướng dẫn tôi trong suốt thời gian làm luận văn tốt nghiệp
Tôi xin cảm ơn các thầy, cô giáo ở khoa Công nghệ thông tin trường Đại học CNTT và truyền thông - Đại học Thái Nguyên đã giảng dạy tôi trong suốt thời gian học tập tại trường và tạo điều kiện giúp đỡ tôi hoàn thành luận văn này
Tôi xin chân thành cảm ơn sự quan tâm giúp đỡ của gia đình, bạn bè và tập thể lớp Cao học K11A đã cổ vũ động viên tôi hoàn thành tốt luận văn của mình
Tuy đã có những cố gắng nhất định nhưng do thời gian và trình độ có hạn nên chắc chắn luận văn này còn nhiều thiếu sót và hạn chế nhất định Kính mong nhận được sự góp ý của thầy cô và các bạn
Thái nguyên, ngày 10 tháng 9 năm 2014
Học viên Mai Phương Linh
Trang 5MỤC LỤC
Trang
Trang bìa phụ
Lời cảm ơn
Lời cam đoan
Mục lục i
Danh mục các chữ viết tắt iii
Danh mục các bảng iv
Danh mục các hình v
MỞ ĐẦU 1
CHƯƠNG 1 3
1.1 Tổng quan công nghệ mạng nơron tế bào 3
1.1.1 Lịch sử công nghệ mạng nơron tế bào 3
1.1.2 Kiến trúc chuẩn về công nghệ mạng nơ ron tế bào 7
1.1.3 Các định nghĩa về mạng nơ ron tế bào 8
1.1.4 Xác định ảnh hưởng của các tế bào 9
1.1.5 Các phương trình cơ bản của mạng nơron tế bào 12
1.1.6 Các kết quả đạt được về công nghệ mạng nơron tế bào hiện nay 15
1.1.7 Giới thiệu kiến trúc phần cứng FPGA 19
1.2 Giới thiệu về phương trình đạo hàm riêng 20
1.2.1 Các khái niệm cơ bản về phương trình đạo hàm riêng 20
1.2.2 Phân loại các phương trình đạo hàm riêng tuyến tính cấp hai với hai biến độc lập 21
1.2.3 Phương pháp sai phân 22
1.2.3.1 Đặt bài toán 22
1.2.3.2 Lưới sai phân 22
1.2.3.3 Xấp xỉ các đạo hàm 23
1.2.3.4 Bài toán sai phân 23
Trang 61.3 Các dạng kiến trúc mạng CNN 25
1.4 Giới thiệu về ứng dụng Matlab 27
1.4.1 Tổng quan về Matlab 27
1.4.2 Các thao tác cơ bản trên Matlab 29
1.5 Kết luận 34
CHƯƠNG 2: GIẢI PHƯƠNG TRÌNH ĐẠO HÀM RIÊNG BURGER 35
2.1 Tổng quan về phương trình đạo hàm riêng Burger 35
2.1.1 Một số lý thuyết về chuyển động phân tử 35
2.1.1.1 Động năng trung bình của phân tử chất lỏng 35
2.1.1.2 Định luật phân bố phân tử theo vận tốc của Maxwell 36
2.1.2 Mô tả bài toán về phương trình Burger 39
2.1.2.1 Mô hình vật lý của bài toán của phương trình Burger 39
2.1.2.2 Phương trình đạo hàm riêng Burgers 41
2.1.3 Ý nghĩa của việc giải bài toán của phương trình Burgers 42
2.1.4 Các điều kiện giải bài toán của phương trình Burgers 42
2.2 Giải phương trình Burgers bằng công nghệ mạng nơron tế bào 43
2.2.1 Sai phân phương trình Burgers 43
2.2.2 Thiết kế mẫu CNN phương trình Burgers 43
2.2.3 Thiết kế kiến trúc mạng nơron cho phương trình Burger 44
2.2.4 Lưu đồ thuật toán tính toán bằng mạng nơ ron tế bào 45
2.3 Kết luận 47
CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM 48
3.1 Mô phỏng tính toán phương trình Burgers trên Matlab 48
3.1.1 Các thông số vật lý của phương trình 48
Từ phương trình (2.7) : 48
3.1.2 Xác định thuật toán tính toán trên Matlab 50
3.1.3 Kết quả giá trị tính toán 51
Trang 73.2 Đánh giá kết quả thực nghiệm 57 KẾT LUẬN 58 TÀI LIỆU THAM KHẢO 60
Trang 8DANH MỤC CÁC CHỮ VIẾT TẮT
VHDL Very High Description Language Ngôn ngữ đặc tả phần cứng
Trang 9DANH MỤC CÁC BẢNG
Trang
Bảng 1: Sự phụ thuộc của hàm phân bố F(v) vào v 44 Bảng 2: Nhập các giá trị ban đầu của các tế bào trong mạng nơ ron mẫu 1 52 Bảng 3: Giá trị kết quả tính toán của một số điểm (8 x 14) theo mẫu 1 53 Bảng 4: Nhập các giá trị ban đầu của các tế bào trong mạng nơ ron mẫu 2 54 Bảng 5: Kết quả tính toán với giá trị ban đầu thay đổi theo mẫu 2 54 Bảng 6: Nhập các giá trị ban đầu của các tế bào trong mạng nơ ron mẫu 3 55 Bảng 7: Kết quả tính toán với giá trị ban đầu thay đổi theo mẫu 3 56
Trang 10DANH MỤC CÁC HÌNH
Trang
Hình 1.1: Mạng CNN 2chiều – 2D 4
Hình 1.2: Kiến trúc CNN chuẩn 7
Hình 1.3: Kiến trúc làm việc của mạng CNN 7
Hình 1.4: Các dạng láng giềng của CNN với r = 1 ; r = 2; .9
Hình 1.5: Các tế bào đường biên và tế bào góc 10
Hình 1.6: Điều kiện biên cố định 11
Hình 1.7: Điều kiện biên biến thiên 11
Hình 1.8: Điều kiện biên tuần hoàn 11
Hình 1.9: Mô tả một hệ CNN 1D có 5 tế bào 12
Hình 1.10: Dạng đồ thị hàm ra của một tế bào 14
Hình 1.11: Mô hình tổng quát cho hoạt động mạng CNN-1D 25
Hình 1.12: MATLAB desktop 29
Hình 1.13: Đồ thị tạo ra bởi plot(x,y) 33
Hình 2.1: Hàm phân bố Maxwell 37
Hình 2.2: Hàm phân bố Maxwell khi nhiệt độ thay đổi 39
Hình 2.3: Mô tả phương trình Burgers theo phương x 40
Hình 2.4: Mô tả sự biến thiên của các hạt phân tử theo thời gian 41
Hình 2.5: Mô hình mạng nơron tế bào giải phương trình Burgers 44
Hình 2.6: Kiến trúc tính toán cho tế bào của lớp u 45
Hình 2.7: Thuật toán tính toán trên mạng nơron tế bào 46
Hình 3.1: Khối chất lỏng tính toán thực nghiệm 48
Hình 3.2: Sơ đồ thuật toán tính toán cài đặt 51
Hình 3.3: Mô phỏng tính toán giải phương trình Burger trên Matlab mẫu 1 53
Hình 3.4: Mô phỏng tính toán giải phương trình Burger trên Matlab mẫu 2 55
Hình 3.5: Mô phỏng tính toán giải phương trình Burger trên Matlab mẫu 3 56
Trang 11MỞ ĐẦU
Trong nhiều bài toán khoa học các đại lượng biến thiên phức tạp theo nhiều tham số không gian, thời gian và các điều kiện ngoại cảnh Để giải quyết các bài toán trên thường đưa đến việc giải phương trình vi phân, thậm chí là phương trình vi phân đạo hàm riêng
Phương trình vi phân có nhiều loại, có nhiều cách giải khác nhau như: phương pháp giải tích, phương pháp sai phân với các công thức sai phân đã tiến hành cài đặt trên máy vi tính Các máy tính thông thường hiện nay có thể giải được nhưng với tốc độ hạn chế, một số trường hợp không đáp ứng được với ứng dụng trong thời gian thực
Việc áp dụng công nghệ mạng nơron tế bào CNN vào giải phương trình đạo hàm riêng với tốc độ cao là cần thiết và có nhiều triển vọng trong tương lai đáp ứng cho các bài toán trong thời gian thực
Do đó, em đã chọn “Nghiên cứu ứng dụng công nghệ mạng nơ ron tế bào
vào giải phương trình đạo hàm riêng Burger” nhằm mục tiêu tìm hiểu công
nghệ mạng nơ ron tế bào và tìm hiểu phương pháp, kỹ thuật thuật thực hiện giải phương trình đạo hàm riêng bằng công nghệ này Để thực hiện mục tiêu này, đề tài này tập trung nghiên cứu các nội dung sau:
Chương 1: Tổng quan về mạng nơron tế bào và các ứng dụng: Nghiên
cứu công nghệ mạng nơron tế bào và các ứng dụng thực tiễn
Chương 2: Giải phương trình đạo hàm riêng Burger: Đề xuất phương
pháp giải và xây dựng mô hình bài toán phương trình Burger được giải bằng công nghệ mạng nơ ron tế bào
Chương 3: Mô phỏng thực nghiệm: Mô phỏng tính toán kết quả trên
Matlab, đánh giá so sánh kết quả
Trang 12Luận văn nghiên cứu với mục tiêu tìm hiểu một công nghệ mới ứng dụng trong việc giải phương trình đạo hàm riêng trong lĩnh vực tính toán khoa học
Đó là một nhu cầu rất quan trọng trong thời đại phát triển khoa học công nghệ ngày nay, khi mà hầu hết các hiện tượng lý hoá sinh trong tự nhiên được biểu diễn bởi các phương trình phi tuyến phức tạp mà phương trình đạo hàm riêng chiếm số lượng lớn Việc giải phương trình Burger là một ứng dụng nhiều trong lĩnh vực vật lý hiện đại nghiên cứu sự phân bố, sự chuyển động của các hạt vi mô để từ đó có cơ chế điều khiển trong các hệ thống vi cơ điện tử trong các thiết bị điện tử, truyền thông hiện đại như mạng lượng tử, công nghệ nano, siêu dẫn…
Trong nội dung của luận văn chắc sẽ không tránh khỏi những thiếu sót, em rất mong quý thầy cô và các bạn đọc quan tâm, đóng góp ý kiến, để luận văn được hoàn thiện hơn
Trang 13CHƯƠNG 1 NHỮNG VẤN ĐỀ LÝ THUYẾT CƠ SỞ VỀ CNN VÀ PDE 1.1 Tổng quan công nghệ mạng nơron tế bào
1.1.1 Lịch sử công nghệ mạng nơron tế bào
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ở lê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à rất đơn giản Tương tự như vậy các tín hiệu trong tự nhiên đều dưới dạng liên tục và các “ máy tính nơron” trong cơ thể sinh vật xử lý các dòng tín hiệu liên tục này không phải bằng phương pháp số hoá
Hệ nơron tính toán ở các sinh vật sống thường xử lý mảng tín hiệu tương tự (analog) có tính liên tục về thời gian và biên độ Cấu trúc gồm nhiều lớp mảng 2D nơron có các kết nối mạng cục bộ (local) là chủ yếu Có nơron được tích hợp với các tế bào cảm biến (sensing) và tế bào tác động (actuating) Các nơron hoạt động với độ trễ thay đổi và có cả hoạt động dạng sóng kích hoạt Các dữ liệu và sự kiện là các mảng tín hiệu phụ thuộc cả không gian và thời gian
Rõ ràng với các tính chất cơ bản hiện nêu trên máy tính số hiện nay khó
có khả năng tiếp cận đến khả năng xử lý của các sinh vật sống Để 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, đòi hỏi ta phải thay đổi về kiến trúc, 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 chip 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ý mảng dữ liệu đầy tiềm năng này, [5,6,7]
Trang 14Phát minh ra mạng nơron tế bào của L Chua và L Yang đưa ra từ năm
1988 dựa trên tư tưởng chung là sử dụng một mảng đơn giản các tế bào kết nối cục bộ để xây dựng một hệ thống xử lý tín hiệu analog đồ sộ Đặc điểm mấu chốt của mạng nơron là xử lý song song không đồng bộ, liên tục và ảnh hưởng toàn cục của các phần từ mạng
Khối mạch cơ bản của mạng CNN được gọi là tế bào (cell) Nó chứa các phần tử mạch tuyến tính và phi tuyến Tiêu biểu là các tụ tuyến tính, các điện trở tuyến tính, các nguồn điều khiển tuyến tính, phi tuyến và các nguồn độc lập Mỗi một tế bào trong CNN chỉ kết nối tới các tế bào láng giềng Các
tế bào liền kề có thể ảnh hưởng trực tiếp tới nhau Các tế bào không có liên kết trực tiếp có thể tác động đến các tế bào khác gián tiếp bởi sự tác động bởi
sự lan truyền của mạng CNN Một ví dụ CNN 2 chiều được xem trong hình sau:
Nhiều bài toán tính toán phức tạp được thực hiện trong hệ CNN như những mô đun được định nghĩa trước Khi xử lý những tín hiệu được đưa vào những lưới không gian hình học 2 chiều hoặc 3 chiều những phần tử xử lý đơn giản (cell) Những tương tác trực tiếp giữa các giá trị tín hiệu trong một phạm vi lân cận nhất định của một cell tạo ra hệ CNN là một ma trận các vi
Trang 15xử lý động Các tương tác động diễn ra theo nguyên tắc: các phần tử xử lý (cell) chỉ tương tác trực tiếp với các láng giếng nhất định
Trong một vài mô hình, phương trình toán học cơ bản mô tả CNN tương ứng với không gian rời rạc hoá của phương trình đạo hàm riêng phi tuyến Sự tương tác trong hệ thống giống như hiện tượng khuếch tán cơ học Tương tác này cũng có thể mô hình hoá như cơ chế lan truyền của phản ứng hoá học hay sự tiến hoá sinh học
Mô hình sinh học của bộ não liên quan đến đặc trưng của từng loài, và
xu hướng tiến hoá của hệ thống sinh học còn hình thành nên mô hình không gian - thời gian trong não bộ để thực hiện những vai trò, chức năng cốt yếu trong nhận thức thế giới thực
Khái niệm về CNN dựa trên cơ sở một vài khía cạnh của nơ ron sinh học và được mô phỏng bằng mạch tích hợp IC Ví dụ trong bộ não phương tiện tương tác được cung cấp bởi ma trận cực lớn các nơ ron đang tồn tại mà năng lượng của nó nhận được từ việc đốt glucô và ô xy, trong khi với CNN phương tiện tương tác được cung cấp bởi sự tương tác cục bộ của các tế bào (active cell) mà các khối mạch của nó gồm các linh kiện điện tử phi tuyến với nguồn năng lượng một chiều DC
CNN có nhiều khả năng và triển vọng ứng dụng trong xử lý ảnh và nhận dạng Trong những ứng dụng như vậy CNN như một bộ lọc hai chiều xử
lý song song ảnh đầu vào và đưa ra ảnh đầu ra đã qua xử lý với thời gian liên tục mà có ưu thế cho việc xử lý ảnh kích thước lớn với yêu cầu tốc độ đáp ứng trong thời gian thực Hơn nữa CNN có khả năng tương tác trong phạm vi nhỏ có thể dễ liên kết với chíp tích hợp cao (VLSI)
Sự hoàn thiện chíp CNN đặc trưng bởi kích thước và chức năng một vài loại có mẫu cố định là 256 tế bào (cell), một số loại khác có kích thước
Trang 16giới hạn là 30 cells Hiện nay có loại chíp có thể lập trình có kích thước 1024 cells Khả năng lập trình được và tốc độ cao làm cho CNN phù hợp tốt hơn với các xử lý phi tuyến, nó cho phép nhận được và xử lý tín hiệu phi tuyến Tuy vậy những ưu thế thực sự của CNN là nó tương đương với chíp có mật
độ tích hợp lớn tiêu thụ nhiều năng lượng
Tiềm năng ứng dụng CNN thực ra đã và đang mở rộng về mặt nguyên
lý, từ việc lọc ảnh phức tạp theo phương thức truyền thống hay những vấn đề
xử lý tín hiệu sinh học, phương trình vi phân đạo hàm riêng, mô hình phi tuyến và hệ thống vật lý Hiện nay quá trình xử lý không gian - thời gian phỏng theo xử lý của võng mạc mắt đã được xây dựng Tương tự võng mạc, CNN gồm tập rất lớn các phần tử xử lý tương tự giống nhau, những phần tử này có khả năng tương tác cục bộ để xử lý Trọng số tương tác trong không gian biến hữu hạn cho thấy mạng làm việc chỉ phụ thuộc vào những biến lân cận và có ít biến tự do Bộ xử lý có thể xử lý dạng ảnh nhị phân hay đa cấp xám
Hệ CNN đang được nghiên cứu, ứng dụng hiện nay có nhiều khả năng,
từ việc khởi tạo tín hiệu tương tự ban đầu đến biểu diễn trạng thái không gian
- thời gian động Thực tế, một số hệ thống cơ điện tử đã được thiết kế, xây dựng, sử dụng Sự phát triển ứng dụng dựa trên mạch CNN ban đầu đang được mở rộng, như trong việc điều khiển truyền động với những khớp quay nhiều bậc tự do phức tạp
Từ khi ra đời hệ thống CNN, công nghệ CNN đã bùng nổ cùng với những kiến trúc máy tính tương tự, máy tính vạn năng (Universal Machine-UM) đã được phát minh Những con chíp mới nhất đã được đặt trong tổ hợp tính toán siêu cấu trúc Những ứng dụng trong công nghiệp có thể xem trong
Trang 171.1.2 Kiến trúc chuẩn về công nghệ mạng nơ ron tế bào
Một kiến trúc công nghệ mạng nơ ron tế bào chuẩn là một mảng hình chữ nhật MxN các cell (C(i,j)) với toạ độ Đề các (i,j); i = 1,…,M; j = 1,…,N
Mạng nơ ron tế bào được L.O Chua và L Yang đưa ra năm 1988 có kiến trúc chuẩn là một mảng hai chiều các tế bào (cell) mà mỗi tế bào là một chip xử lý, các tế bào chỉ có liên kết cục bộ với các tế bào láng giềng Các tế bào có cấu tạo giống hệt nhau gồm các điện trở, tụ tuyến tính; các nguồn dòng tuyến tính và phi tuyến Cho đến này kiến trúc mạng CNN đã được phát triển
đa dạng phức tạp trong nhiều ứng dụng khác nhau nhưng vẫn hoạt động dựa trên nguyên tắc mà Chua và Yang đưa ra
Hình 1.3: Kiến trúc làm việc của mạng CNN
Trang 181.1.3 Các định nghĩa về mạng nơ ron tế bào
Khi phát triển lý thuyết về mạng nơron tế bào, các nhà nghiên cứu đã đưa ra một số định nghĩa có tính hình thức về kiến trúc mạng:
Định nghĩa 1: Hệ mạng nơron tế bào – CNN:
a) Là ma trận 2-, 3- hoặc n- chiều của những phần tử động giống nhau (gọi là
tế bào - cell)
b) Mỗi tế bào có hai thuộc tính:
- Chỉ tương tác trong vùng có bán kính là r
- Mọi biến trạng thái là tín hiệu có giá trị liên tục
Định nghĩa 2: CNN là mạch phi tuyến động kích thước lớn được tạo bởi cặp
các phần tử liên kết với nhau, phân bố đều trong không gian mà mỗi phần tử
là một mạch tích hợp gọi là cell Mạng này có thể có cấu trúc hình chữ nhật, lục giác đều, cầu v.v Hệ CNN cấu trúc MxN được định nghĩa một cách toán học theo 4 đặc tả sau:
1) CNN là phần tử động học nghĩa là trạng thái điện áp của tế bào thay đổi theo thời gian tùy theo tương tác giữa nó và các láng giềng
2) Luật tiếp hợp trong CNN biểu diễn sự tương tác cục bộ trong từng cặp lân cận trong các tế bào láng giềng, mỗi tế bào có: Điều kiện ban đầu; Điều kiện biên
Trang 19Đôi khi chúng ta đề cập tới Sr(i,j) như là (2r+1) x (2r+1) láng giềng Ví dụ: Hình 1.4a biểu diễn r = 1(3x3 tế bào trừ 1 sẽ có 8 láng giềng) Hình 1.4b biểu diễn r = 2(5x5 tế bào trừ 1 sẽ có 24 láng giềng)
Thông thường chúng ta gọi r = 1 lân cận là “3x3 lân cận trừ 1 sẽ là 8 láng giềng”, r = 2 lân cận là “5x5 lân cận trừ 1 sẽ là 24 láng giềng”, r = 3 lân cận là “7x7 lân cận trừ 1 sẽ là 48 láng giềng” v.v Hệ thống lân cận được định nghĩa ở trên có thuộc tính đối xứng: nếu C(i,j)Nr(k,l), thì C(k,l)Nr(i,j) với mọi C(i,j) và C(k,l) trong mạng nơron tế bào
Hình 1.4: Các dạng láng giềng của CNN, (a) r =1; (b) r = 2
Trang 20Trong sự thi hành mạch tổ hợp, mọi cell được kết nối tới tất cả các lân cận của nó trong Nr(i,j) qua các mạch “tiếp hợp” Khi r = N – 1 và M = N, chúng ta có một kết nối CNN đầy đủ tại nơi mà mọi cell được kết nối tới mỗi cell khác và Nr(i,j) là toàn bộ mảng
b Các tế bào thông thường và tê bào đường biên:
Một tế bào C(i,j) được gọi là tê bào thông thường đối với mặt cầu láng
giềng Sr(i,j) nếu tồn tại tất cả các tế bào láng giềng C(k,l)Sr(i,j) Nếu không
thì C(i,j) được gọi là tế bào đường biên
Quan sát hình 1.5 các ngoài các tế bào ở vị trí biên trong mạng nơ ron gọi là các tế bào cạnh còn có các tế bào ở vị trí đặc biệt nếu r>1, tế bào đo gọi tế bào góc
* Các dạng điều kiện xác định tế bào biên:
Các bài toán xử lý trên CNN hầu hết là cho mảng dữ liệu (xử lý ảnh số, giải phương trình đạo hàm riêng ) Ta cần quan tâm đến các giá trị biên trong mảng tế bào Với CNN, có các kiểu điều kiện biên Dirichlet, Neumann, Ring Xét các dạng điều kiện biên trên một hàng (theo chiều cột chúng ta cũng có
Cell góc
Cell đường biên
Hình 1.5: Các cell đường biên và cell góc
Trang 21các định nghĩa tương tự):
- Điều kiện biên cố định (Fixed-Dirichlet),
Hình 1.6: Điều kiện biên cố định
tế bào bên phải nhất Hai dãy tế bào bên phải và bên trái có điện thế cố định
E1, và E2 (gọi là điện thế đất có thể chọn E1 = E2 = 0)
- Điều kiện biên biến thiên (Zero Flux-Neumann)
Hình 1.7: Điều kiện biên biến thiên
Ta chọn giá trị biên bằng giá trị điểm kề với nó trong cùng hàng, về mặt điện thế ta có thể chọn với giá trị bất kỳ cho v1, vM
- Điều kiện biên tuần hoàn (Periodic-Ring),
Hình 1.8: Điều kiện biên tuần hoàn
Trang 22Hình 1.9: Mô tả một hệ CNN-1D có 5 tế bào
Điều kiện biên này ta thấy giá trị điện thế của tế bào bên trái nhất bằng điện thế của tế bào bên phải nhất
1.1.5 Các phương trình cơ bản của mạng nơron tế bào
Một lớp MxN mạng nơron tế bào chuẩn được định nghĩa bởi một mảng hình chữ nhật MxN các cell C(i,j) xác định tại (i,j); i = 1,…M; j = 1,…N Mỗi cell C(i,j) được định nghĩa toán học bởi:
(1.2)
Trang 23Định nghĩa 1.1: Mẫu Aij,kl có tính đối xứng (hay còn gọi là mẫu vô tính) nếu
thỏamãn: A ij,kl =A kl,ij , với 1< i < M; 1< j < N; kl là chỉ số các láng giềng của C(i,j)
Định nghĩa 1.2: Trong CNN, phép nhân chập (convolution) được xác định:
trong đó r là số nguyên dương theo Định nghĩa 3 và A là tập mẫu có dạng ma
vị trí tế bào C(i,j) Giả sử r=1 ta có:
Đây là phép toán có độ phức tạp cao nhưng rất hay dùng trong các tính toán của CNN thể hiện cho các liên kết cục bộ giữa tế bào hiện hành và các láng giềng Với định nghĩa toán tử nhân chập trên thì phương trình (1.3) có thể viết đơn giản:
Các trọng số liên kết A, B thể hiện các xử lý, tương tác của mỗi tế bào trong các bài toán ứng dụng cụ thể Ví dụ như trong xử lý ảnh, mỗi giá trị của một điểm ảnh khi xử lý là quá trình tính toán, tương tác với các điểm lân cận thông qua các trọng số liên kết này để thay đổi các tham số về điểm ảnh ban đầu tùy theo yêu cầu của bài toán xử lý (làm mờ, làm rõ, xóa nhiễu ) Trong ứng dụng giải phương trình sai phân, điện áp trạng thái của mỗi điểm trong lưới sai phân được tính toán thông qua các giá trị, trọng số liên kết với điểm
(1.3)
(1.4)
Trang 24lân cận và giá trị trạng thái trước đó của tế bào C(i,j) Giá trị trạng thái mới của
tế bào C(i,j) chính là nghiệm của phương trình vi phân
Phương trình đầu ra:
của tế bào C(i,j) cho bước thời gian tiếp theo, ngoài ra giá trị này còn gửi cho tế bào lân cận như thông tin lan truyền Như vậy, khi hoạt động hệ CNN vừa xử
lý tín hiệu tại chỗ (local) bằng việc thay đổi trạng thái của tế bào, vừa lan truyền thông tin qua các lân cận đến toàn bộ mạng CNN (global) Mô hình toán học này thể hiện tính “nơron” của CNN như các nơron thần kinh của cơ thể sống vừa trực tiếp thực hiện các xử lý tại chỗ vừa truyền thông tin lên não
bộ để ra các quyết định xử lý toàn cục
Thực ra, tùy theo kiến trúc CNN cũng có trường hợp không có sự lan truyền tín hiệu trong toàn mạng CNN, ta gọi là CNN không ghép cặp Có
(1.5)
Trang 25trường hợp hệ CNN không có tín hiệu vào (mẫu B=0) mà chỉ thay đổi trạng thái ban đầu với các tương tác nội tại trong CNN
Trạng thái ban đầu:
* Các ràng buộc: Để đảm bảo cho hệ CNN làm việc ổn định cần có một số
điều kiện ràng buộc, những điều kiện nay đã được nghiên cứu chứng minh về mặt toán học Ở đây chỉ đưa ra điều kiện ràng buộc về điện áp trạng thái ban đầu và điện áp vào Dựa trên cơ sở này, khi thiết kế mạch tế bào người ta chọn các giá trị tụ điện C và điện trở Rx, Ry cho thích hợp
|v xij (0)| 1 1 i M; 1 j N
|v uij (0)| 1 1 i M; 1 j N
* Các tham số giả định: Giả thiết này thể hiện tính đối xứng và được gọi là
thuộc tính “vô tính” của tế bào, các tế bào có thể hoán đổi vị trí cho nhau nhưng không ảnh hưởng tới quá trình tính toán, nghĩa là các tế bào có kiến
trúc giống hệt nhau giúp cho việc chế tạo dễ dàng, đơn giản:
A(i,j;k,l) = A(k,l;i,j) 1 i M; 1 j N
C > 0; Rx > 0
1.1.6 Các kết quả đạt được về công nghệ mạng nơron tế bào hiện nay
Các ứng dụng của công nghệ CNN được chia thành các nhóm chính:
- Các ứng dụng xử lý ảnh tốc độ cao: Đây là một trong những ứng dụng chủ yếu trong nhiều lĩnh vực của cuộc sống mà các hệ camera thông thường không đáp ứng được
Trang 26- Các ứng dụng đòi hỏi xử lý dữ liệu lớn trong thời gian thực: giải phương trình vi phân đạo hàm riêng, tạo sóng phi tuyến, xử lý dòng tín hiệu video, tối
ưu hoá hệ thống truyền dữ liệu băng hẹp, điều khiển các hệ chuyển mạch ATM, v.v…
- Trong công nghiệp và giao thông vận tải-ô tô:
Phân tích bề mặt nhãn in, dệt, phân tích kết cấu sợi tốc độ cao, kiểm tra các lỗi và vị trí lỗi của các sản phẩm, các nhãn, rubăng, vải… ngay trong quá trình sản xuất
Kiểm tra bề mặt trong công nghiệp chế tạo giấy, nhôm, sắt, các chỗ rối, các chỗ rách, hỏng, những chỗ nhăn, các vết đen của giấy có thể được nhận ra
và xác định vị trí trong quá trình sản xuất Cần nhấn mạnh rằng việc kiểm tra này là kiểm tra không tiếp xúc
Phát hiện ánh sáng có thời gian tồn tại ngắn: dùng khi cần kiểm tra độ cách điện cho sứ ở điện áp cao cũng như kiểm tra xuất hiện tia lửa điện khi đóng điện Trong những loại hình công việc này các camera CNN có thể phân loại tia lửa điện với tốc độ hơn 50.000fps
Phân tích hình dáng và kích thước: Kiểm tra, phân loại số lượng lớn các vật nhỏ như các viên thuốc, hạt ngũ cốc, các đai ốc, đinh ốc v.v…
Đo tốc độ và giám sát kích thước những vật chuyển động nhanh không cần tiếp cận
Trong công nghệ ô tô: dùng các sensor phân tích tình huống trong chế
độ thời gian thực, làm sensor thông minh điều khiển các túi khí bảo vệ, các gương chiếu hậu thông minh
- Trong y tế: phân tích thời gian thực chuỗi DNA, điện tâm đồ 2D thời gian thực, điện tâm đồ 3D trực tuyến, chế tạo mắt nhân tạo
- Trong quân sự:
Sử dụng trong các thiết bị không người lái
Trang 27 Theo dõi nhiều đối tượng: có thể thực hiện hợp nhất các ảnh từ nhiều nguồn camera khác nhau trong thời gian thực, phát hiện mục tiêu di động Nhận dạng đa mục tiêu trong lĩnh vực giám sát và an ninh
Phân tích địa hình thời gian thực v.v…
Trong xu thế hiện nay các ngành khoa học đều có sự đan xen, thừa kế lẫn nhau Do tiềm năng về năng lực tính toán và khả năng ứng dụng rộng rãi trong nhiều lĩnh vực của cuộc sống, công nghệ CNN đã ngày càng thu hút được sự quan tâm của nhiều nhà nghiên cứu khoa học trên thế giới Các hướng nghiên cứu trong thời gian tới về công nghệ CNN vẫn bao gồm cả lý thuyết và thực nghiệm, cả cơ bản và ứng dụng, ngoài các vấn đề đang thực hiện sẽ có thêm các hướng sau:
- Các thuật toán CNN phục vụ cho nghiên cứu miễn dịch
- Các nguyên lý xử lý cặp sóng cho các ứng dụng dò tìm mục tiêu khó khăn
- Camera võng mạc, có thể đảo mắt trơn tru, lập trình được và hiển thị thời gian thực việc nhận biết mục tiêu
- Công nghệ nano thực hiện các mảng sensor ứng dụng riêng và các nguyên tắc tính toán sóng tế bào bao gồm các mảng transito nano từ, các mảng hoá
- Mã hoá và đo nội dung thông tin trong các luồng không gian-thời gian
Trang 28- Quan sát mức độ rộng hoặc toàn cầu Mạng sensor kích hoạt di động phân bố trong không gian
- Trí thông minh nhân tạo qua tổng hợp nhiều sensor, ví dụ nhận dạng viết bằng tay qua các mẫu hình thái ngôn ngữ
- Trong xu thế hiện nay các ngành khoa học đều có sự đan xen, thừa
kế lẫn nhau Do tiềm năng về năng lực tính toán và khả năng ứng dụng rộng rãi trong nhiều lĩnh vực của cuộc sống, công nghệ CNN đã ngày càng thu hút được sự quan tâm của nhiều nhà nghiên cứu khoa học trên thế giới Các hướng nghiên cứu trong thời gian tới về công nghệ CNN vẫn bao gồm cả lý thuyết và thực nghiệm, cả cơ bản và ứng dụng, ngoài các vấn đề đang thực hiện sẽ có thêm các hướng sau:
- Các thuật toán CNN phục vụ cho nghiên cứu miễn dịch
- Các nguyên lý xử lý cặp sóng cho các ứng dụng dò tìm mục tiêu khó khăn
- Camera võng mạc, có thể đảo mắt trơn tru, lập trình được và hiển thị thời gian thực việc nhận biết mục tiêu
- Công nghệ nano thực hiện các mảng sensor ứng dụng riêng và các nguyên tắc tính toán sóng tế bào bao gồm các mảng transito nano từ, các mảng hoá
- Mã hoá và đo nội dung thông tin trong các luồng không gian-thời gian
Trang 29- Quan sát mức độ rộng hoặc toàn cầu Mạng sensor kích hoạt di động phân bố trong không gian
- Trí thông minh nhân tạo qua tổng hợp nhiều sensor, ví dụ nhận dạng viết bằng tay qua các mẫu hình thái ngôn ngữ
1.1.7 Giới thiệu kiến trúc phần cứng FPGA
Hiện nay việc ứng dụng CNN giải quyết các bài toán xử lý thông tin được phát triển mạnh mẽ nhờ công nghệ FPGA và ngôn ngữ mô tả phần cứng VHDL Để chế tạo một chip chuyên dụng ta chỉ cần có một chip trắng FPGA
là có thể cấu hình thành những kiến trúc tính toán cần thiết sử dụng ngôn ngữ verilog hay VHDL Kiến trúc phần cứng Chip FPGA (Field Programmable Gate Array) là công nghệ sản xuất chip điện tử lập trình được, nhà sản xuất tạo sẵn những tài nguyên trên chip là các phần tử logic (Logic Element) Người dùng có thể dùng ngôn ngữ mô tả phần cứng như VHDL, Verilog để cấu hình thành mạch tính toán xử lý cho những tác vụ nào đó Hiện nay, với
số tài nguyên khá lớn, giá thành rẻ, khả năng tái cấu hình mạnh công nghệ FPGA tạo cơ hội rất thuận lợi cho việc chế tạo mạng CNN
Trong phạm vi luận văn này chỉ giới thiệu một số loại chip FPGA thông dụng phù hợp cho ứng dụng tính toán giải phương trình Burger như sau:
- Virtex®-5 FPGAs: Dòng chip của hãng Xilinx, với công nghệ 65nm đầu tiên, (Vertex®- 4 có kích thước 90nm) làm việc với điện áp 1.0 (V), có tới 330 000 cổng lô gic; 1 200 chân vào/ra; bộ nguồn PowerPC® 440; chuẩn giao tiếp MAC
- Virtex®-6 FPGAs: Là họ Vertex mới và tiên tiến nhất tiêu thụ năng lượng ít hơn 50% và chi phí hoạt động rẻ hơn 20% so với các version cũ Vertex 6 cũng sử dụng khối ASMBLTM và cho phép mở rộng khả năng thiết
kế các khối logic tốc độ cao, nhiều khối chức năng sẵn có dạng “Buil-in”
Trang 30- Spartan®-6: Phát triển từ dòng Spartan của hãng Altera với công nghệ
45 nm tiêu thụ năng lượng nhỏ, có tới 150 000 cổng logic; khối giao tiếp tích hợp PCI Express® tốc độ trao đổi đạt tới 3 125 Gb/giây; có thể thêm bộ nhớ ngoài
-Stratix® 3: Sử dụng công nghệ 65 nm tiêu thụ ít năng lượng có các chức năng xử lý tích hợp tốc độ cao, giao diện làm việc qua mạng, có công cụ chuyên dụng cho xử lý ảnh nhanh
-Stratix® 4: Dùng công nghệ 40 nm có tới 820 000 phần tử xử lý logic, một số tính năng còn vượt trội hơn Vertex-6
1.2 Giới thiệu về phương trình đạo hàm riêng [3]
1.2.1 Các khái niệm cơ bản về phương trình đạo hàm riêng
Định nghĩa: Phương trình đạo hàm riêng là phương trình có chứa đạo hàm riêng của hai hay nhiều hơn hai biến phải tìm Ví dụ:
0 x
Cấp của phương trình: là cấp của đạo hàm cấp cao nhất Ví dụ cấp của (1.6) là cấp 1; cấp của (1.7) là cấp 2
Phương trình đạo hàm riêng được gọi là tuyến tính nếu hàm phải tìm và các đạo hàm của nó chỉ xuất hiện với luỹ thừa bậc nhất và không có tích của chúng với nhau
Dạng tổng quát của phương trình tuyến tích cấp hai đối với hàm hai biến x,y là:
Trang 31Nếu G(x,y) 0 thì phương trình gọi là thuần nhất, nếu không gọi là không
thuần nhất
Nghiệm của phương trình đạo hàm riêng: Là mọi hàm mà khi thay nó
vào phương trình ta được một đồng nhất thức Ví dụ: u(x,y) = x + y – 2z là
1.2.2 Phân loại các phương trình đạo hàm riêng tuyến tính cấp hai với hai
biến độc lập
Dạng tổng quát của phương trình đạo hàm riêng tuyến tính cấp hai, trong
đó hàm u(x,y) chưa biết phụ thuộc hai biến độc lập (x,y) là
) , ( ) , ( )
, ( ) , ( )
, ( )
, ( 2
)
,
2 2
2
2
y x G u y x F y
u y x E x
u y x D y
u y x C y x
u y x B
Người ta chứng minh được rằng mọi phương trình có dạng (1.9) nhờ những
phép biến đổi thích hợp có thể đưa về một trong ba dạng sau:
a) Nếu AC B2 0 trong một miền nào đó thì bằng các phép biến đổi thích
hợp có thể đưa phương trình (1.9) trong miền ấy về dạng
2 2
u D u u
ấy có thể đưa về dạng
2 2
u D u u
u D
Trang 321.2.3 Phương pháp sai phân [3]
Trong các chương trước ta đã xét các phương pháp tìm nghiệm tường minh của bài toán dưới dạng các công thức sơ cấp, các tích phân hoặc các chuỗi hàm đối với một số ít trường hợp Còn đại đa số trường hợp khác, đặc biệt là đối với các bài toán có hệ số biến thiên, các bài toán phi tuyến, các bài toán trên miền bất kỳ thì nghiệm tường minh của bài toán không có, hoặc có nhưng rất phức tạp Trong những trường hợp đó việc tính nghiệm phải dựa vào các phương pháp giải gần đúng
Để giải quyết vấn đề nêu trên thì trong phạm vi bài giảng đưa ra phương pháp sai phân để giải quyết vấn đề nêu trên
Để tiện trình bày phương pháp ta xét một bài toán cụ thể sau
u t
Trang 33Ta chia miền Q T thành ô bởi những đường thẳng x x i,tt j, mỗi điểm
x , i t j được gọi là một nút và ký hiệu là i , j Mục tiêu của phương pháp là tìm nghiệm gần đúng của bài toán tại các nút i , j
h gọi là bước đi không gian
gọi là bước đi thời gian
Tập tất cả các nút i , j tạo thành một lưới sai phân trên Q T
u t
x u t x u
j i j
i j
1 1
h o t x x
u h
t x u t x u t x u
j i j
i j
i j
1.2.3.4 Bài toán sai phân
Bài toán đặt ra là phải tìm nghiệm gần đúng v i j u(x i,t j)
u t
x u t x u
j i j
i j
1 1
h o t x x
u h
t x u t x u t x u
j i j
i j
i j
u t
x t
u
j i j
j i j i j
i j i j
i
t x f h
v v v
v v
Trang 34v i0 g ( xi) i 1 N 1 (1.19)
v0j g a(t j) v N j g b(t j) j 1 M (1.20)
i v v
v1, , 1 thì tính được j 1
i
v với các điều kiện đầu cho giá trị ở lớp thời gian đầu tiên j 0, các giá trị trên biên cho ở
j i j
i j
,(),(2)
,
1 2
2
2
1 1 1
1
1
h o t
x x
u h
t x u t
x u t
x
u
j i j
i j
i j
x
( , ) ( , ) ( 2 )
1 2
2
x
u t
x t
u
j i j
1 1
j i j i j i j i j
h
v v v
v v
Trang 35Việc giải hệ này được thực hiện bằng phương pháp truy đuổi ba đường chéo
1.3 Các dạng kiến trúc mạng CNN
Kiến trúc mạng CNN cho bài toán 1D, xét cho một nhóm tế bào thứ i
và các láng giềng (i-1), (i+1) có dạng như trong Hình 1.11 trong đó, giá trị điện trở tuyến tính R trong mạch CNN được chọn tuỳ theo điều kiện cụ thể của bài toán ; Tụ tuyến tính C được chọn bằng 1 Ta thấy, có 3 cấu trúc mạch thể hiện ba trạng thái hoạt động của mạch: trường hợp ban đầu (a) thiết lập thông số khởi tạo cho các tế bào; trường hợp (b) tế bào đang xử lý nhưng không có tín hiệu vào (mẫu B=0); trường hợp (c) là trạng thái đầy đủ có cả bộ mẫu (A,B,z)