Tải bản đầy đủ (.docx) (62 trang)

Phân tích không âm của ma trận

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (924.78 KB, 62 trang )

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ
-----------------

Đoàn Thị Như Xuân

PHÂN TÍCH KHÔNG ÂM CỦA MA TRẬN

LUẬN VĂN THẠC SỸ TOÁN HỌC

Hà Nội - 2019


BỘ GIÁO DỤC
VÀ ĐÀO TẠO

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ
-----------------

Đoàn Thị Như Xuân

PHÂN TÍCH KHÔNG ÂM CỦA MA TRẬN

Chuyên ngành: Toán ứng dụng
Mã số: 8460112

LUẬN VĂN THẠC SỸ TOÁN HỌC

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. LÊ HẢI YẾN

Hà Nội – 2019



Lời cam đoan
Tôi xin cam đoan những gì viết trong luận văn là do sự tìm tòi, nghiên cứu
của bản thân và sự hướng dẫn tận tình của cô giáo TS. Lê Hải Yến. Mọi kết
quả nghiên cứu cũng như ý tưởng của tác giả khác, nếu có đều được trích dẫn
cụ thể. Đề tài luận văn này cho đến nay chưa được bảo vệ tại bất kỳ một hội
đồng bảo vệ luận văn thạc sỹ nào và cũng chưa hề được công bố trên bất kỳ
một phương tiện nào. Tôi xin chịu trách nhiệm về những lời cam đoan trên.

Hà Nội, ngày 28 tháng 06 năm 2019
Người cam đoan

Đoàn Thị Như Xuân


Lời cảm ơn
Trước khi trình bày nội dung chính của luận văn, tôi xin bày tỏ lòng biết ơn
sâu sắc tới cô giáo TS. Lê Hải Yến, người đã dành nhiều thời gian, công sức
để hướng dẫn và tận tình chỉ bảo tôi trong suốt quá trình thực hiện luận văn.

Nhân đây tôi xin được gửi lời cảm ơn đến ban lãnh đạo và các thầy
cô giáo, các cán bộ Học viện Khoa học và công nghệ nói chung và
Viện Toán nói riêng đã tạo điều kiện thuận lợi nhất, giúp đỡ tôi trong
thời gian học tập và nghiên cứu tại viện.
Tôi xin cảm ơn các bạn trong chuyên ngành Toán ứng dụng đã
động viên và có những ý kiến trao đổi quý báu trong thời gian qua.
Cuối cùng tôi xin bày tỏ lòng biết ơn gia đình, người thân và các bạn
đồng nghiệp đã hết sức thông cảm, chia sẻ và tạo điều kiện tốt nhất cho tôi
để tôi có thể học tập, nghiên cứu và hoàn thành những công việc của mình.


Hà Nội, ngày 28 tháng 06 năm 2019
Học viên

Đoàn Thị Như Xuân


Mục lục
Danh mục ký hiệu . . . . . . . . . . . . . . . . . . . . . . . . . . .
MỞ ĐẦU
1 MỘT SỐ KIẾN THỨC CƠ SỞ
1.1

ĐẠISỐTUYẾNTÍNH......
1.1.1
1.1.2
1.1.3

1.2

LÝTHUYẾTTỐIƯU........
1.2.1
1.2.2
1.2.3

2 PHÂN TÍCH KHÔNG ÂM CỦA MA TRẬN
2.1

PHÁTBIỂUBÀITOÁN ...

2.2


ỨNG DỤNG TRONG PH
2.2.1
2.2.2

2.3

ĐIỀUKIỆNCẦNTỐIƯU .
2.3.1
2.3.2
2.3.3


3 THUẬT TOÁN VÀ THỬ NGHIỆM SỐ
3.1

THUẬT TOÁN BÌNH PH

3.2

THUẬTTOÁNLEEVÀSE
3.2.1
3.2.2

3.3

THỬ NGHIỆM SỐ VỚI

MẶT...............................
4 KẾT LUẬN



R

Rn
Rm n
m n
R+
A

A

i:
:j

AT
In
trace(A)
span(V )
rank(A)

kxk
kAkF
hA; Bi
A B
rf
arg min f(x) tập nghiệm của bài toán min f(x)
x 2X



2

MỞ ĐẦU
Trong thời đại hiện nay, dữ liệu chiếm một vai trò vô cùng quan trọng. Cứ mỗi
giây trôi qua, những người sử dụng internet tạo ra và chia sẻ hàng tỉ các thông tin
khác nhau: hình ảnh, video, kinh nghiệm du lịch, mua sắm, ... Việc khai thác và sử
dụng những thông tin hay dữ liệu này trở thành một vấn đề thu hút được sự quan
tâm của rất nhiều người. Một trong những phương pháp khai thác dữ liệu là giảm
độ phức tạp của dữ liệu trong khi vẫn giữ được những yếu tố cần thiết. Bên cạnh
đó, để nghiên cứu các loại dữ liệu khác nhau, người ta cũng cần các mô hình
khác nhau để thu được các thông tin riêng của dữ liệu.

Luận văn nghiên cứu bài toán phân tích một ma trận không âm cho trước
thành tích của hai ma trận không âm khác: Cho một ma trận không âm A cỡ
m n (tức là aij 0) và số nguyên dương r (r min(m; n)). Tìm hai ma trận không
m

r

n

r

T

âm U 2 R + và V 2 R + sao cho U V xấp xỉ ma trận A. Người ta có thể
dùng nhiều cách để đo sự khác nhau giữa ma trận dữ liệu A và ma trận mô
hình U V

T


. Nhưng phương pháp được dùng nhiều nhất là chuẩn Frobenius.

Khi đó, bài toán phân tích ma trận không âm (viết tắt là NMF) được phát biểu
lại như sau: Cho một ma trận không âm A cỡ m n và một số nguyên dương

r < min(m; n), giải bài toán
min
U2 R +m r V 2R+n r 2

Bài toán phân tích ma trận không âm được phát biểu và nghiên cứu lần đầu
tiên vào năm 1994 bởi Pateero và Tapper [5]. Từ đó đến nay, các nhà toán học đã
đưa ra nhiều thuật toán tìm phân tích không âm của ma trận. Trong đó, phải kể
đến thuật toán bình phương tối thiểu luân phiên [4] và thuật toán của Lee và
Seung [6]. Bài toán này có ứng dụng trong nhiều lĩnh vực như nhận diện khuôn
mặt, khai thác dữ liệu văn bản, phân loại ung thư, ... Trong nhận diện khuôn mặt,
mỗi cột của ma trận dữ liệu A thường được cho tương ứng với một bức ảnh khuôn
mặt (A(i; j) là cường độ của điểm ảnh thứ i trong bức ảnh khuôn mặt thứ j). Khai
triển NMF sinh ra hai ma trận (U; V ) trong đó mỗi cột của U tương ứng với một
đặc điểm nào đó của khuôn mặt như mắt, mũi, miệng... và


3

các phần tử của V thể hiện tầm quan trọng của đặc điểm đó trong
từng bức ảnh. Trong khai thác văn bản, mỗi cột của ma trận không âm
A tương ứng với một tài liệu và mỗi hàng ứng với một từ. Phần tử (i; j)
của ma trận A có thể bằng số lần xuất hiện của từ thứ i trong tài liệu
thứ j. Khai triển NMF có thể giúp ta cho ta biết các chủ đề xuất hiện
trong toàn bộ dữ liệu đồng thời phân loại các tài liệu theo chủ đề.

Cấu trúc của luận văn gồm có ba chương:
Chương 1. Một số kiến thức cơ sở: Nội dung của chương bao
gồm một số kiến thức đại số tuyến tính và lý thuyết tối ưu nhằm phục
vụ cho các chương sau.
Chương 2. Phân tích không âm của ma trận: Trong chương này, chúng tôi
trình bày nội dung bài toán phân tích không âm của ma trận, các ứng dụng trong
phân tích dữ liệu. Chúng tôi cũng phát biểu điều kiện cần tối ưu cho bài toán.

Chương 3. Thuật toán và thử nghiệm số: Hai thuật toán được trình bày
trong chương này là thuật toán bình phương tối thiểu luân phiên và quy tắc
nhân của Lee và Seung. Chúng tôi nghiên cứu bài toán nhận diện khuôn mặt
và ứng dụng kĩ thuật phân tích không âm của ma trận vào bài toán cụ thể này.


4

CHƯƠNG 1

MỘT SỐ KIẾN THỨC CƠ SỞ

Chương này trình bày lại một số khái niệm của đại số tuyến tính như
tích trong, tích Hadamard, chuẩn của vector, chuẩn của ma trận, ma trận
không âm. Bên cạnh đó, chúng tôi cũng trình bày một số khái niệm và kết
quả cơ bản trong Lý thuyết tối ưu để phục vụ các chương sau như tập lồi
và hàm lồi, điều kiện tối ưu, điều kiện Kuhn-Tucker. Nội dung của
chương được tham khảo chủ yếu từ các tài liệu [1],[2],[4].

1.1 ĐẠI SỐ TUYẾN TÍNH

1.1.1 Một số ma trận cơ bản, tích trong và tích Hadamard

Cho A là một ma trận cỡ m n với các phần tử ở hàng thứ i cột thứ j là aij.
Khi đó, ta viết: A = (aij)m n , trong đó: i = 1; 2; :::; m; j = 1; 2; :::; n.
Ta kí hiệu dòng thứ i của ma trận A bởi A i: và cột thứ j của ma trận A bởi A :j. Ma
T

trận chuyển vị của ma trận vuông A được kí hiệu là A ; A được gọi là
T

đối xứng nếu A = A .
T

Ma trận vuông A cấp n được gọi là ma trận trực giao nếu A A = In.
D là ma trận đường chéo nếu D là ma trận vuông có aij = 0 với mọi i
n
6= j. Với x = (x1; x2; :::; xn) 2 R , Dx là ma trận đường chéo với các
phần tử trên đường chéo là x1; x2; :::; xn.
T

Ma trận A vuông cấp n được gọi là nửa xác định dương nếu x Ax 0
n

T

n

8x 2 R . A được gọi là xác định dương nếu x Ax > 0 với mọi x 2 R ; x
6= 0. Nếu A đối xứng và nửa xác định dương thì tất cả các giá trị riêng
của A đều không âm.



5

Vector hóa của ma trận A 2 R

m n

là:
0

A

vec(A) =

:1
B. C
.. 2 Rmn:

B

A

1

C

@

A

:n


Ví dụ 1.1.1. Cho ma trận A =
B

cC
Vector hóa ma trận A là: vec(A) = B C :
B bC
@A
B

C

d

Bằng cách vector hóa ma trận, ta có thể xem một ma trận tổng quát
A cỡ m n như một vector: vec(A) với m n thành phần và có thể xác định
tích trong của hai ma trận thực cùng cỡ như sau:
T

hA; Bi = vec(A) vec(B) =

X

T

aijbij = trace A B :

ij




đó, vết của ma trận vuông A (được kí hiệu trace(A)) là tổng của tất

cả các phần tử đường chéo của ma trận A. Điều này suy ra một mối
quan hệ mà chúng ta sẽ dùng ở chương sau:
Mệnh đề 1.1.1.
T

T

T

T

T

T

hI; ABCi = A ; BC = B A ; C = C B A ; I = trace (ABC) :
Chứng minh. Ta có:
T

hI; ABCi = vec(I) vec(ABC) = trace (IABC) = trace (ABC) : (1.1)
T T

T

A ;BC

B A ; C = vec B A



6

= trace
T

T

T

T

T

T

T

T T

C B A ; I = vec C B A
T T

vec(I)

trace (C B A ) I

=
= trace

Vậy từ (1.1),(1.2),(1.3),(1.4) ta có điều phải chứng minh.

Tích Hadamard của hai ma trận A và B cùng cỡ m
hiệu A
B ) là
một ma trận cùng cỡ C với cij = aijbij.
Ví dụ 1.1.2.

B C
@

0110

A

Mệnh đề 1.1.2. Với A; B; C là các ma trận cỡ m n, ta có:

(i) A B = B A ;
(ii) A (B C) = (A

B)

C;
T

(iii) A (B + C) = (A B) + (A C); (iv) A
T
T
B = (A B) .
Chứng minh.


(i) A B = (a b )m n = (b a )m n = B A.
ij ij

ij ij

(ii) A (B C) = (aij(bijcij))m n = ((aijbij)cij)m n = (A B) C.
(iii) A (B + C) = (aij(bij + cij))m n = (aijbij)m n + (aijcij)m n
=(A B)+(A
C).

n (kí


(iv) A

T

T

B = (ajibji)m

n

T

= (aijbij)

m n


= (A

T

B) .


7

1.1.2 Chuẩn
n

n

Định nghĩa 1.1.1. Một chuẩn vector trên R là một hàm f : R ! R thỏa
mãn các tính chất sau:
n

(i) f(x) 0; 8x 2 R ;
f(x) = 0 , x = 0;
n

(ii) f(x + y) f(x) + f(y); 8x; y 2 R ;
n

(iii) f( x) = j j f(x); 8 2 R; 8x 2 R . Chuẩn
của x thường được ký hiệu là kxk
T

Cho vector x = (x1; x2; :::; xn) , một số chuẩn vector thông dụng là:

Chuẩn p (p 1)
p

p

kxkp = (jx1j + ::: + jxnj )p1 :
Chuẩn 1 (p = 1)

kxk1 = jx1j + ::: + jxnj:
Chuẩn 2 (p = 2) hay gọi là chuẩn Euclide

2

kxk = jx1j + ::: + jxnj

2

Chuẩn 1 (p = 1)

kxk1 = max (jx1j ; jx2j ; :::; jxnj) :
T

Ví dụ 1.1.3. Cho vector x = (1; 2; 4) .
Chuẩn 1 của vector x là: kxk1 = 1 + 2 + 4 = 7.
Chuẩn Euclide của vector x là:
Chuẩn
mn
mn
Định nghĩa 1.1.2. Chuẩn ma trận trên R
là hàm số f : R

! R thỏa
mãn các tính chất sau:


m n

(i) f(A) 0; 8A 2 R
f(A) = 0 , A = 0.

;


8

m n

(ii) f(A + B) f(A) + f(B); 8A; B 2 R
mn

(iii) f( A) = j j f(A); 8 2 R; 8A 2 R

;

. Kí

hiệu: f(A) = kAk :

Cho ma trận A = (aij)m n , một số chuẩn ma trận thông dụng là:
Chuẩn 1 (chuẩn cực đại theo cột)


A

k
Chuẩn Frobenius. Kí hiệu:kAkF
kAk =

uX X

F

v

um

ja j2:

n

t

ij

i=1 j=1

Chuẩn 1 (chuẩn cực đại theo hàng)

A

k
Ví dụ 1.1.4. Cho ma trận


4 2

1 j 3 i=1

kAk1 = max

1 j

=

P

1

B
@

C
A

3

0 1 5
a) Chuẩn 1 của ma trận A là:

0

3
jaijj = max (ja1jj + ja2jj + ja3jj)


3

max (ja11j + ja21j + ja31j ; ja12j + ja22j + ja32j ; ja13j + ja23j +

ja33j )

=
=

max (4 + 1 + 0; 2 + 3 + 1; 3 + 2 + 5)
max(5; 6; 10) = 10.

b)

Chuẩn Frobenius của ma trận A là:

kAkF =

2


= j4j
p
= 69.


c) Chuẩn 1 của

kAk1 =

=

max (ja11j + ja12j + ja13j ; ja21j + ja22j + ja23j ; ja31j + ja32j +

ja33j )
= max (4 + 2 + 3; 1 + 3 + 2; 0 + 1 + 5)

=

max(9; 6; 6) = 9.

1.1.3 Ma trận không âm
Định nghĩa 1.1.3. Ma trận A có tất cả các phần tử không âm được gọi là ma
m n

trận không âm. Kí hiệu: A 0. R +

m

là tập hợp các ma trận không âm cỡ

n.
Chúng ta viết: A 0 nếu aij

0 8 i; j; A > 0 nếu aij > 0 8 i; j.

Một ma trận không âm gọi là chấp nhận được theo hàng nếu nó không
có hàng bằng không. Tương tự, một ma trận không âm gọi là chấp nhận
được theo cột nếu nó không có cột bằng không. Một ma trận không âm
gọi là ngẫu nhiên cột (hàng) nếu tất cả các tổng cột (hàng) bằng một.


Một trong những kết quả quan trọng liên quan đến ma trận không
âm được trình bày sau đây:
Định lý 1.1.1. Cho A là một ma trận vuông, không âm. Giá trị riêng lớn nhất
của A là không âm và tồn tại một vector riêng không âm tương ứng với nó.

Vector này thường gọi là vector Perron của ma trận không âm.
Cho một tập con V

R

m n

và ma trận A 2 R

m n

, phần tử gần nhất của

V đến A (tương ứng với khoảng cách) được gọi là hình chiếu của A trên V , kí
hiệu bởi PV (A). Nếu ta xét V là tập các ma trận không âm và khoảng cách xem
xét là khoảng cách Euclide (chuẩn Frobenius), hình chiếu của A được kí hiệu là



1
Ví dụ 1.1.5. Cho ma trận A =

2


Hình chiếu của ma trận A lên R+

22

là: [A]+ =

1.2 LÝ THUYẾT TỐI ƯU

1.2.1 Tập lồi và hàm lồi
Định nghĩa 1.2.1. Một tập con C

n

R được gọi là tập lồi nếu 8x1; x2 2

C; 8 2 [0; 1] ta có:
x1 + (1

)x2 2 C:

Ví dụ 1.2.1. Các nửa không gian là các tập lồi. Các tam giác và các
hình tròn trong mặt phẳng là tập lồi. Tập hợp các ma trận không âm cỡ
m n

mn(R +

) cũng là một tập lồi.

m n


Tập R + là một trong những đối tượng chính được sử dụng trong
luận văn này.
n

Định nghĩa 1.2.2. Một tập C R được gọi là nón lồi nếu nó đóng với
phép cộng và phép nhân với một số không âm.

u; v 2 C ) u + v 2 C;
u 2 C;

0)

u 2 C:

n

Ví dụ 1.2.2. R + là nón lồi.
Định nghĩa 1.2.3. Một nón đa diện là một nón lồi được sinh bởi một
n

tập các vector V = fv1; v2; :::; vkg 2 R tức là:
(k
X

)

C =ivi j i 2 R+


:

i=1


11

n

Định nghĩa 1.2.4. Giả sử tập C R là tập lồi. Hàm số f : C ! R. Hàm f
được gọi là hàm lồi trên C nếu 8x1; x2 2 C; 8 2 [0; 1] ta có:

f ( x1 + (1 )x2) f(x1) + (1
Hàm f được gọi là hàm lồi chặt trên C nếu 8

) f (x2):
2 (0; 1); 8x1 6= x2 2 C ta có:

f ( x1 + (1 )x2)
) f (x2):

Mệnh đề 1.2.1. Cho k : k là một chuẩn tương ứng với tích vô hướng h:; :i trên
n

R . Khi đó:
n

k : k là hàm lồi trên R .

(i)


2

n

(ii) k : k là hàm lồi trên R .
Chứng minh.
n

(i) Với mọi x; y 2 R , 2 [0; 1], ta có:
k x + (1
)yk k xk + k(1
)yk = kxk + (1

) kyk :

n

(ii) Với mọi x; y 2 R , 2 [0; 1], ta có:
2

k x + (1
2

)yk = h x + (1

2

= kxk + 2 (1

) hx; yi + (1


)y; x + (1
2

2

)y i

) kyk

+2 (1

= kxk

2

+ (1

Khai triển và giản ước ta được kết quả sau:
2

2

2

kxk + (1 )kyk + ( 1)kxk + ( 1)kyk
2
2
2
= kxk + (1 )kyk + ( 1)kx yk

2

2

kxk + (1

)kyk :

1.2.2 Điều kiện tối ưu
Xét bài toán:

min f(x)
x2C

với C

n

R , f : C ! R.

2

2

)kyk + (


12

Định nghĩa 1.2.5. Điểm x 2 C được gọi là cực tiểu địa phương của bài

toán (1.5) nếu 9" > 0 sao cho 8x 2 C \ B(x ; ") ta có: f(x) f(x ): Điểm x 2
C được gọi là cực tiểu địa phương ngặt của bài toán (1.5) nếu

8x 2 C \ B(x ; ") và x 6= x ta có: f(x) > f(x ):
Định nghĩa 1.2.6. Điểm x 2 C được gọi là cực tiểu toàn cục của bài
toán (1.5) nếu 8x 2 C ta có: f(x) f(x ): Điểm x 2 C được gọi là cực tiểu
toàn cục ngặt của bài toán (1.5) nếu 8x 2 C, x 6= x ta có: f(x) > f(x ):
Tập các hướng chấp nhận được tại x 2 C là:
n

Z(x ) = fd 2 R j9 > 0 : x + d 2 C; 8 0

g:

n

Định lý 1.2.1. Giả sử tập C R và f là một hàm khả vi trên C. Nếu x là
cực tiểu địa phương của f trên C thì:
T

d rf(x )

0; 8d 2 Z(x ):

Chứng minh. Lấy d 2 Z(x ) . Khi đó, tồn tại

sao cho 8 : 0

thì


x + d 2 C:
x là cực tiểu địa phương có nghĩa là tồn tại " > 0 sao cho: 8x 2 C \ B(x ; ")
thì f(x)
Lấy 1 = min
Khi đó, 8 01 ta có:

Nên

Ta lại có: d

T


T

Định nghĩa 1.2.7. Điểm x 2 C thỏa mãn: d rf(x ) 0; 8d 2 Z(x ) được
gọi là điểm dừng của bài toán (1.5).


13

Mệnh đề 1.2.2. Giả sử x 2 int(C) và x là điểm dừng của bài toán (1.5). Khi
n

đó: Z(x ) = R và rf(x ) = 0.
Chứng minh. Mệnh đề này được suy ra trực tiếp từ Định lý 1.2.1.
n

Định lý 1.2.2. Giả sử C R là tập lồi và f là hàm lồi. Khi đó, mọi cực
tiểu địa phương của bài toán (1.5) cũng là cực tiểu toàn cục.

Chứng minh. Giả sử x 2 C là cực tiểu địa phương của bài toán (1.5).
Theo định nghĩa, tồn tại " > 0 sao cho với mọi y 2 B(x ; ") \ C ta có:
f(y)
f(x ):
Với mọi x 2 C, đặt d = x
x . Khi đó tồn tại 2 [0; 1] sao cho x + d 2
B(x ; ") \ C. Nên f(x + d)
f(x ):
Lại có x + d = x + (x
x ) = x + (1
)x :
Do f lồi trên C nên f(x + d) = f( x+(1
)x )
f(x)+(1
)f(x ).
Mà f(x + d)
f(x ) nên f(x )
f(x)+(1
)f(x ) , f(x )
f(x).
Điều này đúng với mọi x 2 C.
Vậy x là cực tiểu toàn cục của bài toán (1.5).

1.2.3 Điều kiện Kuhn-Tucker
Xét bài toán tối ưu

min f(x)
x2C

với C = fx : hi(x) = 0; gj(x) 0g: Trong đó: hi(x) = 0 (i = 1; 2; :::; k) là k ràng

buộc đẳng thức và gj(x) 0 (j = 1; 2; :::; m) là m ràng buộc bất đẳng thức.
Ràng buộc của bài toán này được viết trong hàm Lagrange như sau:
k

X

L(x; 1; :::; k; 1; :::;

m)

Trong đó i (i = 1; :::; k) và j

= f(x) +

i

=1

0 (j = 1; :::; m) gọi là nhân tử Lagrange.

Định lý 1.2.3. Cho x là cực tiểu địa phương của bài toán (1.7). Giả sử
n

rằng f; hi; gj : R ! R là các hàm khả vi liên tục; rhi(x ) và rgj(x ) là độc lập


×