SVD skorelowanej macierzy powinno być addytywne, ale nie wydaje się

29

Usiłuję tylko powtórzyć twierdzenie przedstawione w poniższym artykule Finding Correlated Biclusters z Gene Expression Data , czyli:

Twierdzenie 4. Jeśli . Następnie mamy:XIJ=RICJT

ja. Jeśli jest idealnym biclusterem z modelem addytywnym, to jest idealnym biclusterem z korelacją na kolumnach; ii. Jeśli jest idealnym bicluster z modelem addytywnym, to jest idealnym bicluster z korelacją na wierszach; iii. Jeśli zarówno jak i są idealnymi biclusterami z modelem addytywnym, to jest idealnie skorelowanym biclusterem. X I J C J X I J R I C J X I JRIXIJ
CJXIJ
RICJXIJ

Te propozycje można łatwo udowodnić ...

... ale oczywiście tego nie udowadniają.

Korzystam z kilku prostych przykładów w dokumencie plus podstawowy + niestandardowy kod R, aby sprawdzić, czy mogę zademonstrować tę propozycję.

corbic <- matrix(c(0,4,-4,2,2,-2,6,0,4,-8,16,-2,-2,10,-14,4), ncol=4)

(z tabeli 1F)

jakiś niestandardowy kod do konwersji standardowego X = na jak opisano w artykule: X = R C TUdVTX=RCT

svdToRC <- function(x, ignoreRank = FALSE, r = length(x$d), zerothresh=1e-9) {
#convert standard SVD decomposed matrices UEV' to RC' form
#x -> output of svd(M)
#r -> rank of matrix (defaults to length of singular values vector)
            # but really is the number of non-zero singular values
#ignoreRank -> return the full decomposition (ignore zero singular values)
#zerothresh -> how small is zero?

    R <- with(x, t(t(u) * sqrt(d)))
    C <- with(x, t(t(v) * sqrt(d)))

    if (!ignoreRank) {
        ind <- which(x$d >= zerothresh)
    } else {
        ind <- 1:r
    }

    return(list(R=as.matrix(R[,ind]), C=as.matrix(C[,ind])))
}

zastosuj tę funkcję do zestawu danych:

 > svdToRC(svd(corbic))
$R
           [,1]       [,2]
[1,]  0.8727254 -0.9497284
[2,] -2.5789775 -1.1784221
[3,]  4.3244283 -0.7210346
[4,] -0.8531261 -1.0640752

$C
          [,1]       [,2]
[1,] -1.092343 -1.0037767
[2,]  1.223860 -0.9812343
[3,]  3.540063 -0.9586919
[4,] -3.408546 -1.0263191

O ile nie mam halucynacji, te matryce nie są addytywne, mimo że corbic wykazuje doskonałą korelację między rzędami i kolumnami. Wydaje się dziwne, że podany przez nich przykład wykazuje właściwość, o której mówili, że powinien ... chyba że brakuje mi jakiegoś etapu transformacji przed lub po nagraniu na DVD?

zzk
źródło
3
Cześć, zzk: Pomocne może być krótkie podanie definicji idealnego efektu bicluster , ponieważ (a) nie każdy może mieć dostęp do papieru i (b) może oznaczać kilka różnych rzeczy w zależności od zakładanej ogólności.
kardynał
1
w zasadzie bezwzględna wartość wyników korelacji parami między wszystkimi wierszami a wierszami i kolumnami a kolumnami macierzy wynosi 1.
zzk
3
Jestem zmieszany. Nie 4iiimówi tak P(R), P(C), additivity => P(X)? (W skrócie „ Yis perfect bicluster” as P(Y)). Wygląda na to, że idziesz w innym kierunku, oczekując tej addytywności od innych warunków. Proszę wyjaśnić więcej.
Stumpy Joe Pete
Stumpy - spodziewam się addytywności w R & C, ponieważ wiem, że matryca, którą dostarczam (corbic) wykazuje idealną korelację - jest to idealny bicluster podany w samym artykule.
zzk
6
Nadal myślę, że zmierzasz w złym kierunku. 4iii nie mówi, że jeśli Xjest idealnie skorelowanym bicluster, to Ri Cbędzie addytywny. Implikacja idzie w innym kierunku. Teraz zgadzam się, że to dziwne, że przykład, który podają, wydaje się nie łączyć z twierdzeniami, które są obok. Być może możesz podać jakieś inne informacje? Czy istnieje jakieś inne twierdzenie, które idzie w innym kierunku?
Stumpy Joe Pete

Odpowiedzi:

2

Zauważ, że „bicluster” w tym artykule odnosi się do podzbioru macierzy, „podzbioru wierszy, które wykazują podobne zachowanie w podzbiorze kolumn lub odwrotnie”. Identyfikacja biclusters jest zwykle wykonywana w algorytmach eksploracji danych. Autorzy proponują nowy „skorelowany model bicluster”, który różni się od poprzednich modeli używanych do identyfikacji tych podzbiorów. Nic nie wiem na temat genetyki, ale zamieszanie tutaj wydaje się dość jasne i wynika z dwóch źródeł:

1. Użycie słowa „dodatek”

W tym artykule nie ma nic, co sugerowałoby, że dwie macierze podane w danych wyjściowych funkcji powinny być „addytywne”, jeśli przez „addytywne” odwrotność addytywna jest rozumiana przez OP. W tym sensie autorzy nie używają słowa dodatek. Dotyczą one uzyskania bicluster z modelem addytywnym, „w którym każdy wiersz lub kolumnę można uzyskać przez dodanie stałej do innego wiersza lub kolumny”.

2. Propozycja błędnego odczytu 4.3

RICJXIJXIJRICJRICJ powinny być odwrotnie addytywne lub powinny być w stanie dopasować się do modelu addytywnego.

* Dane przykładowe pochodzą z zupełnie innej części artykułu niż propozycja omawiana w pytaniu.

5ayat
źródło
Wspaniale jest zobaczyć [zdecydowanie] najbardziej uprzywilejowane pytanie, na które nie udzielono odpowiedzi na naszej stronie, w końcu odpowiedziało! +1, chociaż nie przeczytałem gazety i nie mogę ręczyć, że to, co napisałeś, jest poprawne; ale wydaje się rozsądne.
ameba mówi Przywróć Monikę