1. Trang chủ
  2. » Công Nghệ Thông Tin

ĐỒ ÁN CƠ SỞ : Nghiên cứu mạng nơron cho bài toán nhận diện biển số xe máy

54 74 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 54
Dung lượng 1,83 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN TIỂU LUẬN MÔN HỌC Nghiên cứu mạng nơron cho bài toán nhận diện biển số xe máy Giảng viên hướng dẫn ThS VƯƠNG XUÂN CHÍ Si.

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN

TIỂU LUẬN MÔN HỌC

Nghiên cứu mạng nơron cho bài toán nhận diện biển số xe máy

Giảng viên hướng dẫn: ThS VƯƠNG XUÂN CHÍ Sinh viên thực hiện: TRẦN QUỐC HÀO

MSSV: 2000001910 Chuyên ngành: Khoa Học Dữ Liệu Môn học: Đồ Án Cơ Sở Khóa: 2020

Tp.HCM, tháng 9 năm 2022

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN

TIỂU LUẬN MÔN HỌC

Nghiên cứu mạng nơron cho bài toán nhận diện biển số xe máy

Giảng viên hướng dẫn: ThS VƯƠNG XUÂN CHÍ Sinh viên thực hiện: Trần Quốc Hào MSSV: 2000000634 Chuyên ngành: Khoa Học Dữ Liệu Môn học: Đồ Án Cơ Sở Khóa: 2020

Tp.HCM, tháng 9 năm 2022

Trang 3

………

Họ và tên sinh viênTrần Quốc HàoĐặng Quốc Phong

Trang 4

LỜI MỞ ĐẦU 1.lý do chọn đề tài

Hiện nay, số lượng xe cộ tham gia giao thông trên đường là rất lớn dẫn đến tiêu tốn rất nhiều nhân lực và vật lực cho việc quản lý phương tiện cá nhân trong bãigửi xe Nếu không có một công cụ thuận tiện thì việc quản lý phương tiện cá nhân rất mất thời gian, dễ gây nhầm lẫn, thiệt hay cho người sử dụng dịch vụ tại các bãi

đỗ xe

Để giảm tải cho các công việc như thu tiền, bảo hiểm xe, tìm xe cộ trong bãi

đỗ xe, trên thế giới đã phát triển công nghệ giám sát tự động đối với các phương tiện giao thông, chính nhờ tính cá nhân của biển số xe mà nó đã trở thành đối tượngchính được sử dụng để nghiên cứu, phát triển trong công nghệ này

Do đó em muốn chọn đề tài này như bước căn bản trong việc tìm hiểu các công cụ giám sát mạnh hơn như kiểm soát xe lưu thông trên đường hay nhận dạng khuôn mặt đang được thế giới rất chú trọng lúc này

Trang 5

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

Trang 6

TRƯỜNG ĐẠI HỌC NGUYỄN TẤT

THÀNH

TRUNG TÂM KHẢO THÍ

KỲ THI KẾT THÚC HỌC PHẦN HỌC KỲ … … NĂM HỌC …… - ….…

PHIẾU CHẤM THI TIỂU LUẬN/ĐỒ ÁN

Môn thi: Lớp học phần:

Nhóm sinh viên thực hiện :

1 Tham gia đóng góp: Trần Quốc Hào

2 Tham gia đóng góp: Đặng Quốc Phong

Ngày thi: Phòng thi:

Đề tài tiểu luận/báo cáo của sinh viên :Nghiên cứu mạng nơron cho bài toán nhận

diện biển số xe máy

Phần đánh giá của giảng viên (căn cứ trên thang rubrics của môn học):

Tiêu chí (theo CĐR HP) Đánh giá của GV Điểm tối đa Điểm đạt

Trang 7

tên)

Trang 8

THÀNH VIÊN NHÓM

Trang 9

Mục Lục

Chương 1 Tổng quan về bài toán nhận diện biển số xe 1

Chương 3 phân loại mạng nơron nhân tạo và cách thức tạo mạng nơron nhiều

Trang 11

DANH MỤC CÁC BẢNG BIỂU

………

……….

………

……….

………

……….

………

……….

………

……….

……….

………

……….

……….

………

……….

………

……….

………

……….

………

……….

Trang 12

……….

Trang 13

ảnh The Step Activation Function

ảnh The Linear Activation Function

Trang 14

ảnh The Rectified Linear Activation

Trang 15

ảnh mạng ResNet

Trang 16

DANH MỤC CÁC TỪ VIẾT TẮT

Trang 17

Chương 1 Tổng quan về bài toán nhận diện

biển số xe

1 vấn đề và hướng giải quyết

những vấn đề mắc phải trong lúc tiến hành làm :

-tập dữ liệu: hầu như không thể tìm ra tập dữ liệu về biển số xe đã được labels sẳn vấn đề về dữ liệu là vấn đề lớn nhất gặp phải-xác định vùng chứa biển số xe : cần phải lọc ra vùng chứa biển số xe tránh những tác nhân gây nhiễu

Hướng giải quyết từng vấn đề : thật sự vấn đề 1 là vấn đề rất lớn gây khó khăn trong quá trình em làm bài vì tìm ra cách để labels hay tìm tập dữ liệu đã được labels là rất tốn thời gian nên em quyết định sẽ train cho mạng nhận biết từng ký tự của biển số xe thay vì nhận biết toàn bộ biển số

Đối với vấn đề thứ 2 là lọc ra vùng có chứa biển số xe chia vấn đề thành 3 bước để tiến hành xữ lí

Bước 1: phát hiện vị trí và tách biển số xe từ ảnh

Bước 2:phân đoạn các ký tự có trên biển số xe

Bước 3:nhận diện ký tự và chuyển về mã ASCII

Bước 4: xuất kết quả

2 xữ lí ảnh với OpenCV

OpenCv (open computer vision) là 1 thư viện mã nguồn mờ hàng đầu cho xữ

lí về thị giác máy tính ,machine learning, xữ lí ảnh,openCV viết bằng c++ nên tốc độ truy suất rất nhanh có thể ứng dụng vào các bài toán sử lí liên quan đến thời gian thực openCv có thể ứng dụng vào các lĩnh vực như:

Trang 18

Chương 2 khái quát về mạng nơron

1 mạng nơron là gì ?

Mạng thần kinh “nhân tạo” được lấy cảm hứng từ bộ não hữu cơ, được dịch sang máy tính Nó không thể so sánh với 1 bộ não hoàn hảo , nhưng có các tế bào thần kinh, kích hoạt và rất nhiều mối quan hệ lẫn nhau, ngay cả khi các quy trình cơ bản là khá khác nhau

ảnh 1.1 cấu trúc thần kinh của não người và máy tính

2 Neural Network là gì?

Neural Network đọc tiếng việt là Mạng nơ-ron nhân tạo, đây là một chuỗi những thuật toán được đưa ra để tìm kiếm các mối quan hệ cơ bản trong tập hợp các dữ liệu Thông qua việc bắt bước cách thức hoạt động từ não bộ con ngườiNói cách khác, mạng nơ ron nhân tạo được xem là hệ thống của các tế bào thần kinhnhân tạo Đây thường có thể là hữu cơ hoặc nhân tạo về bản chất Neural Network

có khả năng thích ứng được với mọi thay đổi từ đầu vào Do vậy, nó có thể đưa ra

2

Trang 19

được mọi kết quả một cách tốt nhất có thể mà bạn không cần phải thiết kế lại nhữngtiêu chí đầu ra.

Kiến trúc của mạng nơron

Mạng Neural Network là sự kết hợp của những tầng perceptron hay còn gọi làperceptron đa tầng Và mỗi một mạng Neural Network thường bao gồm 3 kiểu tầnglà:

-Tầng input layer (tầng vào): Tầng này nằm bên trái cùng của mạng, thể hiện cho cácđầu vào của mạng

-Tầng output layer (tầng ra): Là tầng bên phải cùng và nó thể hiện cho những đầu racủa mạng

-Tầng hidden layer (tầng ẩn): Tầng này nằm giữa tầng vào và tầng ra nó thể hiện choquá trình suy luận logic của mạng

Lưu ý:mỗi mạng nơron chỉ có 1 lớp input và 1 lớp output tuy nhiên có rất nhiềuhidden layer

ảnh 1.2 ví dụ về kiến trúc 1 mạng nơron cơ bản

3.

Trong vài thập kỷ gần đây, mạng nơ-ron đã phát triển từ sự tò mò học thuật thành một ngành công nghiệp “học sâu” rộng lớn Học sâu sử dụng mạng nơ-ron, một thiết kế cấu trúc dữ liệu lấy cảm hứng từ cách bố trí các nơ-ron sinh học Các mạng nơ-ron này được xây dựng theo từng lớp và các đầu vào từ một lớp này được

3

Trang 20

kết nối với các đầu ra của lớp tiếp theo Học sâu là một phần nhỏ của học máy và cho phép máy tính tự động nhận dạng khuôn mặt và chuyển lời nói thành văn bản, đồng thời cho phép ô tô tự lái tránh các đối tượng trên đường phố.

Những thành tựu này được thực hiện nhờ các công trình của Walter Pitts, một nhà toán học, và Warren McCulloch, một nhà sinh lý học thần kinh, vào năm 1943, và Donald Hebb, một nhà tâm lý học người Canada Pitts và McCulloch đã nghiên cứu

và viết một bài báo mô tả cách thức hoạt động của các tế bào thần kinh, và sau đó phát triển một mạng lưới thần kinh đơn giản sử dụng các mạch điện

Năm 1949, Donald Hebb củng cố khái niệm về tế bào thần kinh trong cuốn sách của

mình, Tổ chức của Hành vi Nó chỉ ra rằng các đường dẫn thần kinh được tăng

cường mỗi khi chúng được sử dụng

Vào những năm 1950, Nathanial Rochester từ các phòng thí nghiệm nghiên cứu của IBM đã dẫn đầu nỗ lực đầu tiên để mô phỏng một mạng nơ-ron

Năm 1956, Dự án Nghiên cứu Mùa hè của Dartmouth về Trí tuệ Nhân tạo đã tạo ra một sự thúc đẩy cho cả trí tuệ nhân tạo và mạng nơ-ron Điều này đã kích thích nghiên cứu về AI và trong phần xử lý thần kinh cấp thấp hơn nhiều của não

Năm 1957, John von Neumann đề nghị bắt chước các chức năng đơn giản của tế bàothần kinh bằng cách sử dụng rơ le điện báo hoặc ống chân không

Năm 1958, Frank Rosenblatt, một nhà sinh học thần kinh của Cornell, bắt đầu nghiêncứu Perceptron Anh ta bị hấp dẫn bởi hoạt động của mắt của một con ruồi Phần lớn quá trình thông báo cho một con ruồi bỏ chạy được thực hiện trong mắt

nó Perceptron, kết quả của nghiên cứu này, được xây dựng trong phần cứng và là mạng nơ-ron lâu đời nhất vẫn còn được sử dụng cho đến ngày nay Perceptron một

4

Trang 21

lớp được thấy là hữu ích trong việc phân loại một tập hợp đầu vào có giá trị liên tục thành một trong hai lớp Perceptron tính toán tổng trọng số của các đầu vào, trừ đi một ngưỡng và chuyển một trong hai giá trị có thể ra dưới dạng kết quả.

Năm 1959, Bernard Widrow và Marcian Hoff ở Stanford đã phát triển các mô hình

mà họ gọi là ADALINE và MADALINE Các mô hình này được đặt tên cho việc sử dụngNhiều Phần tử LINear ADAptive MADALINE là mạng nơ-ron đầu tiên được áp dụng cho một bài toán trong thế giới thực Nó là một bộ lọc thích ứng giúp loại bỏ tiếng vọng trên đường dây điện thoại Mạng nơ-ron này vẫn đang được sử dụng cho mục đích thương mại

Tiến độ nghiên cứu mạng nơ-ron bị đình trệ do sợ hãi, những tuyên bố chưa được thực hiện, v.v cho đến năm 1981 Điều này khiến những tiếng nói đáng kính chỉ tríchnghiên cứu mạng nơ-ron Kết quả là đã làm ngưng trệ phần lớn nguồn tài trợ Giai đoạn tăng trưởng còi cọc này kéo dài đến năm 1981

1982 - John Hopfield trình bày một bài báo cho Viện Hàn lâm Khoa học quốc

gia Cách tiếp cận của anh ấy để tạo ra các thiết bị hữu ích; anh ấy dễ mến, rõ ràng

và lôi cuốn

1982- Hội nghị chung Hoa Kỳ-Nhật Bản về Mạng nơ-ron hợp tác / cạnh tranh, tại đó Nhật Bản công bố nỗ lực Thế hệ thứ Năm của họ, khiến Hoa Kỳ lo lắng về việc bị bỏ lại phía sau Ngay sau đó, nguồn vốn đã chảy một lần nữa

1985 - Viện Vật lý Hoa Kỳ bắt đầu cuộc họp thường niên - Mạng Nơron cho Máy tính Đến năm 1987, Hội nghị Quốc tế đầu tiên của Viện Kỹ sư Điện và Điện tử (IEEE)

về Mạng Neural đã thu hút hơn 1.800 người tham dự

Năm 1997 - Một khung mạng nơ-ron lặp lại, Bộ nhớ Ngắn hạn Dài (LSTM) được đề xuất bởi Schmidhuber & Hochreiter

5

Trang 22

Năm 1998, Yann LeCun xuất bản Học tập dựa trên Gradient được áp dụng để nhận dạng tài liệu.

Từ năm 2000-2010 mạng neural tuộc dóc và học sâu bắt đầu xuất hiện và đạt được những thành quả đáng mong đợi

Chương 3 phân loại mạng nơron nhân tạo và cách thức tạo mạng nơron nhiều lớp

1 phân loại mạng nơron nhân tạo

Trang 23

3.2 Feed Forward Networks

Mạng chuyển tiếp nguồn cấp dữ liệu :bao gồm nhiều nơ-ron và các lớp ẩn được kết nối với nhau Chúng được gọi là "lan truyền tiến" bởi vì luồng dữ liệu chỉ theo hướng thuận và không có truyền ngược Các lớp ẩn có thể không nhất thiết phải có trong mạng tùy thuộc vào ứng dụng

Cácht thức hoạt động:

Số lượng lớp nhiều hơn có thể là sự tùy chỉnh của trọng lượng Và do đó, nhiều hơn nữa sẽ là khả năng học hỏi của mạng Trọng số không được cập nhật vì không có sự nhân giống Đầu ra của phép nhân trọng lượng với các đầu vào được đưa đến hàm kích hoạt hoạt động như một giá trị ngưỡng

3.3 Multi-Layer Perceptron

Thiếu sót chính của Feed Forward Networks là không có khả năng học hỏi với việc lan truyền ngược Perceptron nhiều lớp là mạng nơron kết hợp nhiều lớp ẩn và các chức năng kích hoạt Việc học tập có giám sát trong đó các trọng số được cập nhật bằng phương tiện Gradient Descent

Cách thức hoạt động

7

Trang 24

Perceptron nhiều lớp là hai hướng, tức là, truyền về phía trước của các đầu vào và lan truyền ngược của các cập nhật trọng lượng Các chức năng kích hoạt có thể được thay đổi đối với loại mục tiêu Softmax thường được sử dụng để phân loại nhiều lớp, Sigmoid để phân loại nhị phân, v.v Chúng còn được gọi là mạng dày đặc bởi vì tất cả các nơ-ron trong một lớp được kết nối với tất cả các nơ-ron trong lớp tiếp theo.

3.4 Radial Based Networks

Radial Based Networks(RBN) sử dụng một cách hoàn toàn khác để dự đoán rakết quả Nó bao gồm một lớp đầu vào, một lớp với các nơron RBF và một đầu ra Cácnơron RBF lưu trữ các lớp thực tế cho mỗi cá thể dữ liệu huấn luyện RBN khác với perceptron nhiều lớp thông thường vì Hàm Radial được sử dụng như một hàm kích hoạt

Cách thức hoạt động:

Khi dữ liệu mới được đưa vào mạng nơ-ron, các nơ-ron RBF sẽ so sánh

khoảng cách euclid của các giá trị đặc trưng với các lớp thực tế được lưu trữ trong các nơ-ron Điều này tương tự như việc tìm kiếm cụm nào thuộc về cá thể cụ

thể Lớp mà khoảng cách là tối thiểu được chỉ định là lớp dự đoán

8

Trang 25

Note: khoảng các Euclid là khoảng cách giữa 2 điểm của không gian trên đồ thị có thể hiểu đó là độ dài của đường thẳng nối 2 điểm đó

3.5 Convolutional Neural Networks

Khi nói đến phân loại hình ảnh, mạng nơ-ron được sử dụng nhiều nhất là Mạng nơ-ron Convolution (CNN) CNN chứa nhiều lớp chập có trách nhiệm trích xuấtcác tính năng quan trọng từ hình ảnh Các lớp trước chịu trách nhiệm cho các chi tiếtcấp thấp và các lớp sau chịu trách nhiệm cho các tính năng cấp cao hơn

Phép toán Convolution sử dụng một ma trận tùy chỉnh, còn được gọi là bộ lọc, để tạo phức hợp trên hình ảnh đầu vào và tạo bản đồ Các bộ lọc này được khởi tạo một cách ngẫu nhiên và sau đó được cập nhật thông qua nhân giống ngược Một

ví dụ về bộ lọc như vậy là Canny Edge Detector, được sử dụng để tìm các cạnh trong bất kỳ hình ảnh nào

Sau lớp tích chập, có một lớp tổng hợp chịu trách nhiệm tổng hợp các bản đồ được tạo ra từ lớp tích chập Nó có thể là Max Pooling, Min Pooling, v.v Để chính quy hóa, CNN cũng bao gồm một tùy chọn để thêm các lớp bỏ lớp làm giảm hoặc làm cho các tế bào thần kinh nhất định không hoạt động để giảm quá mức và hội tụ nhanh hơn

Cách thức hoạt động:

CNNs sử dụng ReLU (Đơn vị tuyến tính chỉnh lưu) làm chức năng kích hoạt trong các lớp ẩn Là lớp cuối cùng, các CNN có một lớp dày đặc được kết nối đầy đủ

9

Trang 26

và chức năng kích hoạt chủ yếu là Softmax để phân loại và chủ yếu là ReLU để hồi quy.

3.6 Recurrent Neural Networks

Mạng thần kinh lặp lại đi vào hình ảnh khi có nhu cầu dự đoán bằng cách sử dụng dữ liệu tuần tự Dữ liệu tuần tự có thể là một chuỗi hình ảnh, từ, v.v RNN có cấu trúc tương tự như cấu trúc của Feed Forward Network nguồn cấp dữ liệu, ngoạitrừ việc các lớp cũng nhận được đầu vào bị trễ thời gian của dự đoán phiên bản trước đó Dự đoán này được lưu trữ trong ô RNN đó là đầu vào thứ hai cho mọi dự đoán

3.7 Long Short-Term Memory Networks

mạng nơ-ron LSTM khắc phục vấn đề Vanishing Gradient trong RNN bằng cách thêm một ô nhớ đặc biệt có thể lưu trữ thông tin trong thời gian dài LSTM sử

10

Trang 27

dụng các cổng để xác định đầu ra nào nên được sử dụng hoặc bỏ quên Nó sử dụng

3 cổng: input, output và forget Cổng vào kiểm soát tất cả dữ liệu sẽ được lưu trong

bộ nhớ Cổng đầu ra kiểm soát dữ liệu được cung cấp cho lớp tiếp theo và cổng quên kiểm soát thời điểm kết xuất / quên dữ liệu không cần thiết

3.8 các bài toán với mạng nơron

đối với mô hình nơron được chia thành 2 loại :

+học có giám sát(supervised): đối với mô hình học có giám sát tức là ta có thể kiểm tra giữa kết quả dự đoán và kết quả thực tế các kết quả thực tế có thể là target trong tập dữ liệu hoặc labels trong bài toán xữ lí ảnh

Các bài toán trên mô hình học có giám sát : các bài toán về phân lớp,các bài toán

về quy hồi , vv…

+học không giám sát (unsupervised): đối với mô hình học không giám sát ta không thể biết được kết quả cũng không thể so sánh được kết quả đối với cách học này tập dữ liệu đầu vào được thu thập học không giám xác đối xử với các biến đầu vào như 1 tập các biến ngẫu nhiên Sau đó, khởi tạo mô hình mật độ thích hợp để xây dựng

Các bài toán trên mô hình học không giám sát: các bài toán về phân cụm,các bài toán về kết hợp

+học bán giám sát (semi-supervised):khi tập dữ liệu bạn có quá lớn nhưng chỉ có

1 phân tập dữ liệu được gán nhãn được gọi là semi-supervised những bài toán

về thuật toán này nằm giữ 2 thuật toán nêu trên

+học tăng cường Reinforcement Learning là bài toán xác định hành vi giúp chủ thể hành động dựa trên hoàn cảnh để đạt được lợi ích cao nhất hiện tại thuật toán được áp dụng nhiều cùng với lý thuyết trò chơi (game theory)

2 cách thức khởi tạo 1 mạng nơron nhiều lớp

3.1 các thành phần của 1 mạng nơron

- 1 mạng nơron bao gồm 3 thành phần chính

11

Ngày đăng: 28/10/2022, 09:11

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w