Skip to main content

CT-NAS PyPI version Tests Python 3.6 Python 3.7 Python 3.8

This module contains an API access to a Neural Architecture Search dataset on a search space called "computational themes". Such themes are small directed acyclic graphs (DAGs) with a vertex collapse condition. This condition makes the left and the right graph in the picture being equivalent / isomorphic.

The dataset contains computations of feed-forward neural networks with different hidden structural priors based on these themes. By this, you can search for connections between graph theoretic properties of the search space and computational properties of the neural network models.

Computational Themes

Installation

Via poetry (recommended for projects) using PyPi: poetry add ctnas

Directly with pip from PyPi:

pip install ctnas

Via conda in your environment.yml (recommended for reproducible experiments):

name: exp01
channels:
- defaults
dependencies:
- pip>=20
- pip:
    - ctnas

From public GitHub:

pip install --upgrade git+ssh://git@github.com:innvariant/ctnas.git

Usage examples

from ctnas.api import CTNASApi

api = CTNASApi()
print(api.get_datasets())
# Should give you:
# ['spheres-b8c16fd7', 'mnist', 'spheres-23aeba4d', 'spheres-bee36cd9',
#  'spheres-b758e9f4', 'spheres-0a19afe4', 'cifar10', 'spheres-6598864b']
from ctnas.api import CTNASApi

api = CTNASApi()
print(api.get_graph_properties().head())

Gives you s.th. like:

test_dev.py . graph_uuid num_nodes ... degree_var undir_ecc_var 0 6e302aa7-6208-42a9-b1e0-08ce6d9d83ba 6 ... 1.222222 0.222222 1 ecd9c934-90ae-460c-855f-90c0b24a4150 6 ... 0.666667 0.000000 2 d111e38f-3ed1-454f-9d0e-8ded0428c9d9 6 ... 1.000000 0.222222 3 d23cac47-047c-4ec6-aaa4-e393b2ebeccd 5 ... 0.640000 0.240000 4 c56bb6f8-a9ec-44db-8c17-37b166fb5b06 6 ... 0.888889 0.222222

[5 rows x 19 columns]

import networkx as nx
import matplotlib.pyplot as plt
from ctnas.api import CTNASApi

api = CTNASApi()
graph = api.get_graph("0a1ded7d-677a-41f7-9361-c7079c8a34a7")
nx.draw(graph)
plt.show()

Cite our work

@misc{stier2022ctnas,
    title={CT-NAS: Analysis of Hidden Structural Priors for Neural Architecture Search},
    author={Julian Stier and Michael Granitzer},
    year={2022}
}

MinIO Policy

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::homes/stier/ctnas/*"
      ]
    }
  ]
}
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "*"
        ]
      },
      "Resource": [
        "arn:aws:s3:::homes/stier/ctnas/*"
      ],
      "Sid": ""
    }
  ]
}

Metadata

Release files for ctnas 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ctnas 0.2.0
File Size Uploaded Provenance Actions
ctnas-0.2.0.tar.gz 5.8 kB Without provenance Details for ctnas-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ctnas 0.2.0
File Interpreter ABI Platform Actions
ctnas-0.2.0-py3-none-any.whl Python 3 none any Details for ctnas-0.2.0-py3-none-any.whl

Total release size: 13.8 kB

Release files / ctnas-0.2.0.tar.gz

Download URL ctnas-0.2.0.tar.gz
Size 5.8 kB
Tags Source
SHA-256 checksum
How to use checksums
a3bd411751b3f0a0b0a8de14d8af51e8699207e37263618a85a845e6386320a6
BLAKE2b-256 checksum
How to use checksums
e776003953ff0735ebb126738f7f647ee5d6cc7e4aa07e52ec9fcea63651b984
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.8.2 requests/2.27.1 setuptools/61.2.0 requests-toolbelt/0.9.1 tqdm/4.64.0 CPython/3.7.3

Release files / ctnas-0.2.0-py3-none-any.whl

Download URL ctnas-0.2.0-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d283d52d65ac2ce84cf8168d862f29cc1a244941575c9f21004e4f0135b31ef3
BLAKE2b-256 checksum
How to use checksums
8e49b2b385b14f75dac6c4f0298a8fa53826a6c21400dd277a678eb865829e60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.8.2 requests/2.27.1 setuptools/61.2.0 requests-toolbelt/0.9.1 tqdm/4.64.0 CPython/3.7.3

Security for ctnas 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page