M c đích nghiên c u ụ ứ Mục đích của đề tài là nghiên cứu bài toán phân lớp nhị phân để khi ta đưa một bức ảnh vào thì ta có thể dùng thuật toán trong bài toán phân lớp nhị phân để đưa
Trang 1TRƯỜNG ĐẠI HỌC VINH
VI N KỸ THU T VÀ CÔNG NGH Ệ Ậ Ệ
ĐINH THỊ NHUNG
NGHIÊN CỨU PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN
TRONG NHẬN DẠNG GIỚI TÍNH QUA ẢNH
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NGÀNH CÔNG NGHỆ THÔNG TIN
Nghệ An, 05 năm 2019
Trang 2TRƯỜNG ĐẠI HỌC VINH
VI N KỸ THU T VÀ CÔNG NGH Ệ Ậ Ệ
-NGHIÊN CỨU PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN
TRONG NHẬN DẠNG GIỚI TÍNH QUA ẢNH
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NGÀNH CÔNG NGHỆ THÔNG TIN
Sinh viên thực hiện: Đinh Thị Nhung
Mã sinh viên: 145D4802010033 Lớp: 55k1-CNTT
Giảng viên hướng dẫn: Võ Đức Quang
Trang 3LỜI CAM ĐOAN
Đồ án này là công trình nghiên cứu của cá nhân em, được thực hiện dưới sự
hướng dẫn của Ths Võ Đức Quang Các số liệu, những kết luận nghiên cứu
được trình bày trong đồ án này hoàn toàn trung thực Em xin hoàn toàn chịu
trách nhiệm về lời cam đoan này
Nghệ An, ngày… tháng… năm 2019
Sinh viên thực hiện
Đinh Thị Nhung
Trang 4M C L CỤ Ụ
DANH MỤC TỪ VIẾT TẮT 4
DANH MỤC BẢNG BIỂU 5
LỜI CẢM ƠN 6
MỞ ĐẦU 7
1.Lý do chọn đề tài 7
2.Mục đích nghiên cứu 7
3.Phạm vi thực hiện 7
5 Cấu trúc đồ án 8
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 9
1 Học máy (Machine Learning) 9
1.1 Giới thiệu 9
1.2 Bài toán phân c m ụ 10
1.3 Bài toán phân l p ớ 10
2 Bài toán nhận dạng và xử lý ảnh 15
3 Bài toán nhận dạng giới tính qua ảnh khuôn mặt 17
3.1 Gi i thi u ớ ệ 17
3.2 Mô hình bài toán nh n d ng gi i tính ậ ạ ớ 17
CHƯƠNG II: THUẬT TOÁN PHÂN LỚP NHỊ PHÂN LOGISTIC REGRESSION 19
1.Gi i thi uớ ệ 19
2 Ví dụ mô hình LogisticRegreession 19
3 Mô hình Logistic Regression 22
Trang 5CHƯƠNG III: THỬ NGHIỆM NHẬN DẠNG GIỚI TÍNH QUA ẢNH SỬ
DỤNG BỘ DỮ LIỆU AR FACE DATABASE 27
1.Môi trường thử nghiệm 27
1.1 Cài đ t python ặ 27
1.2 Cài đ t Pycharm ặ 29
1.3 Cài đ t b th vi n ặ ộ ư ệ 33
2 Thử Nghiệm 33
2.3 B d li u ộ ữ ệ 33
2.2 Cách th nghi m ử ệ 34
2.3 Các th t c ủ ụ 35
3 Đánh giá 40
CHƯƠNG IV: KẾT LUẬN 42
TÀI LIỆU THAM KHẢO 43
Trang 6DANH M C T VI T T T Ụ Ừ Ế Ắ
Trang 7DANH M C B NG BI U Ụ Ả Ể
Hình 1: Ví dụ về bài toán phân lớp
Hình 2: Mô hình bài toán phân lớp
Hình 3: Bài toán Perceptron
Hình 10: Các ví d m u trong AR face database.ụ ẫ
Hình 11: Ví dụ về kết quả tìm được bằng Logistic Regression
Trang 8LỜI CẢM ƠN
Đ hoàn thành đ án t t nghi p, l i đ u tiên em xin chân thành c m nể ồ ố ệ ờ ầ ả ơ
đ n toàn th th y cô trong trế ể ầ ường Đ i H c Vinh và các th y cô trongạ ọ ầ
Vi n Kỹ Thu t và Công Ngh , đ c bi t h n là các th y cô trong ngànhệ ậ ệ ặ ệ ơ ầ
công ngh thông tin, b môn h th ng thông tin nói riêng, nh ng ngệ ộ ệ ố ữ ười
đã t n tình hậ ướng d n d y d và trang b cho em nh ng ki n th c b íchẫ ạ ỗ ị ữ ế ứ ổ
trong năm năm v a qua.ừ
Đ c bi t em xin chân thành g i l i c m n sâu s c đ n th y giáo Ths Võặ ệ ử ờ ả ơ ắ ế ầ
Đ c Quang, ngứ ười đã t n tình hậ ướng d n, tr c ti p ch b o và t o m iẫ ự ế ỉ ả ạ ọ
đi u ki n giúp đ em trong su t quá trình làm đ án t t nghi p.ề ệ ỡ ố ồ ố ệ
Sau cùng em xin g i l i c m n chân thành t i gia đình, b n bè, anh chử ờ ả ơ ớ ạ ị
khóa trên đã đ ng viên, c vũ và đóng góp ý ki n trong quá trình h c t p,ộ ổ ế ọ ậ
nghiên c u cũng nh quá trình làm đ án t t nghi p.ứ ư ồ ố ệ
Em xin chân thành c m n!ả ơ
Nghệ An, tháng 05 năm 2019
Sinh viên thực hiện
Đinh Thị Nhung
Trang 9M Đ U Ở Ầ
1 Lý do ch n đ tài ọ ề
Ngày nay, trí tu nhân t o đang phát tri n ệ ạ ể m nh mẽ ạ và xâm nh p vàoậ
r t nhi u lĩnh v c trong cu c s ng nh t đ ng d ch thu t, nh n d ng gi ngấ ề ự ộ ố ư ự ộ ị ậ ậ ạ ọ
nói, đi u khi n t đ ng,ề ể ự ộ nh n d ng khuôn m t, nh n d ng ch vi t tay.ậ ạ ặ ậ ạ ữ ế v.v
Nó gi đờ ược coi là xu hướng công ngh th gi i và nhi u ngệ ế ớ ề ười cho r ng đóằ
là cu c cách m ng công nghi p l n th 4.ộ ạ ệ ầ ứ
Trong lĩnh v c AIự , h c máyọ (machine learning) là m t lĩnh v c liên quanộ ự
đ n vi c nghiên c u các kỹ thu t và xây d ng các h th ng có th “h c”tế ệ ứ ậ ự ệ ố ể ọ ự
đ ng t d li u, t đó gi i quy t các v n đ bài toán c th Hay nói cáchộ ừ ữ ệ ừ ả ế ấ ề ụ ể
khác h c máy ph n nào đó giúp cho máy tính có th x lý d li u và đ a raọ ầ ể ử ữ ệ ư
quy t đ nh nh con ngế ị ư ười Ví d ụ khi đ a m t b c nh vào thì máy tính cóư ộ ứ ả
th x lý b c nh xem nh đó là nam hay là n ể ử ứ ả ả ữ
Trong các bài toán Machine learning có hai lo i bài toán đ c tr ng đó làạ ặ ư
bài toán phân l p và phân c m M i bài toán có nh ng đ c tr ng riêng vàớ ụ ỗ ữ ặ ư
ph m vi áp d ng vào các lo i bài toán th c t khác nhau Bên c nh đó, bàiạ ụ ạ ự ế ạ
toán nh n d ng và x lý nh là m t bài toán h p d n và có tính ng d ngậ ạ ử ả ộ ấ ẫ ứ ụ
cao Trong khuôn kh đ này, em sẽ đi sâu vào nghiên c u bài toán phân l pổ ồ ứ ớ
và c h n là thu t toán ụ ơ ậ Logistic Regession đ áp d ng vào nh n d ng gi iể ụ ậ ạ ớ
tính qua d li u nh đ u vào, xem nh đó là nam hay là n H n n a, đ ánữ ệ ả ầ ả ữ ơ ữ ồ
cũng sẽ th nghi m đánh giá hi u qu phân l p c a thu t toán trên m t bử ệ ệ ả ớ ủ ậ ộ ộ
d li u c th AR face database.ữ ệ ụ ể
2 M c đích nghiên c u ụ ứ
Mục đích của đề tài là nghiên cứu bài toán phân lớp nhị phân để khi ta đưa
một bức ảnh vào thì ta có thể dùng thuật toán trong bài toán phân lớp nhị phân
để đưa ra giới tính của một bức ảnh là nam hay nữ
3 Ph m vi th c hi n ạ ự ệ
Thực hiện đánh giá trên bộ dữ liệu AR face database
Trang 104 Nội dung thực hiện
Để nghiên cứu phương pháp phân lớp nhị phân trong nhận dạng giới tính qua
ảnh thì ta cần thực hiện các bước sau đây:
Tìm hiểu bài toán phân lớp nhị phân, bài toán nhận dạng và xử lý ảnh,
bài toán nhận dạng giới tính qua ảnh
Tìm hiểu thuật toán Logistic Regression để nhận dạng giới tính của mỗi
bức ảnh
Cuối cùng là đưa bộ dữ liệu vào thử nghiệm và đánh giá
5 C u trúc đ án ấ ồ
- Mở đầu.
- Chương 1: Cơ sở lý thuyết
- Chương 2: Nghiên cứu thuật toán Logistic Regression
- Chương 3: Thử nghiệm nhận dạng giới tính qua ảnh sử dụng bộ cơ sở dữ liệu
AR face data base
- Chương 4: Kết luận
Trang 11CH ƯƠ NG I: C S LÝ THUY T Ơ Ở Ế
1 H c máy (M ọ achine Learning)
1.1 Gi i thi u ớ ệ
Nh ng năm g n đây, Trí ữ ầ tu ệ nhân t o ạ (AI - Artificial Intelligence) đang
phát tri n m nh mẽ và xâm nh p và tr thành nh ng công ngh c t lõiể ạ ậ ơ ữ ệ ố
trên nhi uề lĩnh v c ự c aủ đ i s ngờ ố con ngườ Ta có th b t g p s hi ni ể ắ ặ ự ệ
di n c a AI kh p n i Ví d : ệ ủ ơ ắ ơ ụ Xe t hành c a Google và Tesla, h th ngự ủ ệ ố
t tag khuôn m t trong nh c a Facebook, tr lý o Siri c a Apple, hự ặ ả ủ ợ ả ủ ệ
th ng g i ý s n ph m c a Amazon, h th ng g i ý phim c a Netflix, máyố ợ ả ẩ ủ ệ ố ợ ủ
ch i c vây AlphaGo c a Google DeepMind, …, ch là m t vài trong vô vànơ ờ ủ ỉ ộ
nh ng ng d ng c a AI/Machine Learning.ữ ứ ụ ủ
Machine Learning là một lĩnh vực của AI, nó có khả năng tự học hỏi dựa
trên dữ liệu đưa vào mà không cần phải được lập trình cụ thể. Machine
learning còn cung c p m t phấ ộ ương pháp hi u qu đ h c h i d li u thayệ ả ể ọ ỏ ữ ệ
vì d a vào con ngự ườ ểi đ phân tích và d đoán ự Nh vàoờ h c máy, các máyọ
tính có th x lý nh và đ a ra gi i tính cho m i b c nh xem b c nh đ aể ử ả ư ớ ỗ ứ ả ứ ả ư
vào là nam hay là n ữ
Các lo i h c máy:ạ ọ
H c có giám sátọ (Supervised Learning): Là phương pháp s d ngử ụ
nh ng d li u đã đữ ữ ệ ược gán nhãn t trừ ước đ đ a ra các d đoán gi aể ư ự ữ
đ u vào và đ u ra Các d li u này đầ ầ ữ ệ ượ ọc g i là d li u hu n luy n vàữ ệ ấ ệ
chúng là c p các đ u vào-đ u ra H c có giám sát sẽ xem xét các t pặ ầ ầ ọ ậ
hu n luy n này đ t đó có th đ a ra d đoán đ u ra cho 1 đ u vàoấ ệ ể ừ ể ư ự ầ ầ
m i ch a g p bao gi Ví d m t “email”có th đớ ư ặ ờ ụ ộ ể ược gán nhãn “thứ
rác” ho c “không th rác” và đ a vào mô hình Supervised Learing đặ ư ư ể
phân lo i.ạ
H c không giám sátọ (Unsupervised Learning): Khác v i h c có giámớ ọ
sát, h c không giám sát s d ng nh ng d li u ch a đọ ử ụ ữ ữ ệ ư ược gán nhãn
t trừ ước đ suy lu n Phể ậ ương pháp này thường đượ ử ục s d ng đ tìmể
c u trúc c a t p d li u Tuy nhiên l i ấ ủ ậ ữ ệ ạ không có phương pháp đánh
Trang 12giá đượ ấc c u trúc tìm ra được là đúng hay sai Ví d nh phân c m dụ ư ụ ữ
li u, tri t xu t thành ph n chính c a m t ch t nào đó.ệ ế ấ ầ ủ ộ ấ
Học nửa giám sát là một lớp của kỹ thuật học máy, sử dụng cả dữ liệu
đã gán nhãn và chưa gán nhãn để huấn luyện - điển hình là một lượng
nhỏ dữ liệu có gán nhãn cùng với lượng lớn dữ liệu chưa gán nhãn Học
nửa giám sát đứng giữa học không giám sát (không có bất kì dữ liệu có
nhãn nào) và có giám sát (toàn bộ dữ liệu đều được gán nhãn) Nhiều
nhà nghiên cứu nhận thấy dữ liệu không gán nhãn, khi được sử dụng
kết hợp với một chút dữ liệu có gán nhãn, có thể cải thiện đáng kể độ
chính xác Để gán nhãn dữ liệu cho một bài toán học máy thường đòi
hỏi một chuyên viên có kĩ năng để phân loại bằng tay các ví dụ huấn
luyện
Trong học máy thì có hai bài toán đặc trưng:
Bài toán phân cụm
Bài toán phân lớp
1.2 Bài toán phân c m ụ
Bài toán phân cụm là 1 trong những bài toán của lĩnh vực Unsupervised
Learning (Học không giám sát), dữ liệu được mô tả trong bài toán không được
dán nhãn hay nói cách khác thì bài toán này không có đầu ra Trong trường
hợp này, thuật toán sẽ tìm cách phân cụm - chia dữ liệu thành từng nhóm có
đặc điểm tương tự nhau, nhưng đồng thời đặc tính giữa các nhóm đó lại phải
càng khác biệt càng tốt
Ví dụ: D li u c a chúng taữ ệ ủ có th là b t c th gì, ch ng h n nh dể ấ ứ ứ ẳ ạ ư ữ
li u vệ ề khách hàng: Thu t toán phân c m sẽ r t h u ích trong vi c đánhậ ụ ấ ữ ệ
giá và chia thành các nhóm người dùng khác nhau, r i t đó ta có th đ aồ ừ ể ư
ra nh ng chi n lữ ế ược marketing phù h pợ trên t ng nhóm ngừ ười dùng đó
1.3 Bài toán phân l p ớ
Bài toán phân lớp thuộc một nhánh ứng dụng chính của lĩnh vực Supervised
Learning Và bài toán là quá trình phân lớp một đối tượng dữ liệu vào hay
nhiều lớp đã cho trước nhờ một mô hình phân lớp (model) Mô hình này được
xây dựng dựa trên một tập dữ liệu được xây dựng trước đó có gián nhãn (hay
Trang 13còn gọi là huấn luyện) Quá trình phân lớp là quá trình gián nhãn cho đối
tượng dữ liệu
Hình 1: Ví dụ về bài toán phân lớp
Như vậy, nhiệm vụ của bài toán phân lớp là cần tìm một mô hình phân lớp để
khi có dữ liệu mới thì có thể xác định được dữ liệu đó thuộc vào phân lớp nào
Ví dụ: Ta có bộ dữ liệu traning bao gồm có hạt đậu, hạt lạc, hạt lúa sau đó ta
xây dựng mô hình phân lớp để gán nhãn cho bộ dữ liệu đó là hạt đậu được gán
nhãn là A, hạt lúa có gán nhãn là B, hạt lạc gán nhãn là C tiếp theo nhiệm vụ
của bài toán phân lớp là tìm mô hình phân lớp để khi ta đưa 1 dữ liệu bị che
nhãn vào mô hình phân lớp để phân lớp xem dữ liệu đó thuộc vào hạt nào
trong 3 hạt đã được gán nhãn
Trang 14Mô hình bài toán phân lớp:
Hình 2: Mô hình bài toán phân lớp
- Trong bài toán phân lớp dữ liệu thì có các bài toán sau đây:
Bài toán phân lớp đa lớp (multiclass)
Bài toán phân lớp đa trị
Bài toán phân lớp nhị phân (binary)
Trang 15-Bài toán phân l p nh phân là bài toán g n nhãn d li u cho đ i tớ ị ắ ữ ệ ố ượng
vào m t trong hai l p khác nhau d a vào vi c d li u đó có hay không cóộ ớ ự ệ ữ ệ
các đ c tr ng (feature) c a b phân l pặ ư ủ ộ ớ
-Một số thuật toán phổ biến:
Thu t toán ậ Perceptron Learning Algorithm
Thu t toán Support Vecto Machineậ
Thu t toán Naive Bayesậ
Thu t toán ậ Logistic Regression
1.3.1 Thu t toán ậ Perceptron Learning Algorithm
PLA là thu t toán classification n n t ng c a các model Neuron Networkậ ề ả ủ
và deeplearning Ý tương c a thu t toán đó là v i các classes khác nhau,ủ ậ ớ
hãy tìm các đường biên đ phân chia các classes này thành nh ng vùngể ữ
di n tích tách bi t Trệ ệ ường h p đ n gi n nh t c a thu t toán này là phânợ ơ ả ấ ủ ậ
chia nh phân (binary classification) b ng nh ng đị ằ ữ ường biên tuy n tính.ế
Bài toán được phát bi u nh sau: Choể ư 2 class được dán nhãn khác nhau,
tìm m t độ ường th ng sao cho toàn b các đi m thu c class 1 n m v 1ẳ ộ ể ộ ằ ề
phía c a đủ ường th ng và toàn b các đi m thu c class 2 sẽ n m v phíaằ ộ ể ộ ằ ề
còn l i v i gi đ nh luôn t n t i 1 đạ ớ ả ị ồ ạ ường th ng nh th (không r i vàoẳ ư ế ơ
trường h p 2 class n m ch ng l n lên nhau d n t i không t n t i đợ ằ ồ ấ ẫ ớ ồ ạ ường
biên)
Ví d : ụ Giả sử chúng ta có hai tập hợp dữ liệu đã được gán nhãn được minh
hoạ trong hình 3 bên trái dưới đây Hai class của chúng ta là tập các điểm màu
xanh và tập các điểm màu đỏ Bài toán đặt ra là: từ dữ liệu của hai tập được
gán nhãn cho trước, hãy xây dựng một classifier (bộ phân lớp) để khi có một
điểm dữ liệu hình tam giác màu xám mới, ta có thể dự đoán được màu (nhãn)
của nó
Trang 16Hình 3: Bài toán Perceptron.
Chúng ta cần tìm lãnh thổ của mỗi class sao cho, với mỗi một điểm mới, ta
chỉ cần xác định xem nó nằm vào lãnh thổ của class nào rồi quyết định nó
thuộc class đó Để tìm lãnh thổcủa mỗi class, chúng ta cần đi tìm biên giới
(boundary) giữa hai lãnh thổ này Hình 3 bên phải minh họa một đường thẳng
phân chia hai class trong mặt phẳng Phần có nền màu xanh được coi là lãnh
thổ của lớp xanh, phần có nên màu đỏ được coi là lãnh thổ của lớp đỏ Trong
trường hợp này, điểm dữ liệu mới hình tam giác được phân vào class đỏ
1.3.2 Bài toán Logistic Regression
Phương pháp hồi quy logistic là một thuật toán với mô hình dự đoán được sử
dụng khi biến y là phân loại nhị phân Nghĩa là chỉ lấy giá trị 1 và 0 Hiểu theo
một cách khác nữa đó là mô hình này nhằm dự đoán đầu ra rời rạc y tương
ứng với một vecto đâu vào X Việc này tương đương với chuyện phân loại đầu
vào X vào các nhóm y tương ứng
1.3.3 Bài toán Support Vecto Machine.
Support Vector Machine - SVM là m t phộ ương pháp h c có giám sát trong cácọ
mô hình nh n d ng m u Nó không ch ho t đ ng t t v i các d li u đậ ạ ẫ ỉ ạ ộ ố ớ ữ ệ ược
phân tách tuy n tính mà còn t t v i c d li u phân tách phi tuy n V iế ố ớ ả ữ ệ ế ớ
nhi u bài toán, SVM mang l i k t qu t t nh m ng n -ron v i hi u qu sề ạ ế ả ố ư ạ ơ ớ ệ ả ử
d ng tài nguyên t t h n h n.ụ ố ơ ẳ
Trang 17Hình 4: Bài toán SVM
1.3.4 Thu t toán Naive Bayes ậ
Naive Bayes là m t thu t toán phân lo i cho các v n đ phân lo i nhộ ậ ạ ấ ề ạ ị
phân (hai l p) và đa l p Kỹ thu t này d hi u nh t khi đớ ớ ậ ễ ể ấ ược mô t b ngả ằ
các giá tr đ u vào nh phân ho c phân lo i.ị ầ ị ặ ạ
Có m t ộ thu t toán hay trong phân l p nh phân là thu t toán Logisticậ ớ ị ậ
Regression áp d ng nhiụ ều trong nhi u bài toán phân l p ề ớ Chương ti p theoế
em sẽ trình bày kỹ h n v ơ ề thu t toán này.ậ
2 Bài toán nh n d ng và x lý nh ậ ạ ử ả
Nh n d ng là quá trình phân lo i các đ i tậ ạ ạ ố ượng được bi u di n m t môể ễ ộ
hình nào đó và gán chúng m t tên (gán cho đ i tộ ố ượng m t tên g i, t c làộ ọ ứ
m t d ng) d a theo nh ng quy lu t và mâu thu n Quá trình nh n d ngộ ạ ự ữ ậ ẫ ậ ạ
d a vào nh ng mâu thu n h c bi t trự ữ ẫ ọ ế ước g i là nh n d ng có th y hayọ ậ ạ ầ
h c có th y, trong nh ng trọ ầ ữ ường h p ngợ ượ ạ ọc l i g i là h c không có th y.ọ ầ
Trang 18nh n d ng Trong lý thuy t v nh n d ng nói chung và nh n d ng nhậ ạ ế ề ậ ạ ậ ạ ả
nói riêng có ba cách ti p c n khác nhau:ế ậ
- Nh n d ng d a trên phân ho ch không gian.ậ ạ ự ạ
- Nh n d ng d a trên c u trúc.ậ ạ ự ấ
- Nh n d ng d a vào kỹ thu t m ng n -ron.ậ ạ ự ậ ạ ơ
Hai cách ti p c n đ u là cách ti p c n kinh đi n các đ i tế ậ ầ ế ậ ể ố ượng nh quanả
sát và thu nh n đậ ược ph i tr i qua giai đo n ti n x lý nh nh m tăngả ả ạ ề ử ả ằ
cường ch t lấ ượng, làm n i các chi ti t, ti p theo là trích ch n và bi uổ ế ế ọ ể
di n đ c tr ng Cu i cùng m i là giai đo n nh n d ng Cách ti p c n thễ ặ ư ố ớ ạ ậ ạ ế ậ ứ
3 là hoàn toàn khác Nó d a vào c ch đoán nh n, l u tr và phân bi tự ơ ế ậ ư ữ ệ
đ i tố ượng mô ph ng theo ho t đ ng c a h th n kinh con ngỏ ạ ộ ủ ệ ầ ười Do cơ
ch đ c bi t, các đ i tế ặ ệ ố ượng thu nh n b i th giác ngậ ơ ị ười không c n giaiầ
đo n c i thi n mà chuy n ngay sang giai đo n t ng h p, đ i sách v i cácạ ả ệ ể ạ ổ ợ ố ớ
Nhận dạng khuôn mặt để gắn thẻ trên facebook
Phân biệt hai chữ số viết tay
Nhận dạng giới tính qua ảnh của khuôn mặt
Trích chọn đặctrưngTiền xử lý ảnh
Ảnh gốc
Trang 19Để ứng dụng thực tế cho bài toán nhận dạng và xử lý ảnh thì trong đồ án này
em áp dụng bài toán phân lớp nhị phân để nhận dạng giới tính qua ảnh là nam
hay là nữ
3 Bài toán nh n d ng gi i tính qua nh khuôn m t ậ ạ ớ ả ặ
3.1 Gi i thi u ớ ệ
Vi c phân tích và trích xu t các thông tin c a khuôn m t đệ ấ ủ ặ ược các nhà
khoa h c nghiên c u t nh ng năm 90 c a th k trọ ứ ừ ữ ủ ế ỉ ước Đi u này là do cóề
r t nhi u thông tin b ích đấ ề ổ ược khai thác t m t b c nh khuôn m t, víừ ộ ứ ả ặ
d nh danh tính, gi i tính, c m xúc c a con ngụ ư ớ ả ủ ười, tình tr ng s c kh e.ạ ứ ỏ
Trong s các thông tin đố ược khai thác t nh m t ngừ ả ặ ười thì gi i tính làớ
m t thu c tính quan trong vì nó có khá nhi u ng d ng trong th c tộ ộ ề ứ ụ ự ế
nh đi u tra dân s và th ng kê dân s ư ề ố ố ố
Hệ thống nhận dạng giới tính còn được gọi là một hệ thồng phân lớp giới
tính, về bản chất thì nó là một bài toán phân lớp nhị phân thường có nhiều
bước và mỗi bước có một chức năng khác nhau và kết quả output của bước
này sẽ là input của bước tiếp theo
3.2 Mô hình bài toán nh n d ng gi i tính ậ ạ ớ
Dữ liệu huấn
luyện
Kết quả nhậndạng
Mô hình huấnluyện
Nhận dạng
Huấn luyện
Trích chọn đặctrưng
Dữ liệu nhận
dạng
Trang 20Phần này em sẽ trình bày mô hình nhận dạng giới tính qua ảnh xem ảnh đó là
nam hay nữ Thì đầu tiên là ta đưa bộ dữ liệu vào và chia bộ dữ liệu ra làm hai
phần train và test Quá trình phân lớp được thực hiện theo các bước sau
Bước 1: Huấn luyện mô hình phân lớp dữ liệu
Ta đưa dữ liệu là các bức ảnh đã được gán nhãn vào quá trình phân lớp Trích
chọn đặc trưng cho mỗi bức ảnh Sau đó ta đưa các bức ảnh vào mô hình phân
lớp Sau khi kết thúc cái quá trình huấn luyện, hệ thống sẽ lưu lại các tham số
để phục vụ cho quá trình phân lớp tiếp theo
Bước 2: Phân lớp dữ liệu – thử nghiệm mô hình.
Sau khi xây dựng mô hình huấn luyện dữ liệu ở bước 1: Ta tiến hành phân
lớp với một bức ảnh đưa vào bị che nhãn Ta trích chọn đặc trưng của bức ảnh
vừa mới đưa vào Sau đó đưa bức ảnh bị che nhãn vào tính toán các tham số
của hàm quyết định (các tham số của mô hình huấn luyện) để xác lớp cho bức
ảnh đó
Trang 21CH ƯƠ NG II: THU T TOÁN PHÂN L P NH PHÂN LOGISTIC Ậ Ớ Ị
REGRESSION 1.Gi i thi u ớ ệ
Mô hình h i quy logistic thu c vào bài toán h c giám sát trong Machineồ ộ ọ
Learning
Mô hình h i quy logistic sẽ dùng hàm bi n đ i logarit cho bi n đ u ra đồ ế ổ ế ầ ể
bi n mô hình t quan h phi tuy n tính sang tuy n tính Hay nói cáchế ừ ệ ế ế
khác, nó bi u di n quan h h i quy tuyên tính dể ễ ệ ồ ưới hàm logarit Mô hình
logistic có 1 gi đ nh r ng bi n d đoán có giá tr r i r c N u bi n dả ị ằ ế ự ị ờ ạ ế ế ự
đoán ch l y hai giá tr r i r c, đó là mô hình Binary Logistic Regression.ỉ ấ ị ờ ạ
N u bi n d đoán nhi u h n hai giá tr thì đó là mô hình ế ế ự ề ơ ị Multinomial
Logistic Regression
Trong đồ án này, em chỉ tập trung vào Binary Logistic Regression vì nó r tấ
hay đượ ử ục s d ng trong th c t d đoán: nam/n , có/không, s ng/ch t,ự ế ự ữ ố ế
qua/hay trươt, b b nh/ không b b nh.ị ệ ị ệ
Phương pháp h i quy logistic là m t mô hình h i quy nh m d đoán giá trồ ộ ồ ằ ự ị
đ u raầ r i r c ờ ạ (discrete target variable) y ng v i m t véc-t đ u vàoứ ớ ộ ơ ầ x Vi cệ
này tương đương v i chuy n phân lo i các đ u vàoớ ệ ạ ầ x vào các nhóm y tương
ng
ứ Hay nói cách khác nó là một thuật toán với mô hình dự đoán được sử
dụng khi biến y là phân loại nhị phân với đầu ra là [1] hoặc [0]
2 Ví dụ mô hình LogisticRegreession
Trang 22Hình 7: ví dụ về logistic regression
Gi sả ử HPenguin mu n bi t, kh năng nó sẽ h nh phúc nh th nào d aố ế ả ạ ư ế ự
trên các ho t đ ng hàng ngày c a nó.ạ ộ ủ N u chim cánh c t mu n xây d ngế ụ ố ự
mô hình h i quy logistic đ d đoán h nh phúc d a trên các ho t đ ngồ ể ự ạ ự ạ ộ
hàng ngày c a nó.ủ Chim cánh c t c n c ho t đ ng vui vàụ ầ ả ạ ộ
bu n.ồ Trong thu t ngậ ữ h c máyọ , các ho t đ ng này đạ ộ ược g i là các thamọ
c t m i.ụ ớ
Vì không th s d ng b ng d li u phân lo i trên đ xây d ng h i quyể ử ụ ả ữ ệ ạ ơ ể ự ồ
đ ng, tr ng lộ ọ ượng và m c tiêu tụ ương ng.ứ
Trang 23Các t p d li u c p nh t trông nh th này.ậ ữ ệ ậ ậ ư ế Trước khi đi vào bài toán, hãy
Đi m ho t đ ng gi ng nh s tể ạ ộ ố ư ố ương đương v i ho t đ ngớ ạ ộ
c a chim cánh c t.ủ ụ Đ i v i ho t đ ng ăn m c, đi m ho tố ớ ạ ộ ự ể ạ
đ ng tộ ương ng là 6 và tứ ương t , đ i v i các ho t đ ngự ố ớ ạ ộkhác, đi m s là 3, 7, 3.ể ố
Tr ng lọ ượng:
Các tr ng s gi ng nh các tr ng s tọ ố ố ư ọ ố ương ng v i m c tiêuứ ớ ụ
c th ụ ể
Gi s cho ho t đ ng X1, chúng ta có tr ng s là 0,6.ả ử ạ ộ ọ ố
Nó có nghĩa là đ nói n u chim cánh c t th c hi n ho tể ế ụ ự ệ ạ
đ ng X1, ngộ ười t tin 60% đ nói r ng chim cánh c t sẽự ể ằ ụ
h nh phúc.ạ
N u b n quan sát các tr ng s cho l p m c tiêu thìế ạ ọ ố ớ ụ h nh ạ
phúc là tích c c và các tr ng s cho l p m c tiêuự ọ ố ớ ụ bu n ồ là
tiêu c c.ự
Đi u này là do v n đ chúng tôi đang gi i quy t m t phânề ấ ề ả ế ộ
lo i nh phân.ạ ị Sẽ nói v phân lo i nh phân trong các ph nề ạ ị ầ
ti p theo c a bài này.ế ủ
M c tiêu:ụ
M c tiêu ch là các giá tr nh phân.ụ ỉ ị ị Giá tr 1 đ i di n choị ạ ệ
m c tiêuụ H nh phúc ạ và giá tr 0 đ i di n cho m cị ạ ệ ụ
tiêu Bu n ồ