La SVD de la matrice corrélée doit être additive mais ne semble pas être


29

J'essaie simplement de reproduire une affirmation faite dans l'article suivant, Finding Correlated Biclusters from Gene Expression Data , qui est:

Proposition 4. Si . ensuite nous avons:XIJ=RICJT

je. Si est un bicluster parfait avec un modèle additif, alors est un bicluster parfait avec une corrélation sur les colonnes; ii. Si est un bicluster parfait avec un modèle additif, alors est un bicluster parfait avec une corrélation sur les lignes; iii. Si et sont des biclusters parfaits avec un modèle additif, alors est un bicluster parfaitement corrélé.RIXIJ
CJXIJ
RICJXIJ

Ces propositions peuvent être facilement prouvées ...

... mais bien sûr, ils ne le prouvent pas.

J'utilise certains des exemples simples du document plus la base + le code R personnalisé pour voir si je peux démontrer cette proposition.

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

(du tableau 1F)

du code personnalisé pour convertir le formulaire svd standard X = en comme décrit dans l'article:UdVTX=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])))
}

appliquer cette fonction à l'ensemble de données:

 > 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

À moins que j'hallucine, ces matrices ne sont pas additives, même si le corbic présente une parfaite corrélation entre les lignes et les colonnes. Il semble étrange que l'exemple qu'ils fournissent montre la propriété qu'ils ont dit qu'il devrait ... à moins que je manque une sorte d'étape de transformation avant ou après svd?


3
Salut, zzk: Cela pourrait aider à donner brièvement la définition de bicluster parfait ici car (a) tout le monde ne peut pas accéder au document et (b) cela peut signifier quelques choses différentes selon la généralité que l'on suppose.
cardinal

1
fondamentalement, la valeur absolue des scores de corrélation par paire entre toutes les lignes vs lignes et colonnes vs colonnes de la matrice est 1.
zzk

3
Je suis confus. Ne 4iiidit pas ça P(R), P(C), additivity => P(X)? (Je suis abrégé " Yest un bicluster parfait" comme P(Y)). Il semble que vous alliez dans l'autre direction, en attendant cette additivité des autres conditions. Veuillez expliquer plus.
Stumpy Joe Pete

Stumpy - Je m'attends à une additivité en R & C parce que je sais que la matrice que je fournis (corbic) présente une corrélation parfaite - c'est le bicluster parfait comme indiqué dans le document lui-même.
zzk

6
Je pense toujours que tu vas dans la mauvaise direction. 4iii ne dit pas que si Xest un bicluster parfaitement corrélé alors Ret Csera additif. L'implication va dans l'autre sens. Maintenant, je suis d'accord pour dire que c'est bizarre que l'exemple qu'ils donnent ne semble pas correspondre aux théorèmes qui se trouvent à côté. Peut-être pourriez-vous fournir d'autres informations? Y a-t-il un autre théorème qui va dans l'autre sens?
Stumpy Joe Pete

Réponses:


2

Notez que «bicluster» dans cet article se réfère à un sous-ensemble d'une matrice, «un sous-ensemble de lignes qui présentent un comportement similaire à travers un sous-ensemble de colonnes, ou vice versa». L'identification des biclusters est généralement effectuée dans les algorithmes d'exploration de données. Les auteurs proposent un nouveau «modèle de bicluster corrélé» différent des modèles précédents utilisés pour identifier ces sous-ensembles. Je ne connais rien à la génétique, mais la confusion ici semble assez claire et vient de deux sources:

1. Utilisation du mot «additif»

Il n'y a rien dans cet article qui implique que les deux matrices données dans la sortie de la fonction devraient être «additives», si par «additif», inverses additives est ce que l'on entend par OP. Les auteurs n'utilisent pas le mot additif dans ce sens. Ils font référence à l'obtention d'un bicluster avec un modèle additif, "où chaque ligne ou colonne peut être obtenue en ajoutant une constante à une autre ligne ou colonne".

2. Mauvaise lecture de la proposition 4.3

Suite au commentaire de @StumpyJoePete, la proposition dit que si et sont des biclusters parfaits avec un modèle additif, alors est un bicluster corrélé parfait. Les auteurs ne disent pas que l'inverse sera vrai. Les auteurs ne soutiennent pas que si est un bicluster parfaitement corrélé, alors etRICJXIJXIJRICJRICJ

* En outre, les données d'exemple proviennent d'une section complètement différente de l'article que la proposition discutée dans la question.


C'est formidable de voir la [de loin] la question sans réponse la plus votée sur notre site Web enfin répondue! +1 même si je n'ai pas lu le document et ne peux pas garantir que ce que vous avez écrit est correct; mais cela semble raisonnable.
amibe dit Réintégrer Monica
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.