__________________________________________________________________________________________ DANH MỤC TỪ VIẾT TẮT AP Assignment Problem Bài toán phân công việc BSP Blind Signal Processing
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
***************
CHUYÊN ĐỀ PHƯƠNG PHÁP PHÂN TÍCH THÀNH PHẦN
ĐỘC LẬP (INDEPENDENT COMPONENT ANALYSIS)
Nghiên cứu sinh: Vương Hoàng Nam Giáo viên hướng dẫn: PGS.TS Nguyễn QuốcTrung PGS.TSKH Trần Hoài Linh
Hà Nội – 11/2011
Trang 2LỜI NÓI ĐẦU
Trong sự thành công của chuyên đề này, tôi xin trân trọng cám ơn các đồng nghiệp tại Viện Điện tử - Viễn thông, Trường ĐHBK Hà Nội, cũng như những bạn bè, đồng nghiệp khác ở trong và ngoài nước đã đóng góp cho tôi nhiều ý kiến quý báu, trợ giúp tôi trong một số hoạt động nghiên cứu của chuyên
đề
NCS Vương Hoàng Nam
Trang 3
MỤC LỤC
CHƯƠNG 1- CƠ SỞ LÝ THUYẾT BÀI TOÁN XỬ LÝ MÙ VÀ PHƯƠNG
PHÁP PHÂN TÍCH THÀNH PHẦN ĐỘC LẬP 5
1.1 Giới thiệu bài toán phân tách mù nguồn tin 5
1.2 Phương pháp Phân tích các thành phần độc lập 11
1.3 Phương pháp ICA sử dụng tính phi Gauss 11
1.4 Phương pháp ICA sử dụng thông tin hỗ tương 19
1.5 Phương pháp ICA sử dụng phi tương quan phi tuyến 20
CHƯƠNG 2- THUẬT TOÁN FASTICA VÀ COMPLEX-FASTICA 22
2.1 Thuật toán FastICA 22
2.1.1 Quá trình tiền xử lý 22
2.1.2 Xấp xỉ hóa Negentropy ………24
2.1.3 Thuật toán FastICA ……….25
2.1.4 Minh họa thuật toán FastICA .……….29
2.1.5 Thuật toán IP-FastICA ……….35
2.2 Thuật toán Complex-FastICA ……….44
TÀI LIỆU THAM KHẢO 49
DANH MỤC CÔNG TRÌNH NGHIÊN CỨU 56
Trang 4
DANH MỤC TỪ VIẾT TẮT
AP Assignment Problem Bài toán phân công việc
BSP Blind Signal Processing Xử lý tín hiệu mù
BSS Blind Source Separation Phân tách nguồn mù
FD-ICA Frequency Domain ICA Phương pháp ICA trong miền
tần số FFT Fast Fourier Transform Biến đổi Fourier
Analysis
Phân tích thành phần độc lập
IC Independent Component Thành phần độc lập
PCA Principal Component Analysis Phân tích thành phần chính
PDF Probability Density Function Hàm mật độ xác suất
STFT Short Time Fourier Transform Biến đổi Fourier thời gian
ngắn TD-ICA Time Domain ICA Phương pháp ICA trong miền
thời gian
Trang 5
⎯ CHƯƠNG 1 ⎯
CƠ SỞ LÝ THUYẾT BÀI TOÁN XỬ LÝ MÙ VÀ PHƯƠNG
PHÁP PHÂN TÍCH THÀNH PHẦN ĐỘC LẬP
rong khoảng 20 năm trở lại đây , xử lý tín hiệu mù Blind Signal Processing
(BSP) là một lĩnh vực khá mới mẻ thu hút được rất nhiều sự quan tâm
nghiên cứu của các nhà khoa học và đã đạt được một số thành tựu nhất
định , mở ra hướng phát triển trong tương lai Vấn đề xử lý tín hiệu mù mà điển
hình là bài toán phân tách nguồn tin mù Blind Source Separation (BSS) là bài
toán tìm nguồn tín hiệu ban đầu thông qua việc phân tích đánh giá các tín hiệu ở
cảm biến đầu ra , trong khi không biết hoặc biết rất ít thông tin về quá trình
truyền đạt Trong các phương pháp giải quyết bài toán này phương pháp phân
tích thành phần độc lập Independent Component Analysis (ICA) là phương pháp
được sử dụng phổ biến nhất do những ưu điểm của nó Trong chương này,
chúng ta sẽ xem xét mối liên hệ giữa BSS và ICA , đồng thời nghiên cứu sự phát
triển phương pháp ICA cho các mô hình bài toán khác nhau
1.1 Giới thiệu bài toán phân tách mù nguồn tin
Phân tách nguồn tín hiệu mù BSS là một phương pháp được sử dụng phổ biến
cho mục đích đánh giá các nguồn tín hiệu ban đầu chỉ thông qua các tín hiệu thu
được ở tại các bộ cảm biến đầu ra , mà không cần biết đến đặc tính hàm truyền
đạt của kênh truyền Mô hình toán học đơn giản của bài toán BSS như sau :
Nếu gọi s =(s s1, , ,2 s N)T là một vectơ ngẫu nhiên , trong đó mỗi thành phần
được xem là một nguồn tín hiệu gốc ban đầu , và x=(x x1, , ,2 x M)Tlà vectơ tín
T
Trang 6
x = As (1.1)
Hình 1.1 - Mô hình bài toán BSS tổng quát
trong đó Alà một ma trận trộn đặc trưng cho đặc tính truyền đạt của kênh
truyền
Khi đó nhiệm vụ của bài toán BSS là phải xác định một ma trận W, được gọi
là ma trận tách , khi đóy Wx = là các tín hiệu nguồn được khôi phục
Hình 1.2 - Mô hình giải quyết bài toán BSS
Để minh họa cho bài toán BSS , chúng ta xây dựng bài toán xử lý mù nguồn
âm thanh ( bài toán Cocktail ) như sau :
Trang 7
Giả sử trong một căn phòng chúng ta có N nguồn âm thanh ( tiếng nói, tiếng
nhạc cụ,…) được thu bởi M microphone Trong trường hợp này chúng ta không
biết cụ thể các nguồn âm thanh cũng như đặc tính truyền đạt của phòng ( độ trễ ,
kết cấu phòng , hiệu ứng tiếng vọng , … ) , khi đó bài toán BSS như sau : khôi
phục lại các nguồn âm thanh ban đầu chỉ dựa vào các tín hiệu đã thu được từ
các microphone
Hình 1.3 – Minh họa xử lý mù bài toán cocktail
Dựa trên đặc tính kênh truyền và mối tương quan giữa số lượng microphone
và số lượng nguồn âm thanh, bài toán BSS có thể được chia thành nhiều mô
hình riêng Dưới đây là các mô hình đặc trưng với nhiều mức độ phức tạp khác
nhau nhưng đều rất có ý nghĩa cả trong lý thuyết và thực tế:
• Mô hình tuyến tính ( mô hình tức thời ) nghĩa là tín hiệu thu được tại cảm
biến sẽ là tổ hợp tuyến tính của các tín hiệu nguồn ngay tại thời điểm đó:
Trang 8
• Mô hình trộn chập : tín hiệu thu được tại microphone bao gồm tín hiệu tức
thời của các nguồn phát và các tín hiệu thu được qua phản xạ, tán xạ (hiện
tượng trễ, đa đường và tiếng vọng)
• Mô hình tuyến tính có nhiễu : Tương tự như trường hợp mô hình tuyến
tính nhưng có thêm nhiễu
• Trường hợp M N < (underdetermined case) : với số nguồn nhiều hơn số
cảm biến Đây là trường hợp bài toán khó
• Trường hợp M N > (overdetemined case) : với số nguồn ít hơn số cảm
biến
Hầu hết các công trình nghiên cứu ban đầu trong lĩnh vực phân tách nguồn mù
BSS là mô hình tuyến tính và sau này là mô hình trộn chập với giả thiết số lượng
nguồn tín hiệu không ít hơn số lượng các sensor Trong thực tế , mặc dù các ứng
dụng của BSS chủ yếu là mô hình trộn chập tuy nhiên vai trò của mô hình BSS
tuyến tính cũng rất quan trọng vì đó là những tiền đề để phát triển cho mô hình
trộn chập Việc đánh mô hình dữ liệu trong BSS thường được thực hiện bằng
cách xây dựng một hàm mục tiêu rồi thực hiện cực đại (cực tiểu) hóa hàm này
Các phương pháp BSS khác nhau thường được phân biệt bởi cách xây dựng hàm
mục tiêu cũng như thuật toán tối ưu được sử dụng Chúng ta có thể diễn đạt điều
đó qua công thức sau:
Trang 9
Phương pháp BSS = Hàm mục tiêu + Thuật toán tối ưu (1.6)
Các thuộc tính của phương pháp BSS phụ thuộc vào cả hai thành phần vế phải
của (1.6) như sau :
• Các thuộc tính thống kê ,đặc trưng của phương pháp BSS phụ thuộc vào
cách chọn lựa hàm mục tiêu
• Các thuộc tính giải thuật ( tốc độ hội tụ , khối lượng tính toán , bộ nhớ đòi
hỏi … ) phụ thuộc vào thuật toán tối ưu
Hai lớp thuộc tính này là độc lập Điều đó có nghĩa các thuật toán tối ưu khác
nhau có thể được sử dụng cho chỉ một hàm mục tiêu , hoặc một thuật toán tối ưu
có thể được dùng cho các hàm mục tiêu khác nhau Để đưa ra được hàm mục
tiêu chúng ta phải sử dụng các đặc trưng nào đó của các tín hiệu nguồn Trong
khuôn khổ đồ án chúng ta chủ yếu sử dụng tính độc lập hỗ tương giữa các nguồn
tín hiệu với giả thiết tín hiệu từ các nguồn khác nhau được xem là độc lập thống
kê với nhau Đây là phương pháp phổ biến và thành công nhất trong lĩnh vực
BSS và sẽ được trình bày trong phần tiếp theo
1.2 Phân tích thành phần độc lập (ICA) tuyến tính
Một trong những phương pháp giải quyết phổ biến nhất bài toán BSS là
phương pháp phân tích các thành phần độc lập ICA [1,58] Phương pháp ICA
dựa trên giả thiết thực tế là các nguồn tín hiệu gốc là độc lập thống kê hỗ tương
Phương pháp này được giới thiệu lần đầu bởi Jutten - Hérault vào năm 1988 với
tên gọi “Independent Component Analysis” do phương pháp này gần giống với
phương pháp “Pricipal Component Analysis” (Phân tích thành phần chính) [12]
Đến năm 1994, trong công trình nghiên cứu của mình [52], P.Common đã khẳng
định được vai trò của phương pháp ICA và từ đó ICA được xem là một hướng
nghiên cứu mới, nhiều tiềm năng có thể được ứng dụng trong nhiều lĩnh vực
Trước khi trình bày phương pháp ICA , chúng ta đưa ra một số định nghĩa cơ
bản Ký hiệu s s, , ,s là một số biến ngẫu nhiên với hàm phân bố mật độ
Trang 10
xác suất chung f s s ( 1, , ,2 sm ) Để đơn giản hóa , ta giả thiết các biến này có
trị trung bình bằng 0 Các biến s i được xem là độc lập thống kê với nhau ( hỗ
tương ) nếu hàm mật độ xác suất thỏa mãn :
( 1, , m) 1( ) ( )1 2 2 m( )m
f s s = f s f s f s (1.7) trong đó f s là ký hiệu mật độ phân bố lề của i( )i s i Chú ý rằng khái niệm độc
lập cần được phân biệt với khái niệm bất tương quan Hai biến ,s s được định i j
nghĩa là bất tương quan nếu thỏa mãn điều kiện sau :
với g và 1 g là những hàm biến đổi phi tuyến xác định được Do đó theo định 2
nghĩa , khái niệm bất tương quan chỉ là một trường hợp riêng của khái niệm độc
lập Độc lập nhìn chung là một thủ tục mạnh hơn so với bất tương quan , độc
lập đưa đến bất tương quan , nhưng bất tương quan không thể đưa đến độc lập
Tiếp theo chúng ta định nghĩa về ICA Ở đây ta chỉ xét đến trường hợp tuyến
tính cho dù các dạng phi tuyến của ICA cũng tồn tại và được nghiên cứu Ký
hiệu x=(x x1, , ,2 x m)T là một vector ngẫu nhiên m-chiều Khi đó ta có thể định
nghĩa về ICA tuyến tính như sau:
Định nghĩa về ICA
ICA của một vector ngẫu nhiên x là tìm một phép biến đổi tuyến tính y Wx=
sao cho các thành phần y i i( =1,m) độc lập hỗ tương nhất có thể thông qua việc
cực đại hóa các hàm đo tính độc lập hỗ tương ( hàm mục tiêu ) F y( 1, ,y m)
Trang 11
Định nghĩa trên được xem là định nghĩa tổng quát nhất không cần có các điều
kiện ràng buộc về dữ liệu
Một số bất định trong mô hình ICA tuyến tính
• Không thể xác định lại được chính xác năng lượng ban đầu của của các
nguồn tín hiệu nguyên thuỷ do cả svà Ađều không biết :
Do đó trong mô hình ICA người ta luôn giả thiết mọi nguồn tín hiệu
nguyên thuỷ s j đều có năng lượng (phương sai) bằng nhau và xác định , thoả
mãn : E s{ }2j = hay 1 E ss{ }T = với I I là ma trận đơn vị
• Không thể xác định được thứ tự ban đầu các thành phần độc lập khi phân
tách do thứ tự của s và A đều không biết nên khi đổi vị trí các hàng trong
svà A thì mô hình ICA tuyến tính không thay đổi
Trong phương pháp ICA chúng ta có một số cách tiếp cận phổ biến : phương
pháp sử dụng tính phi-Gauss [1,2,3] , sử dụng thông tin hỗ tương (mutual
information ) [10], sử dụng tính phi tương quan phi tuyến (nonlinear
decorrelation)[12] Trong khuôn khổ luận văn, chúng ta chỉ xem xét đến cách tiếp
cận sử dụng tính phi Gauss với thuật toán thông dụng FastICA
1.3- Phương pháp ICA sử dụng tính phi Gauss
Phương pháp này sử dụng các khái niệm phân bố xác suất Gauss và phi Gauss
được định nghĩa như sau :
• Phân bố Gauss : Phân bố Gauss hay còn gọi là phân bố chuẩn là một
phân bố xác suất cực kỳ quan trọng trong nhiều lĩnh vực Đây là họ phân
bố hình chuông có hình dạng xác định bởi tham số kỳ vọng μ và phương
Trang 12bởi σ2
Đồ thị của hàm mật độ xác suất của phân bố Gauss có dạng chuông như hình
2.1 , trong đó hàm có trung bình μ=0và phương sai σ2=1 là hàm phân bố
Gauss chuẩn
Các loại phân bố xác suất không phải Gauss được gọi là phân bố xác suất phi
Gauss Các phân bố phi Gauss được chia thành super-Gauss và sub-Gauss
• Phân bố super-Gauss : Hàm phân bố dạng super-Gauss là hàm phân bố
mật độ xác suất có độ nhọn hơn phân bố Gauss , điều đó có nghĩa là giá
trị các mẫu tập trung nhiều hơn xung quanh giá trị trung bình Một ví dụ
điển hình của super-Gauss là phân bố Laplace công thức như sau
Phân bố Laplace đối xứng qua giá trị trung bình μ trong khi biến tỉ lệ b ảnh
hưởng đến độ nhọn , tù của phân bố
Trang 13
Hình 1.4 - Hàm mật độ xác suất của phân bố Gauss
Hình 1.5 - Hàm mật độ của phân bố Laplace
• Phân bố sub-Gauss : Hàm phân bố dạng sub-Gauss có phân bố xác suất
tù ( dẹt ) hơn phân bố Gauss Điều đó có nghĩa hàm phân bố này có sự
phân bố đồng đều hơn tại mọi giá trị biến Một ví dụ minh họa cho phân
bố sub-Gauss là phân bố đều
Trang 14Nguyên lý thực hiện phương pháp ICA sử dụng tính phi-Gauss dựa trên định
lý giới hạn trung tâm như sau “ Hàm phân bố của tổng nhiều biến ngẫu nhiên
độc lập luôn có xu hướng hội tụ tới phân bố Gauss ”
Tín hiệu quan sát được = a1IC1 + a2IC2 + … + anICn
Tiến tới Gauss phi Gauss phi Gauss phi Gauss
Hình 1.7- Minh họa định lý giới hạn trung tâm
Định lý chỉ ra rằng nếu x i i, =1,N , là tổ hợp tuyến tính của các tín hiệu nguồn
, 1,
j
s j= N , thì các tín hiệu thu x i sẽ có tính Gauss hơn bản thân các nguồn tín
hiệu gốc s j , và ngược lại s j sẽ có tín phi Gauss hơn x i
Để minh họa cho định lý giới hạn trung tâm , chúng ta xét bài toán sau : Giả sử
có 2 tín hiệu x t1( ) và x t2( ) là 2 tín hiệu trộn tuyến tính thu được từ 2 tín hiệu
nguồn độc lập hỗ tương s t và 1( ) s t có phân bố đều : 2( )
Trang 15Hình 1.8- Sự phân bố chung của các thành phần độc lập s 1 và s 2 với
phân bố đều theo trục
Trong trường hợp này s t1( ) và s t2( ) được xem là hai tín hiệu độc lập với
nhau Điều này thể hiện ở chỗ với một điểm xác định s=(s s1, 2) từ giá trị của
1
s ta không thể đoán được giá trị của s2 và ngược lại Hay nói cách khác các giá
trị s1 và s2độc lập với nhau Hình 1.9 thể hiện phân bố của s t và 1( ) s t có 2( )
tính phi Gauss ( sub-Gauss )
Hình 1.9-Mật độ của một thành phần độc lập phân bố đều
(đường nét đứt biểu diễn phân bố Gauss)
Hình 1.10 cho thấy phân bố x t1( ) và x t2( ) là tổ hợp tuyến tính của hai nguồn
( )
1
s t và s t Từ hình minh họa, ta thấy các tín hiệu trộn 2( ) x t và 1( ) x t có ít 2( )
tính độc lập hơn hai tín hiệu nguồn s t và 1( ) s t Điều này thể hiện được trên 2( )
s 2 (t)
s 1 (t)
Trang 16
phân bố giá trị của x1 và x2 : giả sử với một điểm xác định x=(x x1, 2) nếu ta
biết giá trị x1 là dương và lớn thì có thể suy được x2 sẽ có giá trị nhỏ hoặc nếu
giá trị x1 là âm và nhỏ thì x2 sẽ có giá trị lớn , nghĩa là từ một giá trị của x1 ta
có thế ước lượng được khoảng giá trị của x2 và ngược lại Trong trường hợp
này giữa các tín hiệu trộn có sự tương quan với nhau hơn các tín hiệu gốc
Trên hình 1.11, x1 và x2 có phân bố rất gần với phân bố Gauss ( được thể
hiện bằng nét đứt ) Điều đó thể hiện tín hiệu sau trộn sẽ có tính Gauss hơn so
với tín hiệu ban đầu và minh chứng cho định lý giới hạn trung tâm được nêu ở
trên
Hình 1.10- Phân bố chung của 2 thành phần độc lập
Hình 1.11- Mật độ phân bố của các tín hiệu trộn x i (t), chúng có dạng giống với
phân bố Gauss hơn các tín hiệu nguồn s i (t)
x1
x2
Trang 17các đánh giá của các tín hiệu nguồn ban đầu Vấn đề còn lại là ta phải xây dựng
một hàm đo được tính phi Gauss của tín hiệu để thực hiện việc tối ưu Các hàm
sử dụng đo tính phi Gauss gồm có kurtosis và negentropy được định nghĩa trong
hiệu là Gauss thì mômen bậc 4 sẽ bằng 3E y{ }2 , do đó kurtosis sẽ bằng 0
Trong thực tế , kurtosis của các tín hiệu có giá trị khác 0 và có thể nhận giá trị
âm hoặc dương Khi kurtosis có giá trị dương tín hiệu đó sẽ có phân bố
super-Gauss và ngược lại sẽ có phân bố sub-super-Gauss Điều này có nghĩa là nếu thực
hiện cực đại hóa trị tuyệt đối kurtosis của các tín hiệu tách chúng ta sẽ thu được
các thành phần độc lập
Negentropy:
Trang 18
Trở ngại lớn nhất của phương pháp sử dụng kurtosis là phương pháp này chịu
ảnh hưởng của các outlier Theo định nghĩa trong thống kê , outlier là các mẫu
có giá trị cực (lớn) so với các mẫu khác còn lại trong biến quan sát Do kurtosis
được tính toán dựa trên giá trị các mẫu nên khi trong biến quan sát xuất hiện các
outlier sẽ làm thay đổi giá trị kurtosis dẫn đến việc không phản ánh đúng bản
chất tín hiệu Do đó một phép đo khác tin cậy hơn được sử dụng để đo tính phi
Gauss của tín hiệu là negentropy Negentropy của một tín hiệu được xác định
như sau:
Đầu tiên khái niệm entropy của một tín hiệu được định nghĩa Entropy là khái
niệm cơ bản của lý thuyết thông tin Entropy của một biến ngẫu nhiên được liên
hệ tới lượng thông tin mà tín hiệu đó đưa ra Tín hiệu càng “ ngẫu nhiên ” , ví
dụ các giá trị không dự đoán được và không cấu trúc được , thì entropy càng
lớn Entropy H của biến ngẫu nhiên y với mật độ phân bố p y ( ) được xác
định như sau:
H y = −∫ p y p y dy (1.18)
Lý thuyết xác suất đã chứng minh đối với một tín hiệu có trị trung bình bằng 0
và phương sai đơn vị thì phân bố xác suất Gauss luôn có tính ngẫu nhiên nhất
(tương ứng entropy lớn nhất) so với các loại phân bố xác suất khác Điều đó dẫn
đến việc có thể sử dụng entropy như là một phép đo tính Gauss (hoặc phi Gauss)
của một biến ngẫu nhiên bất kỳ Định nghĩa negentropy J y( ) của một biến y
ngẫu nhiên như sau :
J y( )=H y( gauss)−H y( ) (1.19) trong đó H là hàm entropy, ygauss là một biến ngẫu nhiên phân bố xác suất
Gauss có cùng ma trận hiệp phương sai với biến y
Trang 19
Negentropy nhận giá trị bằng 0 khi và chỉ khi biến y có phân bố xác suất
Gauss và luôn nhận giá trị dương khi y có phân bố xác suất khác
1.4- Phương pháp ICA sử dụng thông tin hỗ tương
Khái niệm thông tin hỗ tương được xem là một phép đo tốt về về sự phụ
thuộc thống kê [10] Nếu s=(s s1, , ,2 s m)T thì thông tin hỗ tương giữa các biến
thành phần được định nghĩa như sau:
Nếu các biến s s1, , ,2 s độc lập thống kê với nhau thì thông tin hỗ tương giữa m
chúng sẽ bằng 0 Điều đó có nghĩa là chúng ta có thể thực hiện phương pháp ICA
bằng cách cực tiểu hóa thông tin hỗ tương giữa các biến thành phần Thuật toán này
được Bell-Sejnowski [10] giải quyết như sau:
Giả sử ma trận tách là W và y Wx= Sử dụng các tính chất của entropy, chúng ta
Bài toán tối ưu được đưa ra như sau: Chúng ta cần xác định W để thông tin hỗ
tương trong (1.21) là cực tiểu Hay nói cách khác chúng ta cần xác định W để các
thành phần được tách càng độc lập thống kê.Từ định nghĩa về entropy (1.18),
chúng ta có thể viết lại như sau:
H = −E (1.22)
Do đó chúng ta có thể viết lại (1.21) như sau:
Trang 20Giả thiết các tín hiệu tách là độc lập thống kê và không tương quan Đồng thời các
tín hiệu này có phương sai đơn vị, ta sẽ có:
Qua đó , chúng ta có thể thấy tương tự như phương pháp sử dụng tính phi Gauss
chúng ta có thể sử dụng các đại lượng đo tính độc lập khác nhau (thông tin hỗ
tương, khoảng cách Kullback-Leibler, ước lượng hợp lý cực đại….) để thực hiện
ICA
1.5- Phương pháp ICA sử dụng tính phi tương quan phi tuyến
Nếu giả sử ta có hai biến ngẫu nhiên y y và hai hàm 1, 2 f y g u trong đó tối ( ) ( )1 , 2
thiểu một hàm là phi tuyến tính Chúng ta nói y y phi tương quan phi tuyến với 1, 2
nhau nếu :
( ) ( )
{f u g u1 2 } 0
E = (1.26)
Trang 21
Khái niệm phi tương quan phi tuyến được xem là một tiêu chuẩn đo tính độc lập
thống kê Hai biến y y được coi là độc lập thống kê nếu : 1, 2
( ) ( )
{f u g u1 2 } E f u{ } ( )1 { }g u( )2 0
Để đáp ứng tiêu chuẩn này, các hàm ,f g được chọn là hàm lẻ và y y phải có 1, 2
hàm mật độ xác suất đối xứng Mục tiêu của phương pháp gồm hai bước: i) cách
chọn ,f g để đáp ứng (1.27) và ii) cách phi tương quan phi tuyến hai biến
Phần tiếp theo, chúng ta sẽ minh họa phương pháp này thông qua thuật toán
Hérault-Jutten []:
Đối với trường hợp BSS 2x2, Hérault-Jutten đưa ra một mạng hồi tiếp để tách
tín hiệu như sau:
Trang 22
⎯ CHƯƠNG 2 ⎯ THUẬT TOÁN FastICA VÀ COMPLEX-FastICA
rong chương này chúng tôi trình bày hai thuật toán ICA thông dụng là
FastICA cho dữ liệu thực và Complex-FastICA cho dữ liệu phức Ngoài ra
chúng tôi đề xuất thêm một thuật toán mới dựa trên thuật toán FastICA có tên
gọi IP-FastICA được sử dụng hiệu quả trong trường hợp các tín hiệu gốc ban
đầu có sự tương quan lớn
2.1 Thuật toán FastICA
Thuật toán FastICA được đề xuất bởi A.Hyvarinen trong [2,3] Thuật toán này
được ứng dụng cho dữ liệu giá trị thực gồm 3 bước: Tiền xử lý dữ liệu, Xấp xỉ
hoá negentropy, Tối ưu hoá hàm xấp xỉ negentropy
2.1.1 Quá trình tiền xử lý
• Quy tâm
Để không làm mất tính tổng quát , chúng ta có thể giả thiết rằng cả các
biến trộn và các thành phần độc lập đều có trị trung bình bằng 0 Giả thiết này
làm đơn giản hóa cả lý thuyết và thuật toán rất nhiều Nếu các tín hiệu xử lý có
trị trung bình khác 0, ta sẽ thể thực hiện quá trình tiền xử lý , gọi là phép quy
tâm tức trừ giá trị các biến được khảo sát cho trị trung bình của chúng:
Trang 23
Cho các biến ngẫu nhiên , có thể đơn giản biến đổi tuyến tính chúng thành
các biến bất tương quan bằng phương pháp phân tích thành phần chính PCA
(Pricipal Component Analysis) , quá trình này được gọi là “trắng hóa” dữ liệu
Như vậy PCA được xem là một quá trình tiền xử lý tín hiệu trước khi ta thực
hiện phương pháp ICA
Quá trình trắng hoá thực chất là một phép biến đổi tuyến tính z Vx =
Trong đó x là dữ liệu cần làm trắng hóa, V là ma trận trắng hoá, z là dữ liệu
đã trắng hoá Quá trình được thực hiện như sau :
Giả thiết x As = có trung bình bằng 0 và E ss{ }T = Gọi I Dvà E là các
ma trận trị riêng và vector riêng của ma trận hiệp phương sai của x thông qua sự
tương quan ) cũng liên quan đến tính độc lập Tuy nhiên, tính bất tương quan
yếu hơn tính độc lập và do đó không đủ cho sự ước lượng của mô hình ICA
trong hầu hết các ứng dụng
Mặc dù vậy , quá trình trắng hóa có tác dụng như một bước tiền xử lý trong
phương pháp ICA Lợi ích của trắng hóa trong thực tế đó là ma trận trộn mới
Trang 24
E zz = =I BE ss B =BIB =BB (2.6)
Có nghĩa là chúng ta có thể giới hạn việc tìm kiếm ma trận trộn trong không
gian ma trận trực giao Thay vì phải ước lượng thông số của ma trận gốc A,
chúng ta chỉ cần ước lượng một ma trận trực giao B Trong không gian nhiều
chiều , một ma trận trực giao chỉ bao gồm một nửa thông số của một ma trận bất
kỳ Như vậy có thể nói rằng quá trình trắng hóa đã giải quyết được một nửa vấn
đề của ICA Vì trắng hóa là một qui trình chuẩn và rất đơn giản, đơn giản hơn
nhiều so với bất kỳ thuật toán ICA nào, đó là một giải pháp rất tốt để giảm bớt
sự phức tạp của bài toán
Vai trò của quá trình trắng hoá
Với một tín hiệu đã trắng hóa z , nhiệm vụ còn lại của ICA là tìm ra một
vector w sao cho y i =w z T đạt giá trị phi Gaussian cực đại dưới điều kiện ràng
buộc E y{ }i2 = Khi đó 1 y i sẽ là đánh giá của một nguồn tín hiệu ban đầu Do đó
Như vậy quá trình trắng hoá đã đưa việc giải bài toán tìm w với điều kiện ràng
buộc đơn giản hơn w 2 =1
2.1.2 Xấp xỉ hóa negentropy
Đối với một biến ngẫu nhiên có phân bố Gauss , negentropy của biến luôn
bằng 0 và với tất cả các loại biến còn lại (phi Gaussian) negentropy luôn có giá
trị dương Tuy nhiên vấn đề ở chỗ chúng ta không thể tính negentropy một cách
trực tiếp, mà phải đánh giá negentropy thông qua việc xấp xỉ hoá Hàm
negentropy của biến y có thể được tính xấp xỉ như sau:
( ) { ( ) } { ( ) } 2
J y ≈⎡⎣E G y −E G ν ⎤⎦ (2.8)
Trang 25
trong đó ν là là biến ngẫu nhiên có phân bố Gaussian chuẩn (có trung bình bằng
0 và phương sai đơn vị), G{} là một hàm phi tuyến tính được chọn trong 3 hàm
xỉ Bài toán phân tách nguồn tin mù được đưa về bài toán tối ưu: Tìm vector w
2.1.3 Thuật toán FastICA
Hyvarinen [1] đã đưa ra một thuật toán tối ưu negentropy dùng phương pháp
Newton, gọi là FastICA Đây là một thuật toán tiêu biểu của phương pháp ICA
bằng cực đai hoá tính phi Gauss Ta nhận thấy hàm negentropy của w z T đạt
cực đại khi giá trị của hàm E G w z{ ( )T } tối ưu Theo phương pháp Lagrangian,
hàmE G w z{ ( )T } tối ưu với điều kiện ràng buộc w 2 =1 nếu gradient của hàm
Trang 26hàm J w Do các đặc trưng của bài toán ICA, nên chúng ta có thể tính nghịch ( )
đảo của ma trận Hessian một cách dễ dàng
Trang 27E g w z
ββ
E g w z
ββ
−
← −
− (2.20) Nhân 2 vế của (2.20) với β −E g w z{ '( )T }, thực hiện biến đổi, ta có được quy
tắc lặp tối ưu theo phương pháp Newton :
( )
{ T } { '( )T }
w←E zg w z −E g w z w (2.21) Một vấn đề đặt ra khi thực hiện tách nhiều nguồn tín hiệu, trong nhiều trường
hợp các giá trị vector w i của ma trận tách W hội tụ đến cùng một điểm cực đại
của hàm tối ưu Để khắc phục, các vector w i i, =1,2, ,N được trực giao hoá
bằng phương pháp trực giao hoá Gram-Schmidt Thuật toán FastICA đối với dữ
liệu đã trắng hoá được thực hiện theo các bước sau:
1 Chọn m là số nguồn tín hiệu cần đánh giá, gán p←1
2 Khởi tạo ngẫu nhiên giá trị vector đơn vị w p thoả mãn: w p 2 =1
p T
Trang 28
Dưới đây lưu đồ thuật toán cho quá trình mô phỏng thuật toán FastICA