This example shows how three independent organizations ("SAN", "JPM" and "PNB")
can collaborate with financial data to train a model for predicting customer
behavior.  All three organizations have similar (but not identical) data on
their customers and need to keep that information private.

This also illustrates the process in both Python (the *.py files) and in R (the
*.r files).  Both can be run independently or intermingled.


The SAN organization defines a neural network and begins a split-training,
requesting the participation of JPM and PNB.  Once the other two organizations
agree to participate, the three Access Points work together to train the
network.  Notice that some data munging has to be performed by SAN on the other
organizations datasets to normalize a few fields in the different datasets and
to unify the naming conventions before training.

At the end of the training, organization-one (SAN) has the trained network as
an asset on its Access Point is able to extract it for local inference.

The final two scripts illustrate running that network against the reserved
testing data.  First it is run as a local PyTorch model.  Next it gets run by
organization-two (JPM) as a network inference using the SAN Access Point.


NOTE: Data used in this demo is based on the Santander Customer Transaction
Prediction data, from https://www.kaggle.com/c/santander-customer-transaction-prediction/data
It has been altered for clarity and to show off capabilities of the platform.
