Giới thiệu về ICA
Phân tích thành phần độc lập (ICA) là một phương pháp thống kê nhằm tách tín hiệu nhiều chiều thành các thành phần độc lập ẩn sâu trong dữ liệu Kỹ thuật này dựa trên giả thuyết rằng tồn tại các nguồn tín hiệu với tính chất nongaussianity và độc lập thống kê ICA có nhiều ứng dụng trong các lĩnh vực như xử lý tín hiệu, kinh tế học và sinh tin học.
Trong một phòng có ba người đang trò chuyện, việc sử dụng ba microphone đặt ở ba vị trí khác nhau sẽ thu được ba tín hiệu âm thanh đồng thời Cường độ âm thanh tại mỗi microphone được biểu diễn bằng các hàm x1(t), x2(t) và x3(t), trong đó x1, x2, x3 đại diện cho cường độ âm thanh và t là thời gian Các tín hiệu này có thể được mô tả bằng hệ phương trình tuyến tính như sau: x1(t) = a11s1 + a12s2 + a13s3, x2(t) = a21s1 + a22s2 + a23s3, và x3(t) = a31s1 + a32s2 + a33s3.
Các chỉ số a 11, a 12, a 13, a 21, a 22, a 23, a 31, a 32, và a 33 phản ánh khoảng cách giữa microphone và người nói, giúp xấp xỉ ba nguồn tín hiệu gốc (tiếng nói của ba người trong phòng) từ các tín hiệu thu được x 1(t), x 2(t), và x 3(t) Bài toán này được gọi là bài toán cocktail-party Qua thời gian, ta có thể bỏ qua thời gian trễ và nhiễu bổ sung từ mô hình trộn đơn giản.
Hình 1 2 Tín hiệu sau trộn
Vấn đề ở đây là chúng ta cần khôi phục lại tín hiệu gốc như như hình 1.1 từ tín hiệu trộn như hình 1.2.
Khi chúng ta đã biết các hệ số a ij, việc giải hệ phương trình tuyến tính sẽ trở nên đơn giản và cho phép tìm ra các tín hiệu ban đầu Tuy nhiên, trong trường hợp này, do không biết các hệ số a ij, bài toán trở nên phức tạp hơn.
Kỹ thuật phân tích thành phần độc lập (ICA) cho phép xấp xỉ các thành phần độc lập từ tín hiệu gốc Nhờ vào phương pháp này, chúng ta có thể tách biệt các tín hiệu đã bị trộn lẫn, như x1(t), x2(t), và x3(t), dựa trên thông tin độc lập của từng tín hiệu.
Hình 1 3 Tín hiệu phục hồi
Phân tích thành phần độc lập (ICA)
Để định nghĩa ICA ta có thể dùng mô hình thống kê “làm chậm biến số”-
”latent varialbe” Giả sử, ta quan sát n tổ hợp tuyến tính x 1 , x 2 , x 3 ,… x n của n thành phần độc lập. x j = a j1 s 1 +a j2 s 2 + a j3 s 3 + …+a jn s n (1.1 )
Trong mô hình ICA, chúng ta bỏ qua chỉ số thời gian t và giả sử mỗi tổ hợp x_j tương ứng với mỗi thành phần độc lập s_k là biến ngẫu nhiên, thay cho tín hiệu theo thời gian Giá trị x_j(t), các tín hiệu thu được từ microphone trong bài toán cocktail-party, được xem là mẫu của biến số ngẫu nhiên Để đơn giản hóa, giả sử cả biến trộn lẫn và thành phần độc lập đều có giá trị kỳ vọng bằng 0, và nếu không đúng, ta có thể đưa các biến số quan sát x_j về giá trị trung tâm bằng cách trừ với kỳ vọng Điều này cho phép sử dụng ký hiệu ma trận vector thay vì dạng tổng như các công thức trước đó Với vector ngẫu nhiên x, các thành phần của nó là tổ hợp x_1, x_2, , x_n, tương tự như vector ngẫu nhiên s với các thành phần s_1, s_2, , s_n Quan sát ma trận A với các phần tử a_ij, tất cả các vector được hiểu như vector cột; do đó, x^τ là chuyển vị của x, là vector hàng Sử dụng ký hiệu ma trận vector, mô hình hỗn hợp trên có thể được viết lại là x = A s.
Mô hình phân tích các thành phần độc lập (ICA) mô tả cách dữ liệu quan sát được tạo ra từ quá trình trộn các đối tượng độc lập Các đối tượng này là biến số ẩn, không thể quan sát trực tiếp, và ma trận trộn cũng không được biết Chúng ta chỉ có thể quan sát vector ngẫu nhiên x và phải sử dụng nó để xấp xỉ cả ma trận A và các thành phần s ICA bắt đầu từ giả định rằng các thành phần s i là độc lập thống kê và có phân bố không Gauss, mặc dù mô hình cơ bản không yêu cầu biết phân bố này Chúng ta giả thiết rằng ma trận trộn chưa biết là ma trận vuông và từ đó xấp xỉ ma trận A, cho phép tính toán ma trận ngược W và các thành phần độc lập.
S=W x (1.4) ICA là một phương pháp tương tự như "phân chia nguồn mù" (BBS) và phân chia tín hiệu chưa biết "Nguồn" đề cập đến các tín hiệu gốc, là các thành phần độc lập, giống như trong bài toán cocktail-party "Mù" có nghĩa là thông tin hạn chế ICA có khả năng ứng dụng rộng rãi trong quá trình phân chia nguồn mù.
Trong nhiều ứng dụng, việc giả định có nhiễu trong quá trình đo đạc là cần thiết, dẫn đến việc phải thêm thành phần nhiễu vào mô hình tính toán Tuy nhiên, để đơn giản hóa, đôi khi chúng ta có thể bỏ qua thành phần nhiễu này.
*Các điểm không xác định trong ICA:
Trong mô hình ICA (1.2), chúng ta có thể thấy các điểm không xác định như sau:
Chúng ta không thể xác định thành phần biến của các thành phần độc lập do sự không biết của S và A Phép nhân vô hướng của nguồn s i có thể khử bằng cách chia cho cột tương ứng a i của A Do đó, cần hiệu chỉnh biên độ của thành phần độc lập, giả sử mỗi nguồn có thành phần biến số đơn vị Ma trận A sẽ được điều chỉnh theo phương pháp giải ICA để khắc phục các hạn chế này Chúng ta có thể loại bỏ những dấu hiệu bất định bằng cách nhân thành phần độc lập với -1 mà không ảnh hưởng đến mô hình tính, và trong hầu hết các ứng dụng, yếu tố dấu không có nghĩa.
Chúng ta không thể xác định thứ tự của các thành phần độc lập do S và A không được biết Trật tự của phép tính trong công thức x = A P −1 P S có thể thay đổi tùy ý, cho phép bất kỳ thành phần độc lập nào được coi là thành phần đầu tiên Ma trận hoán vị P và phép biến đổi ngược của nó có thể được thay thế trong công thức này, trong đó các phần tử của P S là các thành phần biến độc lập gốc s j nhưng theo thứ tự khác Ma trận A P −1 là một ma trận trộn mới chưa được xác định, được sử dụng để giải bài toán ICA.
Sự độc lập thống kê
Các phân bố xác suất đều có giả định rằng kỳ vọng bằng 0 Nếu kỳ vọng không bằng 0, ta cần thực hiện việc qui tâm bằng cách trừ đi kỳ vọng của phân bố Cần lưu ý rằng hiệp phương sai chính là tương quan khi kỳ vọng bằng 0.
0 Đối với một vector ngẫu nhiên x ma trận hiệp phương sai là:
C x x = E { ( x−m x )( x−m x ) τ } (1.5 ) Trong đó E {.} là toán tử lấy kỳ vọng, m x là vector trung bình Hiệp phương sai của hai vector ngẫu nhiên x 1 , x 2 (có kỳ vọng bằng không) là:
C x 1 x 2 = E { x 1 x 2 } (1.6) Khi C x 1 x 2 =0 hai vector bất tương quan (uncorrelated) Đối với vector ngẫu nhiên x khi các thành phần x i của nó bất tương quan thì:
Trong đó D là ma trận chéo n×n, với các phương sai của các thành phần nằm trên đường chéo chính.
Để ước lượng các thành phần độc lập trong phân tích thành phần độc lập (ICA), tính bất tương quan không đủ; chúng ta cần một đặc tính mạnh hơn là sự độc lập thống kê Điều này có nghĩa là khi biết một thành phần, ta không thể suy ra các thành phần còn lại Hai vector ngẫu nhiên x1 và x2 được coi là độc lập thống kê nếu hàm mật độ xác suất liên kết p(x1, x2) bằng tích của hai hàm mật độ xác suất riêng biệt p(x1) và p(x2) Đối với nhiều vector, sự thừa số hóa cũng diễn ra tương tự Định nghĩa này dẫn đến một đặc tính quan trọng của các biến ngẫu nhiên, cho phép chứng minh rằng các biến đổi phi tuyến f(x1) và f(x2) trên hai vector ngẫu nhiên này có thể được thực hiện theo cách nhất định.
Sự độc lập có thể thừa số hóa tương quan phi tuyến, điều này nhấn mạnh vai trò quan trọng của các phi tuyến trong ICA Khi đặt f(x₁) = x₁ và f(x₂) = x₂, ta nhận thấy rằng sự độc lập bao gồm cả bất tương quan, mặc dù bất tương quan không đồng nghĩa với độc lập Nếu giả sử s trong phương trình (1.2) là độc lập thống kê, thì các tín hiệu nguồn sᵢ sẽ là các thành phần độc lập Chính nhờ vào sự độc lập thống kê, chúng ta có khả năng phân ly các tín hiệu nguồn s.
1.3.3 Phi Gauss là độc lập
Mô hình ICA yêu cầu các thành phần độc lập phải có tính phiGauss, nghĩa là không được có phân bố theo dạng Gauss.
Tính phi Gauss của các biến ngẫu nhiên Gauss là do chúng chỉ được xác định bởi các thống kê bậc một (trị trung bình) và bậc hai (phương sai), trong khi các thống kê bậc cao hơn bằng 0 Mô hình ICA cần các thống kê bậc cao hơn của các thành phần độc lập để thực hiện việc phân ly và ước lượng các thành phần độc lập Do đó, tính phi tuyến và tính phi Gauss dẫn đến sự độc lập thống kê.
1.3.4 Các giả sử trong mô hình ICA
Mô hình ICA tuyến tính cơ bản yêu cầu các giả thiết để phân ly các thành phần độc lập, bao gồm: các nguồn phải độc lập thống kê, nghĩa là việc biết một nguồn không thể suy ra các nguồn còn lại Các hàm phân bố xác suất của các nguồn cần có kỳ vọng bằng 0, và không có nguồn nào được phép có phân bố Gauss, ngoại trừ một thành phần có thể có phân bố Gauss.
Ma trận trộn A là ma trận vuông tức số lượng nguồn và số lượng trộn bằng nhau Nếu không phải vậy, bài toán sẽ khó hơn.
Ước lượng ICA
Ước lượng ICA là một công việc khá chi li Người ta đã phát triển nhiều cách để giải quyết bài toán ở phần 1:
- Cực đại hóa tính phi Gauss (nongaussianity)
- Ước lượng khả năng cực đại (maximum likelihood)
- Cực tiểu hoá thông tin hỗ tương (mutual information)…
Trong các phương pháp tối ưu hóa, bước đầu tiên là xác định hàm đối tượng (hay còn gọi là hàm trị giá) để tiến hành tối ưu hóa Mục tiêu là cực đại hóa hoặc cực tiểu hóa hàm đối tượng này, nhằm ước lượng các thành phần độc lập một cách hiệu quả.
Theo định lý giới hạn trung tâm, tổng của nhiều biến ngẫu nhiên sẽ có phân bố gần với phân bố Gauss hơn so với bất kỳ biến ngẫu nhiên gốc nào Trong mô hình ICA, vector ngẫu nhiên x là sự kết hợp tuyến tính của các vector nguồn s, với giả định rằng các nguồn này độc lập Khi các nguồn được trộn lại, chúng trở nên gần với phân bố Gauss hơn Ngược lại, nếu quá trình trộn được đảo ngược, các tín hiệu thu được sẽ ít mang tính Gauss hơn Do đó, ước lượng ICA nhằm mục tiêu tối thiểu hóa tính Gauss, tức là tối đa hóa tính phi Gauss, điều này giúp thu được các thành phần độc lập.
1.4.1 Đo tính phi Gauss bằng kurtosis Đầu tiên là phép đo dựa trên kurtosis của một biến ngẫu nhiên y có kỳ vọng bằng 0 là cumulant bậc bốn: kurt ( y ) = E { y 4 } −3 E { ( y 2 ) 2 } (1.10 )
Thật ra vì ta giả sử y có phương sai đơn vị, nên kurtosis là: kurt ( y )=E { y 4 }−3
Kurtosis là phiên bản chuẩn hóa của momen thứ tư E{y^4} Đối với biến ngẫu nhiên có phân bố Gauss, momen thứ tư bằng 3 E{(y^2)^2}, dẫn đến kurtosis bằng 0 Ngược lại, hầu hết các biến ngẫu nhiên không phải Gauss sẽ có giá trị kurtosis khác.
Kurtosis dương biểu thị biến ngẫu nhiên có phân bố siêu Gauss, trong khi kurtosis âm tương ứng với biến ngẫu nhiên có phân bố dưới Gauss Phân bố siêu Gauss không có hình dạng chuông như phân bố Gauss, mà tăng nhanh ở trung tâm giống như phân bố Laplace Ngược lại, phân bố dưới Gauss không nhô lên ở phần giữa như phân bố Gauss, mà dần tiến đến phân bố đều với biên độ rất nhỏ ở xa trung tâm Hình ảnh minh họa dưới đây cho thấy rõ sự khác biệt này.
Hình 1 4 Phân bố siêu Gauss
Việc sử dụng kurtosis để đo tính phi Gauss gặp một số bất lợi, đặc biệt khi các giá trị này được tính từ các mẫu quan sát Kurtosis dễ bị ảnh hưởng bởi các giá trị biên (outlier) xuất hiện ở hai đuôi của phân bố, dẫn đến kết quả không chính xác.
1.4.2 Đo tính phi Gauss bằng Negentropy
Negentropy là một đại lượng quan trọng trong các đo lường phi Gauss, dựa trên lý thuyết thông tin gọi là entropy vi sai Entropy của một biến ngẫu nhiên đo lường lượng thông tin trung bình của nó; càng ngẫu nhiên và không có cấu trúc, entropy càng lớn Ngược lại, các biến có cấu trúc chặt chẽ sẽ có entropy gần với chiều dài mã hóa của biến ngẫu nhiên.
Entropy (vi sai) H của vector ngẫu nhiên y có hàm phân bố f ( y ) định nghĩa như sau:
H(y) = - ∑ P(y = a_i) log P(y = a_i) là định nghĩa nổi tiếng dùng để tổng hợp các biến hoặc vector ngẫu nhiên có giá trị liên tục Trong trường hợp này, khái niệm được gọi là entropy vi phân Entropy vi phân của vector ngẫu nhiên y với mật độ f(y) được thể hiện qua công thức này.
H(y) = - ∫ f(y) log f(y) dy Một đặc tính quan trọng của entropy là biến ngẫu nhiên Gauss có entropy lớn nhất trong số các biến ngẫu nhiên có cùng phương sai Điều này cho thấy entropy và negentropy, được định nghĩa dựa trên entropy, có thể được sử dụng để đo lường tính phi Gauss của một biến ngẫu nhiên Thực tế, điều này chỉ ra rằng phân bố Gauss là “ngẫu nhiên nhất” hay ít cấu trúc nhất trong tất cả các phân bố.
Entropy là nhỏ khi các phân bố tập trung chủ yếu vào một số giá trị nhất định, dẫn đến biến số hội tụ và hàm mật độ phân bố có dạng nhọn Để đo lường tính phi Gauss, người ta định nghĩa negentropy của vector ngẫu nhiên y sao cho bằng không đối với biến Gauss và luôn không âm.
J y = H (y Gauss) − H (y), trong đó y Gauss là vector ngẫu nhiên Gauss với ma trận hiệp phương sai, giả định rằng dữ liệu có trung bình bằng không.
Negentropy luôn dương và chỉ bằng 0 khi y có phân bố Gauss, đồng thời là đại lượng bất biến trong phép biến đổi tuyến tính ngược Nó là một công cụ hữu ích để đo lường tính phi Gauss theo lý thuyết thống kê, với vai trò là số chiều trong xấp xỉ tối ưu hóa phi Gauss Tuy nhiên, việc tính toán negentropy rất phức tạp, đòi hỏi phải xấp xỉ hàm mật độ xác suất, vì vậy cần thiết phải đơn giản hóa quy trình này Một số phương pháp xấp xỉ cho negentropy đã được phát triển để giải quyết vấn đề này.
Hàm phi tuyến G(.) có thể chọn theo một hai biểu thức sau:
Trong mô hình ICA, mục tiêu là xác định các hàng của ma trận W Thuật toán FastICA được phát triển dựa trên nguyên lý sử dụng negentropy và áp dụng thuật toán điểm cố định (fixed-point algorithm).
- FastICA cho một đối tượng:
Chúng ta sẽ khám phá đơn vị của FastICA, trong đó việc tính toán được quy về mức đơn vị tương tự như mạng neural nhân tạo, với vector trọng số có thể được cập nhật theo luật học Luật học của FastICA nhằm tìm ra vector đơn vị w sao cho hình chiếu w τ x đạt cực đại tính phi Gauss, được đo bằng xấp xỉ negentropy J (w τ x) Các phương sai của w τ x cần được chuẩn hóa về dạng đơn vị, và quá trình làm trắng hóa cũng giúp đưa w về dạng chuẩn đơn vị.
FastICA sử dụng mô hình điểm cố định lặp lại nhiều lần để xác định giá trị cực đại của w τ x, và nó cũng có nguồn gốc từ phương pháp lặp Newton.
+ Bước 1: Chọn một vector ngẫu nhiên w
+ Bước 2: w =E { z g ( w τ z ) } − E { g ' ( w τ z ) w } w ←w / ‖ w ‖ Nếu không hội tụ thì quay lại bước 2
Hội tụ đề cập đến việc giá trị mới và cũ của điểm w cần phải cùng hướng, với tích vô hướng của chúng bằng 1 Trong thực tế, chúng ta chọn ngưỡng hội tụ Sig được xác định trước.
Sig≥ ‖ w new − w old ‖ Trong đó glà đạo hàm của các hàm G1, G2, G3
- Fast ICA cho nhiều đối tượng
Tiền xử lý ICA
Trước khi ước lượng ICA cho dữ liệu quan sát, việc áp dụng một hoặc hai bước tiền xử lý là rất cần thiết để cải thiện độ chính xác và hiệu quả của quá trình ước lượng.
Các tín hiệu trộn quan sát được cần có kỳ vọng m = E[x] = 0, điều này đồng nghĩa với việc các tín hiệu nguồn s cũng phải có kỳ vọng bằng 0.
Khi các tín hiệu chưa có kỳ vọng bằng 0, ta thực hiện phép qui tâm bằng cách trừ phân bố của các biến ngẫu nhiên với các kỳ vọng tương ứng Cụ thể, x được tính bằng x' trừ đi E{x'} với x' là vector ngẫu nhiên chưa có kỳ vọng bằng 0 Sau khi ước lượng ma trận A và các thành phần s, ta có thể thêm trở lại các kỳ vọng của chúng Nếu vector ngẫu nhiên x (hoặc s) có kỳ vọng bằng 0, hiệp phương sai và tương quan của nó sẽ giống nhau.
Sau khi thực hiện việc qui tâm các biến ngẫu nhiên x, ta áp dụng một biến đổi tuyến tính để tạo ra một vector mới có tính chất trắng Quá trình này, được gọi là làm trắng (whitening) hay cầu hóa (sphering), nhằm mục đích làm cho dữ liệu trở nên bất tương quan Giả sử ta có một vector ngẫu nhiên x không tương quan, tức là phương sai giữa các phần tử bằng 0, dẫn đến ma trận hiệp phương sai trở thành ma trận chéo với các số hạng chéo tương ứng với phương sai của các phần tử x Nếu các phương sai này bằng 1, ma trận hiệp phương sai sẽ trở thành ma trận đơn vị I, từ đó xác nhận rằng vector ngẫu nhiên x là trắng.
Việc làm trắng là một biến đổi tuyến tính z=V x
Để làm trắng dữ liệu x, ta sử dụng ma trận làm trắng V và thu được dữ liệu đã trắng hóa z Phương pháp phổ biến nhất để xác định ma trận làm trắng là thực hiện phân ly trị riêng (Eigenvalue Decomposition - EVD) trên ma trận hiệp phương sai.
Trong đó E là ma trận trực giao của các vector riêng của E [ x x τ ] và D là ma trận chéo của các trị riêng của chúng,
D= [ d 0 0 0 0 0 1 d 0 2 ⋮ 0 0 0 0 0 d 0 n ] n là số lượng nguồn quan sát được x Matrận làm trắng là:
Ma trận làm trắng trên cũng có thể biểu diễn như sau:
Trong đó C x x =E [ x x τ ] là ma trận hiệp phương sai
Trong đó ~ A =V A là ma trận trộn đã làm trắng Mặt khác z là dữ liệu đã làm trắng nên
Cần lưu ý rằng các thành phần độc lập \( s_i \) đều giả định có phương sai đơn vị Do đó, ma trận đã được làm trắng là ma trận trực giao, trong đó ma trận trực giao có thể được đảo ngược bằng cách chuyển vị: \( \tilde{A}^T = \tilde{A}^{-1} \).
Ma trận n x n không trực giao có n² độ tự do, trong khi ma trận trực giao chỉ có n(n-1)/2 độ tự do Đối với dữ liệu hai chiều, điều này có nghĩa là chỉ có một độ tự do cho mỗi biến đổi trực giao Khi số chiều tăng lên, độ tự do của ma trận trực giao chỉ bằng một nửa so với ma trận không trực giao Do đó, quá trình làm trắng được coi là giải quyết một nửa bài toán ICA Vì làm trắng là một thủ tục đơn giản hơn bất kỳ thuật toán ICA nào, nó trở thành một bước tiền xử lý phổ biến.
Sau khi đã ước lượng ma trận trắng hóa, thì việc ước lượng các thành phần độc lập s trở thành: s= W z trong đó W là khả đảo.
Với các ma trận vuông việc lấy nghịch đảo rất thuận lợi Sau khi có được
W , việc ước lượng ma trận gốc A cho bởi
ỨNG DỤNG CỦA ICA VÀO ƯỚC LƯỢNG ĐỘ SÂU ẢNH MẶT NGƯỜI
Xây dựng mô hình cICA
Các đặc điểm hình ảnh trên khuôn mặt được biểu thị qua tọa độ (x, y) của các điểm đặc trưng, từ đó thuật toán ước tính giá trị độ sâu z tương ứng Giả sử có n điểm đặc trưng được đánh dấu trên hình ảnh khuôn mặt, với (M xi, M yi, M zi) là tọa độ của điểm thứ i trong mô hình mặt 3-D nhìn trực diện M và (¿) là điểm thứ i trong mặt 2-D không nhìn trực diện q Ma trận quay R đối với q được cung cấp để hỗ trợ trong quá trình này.
R = [−sinϕ cosϕ cosϕ 0 sinϕ 0 0 0 1] × [cosψ sinψ 0 0 1 0 −sinψ cosψ 0] × [1 0 0 −sinθ cosθ cosθ 0 sinθ 0] = [r r r 11 21 31 r r r 12 22 32 r r r 13 23 33] (2.1) trong đó ϕ, ψ và θ là các góc quay quanh các trục x, y và z Quá trình xoay và dịch để ánh xạ hình ảnh khuôn mặt nhìn chính diện sang hình ảnh khuôn mặt không nhìn chính diện được mô tả như sau:
Với i=1,2 ,…., p trong đó k là hệ số tỷ lệ và ( t x , t y ) là các phép tịnh tiến dọc theo trục x và y.
Dạng ma trận của (2.2) có thể được viết như sau: q=k R 2 × 3 M +t (2.3)
Trong bài viết này, q là ma trận 2 × p, trong đó mỗi cột (q x i, q y i) τ biểu thị tọa độ (x, y) của một điểm đặc trưng M là ma trận với mỗi cột (M x i, M y i, M z i) τ thể hiện tọa độ (x, y, z) của một điểm đặc trưng Cuối cùng, t là ma trận 2 × p, với tất cả các cột là (t x, t y) τ.
Về phương pháp tiếp cận căn chỉnh hình dạng, thuật ngữ dịch t có thể bị loại bỏ nếu cả q và M đều có tâm tại điểm gốc, tức là q←q −~ q (2.4 )
M ← M −~ M (2.5) q=k R 2 × 3 M (2.6 ) trong đó ~ q là ma trận 2 × p sao cho mỗi cột là (1/ p ) ∑ i=1 p ( q x i q y i ) τ và M là ma trận 3 × p sao cho mỗi cột là (1/ p) ∑ i=1 p ( M x i M y i M Z i ) τ Chứng tỏ:
Phương trình (2.6) sau đó có thể được viết lại thành: q= A M (2.8)
Dựa vào (2.8), A được coi như một ma trận trộn và q là hỗn hợp của M Nếu phân phối của các biến M x, M y và M z không phải là Gaussian, bài toán ước lượng cấu trúc 3-D có thể được xem như một bài toán BSS, như mô tả trong (2.8) BSS tương đương với ICA trong quá trình hỗn hợp tuyến tính, cho phép khôi phục các tín hiệu nguồn bằng thuật toán ICA, tức là độ sâu M z có thể được phục hồi thông qua các thuật toán ICA bằng cách tối đa hóa phân phối không Gaussian.
Số tín hiệu nguồn trong M là 3, trong khi số tín hiệu hỗn hợp trong q chỉ có hai, dẫn đến việc mất một số thông tin trong quá trình trộn Quá trình này là không thể đảo ngược, khiến việc khôi phục 3 tín hiệu nguồn từ 2 tín hiệu quan sát trở thành một bài toán ICA quá đầy đủ điển hình và vẫn là một thách thức lớn hiện nay.
Đối với tín hiệu hỗn hợp x = (x1, x2,…, xn) trong bài toán ICA quá đầy đủ, một phương pháp để giải quyết vấn đề là ước lượng ma trận trộn A và m tín hiệu nguồn s = (s1, s2,…, sm) thông qua ước lượng khả năng tối đa xảy ra (ML) Với x và một ma trận trộn ban đầu A đã cho, ta có thể đưa ra ước lượng ML cho các tín hiệu nguồn s.
Phương trình ^ s= arg min x=As ∑ i | s i | (2.9) được thiết lập dưới dạng hàm tuyến tính và có thể giải bằng các phương pháp lập trình tuyến tính cổ điển Bên cạnh đó, ước lượng ML của A cho một s đã cho có thể được tính toán một cách hiệu quả.
Công thức A = ( ∑ t x (t) x (t) τ ) −1 ∑ t x (t) s (t) τ thể hiện mối quan hệ giữa vectơ mẫu x và s tại thời điểm t Thay vì áp dụng ước lượng ML, một thuật toán hình học đã được đề xuất để khôi phục ma trận trộn hiệu quả hơn, trong đó thông tin trước đóng vai trò quan trọng trong việc giảm thiểu tác động tiêu cực từ việc thiếu thông tin Tín hiệu tham chiếu được chứng minh là nguồn thông tin hiệu quả trong các phương pháp ICA và BSS cICA cung cấp quy tắc chung để kết hợp thông tin trước đó, cho thấy chỉ cần trích xuất M z từ tín hiệu tham chiếu tương ứng Ký hiệu y đại diện cho tín hiệu ước tính của M z, được xác định bởi y = w q, với w là ma trận không trộn Trong thuật toán cICA, entropy âm J(y) được sử dụng làm hàm tương phản, và cICA được xây dựng như một bài toán tối ưu hóa có điều kiện, với mục tiêu tối thiểu hóa J(y) dưới các điều kiện g(y, w) ≤ 0 và h(y, w) = 0 Các điều kiện này giúp loại bỏ mối quan hệ tương quan giữa các thành phần đầu ra khác nhau, cho phép thu được tín hiệu nguồn y thông qua tối ưu hóa hàm mục tiêu, giải quyết vấn đề tối ưu hóa bằng hệ số nhân Lagrange.
L (w, μ, λ) được định nghĩa là tổng của J(y), g(y, w, μ) và h(y, w, λ), trong đó μ và λ là các hằng số nhân Lagrange Các thành phần g(y, w, μ) và h(y, w, λ) lần lượt đại diện cho các điều kiện bất đẳng thức và đẳng thức.
Trong mỗi lần lặp, sự thay đổi của hệ số nhân μ và λ được cho bởi: Δ μ=max { −μ,η g ( y,w ) } (2.14 )
Trong bài viết này, công thức Δ λ= γh (y, w) được trình bày, trong đó η và γ là tốc độ học tập trong học máy Gradient của hàm L đối với w được xác định bởi Δ w L= E { J ' (y) x τ } + μ Δ w g (y) + 4 λ (E { y 2 }−1) E { y x τ } Hàm g (y) được định nghĩa là g (y)= E { (y −r) 2 }, và Δ w g (y) là đạo hàm của g (y) theo w Quy tắc học tập giống Newton cho w được diễn đạt qua công thức Δ w=−η (Δ w 2 L) −1 Δ w L, trong đó ρ là hằng số dương và Δ w 2 L =∂ (Δ w L) / ∂ w Cuối cùng, σ −1 x x thể hiện ma trận hiệp phương sai ngược của x, và hàm f (y) được định nghĩa là f (y)=log(cosh(ay))/a−ay^2/2, liên quan đến tín hiệu siêu.
Gaussian và f ( y ) =b y 4 cho tín hiệu Gaussian phụ.
Xây dựng mô hình và khởi tạo ma trận hủy trộn
Để xây dựng mô hình cICA hiệu quả, cần giải quyết hai vấn đề chính: cách xây dựng mô hình cICA và cách khởi tạo ma trận không trộn Mặc dù thuật toán cICA có thể trích xuất một số tín hiệu bằng cách tối thiểu hóa hàm mục tiêu, nhưng ước lượng độ sâu vẫn không chính xác do hỗn hợp q có thể thiếu thông tin cần thiết Ngoài ra, việc ước lượng ma trận không trộn và các tín hiệu nguồn trong bài toán quá đầy đủ vẫn gặp khó khăn Chúng tôi sử dụng các giá trị độ sâu z c của các điểm đặc trưng trong mô hình CANDIDE làm hỗn hợp, và kết hợp z c với q để tạo đầu vào cho thuật toán cICA.
Công thức 2.11 có thể viết lại như sau: y=w Q (2.19 )
Theo giả thiết này, số lượng tín hiệu nguồn tương đương với số lượng tín hiệu hỗn hợp Vì vậy, mô hình cICA được xây dựng trở thành một bài toán ICA thông thường, không phải là một bài toán quá đầy đủ.
Bài toán ICA thông thường có thể được giải quyết bằng các thuật toán ICA điển hình, trong đó nổi bật là thuật toán FastICA FastICA là một thuật toán hiệu quả và đáng tin cậy, sử dụng sơ đồ lặp điểm cố định để xác định mức tối đa không phải Gauss của y.
J ( y ) ∝ [ E { G ( y ) } − E { G ( ν ) } ] 2 (2.20 ) trong đó ν biểu thị một biến Gaussian, và G là một hàm không phải hàm bậc 2, chẳng hạn như:
Thông tin trong các tham chiếu không chỉ phục vụ cho hàm tương phản mà còn hỗ trợ khởi tạo thuật toán cICA, từ đó giúp đạt được độ chính xác ước tính độ sâu cao hơn.
Do các tín hiệu tham chiếu được thu thập từ các đặc điểm của tín hiệu nguồn, độ sâu thực sự của cấu trúc mặt 3-D không thể xác định, dẫn đến việc không thể xác định tín hiệu tham chiếu Tuy nhiên, các khuôn mặt thường có cấu trúc 3-D tương tự nhau Mô hình CANDIDE, là mô hình mặt 3-D chung, được sử dụng để lấy giá trị độ sâu làm tín hiệu tham chiếu Đầu tiên, giá trị trung bình của z c, ký hiệu là ~ z c, được trừ khỏi z c, tức là z c = z c − ~ z c Dấu hiệu của z c sau đó được sử dụng làm tín hiệu tham chiếu r, với r i = sign(z c) Để đánh giá hiệu suất của các thuật toán, cơ sở dữ liệu Bosphorus được sử dụng, trong đó mỗi hình ảnh khuôn mặt chính diện có 24 điểm đặc trưng được đánh dấu Tuy nhiên, chỉ có các điểm 1-22 được chọn để tạo thành tín hiệu tham chiếu do không có điểm tương ứng trong mô hình CANDIDE cho các điểm 23 và 24.
Hình 2 2 Vị trí của 22 điểm đặc trưng được đánh dấu trong cơ sở dữ liệu
Hình 2.3 minh họa các tín hiệu tham chiếu từ bốn điểm đầu tiên (bs000-bs003) được tạo ra bằng mô hình CANDIDE và các giá trị độ sâu thực Kết quả cho thấy tín hiệu tham chiếu từ mô hình CANDIDE tương đồng với tín hiệu từ các giá trị độ sâu thực ở hầu hết các điểm đặc trưng trên khuôn mặt Điều này chứng tỏ rằng việc áp dụng mô hình CANDIDE để xây dựng tín hiệu tham chiếu là khả thi.
Hình 2 3 So sánh các tín hiệu tham chiếu dựa trên mô hình CANDIDE và giá trị độ sâu thực cho 4 khuôn mặt riêng biệt.
Các tín hiệu nhị phân của các giá trị độ sâu thực thể hiện trong Hình 2.3 chỉ nhằm mục đích thể hiện hiệu quả của phương pháp xây dựng tín hiệu tham chiếu, không được sử dụng trong ước lượng giá trị độ sâu hay tính toán chỉ số hiệu suất Với tín hiệu tham chiếu r được dẫn xuất như đã giải thích, ma trận không trộn ban đầu có thể được tính bằng công thức w 0 =q ξ r (2.25), trong đó q ξ là nghịch đảo tổng quát Moore-Penrose của q.
Tích hợp mô hình cho nhiều hình ảnh khuôn mặt không nhìn trực diện
Một hình ảnh khuôn mặt không nhìn trực diện có thể làm rối cấu trúc mô hình cICA Khi có nhiều hình ảnh khuôn mặt không nhìn trực diện, việc áp dụng phương pháp tích hợp mô hình sẽ giúp nâng cao độ chính xác trong ước lượng độ sâu.
Hình 2 4 Lưu đồ của phương pháp tích hợp mô hình
Hình 2.4 minh họa sơ đồ của phương pháp tích hợp mô hình, trong đó đặc điểm hình dạng q i được kết hợp với z c để tạo đầu vào Q cho thuật toán cICA Qua đó, tín hiệu độ sâu z i được xác định bằng thuật toán cICA, với giá trị trung bình của z i được tính toán như sau: ˇ z= 1.
N z i (2.26) được sử dụng làm tín hiệu hỗn hợp thay thế cho z c Quá trình lặp lại sẽ tiếp tục cho đến khi đạt số lần lặp tối đa đã xác định trước Các bước cụ thể của phương pháp được mô tả chi tiết.
- Bước 1: Đặt số lần lặp tối đa ( N iter ).
Bước 2 là khởi tạo các giá trị độ sâu z c và thu thập tín hiệu tham chiếu từ 22 điểm đặc trưng được cung cấp bởi mô hình CANDIDE, tương ứng với vị trí của các điểm trong Hình 2.2.
Bước 3: Mỗi hình ảnh khuôn mặt được sử dụng để đào tạo, các đặc điểm hình dạng của các điểm đặc trưng và z c sẽ được kết hợp nhằm tạo ra đầu vào cho mô hình cICA.
Bước 4 bao gồm việc tính toán ma trận không trộn ban đầu theo công thức (2.25), cập nhật ma trận không trộn theo công thức (2.17) và ước tính các giá trị độ sâu y bằng cách sử dụng công thức (2.11).
Bước 5: Tính toán giá trị trung bình cho độ sâu của các điểm đặc trưng đã ước lượng từ tất cả các hình ảnh đào tạo, sau đó thực hiện việc thay thế z c.
Các bước 3-5 được lặp lại cho đến khi số lần lặp đạt đến giá trị lớn nhất được xác định trước N iter
Kết quả thực hiện
2.4.1 Dữ liệu thử nghiệm và các phương pháp liên quan được so sánh
Bài viết đánh giá phương pháp dựa trên cơ sở dữ liệu Bosphorus, một kho dữ liệu khuôn mặt 3-D với nhiều biểu cảm và biến thể tư thế Ưu điểm lớn của cơ sở dữ liệu này là cung cấp tọa độ 3-D cho các điểm đặc trưng trên khuôn mặt, cho phép so sánh chính xác giữa các giá trị ước lượng độ sâu và thực tế Điều này giúp đánh giá hiệu suất của các thuật toán tái tạo 3-D một cách chính xác hơn Ngoài ra, tọa độ 2-D tương ứng của các điểm đặc trưng cho mọi tư thế cũng được cung cấp, tạo điều kiện cho việc thu thập dữ liệu qua các điểm đánh dấu hoặc thuật toán phát hiện điểm đặc trưng Trong mô hình cICA, tín hiệu nguồn được giả định là giá trị độ sâu của hình ảnh khuôn mặt nhìn chính diện.
Để tạo ra tín hiệu tham chiếu, cần xác định vị trí của 22 điểm đặc trưng trong mô hình CANDIDE, như thể hiện trong Hình 2.2.
Cơ sở dữ liệu Bosphorus chứa 22 điểm đặc trưng quan trọng, chủ yếu tập trung vào các hình ảnh có sự thay đổi tư thế Nghiên cứu này nhằm đáp ứng các biến đổi về biểu hiện, độ chiếu sáng và sự ăn khớp Tất cả các mô phỏng được thực hiện trong môi trường MATLAB Để đánh giá hiệu quả của phương pháp đề xuất, nó được so sánh với các phương pháp FastICA, glCA, và phương pháp tái tạo khuôn mặt 3-D dựa trên sự biến đổi tương đồng (SM) Đặc biệt, phương pháp tích hợp mô hình trong cICA được ký hiệu là cICA_MI để tạo điều kiện thuận lợi cho việc xử lý biểu thức.
2.4.2 Kết quả thử nghiệm trên Cơ sở dữ liệu Bosphorus
30 đối tượng đầu tiên từ cơ sở dữ liệu Bosphorus đã được sử dụng trong các thí nghiệm.
Hình 2 5 Hình ảnh khuôn mặt của một đối tượng dưới các tư thế khác nhau trong cơ sở dữ liệu Bosphorus.
Hình 2.5 minh họa khuôn mặt của một đối tượng trong cơ sở dữ liệu, với lưu ý rằng hình ảnh không có các điểm đặc trưng rõ ràng không thể được sử dụng cho việc đào tạo do không thể khôi phục giá trị độ sâu tương ứng Chỉ năm hình ảnh mặt không nhìn trực diện, bao gồm PR_D, PR_SD, PR_SU, PR_U và YR_R10, được chọn cho các thử nghiệm mô hình Hệ số tương quan tuyến tính của Pearson được áp dụng để đo mối tương quan giữa hai biến, là tiêu chí quan trọng để đánh giá mức độ tương đồng giữa tín hiệu thực và tín hiệu ước lượng Hệ số tương quan giữa giá trị độ sâu thực và giá trị ước lượng sẽ được sử dụng để đánh giá hiệu suất của các thuật toán tái tạo khuôn mặt 3-D khác nhau.
2.4.2.1 So sánh thử nghiệm với FastICA Đối với FastICA, các tham số được đặt làm giá trị mặc định được sử dụng trong gói chương trình được có sẵn Tương tự như cICA, ma trận không trộn ban đầu cho bởi (2.25) cũng có thể được sử dụng trong thuật toán FastICA Kết quả thực nghiệm thu được khi sử dụng cICA và FastICA được thể hiện trong Hình 2.6,
Hình 2.6 trình bày sự so sánh giữa kết quả hoạt động của FastICA và cICA dựa trên mối tương quan Các điểm đánh dấu biểu thị các mối tương quan trung bình, trong khi đường thẳng đứng đi qua mỗi điểm đánh dấu thể hiện phạm vi của hệ số tương quan tương ứng.
Mỗi điểm đánh dấu trong bài viết biểu thị giá trị trung bình của các hệ số tương quan từ ảnh khuôn mặt của từng đối tượng, trong khi khoảng cách giữa điểm đánh dấu và điểm cuối của dòng thể hiện độ lệch chuẩn của các hệ số này Phương pháp minh họa độ lệch chuẩn sẽ không được trình bày trong các hình tiếp theo Hình 2.6 cho thấy rằng các phương tiện dựa trên cICA vượt trội hơn so với các phương tiện dựa trên FastICA cho tất cả các đối tượng.
cICA cho thấy độ chính xác ước lượng độ sâu cao hơn so với FastICA, với độ lệch chuẩn nhỏ hơn, chứng tỏ cICA mạnh mẽ hơn khi áp dụng cho các đối tượng khác nhau Tóm lại, cICA có hiệu suất ước lượng độ sâu vượt trội hơn FastICA.
Hình 2 7 So sánh các hoạt động của FastICA có và không sử dụng ma trận không trộn ban đầu
Hình 2.7 minh họa hoạt động của thuật toán FastICA với và không sử dụng ma trận không trộn ban đầu theo (2.25) Kết quả cho thấy hai trường hợp này có sự tương đồng trong biểu diễn.
2.4.2.2 So sánh thử nghiệm với gICA
gICA được áp dụng để giải quyết vấn đề ICA quá đầy đủ, với đầu vào thuật toán được lấy từ (2.4) thay vì (2.18) Kết quả thực nghiệm từ gICA và các thuật toán cICA được minh họa trong Hình 8.
Hình 2 8 So sánh hiệu suất của gICA và cICA đối với các đối tượng khuôn mặt khác nhau
Thuật toán cICA thể hiện hiệu suất vượt trội so với gICA, với mức trung bình cao hơn và độ lệch chuẩn nhỏ hơn Thao tác làm trắng là một bước tiền xử lý quan trọng trong các thuật toán ICA, giúp các vectơ ngẫu nhiên đạt giá trị trung bình bằng 0 và ma trận hiệp phương sai trở thành ma trận đơn vị Mặc dù việc làm trắng đầu vào có thể cải thiện hiệu suất, kết quả thực nghiệm trong Hình 2.9 cho thấy hiệu suất không thay đổi đáng kể, bất kể thao tác làm trắng có được thực hiện hay không.
Hình 2 9 So sánh các hoạt động của gICA khi sử dụng và không sử dụng thao tác làm trắng
2.4.2.3 So sánh thử nghiệm với thuật toán SM
Trong phương pháp SM, kích thước tổng cộng và số lần lặp lại tối đa của thuật toán di truyền được đặt lần lượt là 800 và 200.
Hình 2 10 So sánh hiệu suất của thuật toán SM và cICA.
Hình 2.10 minh họa kết quả thực nghiệm từ các thuật toán SM và cICA, cho thấy rằng cICA đạt được độ chính xác ước lượng độ sâu cao hơn so với SM Ngoài ra, độ lệch chuẩn của cICA cũng thấp hơn rõ rệt so với SM, chứng tỏ rằng cICA không chỉ chính xác mà còn mạnh mẽ hơn trong việc phân tích dữ liệu.
Bảng I trình bày hệ số tương quan giữa giá trị độ sâu thực và giá trị ước lượng cho các hình ảnh khuôn mặt khác nhau, sử dụng các thuật toán FastICA, gICA, SM và cICA Kết quả cho thấy thuật toán cICA đạt hiệu suất tương đương cho các hình ảnh khuôn mặt khác nhau và vượt trội hơn ba thuật toán còn lại về cả tương quan trung bình (μ) và độ lệch chuẩn (σ).
Bảng 2.1 trình bày hệ số tương quan giữa giá trị độ sâu thực và giá trị ước lượng thu được từ hình ảnh khuôn mặt của các cá nhân khác nhau, áp dụng cho các phương pháp FastICA, gICA, SM và cICA.
PR_D PR_SD PR_SU PR_U YR_RW μ ± σ
2.4.2.4 So sánh thực nghiệm của cICA và cICAMI: Để đánh giá phương pháp tích hợp mô hình, cICA_MI được sử dụng để ước lượng độ sâu của hình ảnh khuôn mặt cho 30 đối tượng Trong các thử nghiệm, người ta thấy rằng hiệu suất thường trở nên ổn định khi số lần lặp lại tối đa ( N iter ) là khoảng 1500 Lấy các Đối tượng 1, 6, 11, 16, 21 và 26 làm ví dụ, các đường cong lặp lại tương ứng dựa trên Phương pháp tích hợp mô hình được mô tả trong Hình 2.11.
Hình 2 11 Các đường cong lặp lại của các Đối tượng 1, 6, 11, 16, 21 và 26 bằng cách sử dụng mô hình phương pháp tích hợp.