Skip to main content

Generative Sparse Distributed Representations, a fast generative model

Project description

gsdr

Generative Sparse Distributed Representations, a fast generative model written in Python (Original C++ implementation https://github.com/222464/GSDR)

Dependencies

  • Python 3

  • Python libraries

    • numpy

Installation

pip install gsdr or clone and python setup.py install

Usage

(More extensive examples and IPython notebooks can be found in examples/)

With labeled data:

data, labels = ...

num_labels = 10

# Data: (batches, num_features)
# Labels: (batches,) (contains numbers from 0 to num_labels-1, eg. 10 for MNIST)

# Build the GSDR network (only one layer for now)
gsdr = GSDRStack()
gsdr.add(input_count=data.shape[1], hidden_count=256, sparsity=0.1, forced_latent_count=num_labels)

forced_latents = np.eye(num_labels)

# Train once for each data point
for i in range(data.shape[0]):
    gsdr.train(data[i], forced_latents={0: forced_latents[labels[i]]})

# Generate one example for each label
for i in range(num_labels):
    generated = gsdr.generate(forced_latents={0: forced_latents[i]})

With unlabeled data:

data = ...

# Data: (batches, num_features)

# Build the GSDR network (only one layer for now)
gsdr = GSDRStack()
gsdr.add(input_count=data.shape[1], hidden_count=256, sparsity=0.1)

# Train once for each data point
for i in range(data.shape[0]):
    gsdr.train(data[i])

states = np.eye(hidden_count)

# Generate one example for each one-hot state
for i in range(hidden_count):
    generated = gsdr.generate(states[i])

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

gsdr-0.1.1.zip (2.5 kB view details)

Uploaded Source

File details

Details for the file gsdr-0.1.1.zip.

File metadata

  • Download URL: gsdr-0.1.1.zip
  • Upload date:
  • Size: 2.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gsdr-0.1.1.zip
Algorithm Hash digest
SHA256 172750cc3ad23db1f40a6aa3fc121f208af5053a9649c392d380e40a1f4998df
MD5 1475966985631b5a7c50b837d47c385e
BLAKE2b-256 3f85b7b0b71c19459ceb4714c70c7d90cd21a1d61abd10e815404970835feba2

See more details on using hashes here.

Supported by

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