Luận văn thạc sĩ về mạng nơron và ứng dụng trong nhận dạng cảm xúc trên khuôn mặt người

Luận văn thạc sĩ VNU UET nghiên cứu mạng nơron và ứng dụng trong nhận dạng cảm xúc trên khuôn mặt người, góp phần vào công nghệ thông tin.

Trường đại học

Đại học Quốc gia Hà Nội

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

luận văn thực tập

2006

85
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

MỞ ĐẦU

1. CHƯƠNG 1: GIỚI THIỆU MẠNG NƠRON NHÂN TẠO

1.1. Mạng nơron nhân tạo

1.2. Giới thiệu nơron sinh học

1.3. Nơron – Phần tử cơ bản

1.4. Mô hình nơron nhiều đầu vào

1.5. Kiến trúc mạng nơron nhân tạo

1.5.1. Mô hình một lớp nơron (Layer)

1.5.2. Mô hình nhiều lớp nơron (Multiple Layer)

1.6. Phân loại mạng nơron

1.6.1. Phương pháp học không giám sát

1.6.2. Phương pháp học có giám sát

2. CHƯƠNG 2: CÁC CẢI TIẾN CỦA THUẬT TOÁN LAN TRUYỀN NGƯỢC TRÊN MẠNG NHIỀU LỚP

2.1. Điểm yếu của lan truyền ngược. Ví dụ về mặt thực hiện

2.2. Ví dụ về hội tụ

2.3. Các cải tiến theo kinh nghiệm của lan truyền ngược

2.4. Thuật toán lan truyền ngược với kỹ thuật biến đổi hệ số quán tính

2.5. Thuật toán lan truyền ngược với kỹ thuật biến đổi hệ số học

2.6. Các công nghệ tối ưu

2.7. Thuật toán lan truyền ngược với kỹ thuật Gradient liên hợp

3. CHƯƠNG 3: ỨNG DỤNG MẠNG NƠRON TRONG NHẬN DẠNG CẢM XÚC TRÊN MẶT NGƯỜI

3.1. Công cụ thử nghiệm MATLAB

3.2. Neural network toolbox cho MATLAB

3.3. Pha xác định mặt người

3.4. Cấu trúc mạng định tuyến

3.5. Cấu trúc mạng xác định mặt

3.6. Pha phân lớp nét cảm xúc

3.7. Tách đặc trưng và chuẩn hóa ảnh

3.8. Các cách khởi tạo và đánh giá mạng nơron

3.9. Các lựa chọn tham số cho hệ thống nhận dạng

4. CHƯƠNG 4: CÁC KẾT QUẢ THU ĐƯỢC

4.1. Kết quả của phần xác định mặt

4.2. Pha nhận dạng cảm xúc trên khuôn mặt người

4.3. Cơ sở dữ liệu ảnh mặt người

4.4. So sánh các công nghệ chuẩn hóa đầu vào

4.5. Chọn thuật toán huấn luyện mạng tốt nhất

4.6. Lựa chọn số nơron trong lớp ẩn tốt nhất

4.7. Hệ số học và hệ số quán tính

4.8. Hệ thống tốt nhất

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về ứng dụng mạng nơron trong nhận dạng cảm xúc

Nhận dạng cảm xúc trên khuôn mặt người là một lĩnh vực nghiên cứu đang phát triển mạnh mẽ. Sự phát triển của mạng nơron đã mở ra nhiều cơ hội mới trong việc phân tích và nhận diện cảm xúc. Các nghiên cứu cho thấy rằng cảm xúc có thể được nhận diện thông qua các đặc trưng trên khuôn mặt, từ đó giúp cải thiện các hệ thống tương tác giữa người và máy. Việc ứng dụng mạng nơron trong lĩnh vực này không chỉ giúp tăng độ chính xác mà còn giảm thiểu thời gian xử lý.

1.1. Khái niệm về nhận dạng cảm xúc trên khuôn mặt

Nhận dạng cảm xúc là quá trình phân tích các biểu hiện trên khuôn mặt để xác định trạng thái cảm xúc của con người. Các cảm xúc cơ bản như giận dữ, hạnh phúc, và buồn bã có thể được nhận diện thông qua các đặc trưng hình ảnh.

1.2. Vai trò của mạng nơron trong nhận dạng cảm xúc

Mạng nơron nhân tạo có khả năng học hỏi từ dữ liệu lớn, giúp cải thiện độ chính xác trong việc nhận diện cảm xúc. Các thuật toán như lan truyền ngược giúp tối ưu hóa quá trình học của mạng, từ đó nâng cao hiệu suất nhận dạng.

II. Thách thức trong nhận dạng cảm xúc trên khuôn mặt người

Mặc dù có nhiều tiến bộ, nhưng việc nhận dạng cảm xúc vẫn gặp phải nhiều thách thức. Các yếu tố như ánh sáng, góc chụp và sự thay đổi biểu cảm có thể ảnh hưởng đến độ chính xác của hệ thống. Hơn nữa, sự đa dạng trong cách thể hiện cảm xúc giữa các nền văn hóa cũng là một vấn đề cần được giải quyết.

2.1. Ảnh hưởng của điều kiện môi trường

Điều kiện ánh sáng và góc chụp có thể làm thay đổi cách mà cảm xúc được thể hiện trên khuôn mặt. Điều này có thể dẫn đến sai lệch trong kết quả nhận dạng.

2.2. Đặc điểm văn hóa và cảm xúc

Cách thể hiện cảm xúc có thể khác nhau giữa các nền văn hóa. Việc này tạo ra thách thức trong việc xây dựng một hệ thống nhận dạng cảm xúc toàn cầu.

III. Phương pháp sử dụng mạng nơron trong nhận dạng cảm xúc

Có nhiều phương pháp khác nhau để áp dụng mạng nơron trong nhận dạng cảm xúc. Các phương pháp này bao gồm việc sử dụng các mô hình học sâu để phân tích hình ảnh khuôn mặt và xác định các đặc trưng cảm xúc. Việc tối ưu hóa các tham số của mạng cũng rất quan trọng để đạt được kết quả tốt nhất.

3.1. Mô hình mạng nơron nhiều lớp

Mô hình mạng nơron nhiều lớp cho phép xử lý các đặc trưng phức tạp hơn. Các lớp ẩn giúp mạng học được các đặc trưng sâu hơn từ dữ liệu đầu vào.

3.2. Thuật toán lan truyền ngược

Thuật toán lan truyền ngược là một trong những phương pháp phổ biến nhất để huấn luyện mạng nơron. Nó giúp tối ưu hóa các trọng số của mạng để giảm thiểu sai số trong quá trình nhận dạng.

IV. Ứng dụng thực tiễn của nhận dạng cảm xúc

Nhận dạng cảm xúc có nhiều ứng dụng thực tiễn trong các lĩnh vực như y tế, giáo dục và giải trí. Hệ thống nhận dạng cảm xúc có thể giúp cải thiện trải nghiệm người dùng trong các ứng dụng tương tác, từ đó nâng cao hiệu quả giao tiếp giữa người và máy.

4.1. Ứng dụng trong y tế

Trong y tế, nhận dạng cảm xúc có thể hỗ trợ trong việc chẩn đoán và điều trị các rối loạn tâm lý. Hệ thống có thể phân tích cảm xúc của bệnh nhân để đưa ra các phương pháp điều trị phù hợp.

4.2. Ứng dụng trong giáo dục

Trong giáo dục, nhận dạng cảm xúc có thể giúp giáo viên hiểu rõ hơn về trạng thái cảm xúc của học sinh, từ đó điều chỉnh phương pháp giảng dạy cho phù hợp.

V. Kết luận và tương lai của nhận dạng cảm xúc

Nhận dạng cảm xúc trên khuôn mặt người là một lĩnh vực đầy tiềm năng với nhiều ứng dụng thực tiễn. Sự phát triển của mạng nơron và các công nghệ học sâu sẽ tiếp tục thúc đẩy nghiên cứu và ứng dụng trong lĩnh vực này. Tương lai của nhận dạng cảm xúc hứa hẹn sẽ mang lại nhiều cải tiến trong giao tiếp giữa người và máy.

5.1. Xu hướng phát triển công nghệ

Công nghệ nhận dạng cảm xúc sẽ tiếp tục phát triển với sự hỗ trợ của các thuật toán học sâu. Điều này sẽ giúp cải thiện độ chính xác và khả năng ứng dụng của hệ thống.

5.2. Tác động xã hội của nhận dạng cảm xúc

Nhận dạng cảm xúc có thể ảnh hưởng đến nhiều lĩnh vực trong xã hội, từ y tế đến giáo dục. Việc hiểu rõ hơn về cảm xúc con người sẽ giúp cải thiện chất lượng cuộc sống.

22/07/2025
Luận văn thạc sĩ vnu uet mạng nơron và ứng dụng mạng nơron trong nhận dạng cảm xúc trên khuôn mặt người luận văn ths công nghệ thông tin 1 01 10

Trích đoạn nội dung tài liệu

Chương 1 - Giới thiệu mạng nơron nhân tạo 1. Mạng nơron nhân tạo Mạng nơron nhân tạo được xây dựng trên cơ sở kế thừa cấu trúc và sự hoạt động của mạng nơron sinh học. Sau đây chúng ta sẽ xem xét một cách tổng quan về cấu trúc và sự hoạt động của mạng nơron sinh học, từ đó có những hình dung về cấu trúc và sự hoạt động của mạng nơron nhân tạo. Giới thiệu nơron sinh học Như đã biết bộ não người chứa đựng khoảng 1011 nơron liên kết với nhau ở mức cao, mỗi nơron có khoảng 104 liên kết tới các nơron khác.

Mỗi nơron có ba thành phần chính gồm: dendrites (vòi thu nhận tín hiệu), cell body (nhân nơron), axon (trục chuyển tín hiệu). Vòi nhận tín hiệu có hình cây để nhận các tín hiệu đưa vào trong nhân của nơron. Nhân có nhiệm vụ tổng hợp các tín hiệu được thu nhận từ các vòi và kích hoạt nó, nếu vượt một ngưỡng nào đó thì tín hiệu sẽ được chuyển tới axon và truyền đến các nơron khác. Khớp nối giữa axon của một nơron với vòi của nơron khác gọi là synapse.

Dendrites Axon Cell body Synapse Hình 1.1 - Sơ đồ mạng nơron sinh học Khi mới sinh ra bộ não người có cấu trúc đơn giản, và ngày càng được hoàn thiện bởi việc học của con người. Đó là việc thiết lập các liên kết giữa các nơron với nhau để biểu diễn tri thức của con người có được, từ đó xử lý các thông tin khác. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 Mạng nơron nhân tạo không tiếp cận theo cách liên kết phức tạp của não người. Tuy nhiên chúng có 2 điểm chính tương tự nhau, đó là: xây dựng các khối đều là những phần tính toán đơn giản được kết nối với nhau ở mức cao; liên kết giữa các nơron để xác định chức năng của mạng.

Nơron – Phần tử cơ bản Nơron có một đầu vào được biểu diễn như hình 2, đầu vào p sẽ nhân với trọng số liên kết w đưa vào bộ tổng, thêm một đầu vào bằng 1 nhân với độ lệch b đưa vào bộ tổng. Kết quả đầu ra là z sẽ qua hàm kích hoạt f để cho đầu ra của nơron đó là a. Input Neuron w  z f a p b 1 a  f (wp  b) Hình 1.2 - Nơron một đầu vào Trong đó: p - tín hiệu đầu vào của nơron w - trọng số liên kết giữa đầu vào p tới nơron b - độ hiệu chỉnh (độ lệch) đóng vai trò ngưỡng trong nơron sinh học z - tổng tín hiệu đầu vào cùng với độ lệch b f - hàm kích hoạt của nơron a - tín hiệu ra của nơron Kết quả đầu ra của nơron được tính như sau: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.1) Kết quả đầu ra sẽ phụ thuộc vào việc lựa chọn hàm kích hoạt f. Độ lệch b xem như một trọng số liên kết với đầu vào luôn là 1, tuy nhiên nếu không cần thiết thì ta có thể bỏ đi.

Trọng số w và độ lệch b là những tham số có thể điều chỉnh trong quá trình học của nơron, việc thay đổi này sẽ được giới thiệu qua một số phương pháp học của mạng nơron ở chương sau. Hàm kích hoạt có thể là tuyến tính hoặc phi tuyến, hàm được chọn sao cho thoả mãn một số tiêu chuẩn của vấn đề mà nơron cần giải quyết. Một số hàm kích hoạt thường dùng thể hiện trong bảng sau. Tên hàm Diễn giải: a=f(z) Ký hiệu 0 z  0 Hard Limit a  f ( z)   hardlim 1 z  0  1 z  0 Symmetrical Hard Limit a  f ( z)   hardlims 1 z  0 Linear a = f(z) = z purelin 0 z  0  Saturating Linear a  f ( z)  z 0  z  1 sarlin 1 z  1  0 z  1 Symmetric Sarturating  a  f ( z)  z  1  z  1 sarlins Linear 1 z  1  1 Log-Sigmoid a  f ( z)  logsig 1  e z Hyperbolic Tangent e z  ez Sigmoid a  f ( z)  z tansig e  ez 0 z  0 Positive Linear a  f ( z)   poslin z z  0 1 neuron with max z Competitive a  f ( z)   compet 0 all other neurons LUAN VAN CHAT LUONG download : add luanvanchat@agmail.

Mô hình nơron nhiều đầu vào Một nơron thực chất sẽ có nhiều đầu vào qua các liên kết, với một nơron có R đầu vào p1, p2,. , pR, mỗi đầu vào sẽ qua một liên kết có trọng số là w1,1, w1,2, ., w1,R của ma trận trọng số W. Inputs Neuron p1 w1,1 p2  z f a p3 b w1,R pR 1 a  f (Wp  b) Hình 1.3 - Nơron nhiều đầu vào Nơron có độ lệch b, do đó tổng đầu vào của nó sẽ là: z  w1,1 p1  w1, 2 p 2  .2) Hay viết dưới dạng ma trận ta có: z  Wp  b (1.3) Trong đó ma trận trọng số W cho một nơron nên nó chỉ có một dòng. Kết quả đầu ra của mạng được tính là: a  f (Wp  b) (1.4) Ta đánh chỉ số liên kết của ma trận trọng số theo cách thông thường, chỉ số đầu là liên kết đích, chỉ số sau là liên kết nguồn.

Ví dụ ta viết w1,3 có nghĩa là trọng số liên kết tới nơron thứ 1 từ nơron thứ 3. Ta có thể minh hoạ nơron nhiều đầu vào bằng hình vẽ sau: LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 12 Inputs Neuron p W a Rx1 1xR z f 1x1 b 1 1x1 1 R a=f(Wp+b) Hình 1.4 - Nơron nhiều đầu vào 1. Kiến trúc mạng nơron nhân tạo Mạng nơron sinh học có kiến trúc rất phức tạp, các liên kết giữa các nơron rất nhiều (mỗi nơron có khoảng 104 liên kết tới các nơron khác). Đối với mạng nơron nhân tạo ta chỉ xét loại mạng truyền thẳng là chủ yếu, tức là các nơron được chia thành lớp và xếp theo thứ tự mỗi lớp, các nơron ở lớp trước kết nối trực tiếp tới các nơron ở lớp kề sau.

Mô hình một lớp nơron (Layer) Một lớp có S nơron được biểu diễn như hình 1.5, mỗi nơron sẽ liên kết đầy đủ với các đầu vào pi vì thế ma trận trọng số liên kết sẽ có kích thước S x R. Đầu vào Lớp S nơron p1 w1,1 a1  z1 f p2 b1 1  z2 f a2 p3 b2 1  zS f aS wS,R pR bS 1 a  f (Wp  b) Hình 1.5 - Một lớp S nơron LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 13 Một lớp nơron sẽ gồm có một ma trận trọng số W, các bộ tổng, véctơ độ lệch b, hàm kích hoạt và véctơ đầu ra a. Các đầu vào của lớp nơron này cũng có thể là các đầu ra của một lớp nơron khác (lớp kề trước). Số nơron trong lớp sẽ độc lập với số đầu vào (RS).

Hàm kích hoạt của các nơron trong lớp người ta thường dùng chung một hàm, tuy nhiên ta có thể xây dựng lớp mà các nơron có hàm kích hoạt khác nhau. Ma trận trọng số liên kết của một lớp nơron được biểu diễn như sau:  w1,1 w1, 2  w1, R  w w2, 2  w2, R  W  2,1 (1.5)         wS ,1 wS , 2  wS , R  Một lớp có S nơron và R đầu vào có thể được minh hoạ bởi hình sau: Inputs Lớp S nơron p W Rx1 a Sx1 SxR z f 1x1 1 b R Sx1 1 a=f(Wp+b) Hình 1.6 - Một lớp S nơron 1. Mô hình nhiều lớp nơron (Multiple Layer) Là mô hình được tạo bằng cách liên kết nhiều nơron lại với nhau để tạo thành một mạng nơron nhân tạo. Lớp đầu tiên ta gọi là lớp vào – Input layer, lớp cuối cùng gọi là lớp ra – Output layer, các lớp trong gọi là lớp ẩn – Hidden layer.

Các nơron ở lớp sau sẽ liên kết với các nơron ở lớp kề trước, ngoại trừ lớp vào. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 14 Lớp vào Lớp 1 Lớp 2 Lớp 3 p1 w 1 z11 1 a 1 w 2 1,1 z12 2 a 2 1 w 3 1,1 z13 3 a13 1,1  f 1  f  f 1 2 3 p2 b 1 b 1 b 1 1 z 1 a 1 1 z 2 a 2 1 z 23 a 23 2 2 2 2 p3  1 f  2 f  f3 1 2 3 b 2 b 2 b 2 1 z 1 a 1 1 2 a 2 1 aS33 S1 1 S1 z S2 S2 z S33 3  f  f 2  f ps w1S1 , R 1 wS22 ,S1 2 wS33 ,S 2 3 b S1 b b S3 S2 1 1 1 a 1  f 1 (W 1 p  b1 ) a 2  f 2 (W 2 a 1  b 2 ) a 3  f 3 (W 3 a 2  b 3 ) Hình 1.7 - Mạng nơron truyền thẳng nhiều lớp Kết quả đầu ra chi tiết như sau:    a 3  f 3 W 3 .6) Ta gọi mạng trên là mạng nơron truyền thẳng nhiều lớp (Feedforward Neuron Network), các nơron ở lớp trước kết nối tới các nơron ở lớp sau, không có nơron ở lớp sau nối ngược sang lớp trước.) có số nơron trong lớp là si và ma trận liên kết với lớp trước là Wi có kích thước Si x Si-1. Mạng nơron nhiều lớp mạnh hơn mạng nơron một lớp. Ví dụ mạng nơron hai lớp có lớp đầu là sigmoid và lớp sau là linear có thể huấn luyện để xấp xỉ các hàm tuỳ ý rất tốt.

Mạng một lớp không làm được điều này. Vẫn còn quá sớm để ta nói đến việc lựa chọn cấu trúc cho mạng nơron. Số nút vào, số nút ra được lựa chọn dựa vào bài toán cần giải. Vì thế nếu số biến vào là 3 thì số nút vào của mạng là 3, nếu số biến ra là 7 thì số nút ra của mạng phải là 7.

Cuối cùng các đặc trưng mong muốn ở đầu ra giúp ta lựa chọn hàm kích hoạt cho kết quả ra. Nếu đầu ra là -1 hoặc 1 thì sử dụng hàm symmetrical hard limit. Vì vậy kiến trúc của mạng một lớp xác định hoàn toàn đặc tả vấn đề, bao gồm số nút vào, số nút ra và các đặc trưng đầu ra. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ