Package: cito 1.2

Maximilian Pichler

cito: Building and Training Neural Networks

The 'cito' package provides a user-friendly interface for training and interpreting deep neural networks (DNN). 'cito' simplifies the fitting of DNNs by supporting the familiar formula syntax, hyperparameter tuning under cross-validation, and helps to detect and handle convergence problems. DNNs can be trained on CPU, GPU and MacOS GPUs. In addition, 'cito' has many downstream functionalities such as various explainable AI (xAI) metrics (e.g. variable importance, partial dependence plots, accumulated local effect plots, and effect estimates) to interpret trained DNNs. 'cito' optionally provides confidence intervals (and p-values) for all xAI metrics and predictions. At the same time, 'cito' is computationally efficient because it is based on the deep learning framework 'torch'. The 'torch' package is native to R, so no Python installation or other API is required for this package.

Authors:Christian Amesöder [aut], Maximilian Pichler [aut, cre], Florian Hartig [ctb], Armin Schenk [ctb]

cito_1.2.tar.gz
cito_1.2.zip(r-4.7)cito_1.2.zip(r-4.6)cito_1.2.zip(r-4.5)
cito_1.2.tgz(r-4.6-any)cito_1.2.tgz(r-4.5-any)
cito_1.2.tar.gz(r-4.7-any)cito_1.2.tar.gz(r-4.6-any)
cito_1.2.tgz(r-4.6-emscripten)
manual.pdf |manual.html
DESCRIPTION |NEWS
card.svg |card.png
cito/json (API)

# Install 'cito' in R:
install.packages('cito', repos = c('https://citoverse.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/citoverse/cito/issues

Pkgdown/docs site:https://citoverse.github.io

Datasets:

On CRAN:

Conda:

machine-learningneural-network

9.39 score 54 stars 190 scripts 2.9k downloads 19 exports 59 dependencies

Last updated from:eae2d2a127. Checks:7 WARNING, 2 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64WARNING176
source / vignettesOK230
linux-release-x86_64WARNING163
macos-release-arm64WARNING172
macos-oldrel-arm64WARNING123
windows-develWARNING116
windows-releaseWARNING102
windows-oldrelWARNING126
wasm-releaseOK167

Exports:ALEanalyze_trainingavgPoolcnnconditionalEffectsconfig_lr_schedulerconfig_optimizerconfig_tuningcontinue_trainingconvcreate_architecturednnelinearmaxPoolmmnPDPtransfertune

Dependencies:abindbackportsbitbit64bootcallrcheckmateclicorocrayondescfarverfilelockfsgluegridExtragtablehmsjpegjsonlitelabelinglatticelifecyclelme4magrittrMASSMatrixminqanlmenloptrotelparabarpillarpkgconfigpngprettyunitsprocessxprogresspsR6rappdirsrbibutilsRColorBrewerRcppRcppEigenRdpackreformulasrlangsafetensorsscalestibbletifftorchtorchvisionutf8vctrsviridisLitewithrzeallot

Convultions neural networks and Multi modal neural networks
Data Preparation of complex data | The format of the inputs we expect in cito | 1. Preparing your data on disk | 2. Load images into R | 3. Normalize and check channel dimension | 4. Prepare tabular data (response and other tabular data such as altitude and spatial coordinates) | Convolutional neural networks | Multi-modal neural networks | Computational Considerations and Constraints | 1. GPU Requirements | 2. System Memory (RAM) | Example Calculation (500 observations)

Last update: 2025-05-27
Started: 2025-05-27

Example: (Multi-) Species distribution models with cito
Species distribution model - African elephant | Adjusting optimization parameters - Convergence | Train final model with bootstrapping to obtain uncertainties | Predictions | Inference | Multi-species distribution model | Train model with bootstrapping | Advanced: Joint species distribution model

Last update: 2024-03-18
Started: 2023-09-29

Introduction to cito
Setup - Installing torch | Details about the internal implementation of ‘cito’ | Internal Data Representation | Construction of the neural networks | Training and Evaluation | Transferability | Introduction to models and model structures | Loss functions / Likelihoods | Data | Fitting a simple model | Baseline loss | Adding a validation set to the training process | Methods | Explainable AI - Understanding your model | Uncertainties/p-Values | Architecture | Activation functions | Tuning hyperparameters | Regularization | Elastic net regularization | Dropout Regularization | Learning rate | Learning rate scheduler | Optimizer | Early Stopping | Automatic hyperparameter tuning (experimental) | Continue training process | The best of both worlds - combining statistical models and deep learning

Last update: 2024-03-16
Started: 2023-09-29

Training neural networks
Possible issues | Convergence issues | Epochs | Learning rate | Solution: learning rate scheduler | Overfitting | Early stopping and regularization

Last update: 2024-03-06
Started: 2023-09-29

Advanced: Custom loss functions and prediction intervals
Custom loss functions | Example 1: Custom (likelihood/loss) functions | Example 2: Quantile regression | Example 3: Using cito for optimization / active learning

Last update: 2024-03-05
Started: 2023-09-29

Readme and manuals

Help Manual

Help pageTopics
Accumulated Local Effect Plot (ALE)ALE ALE.citodnn ALE.citodnnBootstrap
Visualize training of Neural Networkanalyze_training
This function creates an 'avgPool' layer object of class 'citolayer' for use in constructing a Convolutional Neural Network (CNN) architecture. The resulting layer object can be passed to the 'create_architecture' function to define the structure of the network.avgPool
'cito': Building and training neural networkscito-package cito
Train a Convolutional Neural Network (CNN)cnn
Retrieve parameters of a fitted CNN modelcoef.citocnn
Returns list of parameters the neural network model currently has in usecoef.citodnn coef.citodnnBootstrap
Retrieve parameters of a fitted MMN modelcoef.citommn
Calculate average conditional effectsconditionalEffects conditionalEffects.citodnn conditionalEffects.citodnnBootstrap
Creation of customized learning rate scheduler objectsconfig_lr_scheduler
Creation of customized optimizer objectsconfig_optimizer
Config hyperparameter tuningconfig_tuning
Continues training of a model generated with 'dnn', 'cnn' or 'mmn' for additional epochs.continue_training continue_training.citocnn continue_training.citodnn continue_training.citodnnBootstrap continue_training.citommn
Create a Convolutional Layer for a CNN Architectureconv
Create a CNN Architecturecreate_architecture
DNNdnn
Embeddingse
list of specials - taken from enum.RfindReTrmClasses
Create a Linear Layer for a CNN Architecturelinear
Create a Maximum Pooling Layer for a CNN ArchitecturemaxPool
Train a Multi-Modal Neural Network (MMN)mmn
Partial Dependence Plot (PDP)PDP PDP.citodnn PDP.citodnnBootstrap
Plot method for citoarchitecture objectsplot.citoarchitecture
Plot a fitted CNN modelplot.citocnn
Creates graph plot which gives an overview of the network architecture.plot.citodnn plot.citodnnBootstrap
Predict with a fitted CNN modelpredict.citocnn
Predict from a fitted dnn modelpredict.citodnn predict.citodnnBootstrap
Predict with a fitted MMN modelpredict.citommn
Print method for citoarchitecture objectsprint.citoarchitecture
Print a fitted CNN modelprint.citocnn
Print class citodnnprint.citodnn print.citodnnBootstrap
Print a fitted MMN modelprint.citommn
Print average conditional effectsprint.conditionalEffects print.conditionalEffectsBootstrap
Print method for class summary.citodnnprint.summary.citodnn print.summary.citodnnBootstrap
Extract Model Residualsresiduals.citodnn
Data Simulation for CNNsimulate_shapes
Summarize a fitted CNN modelsummary.citocnn
Summarize a Neural Network of class citodnnsummary.citodnn summary.citodnnBootstrap
Summarize a fitted MMN modelsummary.citommn
combine a list of formula terms as a sumsumTerms
Include a Pretrained Model in a CNN Architecturetransfer
Tree Datatree_data
Tune hyperparametertune