particleflow icon indicating copy to clipboard operation
particleflow copied to clipboard

heterogeneous graphs

Open jpata opened this issue 3 years ago • 1 comments

For the moment, we concatenate input elements of different types (tracks, clusters, ...) into a single feature matrix. This means that there are features that may be defined for one type, but not defined for other types. Our ML model downstream treats all input elements as nodes of the same type. In principle, splitting up the inputs from a single feature matrix to independent feature matrices for each element type should be better.

jpata avatar Apr 01 '22 13:04 jpata

Along these lines, we can use the approach ParticleNet uses where basically each input set (in that case particles, and secondary vertices; in our case tracks and clusters) are first put through their own MLPs to standardize the dimension (to for example 32)

https://github.com/hqucms/weaver/blob/7150a1c3c6376737109816b9b22bfba6d7693290/utils/nn/model/ParticleNet.py#L253-L254

        self.pf_conv = FeatureConv(pf_features_dims, 32)
        self.sv_conv = FeatureConv(sv_features_dims, 32)

jmduarte avatar Apr 01 '22 14:04 jmduarte

Now we can try this out in pytorch: https://github.com/jpata/particleflow/issues/235

jpata avatar Oct 12 '23 13:10 jpata