Skip to main content

Interpolating Neural Networks in Asset Pricing Data. Supports Distributed Training in TensorFlow.

Project description

Interpolating Neural Networks

This repo contains the source code for observing double descent phenomena with neural networks in empirical asset pricing data.

dd_curve Fig. A new double-U-shaped bias-variance risk curve for deep neural networks. (Image source: original paper)

Deep learning models are heavily over-parameterized and can often get to perfect results on training data. In the traditional view, like bias-variance trade-offs, this could be a disaster that nothing may generalize to the unseen test data. However, as is often the case, such “overfitted” (training error = 0) deep learning models still present a decent performance on out-of-sample test data (Refer above figure).

This is likely due to two reasons:

  • The number of parameters is not a good measure of inductive bias, defined as the set of assumptions of a learning algorithm used to predict for unknown samples.
  • Equipped with a larger model, we might be able to discover larger function classes and further find interpolating functions that have smaller norm and are thus “simpler”.

There are many other explanations of better generalisation such as Smaller Intrinsic Dimension, Heterogeneous Layer Robutness, Lottery Ticket Hypothesis etc. To read more on them in detail, refer Lilian Weng's article.

Usage

In this work, we try to observe double descent phenomena in empirical asset pricing. The observation of double descent is fascinating as financial data are very noisy in comparison to image datasets (good signal to noise ratio).

$ pip install interpolating-neural-networks

Notes:

  • There are no regularization terms like weight decay, dropout.
  • Each network is trained for a long time to achieve near-zero training risk. The learning rate is adjusted differently for models of different sizes.

Citation

If you find this method and/or code useful, please consider citing

@misc{interpolatingneuralnetworks,
  author = {Akash Sonowal, Dr. Shankar Prawesh},
  title = {Interpolating Neural Networks in Asset Pricing},
  url = {https://github.com/akashsonowal/interpolating-neural-networks},
  year = {2022},
  note = "Version 0.0.1"
}

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

interpolating-neural-networks-0.0.2.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

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

interpolating_neural_networks-0.0.2-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file interpolating-neural-networks-0.0.2.tar.gz.

File metadata

File hashes

Hashes for interpolating-neural-networks-0.0.2.tar.gz
Algorithm Hash digest
SHA256 4f5a16333a5eeb122d26699e6af2788b4e69d4c1884f222f6e90898fcad0da52
MD5 b1ed90d15399c60e2f5efcb243e0b01b
BLAKE2b-256 cfcd07370c3f489a977f8fc4077a777f0a9e69afa1af27a60e4e41c4793f8ecd

See more details on using hashes here.

File details

Details for the file interpolating_neural_networks-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for interpolating_neural_networks-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c70a94f3726522a81fdbf1afef54b50ed3c3036f4f8de0e07b9d4249b36dab79
MD5 cc28c4c5dbdc2922e5ab04555d1e5422
BLAKE2b-256 1411fec7deb543ac77f2d7c262cd16b116a0d53d99afad19fce851592d94dfa6

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