Logo ROOT  
Reference Guide
TMVA_SOFIE_ONNX Namespace Reference

Functions

 CreateAndTrainModel (modelName)
 ParseModel (modelFile, verbose=False)

Variables

 modelCode = ParseModel(modelFile, False)
 Step 2 : Parse model and generate inference code with SOFIE.
 modelFile = CreateAndTrainModel(modelName)
str modelName = "LinearModel"
 Step 1 : Create and Train model.
 ort_session = ort.InferenceSession(modelFile)
 outputs = ort_session.run(None, {"input": x})
 session = sofie.Session()
 sofie = getattr(ROOT, 'TMVA_SOFIE_' + modelName)
 Step 3 : Compile the generated C++ model code.
float testFailed = abs(y_sofie-y_ort) > 0.01
 x = np.random.normal(0,1,(1,32)).astype(np.float32)
 y = session.infer(x)
 y_ort = outputs[0]
 y_sofie = np.asarray(y.data())

Function Documentation

◆ CreateAndTrainModel()

TMVA_SOFIE_ONNX.CreateAndTrainModel ( modelName)

Definition at line 24 of file TMVA_SOFIE_ONNX.py.

◆ ParseModel()

TMVA_SOFIE_ONNX.ParseModel ( modelFile,
verbose = False )

Definition at line 86 of file TMVA_SOFIE_ONNX.py.

Variable Documentation

◆ modelCode

TMVA_SOFIE_ONNX.modelCode = ParseModel(modelFile, False)

Step 2 : Parse model and generate inference code with SOFIE.

Definition at line 123 of file TMVA_SOFIE_ONNX.py.

◆ modelFile

TMVA_SOFIE_ONNX.modelFile = CreateAndTrainModel(modelName)

Definition at line 116 of file TMVA_SOFIE_ONNX.py.

◆ modelName

str TMVA_SOFIE_ONNX.modelName = "LinearModel"

Step 1 : Create and Train model.

Definition at line 115 of file TMVA_SOFIE_ONNX.py.

◆ ort_session

TMVA_SOFIE_ONNX.ort_session = ort.InferenceSession(modelFile)

Definition at line 153 of file TMVA_SOFIE_ONNX.py.

◆ outputs

TMVA_SOFIE_ONNX.outputs = ort_session.run(None, {"input": x})

Definition at line 156 of file TMVA_SOFIE_ONNX.py.

◆ session

TMVA_SOFIE_ONNX.session = sofie.Session()

Definition at line 137 of file TMVA_SOFIE_ONNX.py.

◆ sofie

TMVA_SOFIE_ONNX.sofie = getattr(ROOT, 'TMVA_SOFIE_' + modelName)

Step 3 : Compile the generated C++ model code.

Step 4: Evaluate the model

Definition at line 136 of file TMVA_SOFIE_ONNX.py.

◆ testFailed

float TMVA_SOFIE_ONNX.testFailed = abs(y_sofie-y_ort) > 0.01

Definition at line 160 of file TMVA_SOFIE_ONNX.py.

◆ x

TMVA_SOFIE_ONNX.x = np.random.normal(0,1,(1,32)).astype(np.float32)

Definition at line 139 of file TMVA_SOFIE_ONNX.py.

◆ y

TMVA_SOFIE_ONNX.y = session.infer(x)

Definition at line 143 of file TMVA_SOFIE_ONNX.py.

◆ y_ort

TMVA_SOFIE_ONNX.y_ort = outputs[0]

Definition at line 157 of file TMVA_SOFIE_ONNX.py.

◆ y_sofie

TMVA_SOFIE_ONNX.y_sofie = np.asarray(y.data())

Definition at line 145 of file TMVA_SOFIE_ONNX.py.