This package fits the models presented in the paper "Deep Learning with Functional Inputs". A number of functions are provided for the user to fit models, prediction tasks, and to extract out relevant parameters. Tuning and crossvalidation functions are also provided.

Within these neural network architectures, we have the option to fit models that have inputs which are both scalars and functions. The form of a functional neuron in this model is:

\begin{align*} \label{eq1} v = g\left(\sum_{k = 1}^{K}\int_{\mathcal T} \beta_{k}(t)x_{k}(t)dt + \sum_{j = 1}^{J}w_{j}z_{j} + b\right). \end{align*}

A by-product of the method is a set of dynamic functional weights that can be visualized during the optimization process. This visualization leads to a greater interpretability of the relationship between the covariates and the response relative to vanilla neural networks.

An example of an interpterable parameter from this approach.

* For more information on the methodology, read the paper here.

* For a more intuitive understanding, check out this article.

* Extensions of the approach are under way for functional outputs.


You can install FuncNN from GitHub with the following commands:


Or through CRAN:

About the Authors

Information on each of the authors is provided below:

Author Website LinkedIn GitHub
Barinder Thind Link Link Link
Jiguo Cao Link Link
Sidi Wu Link
Richard Groenewald          Link
Kevin Multani Link Link

* Would also like to thank Matthew Reyers and Meyappan Subbaiah for their help.