Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TMVA::Experimental Namespace Reference

Namespaces

namespace  Internal
 
namespace  SOFIE
 

Classes

class  Classification
 
class  ClassificationResult
 
class  RBDT
 
class  RReader
 A replacement for the TMVA::Reader legacy interface. More...
 
class  RSofieReader
 TMVA::RSofieReader class for reading external Machine Learning models in ONNX files, Keras .h5 files or PyTorch .pt files and performing the inference using SOFIE It is reccomended to use ONNX if possible since there is a larger support for model operators. More...
 
class  RStandardScaler
 
class  RTensor
 RTensor is a container with contiguous memory and shape information. More...
 
class  SofieFunctorHelper
 Helper class used by SOFIEFunctor to wrap the infer signature interface to RDataFrame. More...
 
class  SofieFunctorHelper< std::index_sequence< N... >, Session_t, T >
 

Enumerations

enum class  MemoryLayout : uint8_t { RowMajor = 0x01 , ColumnMajor = 0x02 , RowMajor = 0x01 , ColumnMajor = 0x02 }
 Memory layout type (copy from RTensor.hxx) More...
 
enum class  MemoryLayout : uint8_t { RowMajor = 0x01 , ColumnMajor = 0x02 , RowMajor = 0x01 , ColumnMajor = 0x02 }
 Memory layout type. More...
 

Functions

template<typename T , typename U >
RTensor< T > AsTensor (U &dataframe, std::vector< std::string > columns={}, MemoryLayout layout=MemoryLayout::RowMajor)
 Convert the content of an RDataFrame to an RTensor.
 
template<std::size_t N, typename T , typename F >
auto Compute (F &&f) -> Internal::ComputeHelper< std::make_index_sequence< N >, T, F >
 Helper to pass TMVA model to RDataFrame.Define nodes.
 
template<typename T >
std::ostream & operator<< (std::ostream &os, RTensor< T > &x)
 Pretty printing.
 
template<std::size_t N, typename Session_t >
auto SofieFunctor (unsigned int nslots=0, const std::string &weightsFile="") -> SofieFunctorHelper< std::make_index_sequence< N >, Session_t, float >
 SofieFunctor : used to wrap the infer function of the generated model by SOFIE in a RDF compatible signature.
 

Enumeration Type Documentation

◆ MemoryLayout [1/2]

enum class TMVA::Experimental::MemoryLayout : uint8_t
strong

Memory layout type (copy from RTensor.hxx)

Enumerator
RowMajor 
ColumnMajor 
RowMajor 
ColumnMajor 

Definition at line 47 of file CudaTensor.h.

◆ MemoryLayout [2/2]

enum class TMVA::Experimental::MemoryLayout : uint8_t
strong

Memory layout type.

Enumerator
RowMajor 
ColumnMajor 
RowMajor 
ColumnMajor 

Definition at line 17 of file RTensor.hxx.

Function Documentation

◆ AsTensor()

template<typename T , typename U >
RTensor< T > TMVA::Experimental::AsTensor ( U &  dataframe,
std::vector< std::string >  columns = {},
MemoryLayout  layout = MemoryLayout::RowMajor 
)

Convert the content of an RDataFrame to an RTensor.

Parameters
[in]dataframeRDataFrame node
[in]columnsVector of column names
[in]layoutMemory layout
Returns
RTensor with content from selected columns

Definition at line 21 of file RTensorUtils.hxx.

◆ Compute()

template<std::size_t N, typename T , typename F >
auto TMVA::Experimental::Compute ( F &&  f) -> Internal::ComputeHelper<std::make_index_sequence<N>, T, F>

Helper to pass TMVA model to RDataFrame.Define nodes.

Definition at line 32 of file RInferenceUtils.hxx.

◆ operator<<()

template<typename T >
std::ostream & TMVA::Experimental::operator<< ( std::ostream &  os,
RTensor< T > &  x 
)

Pretty printing.

Parameters
[in]osOutput stream
[in]xRTensor
Returns
Modified output stream

Definition at line 582 of file RTensor.hxx.

◆ SofieFunctor()

template<std::size_t N, typename Session_t >
auto TMVA::Experimental::SofieFunctor ( unsigned int  nslots = 0,
const std::string &  weightsFile = "" 
) -> SofieFunctorHelper<std::make_index_sequence<N>, Session_t, float>

SofieFunctor : used to wrap the infer function of the generated model by SOFIE in a RDF compatible signature.

The number of slots is an optional parameter used to create multiple SOFIE Sessions, which can be run in a parallel model evaluation. One shouild use as number of slots the number of slots used by RDataFrame. By default, in case of nslots=0, only a single Session will be created and the Functor cannot be run in parallel. Examples of using the SofieFunctor are the C++ tutorial TMVA_SOFIE_RDataFrame.C and the Python tutorial TMVA_SOFIE_RDataFrame.py which makes use of the ROOT JIT to compile on the fly the generated SOFIE model.

Definition at line 64 of file SOFIEHelpers.hxx.