Skip to main content

No project description provided

Project description

gmm_gpu

Documentation

A small library that provides a GMM class for fitting multiple instances of Gaussian Mixture Models.

This may be useful if you have a large number of independent small problems and you want to fit a GMM on each one. You can create a single large 3D tensor (three dimensional matrix) with the data for all your instances (i.e. a batch) and then send the tensor to the GPU and process the whole batch in parallel. This would work best if all the instances have roughly the same number of points.

If you have a single big problem (one GMM instance with many points) that you want to fit using the GPU, maybe Pomegranate would be a better option.

Example usage:

Import pytorch and the GMM class

>>> from gmm_gpu.gmm import GMM
>>> import pytorch

Generate some test data: We create a batch of 1000 instances, each with 200 random points. Half of the points are sampled from distribution centered at the origin (0, 0) and the other half from a distribution centered at (1.5, 1.5).

>>> X1 = torch.randn(1000, 100, 2)
>>> X2 = torch.randn(1000, 100, 2) + torch.tensor([1.5, 1.5])
>>> X = torch.cat([X1, X2], dim=1)

Fit the model:

>>> gmm = GMM(n_components=2, device='cuda')
>>> gmm.fit(X)

Predict the components: This will return a matrix with shape (1000, 200) where each value is the predicted component for the point.

>>> gmm.predict(X)

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

gmm_gpu-0.1.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

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

gmm_gpu-0.1.0-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file gmm_gpu-0.1.0.tar.gz.

File metadata

  • Download URL: gmm_gpu-0.1.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.9.20 Linux/5.15.133.1-microsoft-standard-WSL2

File hashes

Hashes for gmm_gpu-0.1.0.tar.gz
Algorithm Hash digest
SHA256 dadbdad24e9ef8db609f1b9f9abc67fc6e12effc4e28638f5241074e838a1cda
MD5 626c21792c52e672f31cb9000cefe66b
BLAKE2b-256 b547eeff8255d227bffa542c51d4a1c634e9efed80607dcf10df8609d0c1f9f9

See more details on using hashes here.

File details

Details for the file gmm_gpu-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gmm_gpu-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.9.20 Linux/5.15.133.1-microsoft-standard-WSL2

File hashes

Hashes for gmm_gpu-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f91feb0f426ddba08cbe1e130aa822811df972a3df4046eba23a27381bb1c898
MD5 0b909f7417b9b463de1596ac8566c2c1
BLAKE2b-256 75a4043067e478161e641a4c9ff5a00f9d1a707a2528ee2085724759b88e23f2

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