Tôi có thể sử dụng phân tích thành phần độc lập nếu tôi có hai quần thể nguồn tín hiệu riêng biệt trộn lẫn với nhau không?


10

Tôi hiểu (phần lớn) cách phân tích thành phần độc lập (ICA) hoạt động trên một tập hợp tín hiệu từ một dân số, nhưng tôi không làm cho nó hoạt động nếu các quan sát của tôi (ma trận X) bao gồm các tín hiệu từ hai quần thể khác nhau (có các phương tiện khác nhau) và tôi tôi tự hỏi nếu đó là một hạn chế cố hữu của ICA hoặc nếu tôi có thể giải quyết điều này. Tín hiệu của tôi khác với loại phổ biến được phân tích ở chỗ các vectơ nguồn của tôi rất ngắn (ví dụ 3 giá trị dài), nhưng tôi có nhiều (ví dụ 1000) quan sát. Cụ thể, tôi đang đo huỳnh quang bằng 3 màu trong đó tín hiệu huỳnh quang rộng có thể "lan tỏa" vào các máy dò khác. Tôi có 3 máy dò và sử dụng 3 fluorophores khác nhau trên các hạt. Người ta có thể nghĩ về điều này như một quang phổ độ phân giải rất kém. Bất kỳ hạt huỳnh quang nào cũng có thể có một lượng tùy ý của bất kỳ 3 fluorophors khác nhau. Tuy nhiên, tôi có một tập hợp các hạt có xu hướng có nồng độ fluorophores khá khác biệt. Ví dụ: một bộ thường có thể có nhiều fluorophore # 1 và ít fluorophore # 2, trong khi một bộ khác có ít # 1 và rất nhiều # 2.

Về cơ bản, tôi muốn giải mã hiệu ứng lan tỏa để ước tính lượng thực tế của mỗi fluorophore trên mỗi hạt, thay vì có một phần tín hiệu từ một fluorophore thêm vào tín hiệu của một hạt khác. Có vẻ như điều này có thể xảy ra đối với ICA, nhưng sau một số thất bại đáng kể (biến đổi ma trận dường như ưu tiên tách biệt các quần thể hơn là xoay vòng để tối ưu hóa độc lập tín hiệu), tôi tự hỏi liệu ICA không phải là giải pháp phù hợp hay tôi cần tiền xử lý dữ liệu của tôi theo một số cách khác để giải quyết vấn đề này.

Kết quả của thuật toán FastICA với 2 quần thể trong 1 bộ dữ liệu

Các biểu đồ hiển thị dữ liệu tổng hợp của tôi được sử dụng để chứng minh vấn đề. Bắt đầu với các nguồn "thật" (bảng A) bao gồm hỗn hợp 2 quần thể, tôi đã tạo ra ma trận trộn (A) "thật" và tính ma trận quan sát (X) (bảng B). FastICA ước tính ma trận S (được hiển thị trong bảng C) và thay vì tìm các nguồn thực sự của tôi, đối với tôi, nó xoay vòng dữ liệu để giảm thiểu hiệp phương sai giữa 2 quần thể.

Tìm kiếm bất kỳ đề nghị hoặc cái nhìn sâu sắc.

Câu trả lời:


1

Về mặt khái niệm, để ICA hoạt động, nó yêu cầu N quan sát hiện tượng SAME và nó sẽ cố gắng phân hủy các tín hiệu này (hỗn hợp) thành <N thành phần.

Từ mô tả của bạn, mỗi máy dò đang đếm một hạt năng lượng khác nhau. Đó là, "Hỗn hợp" thực sự đã là ba tín hiệu khác nhau. Xem xét ví dụ nơi bạn sử dụng bản ghi của 4 micrô khác nhau để thử và phân biệt giữa 2 nguồn âm thanh khác nhau (độc lập lẫn nhau). Trong trường hợp này, mỗi micrô đang ghi một tổng (các) nguồn âm thanh khác nhau. Trong trường hợp của bạn, do hiện tượng bạn đang quan sát, mỗi "micrô" (máy dò) KHÔNG ghi lại tổng (các) nguồn khác nhau, mà thay vào đó, nó ghi lại từng nguồn riêng biệt (hầu hết các lần).

Như bạn mô tả, đôi khi, sự kiện CÙNG có thể được ghi lại bằng nhiều hơn một máy dò (tràn). Trong trường hợp này, nếu bạn khăng khăng với ICA thì nó sẽ cố gắng phân tách số tiền đó.

Do đó, có lẽ bạn nên xem xét một cái gì đó đơn giản hơn, như có được mối tương quan chéo giữa các sự kiện được ghi lại bởi mỗi một trong ba máy dò khác nhau như là một chỉ báo về lượng tràn.

Nhưng trong trường hợp này, thay vì kiểm tra 1000 "bộ ba" quan sát, bạn tạo ra ba chuỗi thời gian khác nhau. Một chuỗi thời gian trên mỗi máy dò mô tả các sự kiện (theo thời gian) của mỗi máy dò.

Nếu máy dò và bộ máy của bạn đủ nhanh, tín hiệu này sẽ trông giống như một chuỗi các xung phân rã theo cấp số nhân. Nếu không, tín hiệu của bạn sẽ trông giống như một chuỗi các xung được kết hợp với đáp ứng xung của hệ thống (một phiên bản được làm mịn). Trong cả hai trường hợp, nếu cùng một sự kiện đã được phát hiện bởi nhiều hơn một máy dò thì đầu ra của các máy dò này sẽ đồng thời tăng theo cấp độ (và tăng mối tương quan chéo hoặc một số dạng số liệu tương quan khác). Sẽ dễ dàng hơn để phát hiện sự gia tăng đó trong trường hợp đầu tiên (hệ thống nhanh).

Do đó, vấn đề bây giờ trở thành một trong đó bạn phải quyết định trình phát hiện nào để gán sự kiện đó cho nó được tính chính xác. Có một số cách bạn có thể làm điều này (không sử dụng ICA) nhưng bạn sẽ phải biết phản ứng phổ của máy dò (năng lượng VS biên độ xung hoặc năng lượng VS đầu ra điện áp). Sau đó, bạn có thể tạo tổng số hạt được tính bằng cách tra cứu "trọng số" cho mỗi xung trên phản ứng của máy dò. Hoặc bạn có thể áp dụng một "cửa sổ" cho các xung. Đó là, xem xét một ngưỡng sắc nét xung quanh đáp ứng cực đại của máy dò và chỉ đếm các sự kiện tạo ra các xung như vậy (thường là cao). Việc xem xét một vùng ngắn xung quanh hiệu suất cao nhất của máy dò sẽ loại bỏ các xung (thấp hơn) được tạo ra bởi sự cố tràn.

Tôi hi vọng cái này giúp được. Tôi hy vọng đã hiểu chính xác cấu hình của bạn.


0

Có vẻ như "tín hiệu" của bạn không phải là loại phù hợp với ICA. Tuy nhiên, dường như bạn có thể được hưởng lợi từ các thuật toán phân cụm, đặc biệt nếu bạn biết tín hiệu riêng biệt (mức năng lượng hoặc bước sóng) được mong đợi từ mỗi loại fluorophore. Bạn có thể tạo các cụm tổng hợp lý tưởng và đồng cụm dữ liệu quan sát với nó. Bằng cách thay đổi số lượng cụm và các tham số khác, bạn sẽ có thể bật ra sự lan tỏa của từng fluorophore vào nhau như các cụm bổ sung. Các phương pháp phân cụm phổ hoặc phân cấp có thể là tốt nhất cho điều này (trái ngược với phương tiện k).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.