Comments (3)
Hi Jeremy,
Thanks for your interest and sorry for our delay in replaying. As you comment on your question, the idea is to project in a random space to study the behavior of each gene. We take advantage of the randomized data eigenvectors (which are a basis of a random space) but in principle, we could have generated a basis of orthonormal vectors and project the genes in such space. As you can imagine, the bigger in the dimension of the random space, the better you are able to test the gaussianity of the projected genes.
One way of testing how good or bad is the dimension of your random space for this purpose is to check if the genes with very low expression are highly non-gaussian. For example, a gene expressed in, say, three cells, once projected should not behave like a gaussian, because with such small number of points (cells) there is no way of saying that is normally distributed. We realized that if one projects on the eigenvectors of the randomized data, we obtain a lot of false positives. In particular some genes with almost no expression where tested as gaussian. A possible solution would be to generate a much bigger random space, but this is computationally very expensive. Instead of this, one can restrict the vectors to a certain hyper-sphere by projecting them into positive components and hence the resulting space is more dense in number of vectors, and the projection looks much better. You can think this as if you were projecting in a sector (well sampled) of a hyper-sphere instead of projecting in the whole (but badly sampled) hyper-sphere. With this trick, very low expressed genes are always non-gaussian and highly expressed genes (which by definition are much less affected by dropout and hence less bimodal) are always gaussian, which is the behavior one should expect .
from randomly.
Thanks, this is a very interesting idea that definitely had not occurred to me. Taking the absolute values of the eigenvector components seemed an odd thing to do, but this makes sense.
from randomly.
from randomly.
Related Issues (4)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from randomly.