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

ĐỒ ÁN CƠ SỞ Tìm hiểu RCNN ứng dụng phát hiện có xe hơi trên đường

27 29 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

Tiêu đề Tìm hiểu R-CNN ứng dụng phát hiện có xe hơi trên đường
Tác giả Hoàng Quốc Hải
Người hướng dẫn Th.S Vương Xuân Chí
Trường học Trường Đại học Nguyễn Tất Thành
Chuyên ngành Khoa học Dữ liệu
Thể loại đồ án cơ sở
Năm xuất bản 2022
Thành phố TP.HCM
Định dạng
Số trang 27
Dung lượng 1,61 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 ĐỒ ÁN CƠ SỞ Tìm hiểu R CNN ứng dụng phát hiện có xe hơi trên đường Giảng viên hướng dẫn Th S Vương Xuân Chí Sinh viên th. Chương 1 Giới thiệu Artificial Intelligence, Machine learning, Deep learning 1.1 Artificial Intelligence Kể từ khi phát minh ra máy tính hoặc máy móc, khả năng thực hiện các nhiệm vụ khác nhau của họ đã tăng lên theo cấp số nhân. Con người đã phát triển sức mạnh của hệ thống máy tính về các lĩnh vực làm việc đa dạng, tốc độ ngày càng tăng và giảm kích thước theo thời gian. Một nhánh của Khoa học Máy tính có tên Trí tuệ nhân tạo theo đuổi việc tạo ra các máy tính hoặc máy móc thông minh như con người. 1.1.1 AI Trí tuệ nhân tạo là gì? Theo cha đẻ của Trí tuệ nhân tạo, John McCarthy, đó là “Khoa học và kỹ thuật tạo ra các máy thông minh, đặc biệt là các chương trình máy tính thông minh”. Trí tuệ nhân tạo là một cách làm cho một máy tính, một robot điều khiển bằng máy tính hoặc một phần mềm suy nghĩ một cách thông minh, theo cách tương tự như suy nghĩ của con người thông minh. AI được hoàn thiện bằng cách nghiên cứu cách bộ não con người suy nghĩ và cách con người học, quyết định và làm việc trong khi cố gắng giải quyết một vấn đề, sau đó sử dụng kết quả của nghiên cứu này làm cơ sở phát triển phần mềm và hệ thống thông minh. 1.1.2 Triết lý về AI Trong khi khai thác sức mạnh của hệ thống máy tính, sự tò mò của con người khiến anh ta tự hỏi, “Liệu một cỗ máy có thể suy nghĩ và hành xử như con người không?” Do đó, sự phát triển của AI bắt đầu với ý định tạo ra trí thông minh tương tự trong các máy móc mà chúng ta tìm thấy và đánh giá cao ở con người. 1.1.3 Mục tiêu của AI Tạo ra hệ thống Chuyên gia: Hệ thống thể hiện hành vi thông minh, học hỏi, chứng minh, giải thích và tư vấn cho người dùng của nó.

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

ĐỒ ÁN CƠ SỞ

Tìm hiểu R-CNN ứng dụng phát hiện có xe hơi trên đường

Giảng viên hướng dẫn: Th.S Vương Xuân Chí

Sinh viên thực hiện: Hoàng Quốc Hải

Trang 2

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

Trang 3

Trường Đại học Nguyễn Tất Thành

Khoa Công Nghệ Thông Tin

🙜🙜🙜🙜

CỘNG HÒA XÃ HỘI CHỦ NGHĨA

VIỆT NAM Độc lập – Tự do – Hạnh phúc

🙜🙜🙜🙜

NHIỆM VỤ ĐỒ ÁN CHUYÊN

NGÀNH/CƠ SỞ

(Sinh viên phải đóng tờ này vào báo cáo)

Họ và tên: Hoàng Quốc Hải

Tên đề tài: Tìm hiểu R-CNN ứng dụng

phát hiện có xe hơi trên đường.

Giá viên hướng dẫn: Vương Xuân Chí

Thời gian thực hiện: 20/6/2022 đến

20/9/2022

MÔ TẢ ĐỀ TÀI:

Deep Learning là một nhánh của Machine

Learning sử dụng mạng lưới thần kinh với

nhiều lớp Một mạng lưới thần kinh sâu

phân tích dữ liệu với các biểu diễn đã học

tương tự như cách một người nhìn vào một

vấn đề.

NỘI DUNG VÀ PHƯƠNG PHÁP:

- Giới thiệu học sâu Deep learning,

các phương pháp tiếp cận học máy

Machine learning

- R-CNN sử dụng Selective Search để

extract các regions từ image đầu vào

và check sự xuất hiện bất kì của

object, tìm ra các specific features

để detect ra các objects.

- Đưa ra ý tưởng để xây dựng ứng

dụng phát hiện có xe hơi trên đường.

- Kết luận

YÊU CẦU:

- Có kiến thức, đam mê, hiểu biết về công nghệ mới như Mạng neural, Machine Learning, Deep

Learning… Đọc hiểu tài liệu tiếng Anh, kỹ năng trình bày văn bản trên máy tính tốt.

- Có tác phong làm việc chăm chỉ, tinh thần trách nhiệm cao, có khả năng làm việc độc lập hoặc làm việc trong nhóm tốt.

Nội dung và yêu cầu đã được thông qua

Bộ môn.

Q TRƯỞNG BỘ MÔN

(Ký và ghi rõ họ tên)

ThS Vương Xuân Chí

TP.HCM, ngày 26 tháng 06 năm 2022

GIÁO VIÊN HƯỚNG DẪN

(Ký và ghi rõ họ tên)

ThS Vương Xuân Chí

Trang 4

LỜI CẢM ƠN

Lời đầu tiên, xin gửi lời cảm ơn đếngia đình em, gia đình luôn tạo điềukiện, động lực quý báu cho em trongquá trình học tập cũng như hoànthành bài báo cáo này

Tiếp theo, xin gửi đến lòng biết ơnsâu sắc đến giảng viên Vương XuânChí ở Khoa CNTT Trường Đại họcNguyễn Thành người đã hướng dẫn,giúp đỡ em trong quá trình hoàn thiệnbài báo cáo này

Trang 5

LỜI MỞI ĐẦU

Với sự phát triển của xã hội hiện đại,

AI – Artifical Intelligence Trí tuệnhân tạo không còn gì xa lạ với mỗichúng ta Chúng đang hiện diện phổbiến trong mọi lĩnh vực trong cuộcsống của chúng ta, từ kinh tế, giáodục, y khoa, giải trí và ngay cả trongquân sự quốc phòng của các quốc gia.Theo đó, sự bùng nổ của dữ liệu lớnBig Data giúp cho việc khai thác và

sử dụng chúng trở nên phổ biến và dễdàng hơn Các phần cứng để sử dụngcho mục đích phát triển ứng dụng liênquan đến AI ngày càng rẻ và hiệunăng năng tốt hơn góp phần phổ biếnđến người dùng Từ đó bất kỳ ai cũng

có thể sáng tạo, tham gia phát triểncác AI phục vụ con người trong mọilĩnh vực

Trang 7

MỤC LỤC

Chương 1 Giới thiệu Artificial

Intelligence, Machine learning, Deep

DANH MỤC BẢNG HÌNH

Hình 1 Những đóng góp của AIHình 2 Machine Learning là gì?Hình 3 Quy trình học máyHình 4 Supervised LearningHình 5 Unsupervised LearningHình 6 Các vấn đề giải quyết bằng học máy

Hình 7 Trí tuệ nhân tạo so với Học máy và Học sâu

Hình 8 Các thành phần mạng thần kinh nhân tạo

Hình 9 Kiến trúc Deep neural network

Hình 10 Forward propagation in neural networks

Hình 11 Convolutional Neural Networks

Hình 12 The Recurrent Neural Networks architecture

Hình 13 Generative adversarial networks

Hình 14 Transformer Neural Networks

Hình 15 R-CNN

Trang 8

Chương 1 Giới thiệu Artificial Intelligence, Machine learning, Deep learning

1.1 Artificial Intelligence

Kể từ khi phát minh ra máy tính hoặc máy móc, khả năng thực hiện các nhiệm vụkhác nhau của họ đã tăng lên theo cấp số nhân Con người đã phát triển sức mạnhcủa hệ thống máy tính về các lĩnh vực làm việc đa dạng, tốc độ ngày càng tăng vàgiảm kích thước theo thời gian

Một nhánh của Khoa học Máy tính có tên Trí tuệ nhân tạo theo đuổi việc tạo ra cácmáy tính hoặc máy móc thông minh như con người

1.1.1 AI - Trí tuệ nhân tạo là gì?

Theo cha đẻ của Trí tuệ nhân tạo, John McCarthy, đó là “Khoa học và kỹ thuật tạo ra các máy thông minh, đặc biệt là các chương trình máy tính thông minh”.

Trí tuệ nhân tạo là một cách làm cho một máy tính, một robot điều khiển bằng máy tính hoặc một phần mềm suy nghĩ một cách thông minh, theo cách tương tự như suy nghĩ của con người thông minh

AI được hoàn thiện bằng cách nghiên cứu cách bộ não con người suy nghĩ và cách con người học, quyết định và làm việc trong khi cố gắng giải quyết một vấn đề, sau đó sử dụng kết quả của nghiên cứu này làm cơ sở phát triển phần mềm và hệ thống thông minh

1.1.2 Triết lý về AI

Trong khi khai thác sức mạnh của hệ thống máy tính, sự tò mò của con người khiến anh ta tự hỏi, “Liệu một cỗ máy có thể suy nghĩ và hành xử như con người không?”

Do đó, sự phát triển của AI bắt đầu với ý định tạo ra trí thông minh tương tự trong các máy móc mà chúng ta tìm thấy và đánh giá cao ở con người

1.1.3 Mục tiêu của AI

Tạo ra hệ thống Chuyên gia: Hệ thống thể hiện hành vi thông minh, học hỏi, chứng minh, giải thích và tư vấn cho người dùng của nó

Trang 9

Để triển khai trí thông minh của con người trong máy móc: Tạo ra các hệ thống hiểu, suy nghĩ, học hỏi và hành xử như con người.

1.1.4 Những đóng góp của AI

Trí tuệ nhân tạo là một ngành khoa học và công nghệ dựa trên các ngành như Khoa học máy tính, Sinh học, Tâm lý học, Ngôn ngữ học, Toán học và Kỹ thuật Mộtlực đẩy chính của AI là phát triển các chức năng máy tính liên quan đến trí thông minh của con người, chẳng hạn như lý luận, học tập và giải quyết vấn đề

Trong số các lĩnh vực sau, một hoặc nhiều lĩnh vực có thể góp phần xây dựng một hệ thống thông minh

1.1.5 Các loại AI

- Purely Reactive: Những máy này không có bất kỳ bộ nhớ hoặc dữ liệu nào để làm việc, chỉ chuyên về một lĩnh vực công việc Ví dụ, trong một trò

H

Trang 10

chơi cờ vua, máy quan sát các nước đi và đưa ra quyết định tốt nhất có thể

- Self-Aware: Máy móc tự nhận thức là thế hệ tương lai của những công nghệ mới này Chúng sẽ thông minh, có tri giác và có ý thức

1.1.6 Ứng dụng của AI

Gaming: AI đóng vai trò quan trọng trong các trò chơi chiến lược như cờ vua, poker, tic-tac-toe, v.v., nơi máy có thể nghĩ ra một số lượng lớn các vị trí có thể dựa trên kiến thức kinh nghiệm

Natural Language Processing: Có thể tương tác với máy tính để hiểu ngôn ngữ

tự nhiên của con người

Expert Systems: Hệ thống chuyên gia - Có một số ứng dụng tích hợp máy móc, phần mềm và thông tin đặc biệt để truyền đạt lý luận và tư vấn Họ cung cấp lời giải thích và lời khuyên cho người dùng

Vision Systems: Các hệ thống này hiểu, diễn giải và lĩnh hội đầu vào trực quantrên máy tính Ví dụ:

- Các bác sĩ sử dụng hệ thống chuyên gia lâm sàng để chẩn đoán cho bệnh nhân

- Cảnh sát sử dụng phần mềm máy tính có thể nhận dạng khuôn mặt của tội phạm với bức chân dung được lưu trữ do nghệ sĩ pháp y thực hiện

Speech Recognition: Một số hệ thống thông minh có khả năng nghe và hiểu ngôn ngữ dưới dạng câu và ý nghĩa của chúng trong khi con người nói chuyện với nó

Nó có thể xử lý các trọng âm khác nhau, từ lóng, tiếng ồn trong nền, thay đổi tiếng ồncủa con người do lạnh, v.v

Trang 11

Handwriting Recognition: Phần mềm nhận dạng chữ viết tay đọc văn bản đượcviết trên giấy bằng bút hoặc trên màn hình bằng bút cảm ứng Nó có thể nhận ra hình dạng của các chữ cái và chuyển nó thành văn bản có thể chỉnh sửa.

Intelligent Robots: Robot có thể thực hiện các nhiệm vụ do con người giao Chúng có các cảm biến để phát hiện dữ liệu vật lý từ thế giới thực như ánh sáng, sức nóng, nhiệt độ, chuyển động, âm thanh, va đập và áp suất Chúng có bộ xử lý hiệu quả, nhiều cảm biến và bộ nhớ khổng lồ, để thể hiện trí thông minh Ngoài ra, họ có khả năng học hỏi từ những sai lầm của mình và họ có thể thích nghi với môi trường mới

1.1.7 Trí tuệ nhân tạo hoạt động như thế nào?

Nói một cách đơn giản, các hệ thống AI hoạt động bằng cách hợp nhất lớn với các thuật toán xử lý thông minh, lặp đi lặp lại Sự kết hợp này cho phép AI học hỏi từ các mẫu và tính năng trong dữ liệu được phân tích Mỗi khi hệ thống Trí tuệ nhân tạo thực hiện một vòng xử lý dữ liệu, nó sẽ kiểm tra và đo lường hiệu suất của nó và sử dụng kết quả để phát triển thêm kiến thức chuyên môn

1.1.8 Các cách triển khai AI

Học máy - Machine Learning: Đó là học máy cung cấp cho AI khả năng học hỏi.Điều này được thực hiện bằng cách sử dụng các thuật toán để khám phá các mẫu

và tạo ra thông tin chi tiết từ dữ liệu mà chúng được tiếp xúc

Học sâu - Deep Learning: Học sâu, là một nhanh con của học máy, cung cấp cho AIkhả năng bắt chước mạng thần kinh của não người Nó có thể tạo ra cảm giác vềcác mẫu, nhiễu và các nguồn gây nhầm lẫn trong dữ liệu

1.2 Machine learning

1.2.1 Machine Learning là gì?

Nói một cách dễ hiểu, Học máy là một nhánh con của Trí tuệ nhân tạo (AI) cungcấp cho máy móc khả năng học hỏi tự động và cải thiện từ kinh nghiệm mà khôngcần được lập trình rõ ràng để làm như vậy Theo nghĩa, đó là việc thực hành đểMáy móc giải quyết vấn đề bằng cách đạt được khả năng suy nghĩ

Trang 12

Hình 2 Machine Learning là gì?

1.2.2 Một số định nghĩa

Algorithm: Thuật toán Học máy là một tập hợp các quy tắc và kỹ thuật thống kêđược sử dụng để học các mẫu từ dữ liệu và rút ra thông tin quan trọng từ nó Đó làlogic đằng sau một mô hình Học máy Một ví dụ về thuật toán Học máy là thuậttoán Hồi quy tuyến tính

Model: Mô hình là thành phần chính của Học máy Một mô hình được đào tạobằng cách sử dụng Thuật toán học máy Một thuật toán ánh xạ tất cả các quyếtđịnh mà một mô hình phải thực hiện dựa trên đầu vào đã cho, để có được đầu rachính xác

Predictor Variable: Là (các) đặc điểm của dữ liệu có thể được sử dụng để dựđoán kết quả đầu ra

Response Variable: Là tính năng hoặc biến đầu ra cần được dự đoán bằng cách

sử dụng (các) biến dự đoán

Training Data: Mô hình Học máy được xây dựng bằng cách sử dụng dữ liệu đàotạo Dữ liệu đào tạo giúp mô hình xác định các xu hướng chính và các mẫu cầnthiết để dự đoán kết quả đầu ra

Testing Data: Sau khi mô hình được đào tạo, nó phải được kiểm tra để đánh giámức độ chính xác của nó có thể dự đoán một kết quả Điều này được thực hiệnbởi tập dữ liệu thử nghiệm

Trang 13

1.2.3 Quy trình học máy

Hình 3 Quy trình học máy

1. Thu thập dữ liệu: Thu thập dữ liệu mà thuật toán sẽ học từ đó.

2. Chuẩn bị dữ liệu: Định dạng và thiết kế dữ liệu thành định dạng tối ưu,

trích xuất các tính năng quan trọng và thực hiện giảm kích thước

3. Huấn luyện: Còn được gọi là giai đoạn lắp ráp, đây là nơi thuật toán Học

máy thực sự học bằng cách hiển thị cho nó dữ liệu đã được thu thập vàchuẩn bị

4. Đánh giá: Kiểm tra mô hình để xem nó hoạt động tốt như thế nào

5. Điều chỉnh: Tinh chỉnh mô hình để tối đa hóa hiệu suất của nó.

1.2.4 Các loại học máy

Supervised Learning

Học tập có giám sát là một kỹ thuật trong đó chúng ta dạy hoặc đào tạo máy bằngcách sử dụng dữ liệu được gắn nhãn rõ ràng

Trang 14

Hình 4 Supervised Learning

Hãy xem xét hình trên Ở đây chúng ta đang cung cấp cho máy các hình ảnh Tom vàJerry và mục đích là để máy xác định và phân loại các hình ảnh thành hai nhóm(hình ảnh Tom và hình ảnh Jerry) Tập dữ liệu đào tạo được cung cấp cho mô hìnhđược gắn nhãn, như trong, chúng ta đang nói với máy, 'đây là hình dáng của Tom

và đây là Jerry' Làm như vậy, bạn đang đào tạo máy bằng cách sử dụng dữ liệuđược gắn nhãn Trong Học tập có giám sát, có một giai đoạn đào tạo được xácđịnh rõ được thực hiện với sự trợ giúp của dữ liệu được gắn nhãn

Unsupervised Learning

Học không giám sát liên quan đến việc đào tạo bằng cách sử dụng dữ liệu khôngđược gắn nhãn và cho phép mô hình hoạt động trên thông tin đó mà không cầnhướng dẫn

Hình 5 Unsupervised Learning

Trang 15

Ví dụ: nó xác định các đặc điểm nổi bật của Tom như tai nhọn, kích thước lớnhơn, v.v., để hiểu rằng hình ảnh này thuộc loại 1 Tương tự, nó tìm thấy các đặcđiểm như vậy ở Jerry và biết rằng hình ảnh này thuộc loại 2 Do đó, nó phân loạicác hình ảnh thành hai lớp khác nhau mà không cần biết Tom hay Jerry là ai.

Reinforcement Learning

Học tăng cường là một phần của Học máy trong đó tác nhân được đưa vào mộtmôi trường và anh ta học cách cư xử trong môi trường này bằng cách thực hiệnmột số hành động nhất định và quan sát phần thưởng mà nó nhận được từ nhữnghành động đó

Học tăng cường chủ yếu được sử dụng trong các lĩnh vực Học máy nâng cao như

ô tô tự lái, AplhaGo, v.v

1.2.5 Các vấn đề giải quyết bằng học máy

Hình 6 Các vấn đề giải quyết bằng học máy

Hãy xem xét hình trên, có ba dạng vấn đề chính có thể được giải quyết trong Họcmáy:

1. Regression - Hồi quy: Trong dạng bài toán này, đầu ra là một đại lượng

liên tục Vì vậy, ví dụ, nếu bạn muốn dự đoán tốc độ của một chiếc ô tôtrong quãng đường, đó là một bài toán Hồi quy Các vấn đề hồi quy có thể

Trang 16

được giải quyết bằng cách sử dụng các thuật toán Học có Giám sát như Hồiquy Tuyến tính - Linear Regression.

2. Classification - Phân loại: Trong loại này, đầu ra là một giá trị phân

loại Phân loại email thành hai lớp, spam và không spam là một vấn đề phânloại có thể được giải quyết bằng cách sử dụng các thuật toán phân loạiSupervised Learning như Support Vector Machines, Naive Bayes, LogisticRegression, K Nearest Neighbor, v.v

3. Clustering - Phân cụm: Loại vấn đề này liên quan đến việc gán đầu vào

thành hai hoặc nhiều cụm dựa trên sự giống nhau về tính năng Ví dụ: nhómngười xem thành các nhóm tương tự dựa trên sở thích, độ tuổi, địa lý, v.v.của họ có thể được thực hiện bằng cách sử dụng thuật toán Học khônggiám sát như K-Means Clustering

1.3 Deep learning

1.3.1 Deep Learning là gì?

Deep Learning (học sâu) có thể được xem là một lĩnh vực con của MachineLearning (học máy) – ở đó các máy tính sẽ học và cải thiện chính nó thông qua cácthuật toán Deep Learning được xây dựng dựa trên các khái niệm phức tạp hơn rấtnhiều, chủ yếu hoạt động với các mạng nơ-ron nhân tạo để bắt chước khả năng

tư duy và suy nghĩ của bộ não con người

Các mô hình học sâu hiện đại sử dụng mạng nơ-ron nhân tạo hoặc đơn giản làmạng nơ-ron để trích xuất thông tin

Các mạng nơ-ron này được tạo thành từ một hàm toán học đơn giản có thể xếpchồng lên nhau và sắp xếp dưới dạng các lớp, tạo cho chúng cảm giác về chiều

sâu, do đó có thuật ngữ Deep Learning.

Học sâu cũng có thể được coi là một phương pháp tiếp cận Trí tuệ nhân tạo, một

sự kết hợp thông minh giữa phần cứng và phần mềm để giải quyết các công việcđòi hỏi trí tuệ con người

Trang 17

Hình 7 Trí tuệ nhân tạo so với Học máy và Học sâu

1.3.2 Neural Networks

Mạng lưới thần kinh là trung tâm của các mô hình học sâu và ban đầu nó đượcthiết kế để bắt chước hoạt động của các tế bào thần kinh trong não người

Trang 18

Hình 8 Các thành phần mạng thần kinh nhân tạo

1.3.3 Deep Learning hoạt động như thế nào?

Mạng thần kinh sâu có nhiều lớp nơ-ron nhân tạo được kết nối với nhau hoặc cácnút được xếp chồng lên nhau Mỗi nút này có một hàm toán học đơn giản thường

là một hàm tuyến tính thực hiện việc trích xuất và ánh xạ thông tin

Có ba lớp đối với một mạng nơ-ron sâu: lớp đầu vào (Input Layer), lớp ẩn (HiddenLayer) và lớp đầu ra (Output Layer)

Trang 19

Hình 9 Kiến trúc Deep neural network

Mỗi nút trong lớp đầu vào sẽ nhập dữ liệu và chuyển nó sang lớp tiếp theo, tức làcác lớp ẩn Các lớp ẩn này ngày càng trích xuất các tính năng từ lớp đầu vào đã cho

và biến đổi nó bằng cách sử dụng hàm tuyến tính

Các lớp này được gọi là các lớp ẩn vì các tham số - parameter (trọng số - weight và

độ lệch - bias) trong mỗi nút là không xác định; các lớp này thêm các tham số ngẫunhiên để biến đổi dữ liệu, mỗi tham số sẽ cho kết quả đầu ra khác nhau

Kết quả thu được từ các lớp ẩn sau đó được chuyển đến lớp cuối cùng được gọi

là lớp đầu ra, nơi tùy thuộc vào nhiệm vụ, nó phân loại, dự đoán hoặc tạo mẫu.Quá trình này được gọi là quá trình chuyển tiếp - forward propagation

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

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