mvf


Namemvf JSON
Version 0.0.17 PyPI version JSON
download
home_page
SummaryA package implementing a supervised learning model validation framework.
upload_time2023-08-14 12:13:33
maintainer
docs_urlNone
authorTom Kim
requires_python>=3.9
license
keywords python r machine learning validation framework
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            MVF is a pluggable ML/statistical modelling framework that allows for the easy comparison of regression models implemented in Python and R. Write simple wrapper classes for your models and compare their performance on a particular dataset. The framework executes incrementally by default, meaning you can easily add a new model, without refitting existing models.

**Pluggable** - Quickly add a new model. Easily switch-out a dataset.

**Auditable** - All results are archived. All processes are transparent.

**Reproducible** - All non-stochastic processes are reproducible. Stochastic processes are repeatable.

MVF seeks to bridge the gap between R&D and integration with production applications.

## Getting started

For full documentation of the project and instructions on how to get started, visit the [documentation site](https://tomkimcta.gitlab.io/model-validation-framework).

## Main features

* Automates the supervised ML workflow with simple configuration.
* R and Python models can be plugged in easily.

## For developers

### Dependencies

You need Python>=3.9 and R>=4.0. 

Additionally, you must have a working installation of the `R6`, [`IRkernel`](https://github.com/IRkernel/IRkernel) and `arrow` R packages to leverage the R/Python interoperability.

### Git

This project operates using two Git branches

- dev
- main

All development work should be undertaken on the development branch. The dev branch should then be merged into the master branch to deploy a new version of the package. 

### CI/CD

This project uses GitLab CI/CD. Current jobs:

* **test_dev** - Runs all tests except functional tests using [pytest](https://docs.pytest.org). Runs on commits to `dev` branch.
* **test_main** - Runs all tests using [pytest](https://docs.pytest.org). Runs on commits to `main` branch.
* **build_deploy_package** - Builds the Python package and deploys to [PyPI](https://pypi.org/). Runs on commits to `main` branch.
* **build_deploy_docs** - Builds the documentation site and deploys to [GitLab Pages](https://docs.gitlab.com/ee/user/project/pages/). Runs on commits to `main` branch.

All CI/CD stages run in a Docker container. This project uses `node:latest` for the **build_deploy_docs** stage and a custom R/Python container specified by the Dockerfile for the remaining stages.

#### Docker

To update the container in the registry, navigate to the project root and run

```
sudo docker login registry.gitlab.com
```

Enter your GitLab username and password (only for members of the project). Then run

```
sudo docker build -t registry.gitlab.com/tomkimcta/model-validation-framework .
sudo docker push registry.gitlab.com/tomkimcta/model-validation-framework
```

#### PyPI

The version stored in the `version` file must be incremented for a deployment of the package to be successful.

### Documentation

This project uses a static site generator called [Docusaurus](https://docusaurus.io) to create its documentation. The content for the documentation site is contained in `documentation/docs/`. Any updates to documentation can be verified in a development server by running `npm i && npm start` from the `documentation/` directory.




            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "mvf",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "",
    "keywords": "python,R,machine learning,validation,framework",
    "author": "Tom Kim",
    "author_email": "tom.kim@certus-tech.com",
    "download_url": "https://files.pythonhosted.org/packages/35/41/2d1e2c5935f408b7c4cbe743b442fd0e61f931b14ce1d425abe5a064e844/mvf-0.0.17.tar.gz",
    "platform": null,
    "description": "MVF is a pluggable ML/statistical modelling framework that allows for the easy comparison of regression models implemented in Python and R. Write simple wrapper classes for your models and compare their performance on a particular dataset. The framework executes incrementally by default, meaning you can easily add a new model, without refitting existing models.\n\n**Pluggable** - Quickly add a new model. Easily switch-out a dataset.\n\n**Auditable** - All results are archived. All processes are transparent.\n\n**Reproducible** - All non-stochastic processes are reproducible. Stochastic processes are repeatable.\n\nMVF seeks to bridge the gap between R&D and integration with production applications.\n\n## Getting started\n\nFor full documentation of the project and instructions on how to get started, visit the [documentation site](https://tomkimcta.gitlab.io/model-validation-framework).\n\n## Main features\n\n* Automates the supervised ML workflow with simple configuration.\n* R and Python models can be plugged in easily.\n\n## For developers\n\n### Dependencies\n\nYou need Python>=3.9 and R>=4.0. \n\nAdditionally, you must have a working installation of the `R6`, [`IRkernel`](https://github.com/IRkernel/IRkernel) and `arrow` R packages to leverage the R/Python interoperability.\n\n### Git\n\nThis project operates using two Git branches\n\n- dev\n- main\n\nAll development work should be undertaken on the development branch. The dev branch should then be merged into the master branch to deploy a new version of the package. \n\n### CI/CD\n\nThis project uses GitLab CI/CD. Current jobs:\n\n* **test_dev** - Runs all tests except functional tests using [pytest](https://docs.pytest.org). Runs on commits to `dev` branch.\n* **test_main** - Runs all tests using [pytest](https://docs.pytest.org). Runs on commits to `main` branch.\n* **build_deploy_package** - Builds the Python package and deploys to [PyPI](https://pypi.org/). Runs on commits to `main` branch.\n* **build_deploy_docs** - Builds the documentation site and deploys to [GitLab Pages](https://docs.gitlab.com/ee/user/project/pages/). Runs on commits to `main` branch.\n\nAll CI/CD stages run in a Docker container. This project uses `node:latest` for the **build_deploy_docs** stage and a custom R/Python container specified by the Dockerfile for the remaining stages.\n\n#### Docker\n\nTo update the container in the registry, navigate to the project root and run\n\n```\nsudo docker login registry.gitlab.com\n```\n\nEnter your GitLab username and password (only for members of the project). Then run\n\n```\nsudo docker build -t registry.gitlab.com/tomkimcta/model-validation-framework .\nsudo docker push registry.gitlab.com/tomkimcta/model-validation-framework\n```\n\n#### PyPI\n\nThe version stored in the `version` file must be incremented for a deployment of the package to be successful.\n\n### Documentation\n\nThis project uses a static site generator called [Docusaurus](https://docusaurus.io) to create its documentation. The content for the documentation site is contained in `documentation/docs/`. Any updates to documentation can be verified in a development server by running `npm i && npm start` from the `documentation/` directory.\n\n\n\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A package implementing a supervised learning model validation framework.",
    "version": "0.0.17",
    "project_urls": null,
    "split_keywords": [
        "python",
        "r",
        "machine learning",
        "validation",
        "framework"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f8f3858de4304c542f2c062a710e717725ff0a4789c63b74e0a2efd3481e0510",
                "md5": "57ffc2d5f8bb12dda91c2df19df6658d",
                "sha256": "e2429837e9bd2d37604d0c08dc35d0874ebfa8f150536a8d3765b8df636cff35"
            },
            "downloads": -1,
            "filename": "mvf-0.0.17-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "57ffc2d5f8bb12dda91c2df19df6658d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 30968,
            "upload_time": "2023-08-14T12:13:31",
            "upload_time_iso_8601": "2023-08-14T12:13:31.505784Z",
            "url": "https://files.pythonhosted.org/packages/f8/f3/858de4304c542f2c062a710e717725ff0a4789c63b74e0a2efd3481e0510/mvf-0.0.17-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "35412d1e2c5935f408b7c4cbe743b442fd0e61f931b14ce1d425abe5a064e844",
                "md5": "cdad08573772f2aa34332426460f67c0",
                "sha256": "9cd14226ffd85665425288b426c7ac850d31369e21066916c38d3156575c2a50"
            },
            "downloads": -1,
            "filename": "mvf-0.0.17.tar.gz",
            "has_sig": false,
            "md5_digest": "cdad08573772f2aa34332426460f67c0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 22626,
            "upload_time": "2023-08-14T12:13:33",
            "upload_time_iso_8601": "2023-08-14T12:13:33.603702Z",
            "url": "https://files.pythonhosted.org/packages/35/41/2d1e2c5935f408b7c4cbe743b442fd0e61f931b14ce1d425abe5a064e844/mvf-0.0.17.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-14 12:13:33",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mvf"
}
        
Elapsed time: 0.10216s