Skip to main content

GLMMs with known variances in python with Newton-like solver

Project description

Damn You Diamond!

Damn You Diamond

(Diamond was Newton’s mischievous dog)

What is Diamond?

Diamond utilizes iterative, quasi-Newton 2nd-order solvers for certain kinds of generalized linear models (GLMs) with arbitrary but known L2-regularization. A common use is fitting mixed-effects models, with their covariance already being known by another means (e.g. lme4). These 2nd-order iterative solvers are considerably faster than a full-blown solution.

Limitations

  • The random-effects covariances must be input a-priori. Unlike R’s lme4 or Julia’s MixedModels, Diamond does not estimate the covariance of random effects terms.

  • Diamond only supports the following models

    • logistic regression

    • ordinal logistic regression using proportional odds, as defined in Section 7.2.1 of Categorical Data Analysis, 2nd Ed., by Alan Agresti

  • Currently, only formulae with crossed, independent random effects are supported. Using the mtcars dataset as an example, these look like mpg ~ 1 + hp + (1 + hp | cyl) + (1 | gear). I.e. no hierarchical terms

Installation

You must have docker installed. Then, run docker run -ti --rm -p 8888:8888 tsweetser/diamond

Copy-paste the URL, including the token, into your browser. Then, check out the Jupyter notebook examples!

Troubleshooting installation

  • You may need to restart docker if you’ve been running jupyter notebooks locally on port 8888.

Documentation

See documentation for more details on the details of Diamond and how to use it

Contributing to Diamond

We always welcome contributions. See CONTRIBUTING.md

Running Tests

You will need R to run the integration tests. From the root directory, run pip install nose then nosetests.

Development Status

Diamond is an evolving project. Please file issues if you would like to use Diamond in new ways.

License

See LICENSE.txt

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

sf-diamond-0.2.2.tar.gz (62.0 kB view details)

Uploaded Source

File details

Details for the file sf-diamond-0.2.2.tar.gz.

File metadata

  • Download URL: sf-diamond-0.2.2.tar.gz
  • Upload date:
  • Size: 62.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for sf-diamond-0.2.2.tar.gz
Algorithm Hash digest
SHA256 e205b5d74d59c36ab1294a6b4edc01cd80278bbf65027b878606d962451e4ed9
MD5 4069f962460ac7f3845113a85a98ad2c
BLAKE2b-256 3bffdb0d7080e9dceb6c426911e861a7a060ad3bd8821578d6932a9763bdf234

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