TÌM HIỂU MẠNG NEURAL THUẬT TOÁN ỨNG DỤNG NHẬN DẠNG KÍ TỰ

41 830 1
TÌM HIỂU MẠNG NEURAL  THUẬT TOÁN ỨNG DỤNG NHẬN DẠNG KÍ TỰ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC LỜI NÓI ĐẦU 2 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NEURAL NHÂN TẠO 3 1.1. Khái niệm mạng neural . 3 1.1.1. Tìm hiểu về Neural. 3 1.1.2. Mạng neural nhân tạo. 6 1.2. Đặc trưng của mạng neural. 8 1.2.1. Tính phi tuyến. 8 1.2.2. Tính chất tương ướng đầu vào đầu ra. 8 1.2.3. Tính chất thích nghi. 8 1.2.4. Tính chất đưa ra lời giải có bằng chứng. 9 1.2.5. Tính chất chấp nhận sai xót. 9 1.2.6. Khả năng cài đặt VLSI(Verylargescaleintergrated). 9 1.2.7. Tính chất đồng dạng trong phân tích và thiết kế. 9 1.3. Phân loại mạng neural nhân tạo. 10 1.3.1. Phân loại theo kiểu liên kết neural. 10 1.3.2. Một số loại mạng neural. 10 1.4. Xây dựng mạng neural. 13 1.5. Huấn luyện mạng neural. 14 1.5.1. Phương pháp học. 14 1.5.2. Thuật toán học. 15 1.6. Thu thập dữ liệu cho mạng neural. 20 1.7. Biểu diễn chi thức cho mạng neural. 22 1.8. Một số vấn đề của mạng neural. 24 1.9. Ứng dụng của mạng neural. 25 CHƯƠNG 2: ỨNG DỤNG MẠNG NEURAL NHẬN DẠNG KÍ TỰ 26 2.1. Giới thiệu 26 2.2. Phát biểu bài toán 26 2.3. Các bước giải quyết giải quyết bài toán 27 2.3.1. Xây dựng mạng neural. 27 2.3.2. Xử lý dữ liệu (phân tích ảnh). 28 2.3.3. Huấn luyện mạng neural. 33 2.3.4. Nhận dạng ảnh kí tự. 37 KẾT LUẬN 39 TÀI LIỆU THAM KHẢO 40 LỜI NÓI ĐẦU Ngày nay không ai có thể phủ nhận vai trò cực kỳ quan trọng của máy tính trong nghiên cứu khoa học kỹ thuật cũng như trong đời sống. Máy tính đã làm được những điều kỳ diệu và giải được những vấn đề tưởng chừng nan giải. Càng ngày càng có nhiều người tự hỏi, liệu máy tính có khả

TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN BỘ MÔN CÔNG NGHỆ THƠNG TIN ĐỀ ÁN MƠN HỌC Đề tài: TÌM HIỂU MẠNG NEURAL & THUẬT TOÁN ỨNG DỤNG NHẬN DẠNG KÍ TỰ Giáo viên hướng dẫn Sinh viên thực Mã sinh viên Lớp : : : : Hà Nội - 14/2009 MỤC LỤC MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NEURAL NHÂN TẠO 1.1 Khái niệm mạng neural .5 1.1.1 Tìm hiểu Neural .5 1.1.2 Mạng neural nhân tạo .8 1.2 Đặc trưng mạng neural 10 1.2.1 Tính phi tuyến .10 1.2.2 Tính chất tương ướng đầu vào đầu 10 1.2.3 Tính chất thích nghi 10 1.2.4 Tính chất đưa lời giải có chứng .11 1.2.5 Tính chất chấp nhận sai xót 11 1.2.6 Khả cài đặt VLSI(Very-large-scale-intergrated) 11 1.2.7 Tính chất đồng dạng phân tích thiết kế 11 1.3 Phân loại mạng neural nhân tạo 12 1.3.1 Phân loại theo kiểu liên kết neural .12 1.3.2 Một số loại mạng neural .12 1.4 Xây dựng mạng neural 15 1.5 Huấn luyện mạng neural 16 1.5.1 Phương pháp học 16 1.5.2 Thuật toán học 17 1.6 Thu thập liệu cho mạng neural 22 1.7 Biểu diễn chi thức cho mạng neural 24 1.8 Một số vấn đề mạng neural 26 1.9 Ứng dụng mạng neural .27 CHƯƠNG 2: ỨNG DỤNG MẠNG NEURAL NHẬN DẠNG KÍ TỰ 28 2.1 Giới thiệu 28 2.2 Phát biểu toán 28 2.3 Các bước giải giải toán 29 2.3.1 Xây dựng mạng neural 29 2.3.2 Xử lý liệu (phân tích ảnh) 30 2.3.3 Huấn luyện mạng neural .36 2.3.4 Nhận dạng ảnh kí tự 38 KẾT LUẬN 41 TÀI LIỆU THAM KHẢO 42 LỜI NĨI ĐẦU Ngày khơng phủ nhận vai trò quan trọng máy tính nghiên cứu khoa học kỹ thuật đời sống Máy tính làm điều kỳ diệu giải vấn đề tưởng chừng nan giải Càng ngày có nhiều người tự hỏi, liệu máy tính có khả suy nghĩ người hay chưa? Chúng ta không trả lời câu hỏi Thay vào đó, nêu khác biệt chủ yếu cách làm việc máy tính óc người Một máy tính, dự cú mạnh đến đâu nữa, phải làm việc theo chương trình xác hoạch định trước chuyên gia Bài toán phức tạp việc lập trình cơng phu Trong người làm việc cách học tập rèn luyện, làm việc người có khả liên tưởng, kết nối việc với việc khác, quan trọng hết, họ sáng tạo Do có khả liên tưởng, người dễ dàng làm nhiều điều mà việc lập trình cho máy tính địi hỏi nhiều cơng sức Chẳng hạn việc nhận dạng hay trị chơi chữ Một em bé tự học hỏi để nhận dạng phân loại đồ vật chung quanh mình, biết thức ăn, đồ chơi Một người bình thường đốn vài chữ chữ Nhưng thật khó mà dạy cho máy tính làm việc Từ lâu nhà khoa học nhận thấy ưu điểm óc người tìm cách bắt chước để thực máy tính, tạo cho có khả học tập, nhận dạng phân loại Các mạng neural nhân tạo đời từ nỗ lực đú Nó thực ý nhanh chóng trở thành hướng nghiên cứu đầy triển vọng mục đích xây dựng cỏc mỏy thơng minh tiến gần tới trí tuệ người Đặc biệt lĩnh vực nhận dạng Trong đồ án trình bày “Tìm hiểu mạng neural thuật tốn ứng dụng việc nhận dạng kí tự” Nội dung báo cáo gồm chương sau: Chương 1:Tổng quan mạng neural nhân tạo Chương 2: Thuật toán ứng dụng mạng neural nhận dạng kí tự CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NEURAL NHÂN TẠO 1.1 Khái niệm mạng neural 1.1.1 Tìm hiểu Neural 1.1.1.1 Neural sinh học: Một neural cấu gồm thành phần sau: Dendrite, Soma, Synapse, Axon hình 1.1 Hình 1.1: Mơ hình neural sinh học Soma thân neural Các dendrites cỏc dõy mảnh, dài, gắn liền với soma, chúng truyền liệu (dưới dạng xung điện thế) đến cho soma xử lý Bên soma liệu tổng hợp lại, xem gần tổng hợp phép lấy tổng tất liệu mà neural nhận Một loại dây dẫn tín hiệu khác gắn với soma axon Khác với dendrites, axons có khả phỏt cỏc xung điện thế, chúng dây dẫn tín hiệu từ neural nơi khác Chỉ điện soma vượt giá trị ngưỡng axon phát xung điện thế, cịn khơng trạng thái nghỉ Axon nối với dendrites neural khác thông qua mối nối đặc biệt gọi synapse Khi điện synapse tăng lên xung phát từ axon synapse nhả số chất hoá học (neurotransmitters); chất mở "cửa" dendrites ions truyền qua Chớnh dũng ions làm thay đổi điện dendrites, tạo xung liệu lan truyền tới neural khác Có thể tóm tắt hoạt động neural sau: neural lấy tổng tất điện vào mà nhận được, phát xung điện tổng lớn ngưỡng Các neural nối với synapses Synapse gọi mạch cho phép truyền dẫn dễ dàng tín hiệu qua neural khác Ngược lại, synapse yếu truyền dẫn tín hiệu khó khăn Các synapses đóng vai trị quan trọng học tập Khi học tập hoạt động synapses tăng cường, tạo nên nhiều liên kết mạnh neural Có thể nói người học giỏi có nhiều synapses synapses mạnh mẽ, hay nói cách khác, liên kết neural nhiều, nhạy bén 1.1.1.2 Neural nhân tạo: Neural nhân tạo đơn vị tính tốn có nhiều đầu vào đầu ra, đầu vào đến từ liên kết Đặc trưng neural hàm kích hoạt phi tuyến chuyển đổi tổ hợp tuyến tính tất tín hiệu đầu vào thành tín hiệu đầu Hàm kích hoạt đảm bảo tính chất phi tuyến cho tính tốn mạng neural y1 y2 w1 f w2 wk yk Đầu vào b0 Đầu a=f( ∑w’y+b) Hình1.2: Mơ hình neural nhân tạo a Một neural cầu tạo gồm thành phần : liên kết neural, cộng , hàm kích hoạt Liên kết neural thành phần mạng neural nhận tạo để liên kết neural, nối đầu neural lớp với đầu vào neural lớp khác Đặc trưng thành phần liên kết trọng số mà tín hiệu qua nhân với trọng số Các trọng số liên kết tham số tự mạng neuron, thay đổi nhằm thích nghi với mơi trường xung quanh Bộ cộng dùng để tính tổng tín hiệu đầu vào neural, nhân với trọng số liên kết tương ứng phép tốn mơ tả tạo nên hợp tuyến tính Hàm kích hoạt hay cịn gọi hàm kích hoạt phi tuyến, chuyển đổi tổ hợp tuyến tính tất tín hiệu đầu vào thành tín hiệu đầu Hàm kích hoạt đảm bảo tính chất phi tuyến cho tính tốn mạng neural Nó xem hàm giới hạn, giới hạn phạm vi biên độ cho phép tín hiệu đầu khoảng giá trị hữu hạn Mơ hình neural hình 1.2 cịn bao gồm hệ số điều chỉnh b tác động từ bên ngồi Hệ số điều chỉnh b có tác dụng tăng lên giảm đầu vào thực hàm kích hoạt, tùy theo dương hay âm Bảng 1.1 : Một số hàm kích hoạt mạng neural: Tên hàm Công thức hardlim a=0 a=1 hardlims với n < với n ≥ a = -1 với n < a=1 với n ≥ purelin a=n Satlin a=0 với n < a=n với ≤ n ≤ a=1 với n > satlins a = -1 với n < a=n với ≤ n ≤ a=1 với n > a=0 với n < a=n với n ≥ tansig poslin compet a = với neural có n lớn a = với neural lại logsig 1.1.2 Mạng neural nhân tạo Là hệ thống bao gồm nhiều phần tử xử lý đơn giản (hay gọi neural) tựa neural thần kinh não người, hoạt động song song nối với liên kết neural Mỗi liên kết kèm theo trọng số đó, đặc trưng cho tính kích hoạt ức chế neural Có thể xem trọng số phương tiện để lưu trữ thông tin dài hạn mạng neural nhiệm vụ trình huấn luyện mạng cập nhật trọng số cú thờm thông tin mẫu học Hay nói cách khỏc, cỏc trọng số điều chỉnh cho dáng điệu vào mạng mơ hồn tồn phù hợp với mơi trường xem xét Mơ hình mạng neural Hình 1.3: Sơ đồ đơn giản mạng neural nhân tạo Mơ hình mạng neural gồm lớp: lớp nhập (input), lớp ẩn(hidden) lớp xuất (output) Mỗi nút lớp nhập nhận giá trị biến độc lập chuyển vào mạng Dữ liệu từ tất cỏc nỳt lớp nhập tích hợp – ta gọi tổng trọng số – chuyển kết cho cỏc nỳt lớp ẩn Gọi “ẩn” vỡ cỏc nỳt lớp liên lạc với cỏc nỳt lớp nhập lớp xuất, có người thiết kế mạng biết lớp (người sử dụng lớp này) Cỏc nút lớp xuất nhận tín hiệu tổng trọng hóa từ cỏc nỳt lớp ẩn Mỗi nút lớp xuất tương ứng với biến phụ thuộc 1.2 Đặc trưng mạng neural 1.2.1 Tính phi tuyến Một neural tính tốn cách tuyến tính hay phi tuyến Một mạng neural, cấu thành kết nối neural phi tuyến tự có tính phi tuyến Hơn nữa, điều đặc biệt tính phi tuyến phân tán tồn mạng Tính phi tuyến thuộc tính quan trọng, chế vật lý sinh tín hiệu đầu vào (ví dụ tín hiệu tiếng nói) vốn phi tuyến 1.2.2 Tính chất tương ướng đầu vào đầu Mặc dù khái niệm “học” hay “huấn luyện” chưa bàn đến để hiểu mối quan hệ đầu vào-đầu mạng neural, đề cập sơ qua khái niệm Một mơ hình học phổ biến gọi học với người dạy hay học có giám sát liên quan đến việc thay đổi trọng số liên kết mạng neural việc áp dụng tập hợp mẫu tích luỹ hay ví dụ tích luỹ Mỗi ví dụ bao gồm tín hiệu đầu vào đầu mong muốn tương ứng Mạng neural nhận ví dụ lấy cách ngẫu nhiên từ tập hợp nói đầu vào nó, trọng số liên kết mạng biến đổi cho cực tiểu hố sai khác đầu mong muốn đầu thực mạng theo tiêu chuẩn thống kê thích hợp Sự tích luỹ mạng lặp lại với nhiều ví dụ tập hợp mạng đạt tới trạng thái ổn định mà khơng có thay đổi đáng kể trọng số liên kết Các ví dụ tích luỹ áp dụng trước áp dụng lại thời gian phiờn tớch luỹ theo thứ tự khác Như mạng neural học từ ví dụ cách xây dựng nên tương ứng đầu vào-đầu cho vấn đề cần giải 1.2.3 Tính chất thích nghi Các mạng neural có khả mặc định biến đổi trọng số liên kết tuỳ theo thay đổi môi trường xung quanh Đặc biệt, mạng neural tích luỹ để hoạt động mơi trường xác định tích luỹ lại cách dễ dàng có thay đổi nhỏ điều kiện môi trường hoạt động Trong thực tế, lỗi biết sau thời gian dài Chức nột neural không đơn giản mơ hình Bởi mạng neural hoạt động hộp đen Một số hướng dẫn sử dụng mạng neural Xây dựng mạng khởi tạo(dựng lớp ẩn có số neural= ẵ tổng số neural lớp nhập l ớp xuất) Huấn luyện mạng dựng cỏc giải thuật huấn luyện Nên thực nhiều mạng khác để tránh trường hợp cực tiểu cục Nếu mỏy “Khụng thuộc bài” => thêm vài neural cho tầng ẩn Ngược lại máy “Học vẹt”=> bớt vài neural khỏi tầng ẩn Khi tìm kiến trúc mạng tương đối tốt lấy mẫu lại tập liệu huấn luyện lại để tỡm cỏc mạng 1.9 Ứng dụng mạng neural Mạng neural vài năm trở lại đõy nhiều người quan tâm áp dụng thành cơng nhiều lĩnh vực khác nhau, tài chính, y tế, địa chất vật lý Thật vậy, đâu có vấn đề dự báo, phân loại điều khiển, mạng neural ứng dụng Ví dụ khả nhận dạng mặt người hệ thống quản lý thông tin liên quan đến người (quản lý nhân công sở, doanh nghiệp; quản lý học sinh, sinh viên trường trung học, đại học cao đẳng;… ); ngành khoa học hình sự, tội phạm; khoa học tướng số, tử vi,… Kết hợp chặt chẽ với logic mờ, mạng neural nhân tạo tạo nên cách mạng thực việc thơng minh hóa vạn hóa cỏc điều khiển kỹ thuật cao cho tương lai Ví dụ ứng dụng tự động điều khiển hệ thống lái tàu, hệ thống dự báo cố,… Mạng neural dựa việc mô cấp thấp hệ thống neural sinh học Trong tương lai với phát triển mô neural sinh học, có loại máy tính thơng minh thật CHƯƠNG 2: ỨNG DỤNG MẠNG NEURAL NHẬN DẠNG KÍ TỰ 2.1 Giới thiệu Nhận dạng ký tự ứng dụng nhiều người quan tâm đầy khó khăn thử thách Điều khó khả nhận dạng phù hợp kí tự kiểu ngơn ngữ phức tạp không theo quy luật biến đổi font, kiểu kích cỡ Với số phương thức lập trình truyền thống ánh xạ ảnh kí tự vào ma trận, phân tích ảnh vector liệu, kiểm tra đưa định phù hợp kết Việc thực thi lập trình truyền thống cần viết mã nguồn vô tận cho kiểu không quán hay trờnh lệch với giá trị đầu khác Lý thuyết không thực Sử dụng mạng neural nhân tạo với mạng làm việc quy tắc từ việc cập nhật lại trọng số liên kết cỏc nút mạng Với ưu điểm mạng nhận liệu từ phân tích sinh động ảnh đầu vào việc huấn luyện cho cỏc kớ tự đầu cho mẫu nói cách khác khả thích nghi với mơi trường liệu đầu vào sinh động 2.2 Phát biểu toán Cho toán nhận dạng kí tự với đầu vào trang văn định dạng file ảnh (*.bmp,*.jmp,…) Yêu cầu xây dựng chương trình nhận dạng kí tự văn file ảnh Sử dụng công cụ mạng nơron đầu tập hợp cỏc kớ tự lư trữ dạng văn Giả thiết giai đoạn tiền xử lý thực : ảnh phân ngưỡng, xoay ảnh, lọc nhiễu Đề tài sâu nghiên cứu q trình nhận dạng kí tự mạng neural Ý tưởng toán :  Phân tích ảnh cho kí tự: Chia ảnh theo dịng tách ký tự theo vùng giới hạn  Chuyển đổi kí tự sang ma trận điểm ảnh  Chuyển thành ma trận tuyến tính đưa vào mạng neural  Đưa mạng neural tính giá trị đầu  Hiển thị kí tự mã Unicode thu Các bước giải toán sử dụng mạng neural nhận dạng ký tự: Xây dựng mạng, xử lý liệu(phõn tớch ảnh), huấn luyện mạng nueral nhận dạng mạng neural 2.3 Các bước giải giải toán 2.3.1 Xây dựng mạng neural Chọn mạng đa tầng Feedforward với lớp : Điểm ảnh Điểm ảnh Điểm ảnh Điểm ảnh 150 neural Lớp đầu vào 500 neural Lớp ẩn 16 neural Lớp đầu Hình 2.1: Sơ đồ mạng neural thiết kế Lớp đầu vào gồm 150 neural nhận giá trị nhị phân(0,1) 150 thành phần vộctơ tương ứng liệu véc tơ hóa từ ma trận điểm ảnh kí tự phương pháp chia lưới Lớp ẩn gồm 500 neural, số neural định từ kết tối ưu giá trị lỗi sở trình huấn luyện Lớp đầu gồm 16 neural đưa giá trị nhị phân(0,1) tương ứng với 16 bít mã Unicode Với lớp nói ta xõy dụng mạng neural hình 2.1 2.3.2 Xử lý liệu (phân tích ảnh) Q trình phân tích ảnh để tìm đặc tính kí tự việc kiểm tra điểm ảnh giá trị đầu vào cho trình huấn luyện q trình kiểm tra Q trình phân tích dựa việc nhận dạng từ ảnh đầu vào phương pháp tính giá trị màu Giới hạn giá trị điểm đen RGB(0,0,0) điểm trẳng RGB(255,255,255) Những ảnh đầu vào định dạng bitmap(*.bmp) 2.3.2.1 Tỏch dũng kớ tự Sự liệt kê cỏc dũng kí tự ảnh kí tự hay trang văn yếu tố quan trọng trình tìm giới hạn kí tự, tìm giới hạn kí tự khơng cần quột trờn tồn ảnh Thuật tốn: Bắt đầu từ điểm ảnh x, y (0,0), đặt dòng Quét đến hết chiều rộng ảnh giá trị y ảnh Nếu phát điểm đen lưu giá trị y đỉnh hàng đầu tiên:  Nếu không xét tiếp điểm  Nếu khơng thấy điểm đen tăng y khởi động lại x để quột dũng ngang  Bắt đầu từ đỉnh cuả hàng tìm thấy (0,giới hạn trên) Quét đến hết chiều rộng ảnh giá trị y ảnh  Nếu khơng phát điểm đen đánh dấu giá trị y-1 giới hạn hàng Và tăng số dũng, xột dũng  Nếu phát thấy điểm đen tăng y khởi động lại x xét hàng ngang Bắt đầu từ giới hạn hàng ngang tìm thấy sau lặp lại từ bước đến bước tỡm dũng Nếu y chiều cao ảnh dừng Giới hạn Gới hạn Q trình tách dịng Ảnh đầu vào Hình 2.2: Q trình tỏch dũng kớ tự 2.3.2.2 Tỏch kí tự Thuật tốn Bắt đầu từ kí tự hàng với giá trị x Quét hết chiều rộng với giá trị y  Nếu phát điểm đen đánh dấu y đỉnh hàng  Nếu không xét điểm Bắt đầu từ giới hạn kí tự phát giá trị x đầu tiờn.(0,giới hạn trờn kớ tự) Quét đến giới hạn dòng, giữ nguyên x  Nếu phát điểm đen đánh dấu x phớa trỏi kí tự  Nếu khơng xét điểm  Nếu không thấy điểm đen tăng x khởi động lại y để xét đường thẳng đứng Bắt đầu từ phớa trỏi kí tự tìm thấy đỉnh dịng thời, (giới hạn trỏi kớ tự, giới hạn trờn dũng) Quét hết chiều rộng ảnh Trên giá trị x  Nếu khơng có điểm đen đánh dấu x-1 bên phải kí tự  Nếu phát điểm đen tăng x khởi động lại y để xét đường thẳng đứng x (0,0) Gới hạn trái kí tự Q trình tách kí tự Gới hạn phải kí tự y Hình 2.3: Q trình tỏch kớ tự 2.3.2.3 Tìm giới hạn kí tự Trong số trường hợp q trình tỏch kớ tự khơng phải giới hạn thực tế kí tự Ở xuất vấn đề không xếp kí tự theo quy luật xếp dũng kớ tự Tức đỉnh hàng không tất yếu đỉnh tất tương tự đáy của hàng không đáy tất cỏc kớ tự dịng Từ cần có thủ tục tìm giới hạn kí tự Thuật tốn Bắt đầu từ đỉnh dòng thời bên trái kí tự Quét đến bên phải kí tự giá trị y  Nếu phát điểm đen đánh dấu y thay đổi lại giới hạn  Nếu không xét điểm  Nếu khơng tìm thấy điểm đen tăng y khởi động lại x, xét đường thẳng ngang Bắt đầu từ giới hạn dịng bên trái kí tự Qt tới bên phải kí tự giá trị y  Nếu phát điểm đen, đánh dấu y giới hạn kí tự  Nếu không phát điểm đen giảm y khởi động lại x xét đường thẳng ngang Gới hạn ký tự Quá trình tìm giới hạn Gới hạn ký tự Hình 2.4: Quá trình tìm giới hạn kí tự 2.3.2.4 Ánh xạ vào ma trận Bước ta phải ánh xạ ảnh kí tự vào ma trận nhị phân hai chiều tương ứng Một việc quan trọng việc định cỡ ma trận Nếu điểm ảnh kí tự ánh xạ vào ma trận nhiên việc dẫn đến việc xử lý ma trận lớn Để cho cân hợp lý ta chuẩn hóa cỡ ma trận 10x15 với 150 phần tử Thuật toán: Đối với chiều rộng:  Khởi tạo với 10 phần tử tương ứng  Ánh xạ điểm đầu (0,y) điểm cuối (C_rong,y) ảnh kí tự tương ứng với giá trị đầu (0,y) giá trị cuối (10,y) ma trận  Chia nhỏ chiều rộng thành 10 giá trị tương ứng Đối với chiều cao:  Khởi tạo với 15 phần tử tương ứng  Ánh xạ điểm đầu (x,0) điểm cuối (x,C_cao) ảnh kí tự tương ứng với giá trị đầu (x,0) giá trị cuối (x,15) ma trận  Chia nhỏ chiều cao thành 15 giá trị tương ứng (0,0) 15 (10,15) 10 Hình 2.5: Q trình chia lưới kí tự Để đưa giá trị vào mạng neural ta cần chuyển ma trận điểm ảnh sang ma trận giá trị Thuật toán: Bắt đầu từ phần tử (0,0) Tăng x giữ nguyên giá trị y chiều rộng ma trận  Ánh xạ phần tử tới phần tử mảng tuyến tính  Nếu điểm đen nhận giá trị  Ngược lạI nhận giá trị  Nếu x = chiều rộng khởi động lại x tăng y Lặp lại (x,y)=( C_Rong, C_Cao) Hình 2.6: Quá trình ánh xạ từ ma trận điểm sang ma trận giá trị 2.3.3 Huấn luyện mạng neural Một mạng neural xây dựng phải huấn luyện không gian đầu vào chuẩn bị trước Khi hoạt động mạng neural đọc giá trị huấn luyện Một vài vấn đề cẩn thiết cho việc huấn luyện mạng: Tại lại có khác không gian đầu vào? Môi đầu vào khác giá trị ngẫu nhiên phạm vi giới hạn khơng có giá trị luồng dự đốn giá trị Tại có phức tạp tham số cho việc huấn luyện mạng? Các tham số phức tạp cỏc kớ tự thường thường đặc trưng chồng lấp kích cỡ liệu cao Cái cần sử dụng cho giá trị : Tốc độ học Hệ số góc Sigmoid Trọng số kết nối sở Có lần lặp cần thiết cho việc huấn luyện mạng tập đầu vào? Giá trị ngưỡng lỗi sử dụng để so sánh tương phản việc xác định trình dừng việc lặp lại có nhu cầu xuất Sự phức liệu tham số riêng lẻ vấn đề khác trình nhận dạng Mỗi kí tự lại có số lớn đặc tính phân biệt mà cần phải tính tốn để nhận dạng cách xác Sự loại bỏ số đặc tính có kết tương đồng mẫu Sự tối thiểu liệu yêu cầu cho phần phức tạp không gian đầu vào việc nhận dạng Thuật toán: Xây dựng mạng tương ứng với mơ hình tham số Khởi tạo giá trị trọng số với giá trị ngẫu nhiên Nạp file huấn luyện (cả ảnh đầu vào đầu mong muốn) Phân tích ảnh ánh xạ tất kí tự tìm thấy vào mảng chiều Đọc giá trị đầu mong muốn từ file chuyển đổi kí tự tới giá trị nhị phân Unicode lưu trữ riêng biệt Với kí tự:  Tính tốn giá trị đầu mạng Feed ForWard  So sánh với giá trị đầu mong muốn tương ứng với kí tự tính tốn lỗi  truyền ngược giá trị từ đầu với liên kết điều chỉnh trọng số liên kết Chuyển sang kí tự lặp lại “6” hết cỏc kớ tự Tính tốn trung bình lỗi cho tất cỏc kớ tự Lặp lại từ bước đến đạt số đưa vào số lần lặp tối đa  với phạm vi lỗi đạt đến ngưỡng Nếu bỏ lặp lại  ngược lại tiếp tục lặp lại Sơ đồ khối trình huấn luyện hình 2.7 BẮT ĐẦU Xây dựng mạng Tính đầu mạng Khởi tạo trọng số Tính lỗi Vector đầu vào Cập nhật trọng số Nạp file huấn luyện Phân tích ảnh Các kí tự sẵn Đsàng ? BẮT ĐẦU Phát kí tự S Phân tích dịng ảnh Các kí tự sẵn sàng ? Tính trung bình lỗi S Dịng Đ S Ánh xạ kí tự tới vector ĐLỗi < Đọc đầu mong muốn ngưỡng ? S Tính tốn đầu Đ Các kí tự sẵn sàng Chuyển từ Unicode sang kí tự ? S Số lần Đ lặp =max epochs ? KẾT THÚC Hình 2.7: Sơ đồ khối trình huấn luyện mạng neural Hết kí tự dịng ? 2.3.4 Nhận dạng ảnh kí tự Kí tự S Đ Quá trình nhận dạng mạng neural đơn giản dễ hiểu Khi chương trình chạy gọi modun: phân tích ảnh, vector hóa Dịng huấn q trình Hết Các dịng ? S Đ KẾT THÚC luyện sử dụng lại q trình nhận dạng Những bước sở để nhận dạng ảnh kí tự tóm tắt sơ đồ hình 2.8 đây: Hình 2.8: Sơ đồ khối trình nhận dạng kí tự: Thuật tốn: Nạp file ảnh Phân tích ảnh cho cỏc dũng kớ tự Với dũng tỏch cỏc kớ tự liên tiếp  Phân tích xử lý ảnh kí tự cho việc ánh xạ vào vectơ đầu vào  Đưa giá trị vecto đầu vào cho mạng neural tính toán giá trị đầu  Chuyển đổi mã Unicode đầu từ nhị phân tới kí tự tương ứng trả dạng textbox KẾT LUẬN Trong thời gian vừa qua, trình bày nội dung nghiên cứu đề tài em gồm phần sau:  Tìm hiểu mạng nơron nhân tạo  Tìm hiểu tốn nhận dạng  Mơ tả tốn ứng dụng mạng nơron nhận dạng kí tự  Phân tích cụ thể tốn nhận dạng  Thiết kế mạng huấn luyện mạng nơron cho toán “ứng dụng mạng nơron nhận dạng kí tự” Nhận dạng kí tự phần quan trọng lĩnh vực nhận dạng nói riêng xử lý ảnh nói chung Cùng với việc sử dụng công cụ mạng neural lĩnh vực cần phát triển Em xin chân thành cảm ơn thầy, cỏc cụ môn Công nghệ Thông tin Trường Đại học Kinh Tế Quốc Dân tận tình dạy dỗ, truyền đạt cho chúng em nhiều kiến thức quý báu Em xin tỏ lòng biết ơn sâu sắc đến thầy Lưu Minh Tuấn, người tận tình giúp đỡ truyền đạt nhiều kinh nghiệm để đề tài thực hoàn thành Em xin trân thành cảm ơn! ... nơron nhận dạng kí tự  Phân tích cụ thể toán nhận dạng  Thiết kế mạng huấn luyện mạng nơron cho toán ? ?ứng dụng mạng nơron nhận dạng kí tự? ?? Nhận dạng kí tự phần quan trọng lĩnh vực nhận dạng. .. vực nhận dạng Trong đồ án trình bày ? ?Tìm hiểu mạng neural thuật tốn ứng dụng việc nhận dạng kí tự? ?? Nội dung báo cáo gồm chương sau: Chương 1:Tổng quan mạng neural nhân tạo Chương 2: Thuật toán ứng. .. cho mạng neural 22 1.7 Biểu diễn chi thức cho mạng neural 24 1.8 Một số vấn đề mạng neural 26 1.9 Ứng dụng mạng neural .27 CHƯƠNG 2: ỨNG DỤNG MẠNG NEURAL NHẬN DẠNG KÍ

Ngày đăng: 21/06/2014, 20:22

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1: TỔNG QUAN VỀ MẠNG NEURAL NHÂN TẠO

    • 1.1. Khái niệm mạng neural .

      • 1.1.1. Tìm hiểu về Neural.

        • 1.1.1.1. Neural sinh học:

        • 1.1.1.2. Neural nhân tạo:

        • 1.1.2. Mạng neural nhân tạo.

        • 1.2. Đặc trưng của mạng neural.

          • 1.2.1. Tính phi tuyến.

          • 1.2.2. Tính chất tương ướng đầu vào đầu ra.

          • 1.2.3. Tính chất thích nghi.

          • 1.2.4. Tính chất đưa ra lời giải có bằng chứng.

          • 1.2.5. Tính chất chấp nhận sai xót.

          • 1.2.6. Khả năng cài đặt VLSI(Very-large-scale-intergrated).

          • 1.2.7. Tính chất đồng dạng trong phân tích và thiết kế.

          • 1.3. Phân loại mạng neural nhân tạo.

            • 1.3.1. Phân loại theo kiểu liên kết neural.

            • 1.3.2. Một số loại mạng neural.

              • 1.3.2.1. Mạng dẫn tiến .

              • a. Các mạng dẫn tiến đơn mức.

              • b. Các mạng dẫn tiến đa mức.

              • 1.3.2.2. Mạng quy hồi .

              • 1.4. Xây dựng mạng neural.

              • 1.5. Huấn luyện mạng neural.

                • 1.5.1. Phương pháp học.

                  • 1.5.1.1. Học có giám sát.

                  • 1.5.1.2. Học không giám sát.

                  • 1.5.1.3. Học tăng cường.

                  • 1.5.2. Thuật toán học.

                    • 1.5.2.1. Thuật toán học của mạng neural một lớp.

Tài liệu cùng người dùng

Tài liệu liên quan