Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RBatchGenerator_TensorFlow.py File Reference

Detailed Description

View in nbviewer Open in SWAN

Example of getting batches of events from a ROOT dataset into a basic TensorFlow workflow.

import tensorflow as tf
import ROOT
tree_name = "sig_tree"
file_name = str(ROOT.gROOT.GetTutorialDir()) + "/tmva/data/Higgs_data.root"
batch_size = 128
chunk_size = 5_000
target = "Type"
# Returns two TF.Dataset for training and validation batches.
tree_name,
file_name,
batch_size,
chunk_size,
validation_split=0.3,
target=target,
)
# Get a list of the columns used for training
input_columns = ds_train.train_columns
num_features = len(input_columns)
##############################################################################
# AI example
##############################################################################
# Define TensorFlow model
[
300, activation=tf.nn.tanh, input_shape=(num_features,)
), # input shape required
]
)
model.compile(optimizer="adam", loss=loss_fn, metrics=["accuracy"])
# Train model
model.fit(ds_train, validation_data=ds_valid, epochs=2)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t UChar_t len
Epoch 1/2
1/Unknown ␛[1m4s␛[0m 4s/step - accuracy: 0.7266 - loss: 0.6337␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈
18/Unknown ␛[1m4s␛[0m 3ms/step - accuracy: 0.9469 - loss: 0.1357␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈
38/Unknown ␛[1m4s␛[0m 3ms/step - accuracy: 0.9696 - loss: 0.0784␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈
␛[1m54/54␛[0m ␛[32m━━━━━━━━━━━━━━━━━━━━␛[0m␛[37m␛[0m ␛[1m4s␛[0m 6ms/step - accuracy: 0.9768 - loss: 0.0590 - val_accuracy: 0.9565 - val_loss: 4.5039e-07
Epoch 2/2
␛[1m 1/54␛[0m ␛[37m━━━━━━━━━━━━━━━━━━━━␛[0m ␛[1m1s␛[0m 33ms/step - accuracy: 1.0000 - loss: 4.0651e-07␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈
␛[1m20/54␛[0m ␛[32m━━━━━━━␛[0m␛[37m━━━━━━━━━━━━━␛[0m ␛[1m0s␛[0m 3ms/step - accuracy: 1.0000 - loss: 4.6649e-07 ␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈
␛[1m41/54␛[0m ␛[32m━━━━━━━━━━━━━━━␛[0m␛[37m━━━━━␛[0m ␛[1m0s␛[0m 3ms/step - accuracy: 1.0000 - loss: 4.6009e-07␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈␈
␛[1m54/54␛[0m ␛[32m━━━━━━━━━━━━━━━━━━━━␛[0m␛[37m␛[0m ␛[1m0s␛[0m 3ms/step - accuracy: 0.9997 - loss: 4.5739e-07 - val_accuracy: 0.9565 - val_loss: 4.2768e-07
Author
Dante Niewenhuis

Definition in file RBatchGenerator_TensorFlow.py.