Proof of concept algorithm that uses tensorflow-lite for ML on clusters
This demonstrates how to include a tensorflow-lite model into a gaudi algorithm, compile, and link.
There are number of outstanding issues...
What is the best way to pass info from the options file to the algorithm? Should we include the expected input to the tensor as options? Right now we have an envisioned calling syntax somewhat like this:
cluster_identification = ClusterIdentification("cluster_identification", inputClusterCollection = "EcalBarrelImagingHitsML", outputParticles = "ReconstructedParticles", modelTFLiteFile = "calibrations/cluster_identification.tflite", )
but we could add
inputFeatures = ['energy', 'eta', 'phi']
which would use those features with the model. Ideally we would hardcode the features as metadata along with the tflite file to prevent incorrect use.