# dimlpfidex
Discretized Interpretable Multi Layer Perceptron (DIMLP) and related algorithms
## Contribution
### Install C++ toolchain
#### Linux, macOS, Windows/WSL
Install with your package manager:
* a C++ compiler (gcc/g++)
* cmake
#### Windows
* Install [MinGW-W64](https://www.mingw-w64.org/) with the [online installer](https://github.com/Vuniverse0/mingwInstaller/releases) (64 bit, win32, ucrt)
* Install [CMake](https://cmake.org/):
```shell
winget install Kitware.CMake
```
Ensure `cmake.exe` is accessible in the `$PATH` environment variable.
```shell
cmake.exe --version
```
### Install Python and Poetry
#### Linux, macOS, Windows/WSL
Use your package manager to install:
* python
* poetry
#### Windows
* Install [Python](https://www.python.org/)
```shell
winget install Python.Python.3.10
```
* Install [poetry](https://python-poetry.org/docs/#installation) and add it to your PATH.
Ensure `python.exe` and `poetry.exe` are accessible in the `$PATH` environment variable.
To check the installation, check these commands return an output:
```shell
python.exe --version
poetry.exe --version
```
### Compile
Activate the virtual environment:
```shell
poetry shell
```
Install python dependencies and compile:
```shell
poetry install
poetry build
```
If CMake complains about not finding pybind11, ensure to activate the shell first.
**Note**: If you still have an issue on Windows, try the following commands to
build manually:
```shell
mkdir build && cd build
$path = (poetry env info | Select-String -Pattern 'Path:\s+(.*)').Matches.Groups[1].Value
cmake.exe -G "MinGW Makefiles" -DCMAKE_PREFIX_PATH="$path" ..
cmake.exe --build .
```
### Install Pre-commit hooks
Git hooks are used to ensure quality checks are run by all developers every time
before a commit.
```shell
poetry shell
pre-commit install
```
Pre-commit hooks can be run manually with:
```shell
pre-commit run --all-files
```
## Release
To publish the package on [PyPI](https://pypi.org/project/dimlpfidex/), refer to [RELEASE](RELEASE.md).
Raw data
{
"_id": null,
"home_page": "https://hes-xplain.github.io/",
"name": "dimlpfidex",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9,<3.11",
"maintainer_email": "",
"keywords": "machine learning,xai",
"author": "Jean-Marc Boutay",
"author_email": "jean-marc.boutay@hesge.ch",
"download_url": "https://files.pythonhosted.org/packages/e1/c3/4813301e0a3bfc741a2374a5bb1862ea08fa9ba8332b116644d26e6ad421/dimlpfidex-0.0.0.tar.gz",
"platform": null,
"description": "# dimlpfidex\nDiscretized Interpretable Multi Layer Perceptron (DIMLP) and related algorithms\n\n## Contribution\n\n### Install C++ toolchain\n\n#### Linux, macOS, Windows/WSL\n\nInstall with your package manager:\n\n* a C++ compiler (gcc/g++)\n* cmake\n\n#### Windows\n\n* Install [MinGW-W64](https://www.mingw-w64.org/) with the [online installer](https://github.com/Vuniverse0/mingwInstaller/releases) (64 bit, win32, ucrt)\n* Install [CMake](https://cmake.org/):\n\n```shell\nwinget install Kitware.CMake\n```\n\nEnsure `cmake.exe` is accessible in the `$PATH` environment variable.\n\n```shell\ncmake.exe --version\n```\n\n### Install Python and Poetry\n\n#### Linux, macOS, Windows/WSL\n\nUse your package manager to install:\n\n* python\n* poetry\n\n#### Windows\n\n* Install [Python](https://www.python.org/)\n\n```shell\nwinget install Python.Python.3.10\n```\n\n* Install [poetry](https://python-poetry.org/docs/#installation) and add it to your PATH.\n\nEnsure `python.exe` and `poetry.exe` are accessible in the `$PATH` environment variable.\n\nTo check the installation, check these commands return an output:\n\n```shell\npython.exe --version\npoetry.exe --version\n```\n\n### Compile\n\nActivate the virtual environment:\n\n```shell\npoetry shell\n```\n\nInstall python dependencies and compile:\n\n```shell\npoetry install\npoetry build\n```\n\nIf CMake complains about not finding pybind11, ensure to activate the shell first.\n\n**Note**: If you still have an issue on Windows, try the following commands to\nbuild manually:\n\n```shell\nmkdir build && cd build\n$path = (poetry env info | Select-String -Pattern 'Path:\\s+(.*)').Matches.Groups[1].Value\ncmake.exe -G \"MinGW Makefiles\" -DCMAKE_PREFIX_PATH=\"$path\" ..\ncmake.exe --build .\n```\n\n### Install Pre-commit hooks\n\nGit hooks are used to ensure quality checks are run by all developers every time\nbefore a commit.\n\n```shell\npoetry shell\npre-commit install\n```\n\nPre-commit hooks can be run manually with:\n\n```shell\npre-commit run --all-files\n```\n\n## Release\n\nTo publish the package on [PyPI](https://pypi.org/project/dimlpfidex/), refer to [RELEASE](RELEASE.md).\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "Discretized Interpretable Multi Layer Perceptron (DIMLP) and related algorithms",
"version": "0.0.0",
"project_urls": {
"Homepage": "https://hes-xplain.github.io/",
"Repository": "https://github.com/HES-XPLAIN/dimlpfidex"
},
"split_keywords": [
"machine learning",
"xai"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e7f63684766e3d99b54e930ea9790ec86d77e16b208bb9a3df0a9540c6892dd8",
"md5": "6255207a05f78037512d095b8de0f17a",
"sha256": "3c49a271448a5c2f3a7e0b02c3d1c999c6b42fbd632d862aaa3199a6325de4f5"
},
"downloads": -1,
"filename": "dimlpfidex-0.0.0-cp310-cp310-manylinux_2_38_x86_64.whl",
"has_sig": false,
"md5_digest": "6255207a05f78037512d095b8de0f17a",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9,<3.11",
"size": 44264904,
"upload_time": "2023-09-26T08:52:56",
"upload_time_iso_8601": "2023-09-26T08:52:56.578902Z",
"url": "https://files.pythonhosted.org/packages/e7/f6/3684766e3d99b54e930ea9790ec86d77e16b208bb9a3df0a9540c6892dd8/dimlpfidex-0.0.0-cp310-cp310-manylinux_2_38_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "446973eba09b1a61bd9f4147df164dd70b1ec5ac6ba81690603bfd4bc2e42d3d",
"md5": "0231a00a05a1331132b547a6bb823d32",
"sha256": "9fda2e6d79e5f068a5f71bcf05cf27929ad02dbaee969a918c560a9792051ad2"
},
"downloads": -1,
"filename": "dimlpfidex-0.0.0-cp311-cp311-manylinux_2_38_x86_64.whl",
"has_sig": false,
"md5_digest": "0231a00a05a1331132b547a6bb823d32",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9,<3.11",
"size": 432401,
"upload_time": "2023-09-26T08:53:00",
"upload_time_iso_8601": "2023-09-26T08:53:00.456740Z",
"url": "https://files.pythonhosted.org/packages/44/69/73eba09b1a61bd9f4147df164dd70b1ec5ac6ba81690603bfd4bc2e42d3d/dimlpfidex-0.0.0-cp311-cp311-manylinux_2_38_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e1c34813301e0a3bfc741a2374a5bb1862ea08fa9ba8332b116644d26e6ad421",
"md5": "71d2544747d413b63a444e777f4b92ba",
"sha256": "103a3d6429d0ee6f9b54a09c48fb41bcb439bd3d4e3a3b31157bf173caefedc1"
},
"downloads": -1,
"filename": "dimlpfidex-0.0.0.tar.gz",
"has_sig": false,
"md5_digest": "71d2544747d413b63a444e777f4b92ba",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9,<3.11",
"size": 134347,
"upload_time": "2023-09-26T08:53:02",
"upload_time_iso_8601": "2023-09-26T08:53:02.094430Z",
"url": "https://files.pythonhosted.org/packages/e1/c3/4813301e0a3bfc741a2374a5bb1862ea08fa9ba8332b116644d26e6ad421/dimlpfidex-0.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-09-26 08:53:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "HES-XPLAIN",
"github_project": "dimlpfidex",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "dimlpfidex"
}