Hi Gael,

I took the time to dig a little bit, and found some MATLAB code
written by Diego di Bernardo.

http://dibernardo.tigem.it/wiki/index.php/Network_Inference_by_Reverse-engineering_NIR

He has a closed form result (the formula is in calc_cov.m), but the
formula is really weird, and I can't really figure out where it comes
from.

function covA = calc_cov(A,X,sX,P,sP,RIDGE,W);

% covA = calc_cov(A,X,sX,P,sP [, RIDGE, W]);
% X,sX,P,SP are N x M, where N=number of genes, M=number of expts.
% RIDGE is an optional ridge regression parameter
% W is an optional weight parameter.

[rows,N]=size(A);
covA=zeros(N,N,rows);
[N,M] = size(X);

if 1~=exist('RIDGE')
    RIDGE = 0;
end
if 1~=exist('W')
    W = eye(M);
end

Q = W*W';

for g=1:rows
    idx = find(A(g,:)~=0);
    vEta = sP(g,:).^2 + A(g,:).^2 * sX.^2;
%     vEta = sP(g,g).^2 + A(g,:).^2 * sX.^2;  % Deigo's way
    Z=X(idx,:);
    T=inv(Z*Q*Z'+RIDGE*eye(length(idx)))*Z*Q';
    covA(idx,idx,g) = T*diag(vEta)*T';
end

I'm not really sure how exactly the formula was derived though.

Note - while the code is free to download, he specifically says that
he doesn't want the code used for commercial purposes without
permission.  I presume reproducing it is ok?

Federico



On Mon, Oct 22, 2012 at 3:34 PM, Gael Varoquaux
<gael.varoqu...@normalesup.org> wrote:
> On Fri, Oct 19, 2012 at 01:09:21PM +0200, federico vaggi wrote:
>> Assuming that X and B are experimentally measured values with
>> uncertainties, what's the correct way to transfer that uncertainty to
>> A?
>
> There exists to my knowledge no theoretical/closed form result. I would
> rely on bootstrap:
> http://en.wikipedia.org/wiki/Bootstrapping_%28statistics%29
>
> G
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_sfd2d_oct
> _______________________________________________
> Scikit-learn-general mailing list
> Scikit-learn-general@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Scikit-learn-general mailing list
Scikit-learn-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

Reply via email to