Introduction

Artificial neural networks (ANN) are computing architectures with massively parallel interconnections of simple neurons. It has been applied to biomedical fields such as imaging analysis and diagnosis.

In this package built on the Theano math library, we implement ANNs to predict patient prognosis by extending Cox Regression to the non-linear neural network framework.

Some features of Cox-nnet include parallelization and GPU usage for high computational efficiency, training optimization methods such as the Nesterov accelerated gradient and flexibility in allowing the specification of neural network architecture. Incorporation of biological information into the structure or using a deep learning approach are possible.

In all, we think that this new tool will tremendously help researchers to build stronger predictive models as well as investigate the importance of variables associated with patient outcome.

Functions overview

  • trainCoxMlp - main function for training a Cox-nnet model
  • CVLoglikelihood - calculate the cross-validated logliklihood (model performance metric)
  • CIndex - calculate the C-Index (model performance metric)
  • L2CVSearch - helper function for optimizing the regularization parameter; searches for lambda using a hill climbing algorithm
  • L2CVProfile - helper function for optimizing the regularization parameter; profiles lambda across a range of values
  • evalNewData - evaluates new data or test data; outputs the linear predictor (i.e., the log hazard ratio)
  • varImportance - determine variable importance through a dropout procedure
  • saveModel - saves model to binary file
  • loadModel - loads model from file