Comments (3)
Here my initial thoughts on this.
The signature for any TNN should pass ( features, neighborhoods) somehow. In pyg this has the format ( features, index).
In tnx, we create a Data class and this data class should contain all neighborhood matrices as well as features.
Eventually the user stores :
data = Data()
And pass it to the TNN during inference forward(data)
Inside forward one can access : data.xv, data.xe, data.xf, data.A0, data.B0 and so on.
What do you think ?
@ffl096
@michaelschaub
@georg-bn
from topomodelx.
Alternatively, one may allow to cash in the complexes and store the matrices inside the complex itself when chosen. Then pass these objects in the forward pass. This will create an overhead however since the object itself contains so much information that is not needed directly for computation of a TNN, only the neighborhood matrices are needed at the end.
The idea for TopoNetx to be numpy and scioy backend is to make it compatible with the sister libraries networks and hypernetx.
A third solution would be to choose the backend for TopoNetx. The last solution is probably the most time consuming to implement but also has long terms benefits.
from topomodelx.
The signature for any TNN should pass ( features, neighborhoods) somehow. In pyg this has the format ( features, index).
In tnx, we create a Data class and this data class should contain all neighborhood matrices as well as features.
Eventually the user stores :
data = Data()
And pass it to the TNN during inference forward(data)
Inside forward one can access : data.xv, data.xe, data.xf, data.A0, data.B0 and so on. What do you think ?
This seems reasonable to me. But I think a pytorch Data class is needed if the aim is to pass it through forward
of TNNs. Would it be a pytorch Data class in TNX then? Or a numpy Data class in TNX and a pytorch Data class in TMX?
from topomodelx.
Related Issues (20)
- Check docstrings everywhere HOT 5
- Make unique doc website for the three packages HOT 8
- RED LIST: Check before submitting
- Write coverletter
- Diagnose & Speed-up Hypergraph tutorials HOT 10
- `Dist2Cycle` never calls `Dist2CycleLayer`s HOT 5
- Extends TopoEmbedX to ColoredHypergraphs and Path complexes
- Possible bug in scatter_sum
- Best Practices for batching?
- Add path complex neural network in TopoModelX
- can_train tutorial fails with new sparse casting
- Review nn/hypergraph models HOT 1
- Review nn/simplicial models
- Review nn/cell and nn/combinatorial models HOT 1
- Fix bug in CAN tutorial
- Create Dataloaders HOT 1
- Add notebooks from TDL paper's experiments HOT 1
- Review and rewrite models that are not using topomodelx.base.conv primitives
- `SCConv` needs a full revision HOT 2
- Add `numpydoc` validation to CI
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 topomodelx.