Skip to main content

A package for building and training cascade correlation neural networks in tensorflow and scipy.

Project description

cascade-correlation-neural-networks

A general framework for building and training constructive feed-forward neural networks. Provides an implementation of sibling-descendant CCNN (Cascade-Correlation) [1,2] with extendable wrappers to tensorflow, keras, scipy, and scikit-learn. Also supports custom topologies, training algorithms, and loss functions [3, 4].

Python PyPI License: MIT PyPI - Downloads

Installation | Features | Examples | References

Installation

pip install pyccnn

Features

Regression and Bayesian Regression

Classification

Unsupervised Learning

Examples

Simple regression problem:

import tensorflow.compat.v1 as tf 
from pyccnn.core import activations, losses
from pyccnn.core.model import CCNN
from pyccnn.core.monitor import EarlyStoppingMonitor
from pyccnn.core.units.perceptron import TensorflowPerceptron, ScipyPerceptron

# read the data and split into train and test
X_train, X_test, y_train, y_test = ...

# build cascade correlation network
output_unit = ScipyPerceptron(activations=[activations.linear], loss_function=losses.mse)
candidate_unit = TensorflowPerceptron([tf.nn.tanh], losses.S1, EarlyStoppingMonitor(1e-3, 500, 10000))
ccnn = CCNN(1, 1, output_unit, candidate_unit, losses.fvu)

# train network
ccnn.train(X_train, y_train, EarlyStoppingMonitor(1e-10, 10, 10), X_test, y_test)

Other examples can be found here.

References

  1. Fahlman, Scott E., and Christian Lebiere. "The Cascade-Correlation Learning Architecture." NIPS. 1989.
  2. Baluja, Shumeet, and Scott E. Fahlman. Reducing network depth in the cascade-correlation learning architecture. CARNEGIE-MELLON UNIV PITTSBURGH PA SCHOOL OF COMPUTER SCIENCE, 1994.
  3. Kwok, Tin-Yau, and Dit-Yan Yeung. "Bayesian regularization in constructive neural networks." International Conference on Artificial Neural Networks. Springer, Berlin, Heidelberg, 1996.
  4. Kwok, Tin-Yau, and Dit-Yan Yeung. "Objective functions for training new hidden units in constructive neural networks." IEEE Transactions on neural networks 8.5 (1997): 1131-1148.
  5. https://www.psych.mcgill.ca/perpg/fac/shultz/personal/Recent_Publications_files/cc_tutorial_files/v3_document.htm

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyccnn-1.0.tar.gz (18.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyccnn-1.0-py3-none-any.whl (25.0 kB view details)

Uploaded Python 3

File details

Details for the file pyccnn-1.0.tar.gz.

File metadata

  • Download URL: pyccnn-1.0.tar.gz
  • Upload date:
  • Size: 18.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for pyccnn-1.0.tar.gz
Algorithm Hash digest
SHA256 2397c3918eed28c181d8456ae4dbe1ae9a8421d06474557ad67bf68d9c4fd05c
MD5 21e55adb33460650b1c5d0f9de9c6fd6
BLAKE2b-256 4e7cf5abce011b227009118eff29c5988049f7449323106ede4ba7317d32b4ba

See more details on using hashes here.

File details

Details for the file pyccnn-1.0-py3-none-any.whl.

File metadata

  • Download URL: pyccnn-1.0-py3-none-any.whl
  • Upload date:
  • Size: 25.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for pyccnn-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 999bc64789d85e1ae994c96f4a0e8c6ee7da11121306e10d2cfb1242a7febe47
MD5 fc6c00707782c6436a521180a1289f3e
BLAKE2b-256 673353e0515b83fa099abb9a88abe413dc4c8846521f3eb495a0a6505b57b13a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page