Selbstgemachtes Modul
pip install my_awesome_module
Um es zu veröffentlichen, damit es veröffentlicht werden kann, ist es in Ordnung, es zusammen mit setup.py
auf GitHub zu veröffentlichen
GitHub page: https://github.com/kyohashi/model_selection
Ich suche ein Modul in PyPI (Python Package Index, PyPI). Wenn Sie beispielsweise auf PyPI.org zugreifen und nach numpy suchen, ↓ https://pypi.org/
Sicher gibt es numpy. ↓ https://pypi.org/search/?q=numpy
Wenn Sie ein Modul in PyPI registrieren, benötigen Sie setup.py
, das die Metainformationen des Moduls zusammen mit dem Quellcode des Moduls darstellt.
Um das Obige zusammenzufassen,
pip install hogehoge
Sie können verstehen, dass Sie das Verfahren befolgen.
Es stellt sich heraus, dass Sie durch Installation bei PyPI eine Pip-Installation durchführen können, diese aber auch auf GitHub veröffentlichen können.
Der Punkt ist, dass Sie mir nur den Quellcode und den Speicherort von setup.py
mitteilen müssen, also nach der Registrierung bei GitHub
pip install git+(URL)
Jeder kann es installieren. Diesmal habe ich versucht, auf GitHub anstelle von PyPI zu veröffentlichen.
Die in GitHub und setup.py
registrierten Dateien lauten wie folgt.
Dateiorganisation
.
├── README.md
├── requirements.txt
├── setup.py
└── src
└── model_selection
├── __init__.py
├── bayes_clustering.py
└── utils
├── __init__.py
└── check_datashape.py
setup.py
from glob import glob
from os.path import basename
from os.path import splitext
from setuptools import setup
from setuptools import find_packages
def _requires_from_file(filename):
return open(filename).read().splitlines()
setup(
name="model_selection",
version="0.1.0",
description="statistical model selection with Bayesian IC like WAIC",
author="kyohashi",
url="https://github.com/kyohashi/model_selection.git",
packages=find_packages("src"),
package_dir={"": "src"},
py_modules=[splitext(basename(path))[0] for path in glob('src/*.py')],
include_package_data=True,
zip_safe=False,
install_requires=_requires_from_file('requirements.txt')
)
Wenn Sie sich setup.py
ansehen, können Sie sehen, dass die Python-Datei unter dem Ordner src als Modul erkannt wird.
Wenn Sie das oben genannte registrieren, ist es in Ordnung
pip install git+https://github.com/kyohashi/model_selection.git
Ist möglich.
Das diesmal erstellte Modul soll dabei helfen, die Anzahl der Cluster zu bestimmen. Insbesondere wird, wie in der folgenden Abbildung gezeigt, die optimale Anzahl von Clustern geschätzt, indem WAIC mit GMM für alle möglichen Clusternummern modelliert und berechnet wird. PyMC3 wird für die MCMC-Abtastung verwendet.
Es gibt auch ein Implementierungsbeispiel für Toy Data. Lesen Sie daher auch dieses. Usecase: https://kyohashi.github.io/model_selection/gmm_usecase.html
Recommended Posts