1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Báo cáo cuối kì Đề tài nhận dạng và phân loại trái cây

34 10 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Nhận dạng và phân loại trái cây
Tác giả Võ Công Vinh, Lê Viết An
Người hướng dẫn Vũ Quang Huy
Trường học Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh
Chuyên ngành Khoa Kinh Tế
Thể loại Báo cáo cuối kì
Năm xuất bản 2024
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 34
Dung lượng 911,49 KB

Nội dung

F1-Chương 2 Cơ Sở Lý Thuyết Thuật toán được sử dụng trong đề tài 1 .Giới thiệu về CNN Convolutional Neural Network Convolutional Neural Network CNN là một loại mạng nơ-ron sâu được thiết

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HỒ CHÍ MINH

KHOA KINH TẾ

BÁO CÁO CUỐI KÌ

ĐỀ TÀI:

NHẬN DẠNG VÀ PHÂN LOẠI TRÁI CÂY

Giảng viên hướng dẫn: Vũ Quang Huy Sinh viên thực hiện : Võ Công Vinh MSSV 21146536

Lê Viết An MSSV 21146422

Lớp : 21146CL04 Khóa : 2021

Hệ : Đào Tạo Chất Lượng Cao

Trang 2

Thành phố Hồ Chí Minh, tháng 5 năm 2024

Trang 3

Chương 1 Giới Thiệu Tổng Quan.

1 Giới thiệu

Trong lĩnh vực nông nghiệp và thương mại, việc tự động hóa quá trình nhận dạng và phân loại trái cây là một nhu cầu cấp thiết để nâng cao hiệu suất và giảm thiểu chi phí Học máy (Machine Learning) đã chứng minh khả năng vượt trội trong việc giải quyết các bài toán phân loại hình ảnh Đề tài này sẽ tập trung vào việc xây dựng một mô hình nhận dạng và phân loại trái cây sử dụng các thuật toán học máy

2 Mục tiêu

 Phát triển một mô hình học máy có khả năng nhận dạng và phân loại các loại trái cây khác nhau từ hình ảnh

 So sánh hiệu suất giữa các thuật toán học máy truyền thống và các phương pháp học sâu

 Triển khai mô hình để ứng dụng vào các tình huống thực tế như kiểm tra chất lượng và phân loại trái cây trong chuỗi cung ứng

 Thay đổi kích thước hình ảnh để đồng nhất kích thước đầu vào

 Chuẩn hóa giá trị pixel để giúp mô hình học hiệu quả hơn

 Áp dụng các kỹ thuật tăng cường dữ liệu như xoay, lật, và thay đổi độ sáng

3.3 Lựa chọn và xây dựng mô hình

SVM (Support Vector Machines): Sử dụng SVM với kernel thích hợp để phân loại hình

ảnh trái cây

KNN (K-Nearest Neighbors): Sử dụng KNN để phân loại dựa trên khoảng cách giữa

các điểm dữ liệu

Decision Trees và Random Forests: Xây dựng cây quyết định và sử dụng Random

Forests để cải thiện độ chính xác

Naive Bayes: Áp dụng Naive Bayes cho bài toán phân loại với các đặc trưng đơn giản.

3.4 Trích xuất đặc trưng

SIFT (Scale-Invariant Feature Transform) và SURF (Speeded-Up Robust Features):

Trích xuất các đặc trưng mạnh mẽ từ hình ảnh để sử dụng trong các thuật toán học máy

Trang 4

HOG (Histogram of Oriented Gradients): Trích xuất các đặc trưng liên quan đến

gradient hướng trong hình ảnh

3.5 Huấn luyện và tinh chỉnh mô hình

 Chia tập dữ liệu thành các phần huấn luyện và kiểm thử

 Sử dụng các phương pháp tối ưu hóa như Grid Search hoặc Random Search để tìm các siêu tham số tốt nhất cho các thuật toán

 Đánh giá hiệu suất của mô hình bằng các chỉ số như accuracy, precision, recall và score

F1-Chương 2 Cơ Sở Lý Thuyết

Thuật toán được sử dụng trong đề tài

1 Giới thiệu về CNN (Convolutional Neural Network)

Convolutional Neural Network (CNN) là một loại mạng nơ-ron sâu được thiết kế đặc biệt để xử

lý dữ liệu có cấu trúc lưới, chẳng hạn như hình ảnh CNN được lấy cảm hứng từ cơ chế hoạt động của hệ thống thị giác ở động vật Một CNN bao gồm các lớp chính như lớp tích chập (convolutional layer), lớp pooling (pooling layer), và lớp fully connected (fully connected layer)

Ưu điểm của CNN

Trang 5

1 Tự động trích xuất đặc trưng: CNN có khả năng tự động học và trích xuất các đặc

trưng từ dữ liệu đầu vào mà không cần sự can thiệp của con người Điều này giúp giảm thiểu thời gian và công sức so với các phương pháp truyền thống

2 Giảm số lượng tham số: Thông qua việc sử dụng các lớp tích chập và pooling, CNN

giảm số lượng tham số cần học, giúp tránh hiện tượng overfitting

3 Khả năng tái sử dụng trọng số: Các kernel (bộ lọc) trong các lớp tích chập được sử

dụng để xử lý toàn bộ hình ảnh, giúp giảm thiểu số lượng tham số và cải thiện khả năng tổng quát hóa

4 Phù hợp với dữ liệu lớn: CNN hoạt động hiệu quả với các tập dữ liệu lớn và phức tạp,

đặc biệt là trong lĩnh vực xử lý hình ảnh và video

Nhược điểm của CNN

1 Yêu cầu tài nguyên tính toán cao: Việc huấn luyện CNN đòi hỏi nhiều tài nguyên tính

toán, bao gồm GPU và bộ nhớ lớn

2 Thời gian huấn luyện lâu: Huấn luyện các mô hình CNN lớn có thể mất nhiều thời gian,

đặc biệt là với các tập dữ liệu lớn

3 Khó khăn trong việc giải thích: Mặc dù CNN có khả năng học tốt, nhưng việc giải thích

tại sao nó đưa ra quyết định cụ thể là một thách thức

4 Cần nhiều dữ liệu gắn nhãn: Để đạt được hiệu suất cao, CNN thường cần một lượng

lớn dữ liệu gắn nhãn, điều này có thể khó khăn và tốn kém để thu thập

Ứng dụng của CNN

1 Nhận diện và phân loại hình ảnh: CNN được sử dụng rộng rãi trong nhận diện đối

tượng, phân loại hình ảnh và nhận diện khuôn mặt

2 Phân đoạn ảnh (Image Segmentation): CNN giúp chia hình ảnh thành các phần khác

nhau, chẳng hạn như trong ứng dụng y tế để phân đoạn các mô và cơ quan

3 Nhận diện văn bản trong hình ảnh (OCR): CNN được sử dụng để nhận diện ký tự và

văn bản trong hình ảnh và tài liệu

4 Xử lý video: CNN có thể áp dụng cho các nhiệm vụ như nhận diện hành động trong

video và phân tích nội dung video

5 Phát hiện dị thường: CNN được sử dụng để phát hiện các đối tượng hoặc hành vi bất

thường trong các hệ thống an ninh và giám sát

6 Xe tự hành: CNN đóng vai trò quan trọng trong việc nhận diện làn đường, biển báo giao

thông và các đối tượng khác trong môi trường xung quanh

2 Giới thiệu về Linear Regression

Linear Regression (Hồi quy tuyến tính) là một thuật toán học máy cơ bản được sử dụng để mô hình hóa mối quan hệ giữa một biến phụ thuộc (y) và một hoặc nhiều biến độc lập (X) Mục tiêu của hồi quy tuyến tính là tìm ra một đường thẳng (hoặc mặt phẳng trong trường hợp đa biến) phùhợp nhất với dữ liệu Phương trình tổng quát của hồi quy tuyến tính đơn giản là:

Trang 6

Ưu điểm của Linear Regression

1 Đơn giản và dễ hiểu: Hồi quy tuyến tính là một trong những thuật toán dễ hiểu và dễ

triển khai nhất Nó cung cấp một cách tiếp cận rõ ràng và trực quan để mô hình hóa mối quan hệ giữa các biến

2 Tính tuyến tính và dễ diễn giải: Kết quả từ hồi quy tuyến tính dễ diễn giải vì các tham

số của mô hình trực tiếp biểu diễn ảnh hưởng của từng biến độc lập lên biến phụ thuộc

3 Tính toán hiệu quả: Hồi quy tuyến tính có thể được tính toán nhanh chóng ngay cả với

các bộ dữ liệu lớn, do có độ phức tạp tính toán thấp

4 Ít tham số: So với các thuật toán phức tạp hơn, hồi quy tuyến tính có ít tham số cần điều

chỉnh, giúp giảm thiểu nguy cơ overfitting (quá khớp)

Nhược điểm của Linear Regression

1 Giả định tuyến tính: Hồi quy tuyến tính giả định rằng mối quan hệ giữa biến phụ thuộc

và các biến độc lập là tuyến tính Nếu mối quan hệ không tuyến tính, mô hình có thể không chính xác

2 Nhạy cảm với nhiễu (outliers): Các điểm dữ liệu ngoại lệ có thể ảnh hưởng lớn đến mô

hình và dẫn đến kết quả không chính xác

3 Giả định độc lập: Hồi quy tuyến tính giả định rằng các biến độc lập không có mối quan

hệ tương quan mạnh với nhau (không có đa cộng tuyến) Nếu có đa cộng tuyến, kết quả

có thể trở nên không ổn định

4 Giả định về phân phối lỗi: Hồi quy tuyến tính giả định rằng các lỗi (residuals) phân phối

chuẩn và có phương sai đồng nhất Nếu các giả định này không được thỏa mãn, mô hình

có thể không hoạt động tốt

Ứng dụng của Linear Regression

1 Dự báo kinh tế: Hồi quy tuyến tính được sử dụng để dự báo các chỉ số kinh tế như GDP,

lạm phát, tỷ lệ thất nghiệp và giá cổ phiếu

2 Phân tích thị trường: Doanh nghiệp sử dụng hồi quy tuyến tính để phân tích tác động

của giá cả, quảng cáo và các yếu tố khác lên doanh số bán hàng

Trang 7

3 Y tế: Hồi quy tuyến tính được sử dụng để phân tích mối quan hệ giữa các yếu tố nguy cơ

(như hút thuốc, chế độ ăn uống) và các kết quả sức khỏe (như tuổi thọ, tỷ lệ mắc bệnh)

4 Khoa học xã hội: Các nhà nghiên cứu sử dụng hồi quy tuyến tính để phân tích dữ liệu

khảo sát và xác định mối quan hệ giữa các biến số xã hội, kinh tế và nhân khẩu học

5 Kỹ thuật: Hồi quy tuyến tính được sử dụng trong kỹ thuật để dự đoán và tối ưu hóa các

quá trình sản xuất và kỹ thuật

6 Tài chính: Hồi quy tuyến tính giúp mô hình hóa và dự báo các biến số tài chính như lợi

nhuận cổ phiếu, rủi ro tín dụng và lãi suất

(https://ihoclaptrinh.com/thuat-toan-machine-learning-simple-linear-regression)

Trang 8

3 Giới thiệu về Multi-Layer Perceptron (MLP)

Multi-Layer Perceptron (MLP) là một loại mạng nơ-ron nhân tạo (Artificial Neural Network) gồm nhiều lớp, bao gồm ít nhất một lớp ẩn giữa lớp đầu vào và lớp đầu ra MLP là một dạng của mạng nơ-ron truyền thẳng (feedforward neural network) và được huấn luyện sử dụng thuật toán lan truyền ngược (backpropagation)

Trang 9

Cấu trúc cơ bản của MLP bao gồm:

Lớp đầu vào (Input Layer): Nhận dữ liệu đầu vào.

Lớp ẩn (Hidden Layer): Xử lý và trích xuất các đặc trưng từ dữ liệu đầu vào MLP có

thể có một hoặc nhiều lớp ẩn

Lớp đầu ra (Output Layer): Đưa ra kết quả cuối cùng của mô hình.

Mỗi nút (neuron) trong một lớp kết nối đầy đủ với các nút trong lớp kế tiếp, và các kết nối này cótrọng số được điều chỉnh trong quá trình huấn luyện

(https://machinelearningcoban.com/2017/02/24/mlp/)

Trang 10

Ưu điểm của MLP

1 Khả năng mô hình hóa phi tuyến tính: MLP có khả năng học và mô hình hóa các mối

quan hệ phi tuyến tính giữa đầu vào và đầu ra, điều này giúp nó mạnh mẽ hơn so với các

mô hình tuyến tính

2 Linh hoạt và mạnh mẽ: MLP có thể được sử dụng cho nhiều loại vấn đề khác nhau, bao

gồm phân loại, hồi quy và nhận dạng mẫu

3 Khả năng học đặc trưng: Với nhiều lớp ẩn, MLP có thể tự động trích xuất và học các

đặc trưng quan trọng từ dữ liệu đầu vào mà không cần sự can thiệp của con người

4 Khả năng xử lý dữ liệu lớn: MLP có thể hoạt động tốt với các bộ dữ liệu lớn và phức

tạp, đặc biệt khi được kết hợp với các kỹ thuật tối ưu hóa và phần cứng mạnh mẽ như GPU

Nhược điểm của MLP

1 Yêu cầu tài nguyên tính toán cao: Việc huấn luyện MLP đòi hỏi nhiều tài nguyên tính

toán, bao gồm CPU/GPU và bộ nhớ lớn, đặc biệt khi số lượng lớp và số lượng neuron tăng lên

2 Thời gian huấn luyện lâu: Huấn luyện MLP có thể mất nhiều thời gian, đặc biệt với các

bộ dữ liệu lớn và phức tạp

3 Nguy cơ overfitting: MLP có thể dễ bị overfitting nếu không có đủ dữ liệu huấn luyện

hoặc không áp dụng các kỹ thuật phòng ngừa như regularization và dropout

4 Khó khăn trong việc chọn kiến trúc và siêu tham số: Việc xác định số lượng lớp ẩn, số

lượng neuron trong mỗi lớp, và các siêu tham số khác có thể phức tạp và đòi hỏi nhiều thử nghiệm

Ứng dụng của MLP

1 Phân loại ảnh: MLP có thể được sử dụng để phân loại các đối tượng trong ảnh, mặc dù

nó thường được sử dụng cho các bài toán đơn giản hơn so với các mạng nơ-ron tích chập (CNN)

2 Nhận diện giọng nói: MLP có thể được sử dụng trong các hệ thống nhận diện giọng nói

để phân loại các mẫu âm thanh

3 Phân tích văn bản: MLP có thể áp dụng cho các bài toán phân loại văn bản, chẳng hạn

như phân loại email thành spam hoặc không spam

Trang 11

4 Dự báo tài chính: MLP được sử dụng trong các mô hình dự báo tài chính, chẳng hạn như

dự đoán giá cổ phiếu hoặc rủi ro tín dụng

5 Phát hiện gian lận: Các hệ thống phát hiện gian lận trong các giao dịch tài chính hoặc

thương mại điện tử có thể sử dụng MLP để phân loại các giao dịch bất thường

6 Y tế: MLP có thể được sử dụng để phân tích dữ liệu y tế và hỗ trợ chẩn đoán bệnh dựa

trên các mẫu dữ liệu bệnh nhân

Chương 3 : Dữ liệu huấn luyện

+ Các loại trái cây phổ biến : apple , banana , orange

+ Số lượng các ảnh gốc : từ 100 – 1000 ảnh ,chụp ở các góc đọ khác nhau

+ Sử dụng các thuật toán sửa ảnh ,chỉnh ,ghép

+ Sử dung dữ liệu càng lớn , càng dễ nhận diện độ chính xác càng cao

Trang 12

Chương 4: Lưu đồ thuật toán để huấn luyện mô hình

1 lưu đồ thuật toán chi tiết cho mô hình nhận dạng trái cây sử dụng Mạng nơ-ron tích chập

(CNN):

Bắt đầu

Thu thập dữ liệu hình ảnh Các loại trái cây khác nhau Tiền xử lý dữ liệu Chuyển đổi kích thước Chuẩn hóa ảnh Tăng cường dữ liệu Chia dữ liệu

Dữ liệu huấn

Dữ liệu kiểm thử

Xây dựng mô hình CNN Thiết kế kiến trúc CNN Lớp đầu vào (Input Layer) Lớp tích chập (Conv Layer) Lớp kích hoạt (ReLU) Lớp gộp (Pooling Layer) Lớp dropout Lặp lại các lớp trên (n lần) Lớp phẳng (Flatten) Lớp kết nối đầy đủ (FC Layer) Lớp đầu ra (Output Layer)

Trang 13

Biên dịch mô hình Chọn hàm mất mát (Loss) Chọn bộ tối ưu hóa (Optimizer) Định nghĩa các chỉ số (Metrics)

Huấn luyện mô hình

Sử dụng dữ liệu huấn luyện Điều chỉnh tham số mô hình Đánh giá trên dữ liệu kiểm thử

Đánh giá hiệu suất mô hình

Ma trận nhầm lẫn

Độ chính xác, độ nhạy,

độ đặc hiệu

Tinh chỉnh mô hình (nếu cần)

Triển khai mô hình Tích hợp vào ứng dụng Kiểm thử trên môi trường thực

Trang 14

Giải thích lưu đồ:

+Bắt đầu: Khởi đầu quy trình.

+Thu thập dữ liệu hình ảnh: Thu thập các hình ảnh của các loại trái cây khác nhau.

+Tiền xử lý dữ liệu: Thực hiện các bước tiền xử lý như chuyển đổi kích thước hình ảnh, chuẩn

hóa ảnh để có các giá trị pixel trong cùng một khoảng, và tăng cường dữ liệu bằng cách tạo ra các biến thể của ảnh gốc

+Chia dữ liệu: Chia dữ liệu thành hai phần: dữ liệu huấn luyện để đào tạo mô hình và dữ liệu

kiểm thử để đánh giá mô hình

+Xây dựng mô hình CNN: Bước này bao gồm việc thiết kế kiến trúc của mô hình CNN.

+Thiết kế kiến trúc CNN: Bao gồm các lớp:

o Lớp đầu vào để nhận dữ liệu hình ảnh

o Lớp tích chập để trích xuất các đặc trưng từ hình ảnh

o Lớp kích hoạt (ReLU) để giới thiệu tính phi tuyến tính

o Lớp gộp để giảm chiều kích thước không gian của các đặc trưng

o Lớp dropout để tránh hiện tượng overfitting

o Lặp lại các lớp trên nhiều lần để trích xuất các đặc trưng phức tạp hơn

o Lớp phẳng để chuyển đổi dữ liệu thành dạng vector

o Lớp kết nối đầy đủ để kết hợp các đặc trưng và đưa ra dự đoán

o Lớp đầu ra để cho ra kết quả phân loại cuối cùng

+Biên dịch mô hình: Chọn hàm mất mát, bộ tối ưu hóa và các chỉ số đánh giá để chuẩn bị cho

quá trình huấn luyện

+Huấn luyện mô hình: Sử dụng dữ liệu huấn luyện để huấn luyện mô hình, điều chỉnh các tham

số và đánh giá trên dữ liệu kiểm thử

+Đánh giá hiệu suất mô hình: Đánh giá mô hình dựa trên các chỉ số như ma trận nhầm lẫn, độ

chính xác, độ nhạy và độ đặc hiệu

+Tinh chỉnh mô hình: Nếu cần thiết, tinh chỉnh mô hình để cải thiện hiệu suất.

+Triển khai mô hình: Triển khai mô hình vào ứng dụng thực tế và kiểm thử trên môi trường

thực

+ Kết thúc: Kết thúc quy trình.

Kết thúc

Trang 15

2 lưu đồ thuật toán Linear Regression cho mô hình nhận dạng trái cây

| - Mã hóa biến phân loại |

| - Chuẩn hóa dữ liệu

Chia dữ liệu |

| - Dữ liệu huấn luyện |

| - Dữ liệu kiểm thử

Trang 16

Giải thích lưu đồ

1 Thu thập dữ liệu: Thu thập các đặc điểm của trái cây (như kích thước, màu sắc) và giá

trị cần dự đoán (như trọng lượng)

2 Tiền xử lý dữ liệu: Làm sạch dữ liệu, xử lý giá trị thiếu, mã hóa các biến phân loại,

chuẩn hóa dữ liệu để đưa các giá trị về cùng một khoảng

3 Chia dữ liệu: Chia dữ liệu thành hai phần: dữ liệu huấn luyện để đào tạo mô hình và dữ

liệu kiểm thử để đánh giá mô hình

4 Xây dựng mô hình hồi quy tuyến tính: Xác định mô hình hồi quy tuyến tính.

5 Huấn luyện mô hình: Sử dụng dữ liệu huấn luyện để huấn luyện mô hình, tối ưu hóa

hàm mất mát để tìm ra các tham số tốt nhất

Xây dựng mô hình hồi quy tuyến tính

| Huấn luyện mô hình |

| - Sử dụng dữ liệu huấn luyện

| Tinh chỉnh mô hình (nếu cần)

Triển khai mô hình |

| - Dự đoán giá trị mới |

| - Tích hợp vào ứng dụng

| Kết thúc

Trang 17

6 Đánh giá mô hình: Đánh giá mô hình dựa trên các chỉ số như R² (hệ số xác định), MAE

(sai số tuyệt đối trung bình), RMSE (căn bậc hai của sai số trung bình bình phương)

7 Tinh chỉnh mô hình: Nếu cần thiết, tinh chỉnh mô hình để cải thiện hiệu suất.

8 Triển khai mô hình: Sử dụng mô hình để dự đoán giá trị mới và tích hợp vào ứng dụng

thực tế

9 Kết thúc: Kết thúc quy trình.

3 lưu đồ thuật toán Multi-Layer Perceptron (MLP) mô hình nhận dạng trái cây.

Bắt đầu

| Thu thập dữ liệu hình ảnh |

| - Các loại trái cây khác nhau | | Tiền xử lý dữ liệu |

| - Chuyển đổi kích thước |

| - Chuẩn hóa ảnh |

| - Tăng cường dữ liệu |

| Chia dữ liệu thành |

| - Dữ liệu huấn luyện |

| - Dữ liệu kiểm thử |

Xây dựng mô hình MLP

| Thiết kế kiến trúc MLP |

| - Lớp đầu vào (Input Layer) |

| - Các lớp ẩn (Hidden Layers)

|

| - Lớp đầu ra (Output Layer)

Ngày đăng: 15/11/2024, 19:57

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w