Comments (6)
Hi!
Thanks for the interest in our new method!
We are not quite yet ready to release the source code but we aim to do so as soon as possible.
I'll let you know when we publish it online.
from masif.
@FreyrS thanks for releasing the code!
For everyone else on this thread:
https://github.com/FreyrS/dMaSIF
from masif.
Hey!
I'm going to copy an answer from my co-author Jean Feydy who is one of the main developers for KeOps:
"If I am not mistaken, this is because our implementation keeps the number of channels very low, and does not store any of the intermediate results such as the «activation maps» in K-NN neighbourhoods.
Using KeOps for the «full convolutions» implements «checkpointing» out if the box: you get a super small memory footprint, at the cost of a slightly slow-down in the backward step.
I must stress that even if we use KeOps in the KNN query for the Dgcnn convolutions, we still have to pay a significant time and memory cost to build the point neighbourhoods as (N,K,D) arrays using scattered memory accesses (an operation that really does not stream well on GPUs).
As discussed briefly in the dMasif paper, and in more detail in the KeOps doc and NeurIPS paper, the typical size of problems that we encounter in protein sciences / shape analysis (= batches of clouds of 2k-20k 3D points each) really hits a sweet spot for KeOps.
It's a setting where the data is large enough to make GPUs worthwhile, but also small enough to make brute-force methods more efficient than graph-based implementations.
This is not an accident, of course: the first motivation for the library has always been to accelerate this range of computations, for applications to computational anatomy and biomedical imaging."
from masif.
@agamemnonc thanks a lot for updating this issue! I had completely forgotten about it, sorry about that!
from masif.
+1 I am also very eager to access the codebase for your new model!
from masif.
Awesome, looking forward to it @FreyrS, cool work!
Quick Q. while I have you here:
For dMaSIF, when compared to PointNet++ and DGCNN, could you talk about why your new convolution is so much faster as well as taking lesser memory per sample, as shown in Fig. 11, 12? Could you highlight which design choice leads to this, e.g. is PN++ so much slower because it is doing multi-scale operations while dMaSIF and DGCNN are not? (Esp. considering that both these baselines are also using KeOps speedups...)
from masif.
Related Issues (20)
- Problem about the 'vertex_mean_curvature' and 'vertex_gaussian_curvature' HOT 1
- Incorporation of cofactors
- Descriptor NaN
- MaSIF_search usage HOT 1
- can't install reduce HOT 3
- Issue with opening PLY files in the latest version of PyMOL HOT 3
- update tf version to 1.15
- why (1 - auc_roc) HOT 4
- Non-Pdb bank structures HOT 2
- Can't install MSMS HOT 1
- Data processing script is not working HOT 3
- Enhancement: Varying pH for predicting patches
- can't install reduce HOT 4
- Extract the residue numbers of a patch HOT 12
- How to establish a connection between amino acid residues and a patch
- Out of memory during training
- β-strand extract scripts
- embedding extraction HOT 4
- Training a new model
- defining mu and rho for conv layers
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 masif.