%global _empty_manifest_terminate_build 0 Name: python-emmv Version: 0.0.4 Release: 1 Summary: Metrics for unsupervised anomaly detection models License: MIT License URL: https://github.com/christian-oleary/emmv Source0: https://mirrors.nju.edu.cn/pypi/web/packages/37/1f/2e9f578680b98196e3aef716e78a63e66cc4b9f39c32563afa7effadce35/emmv-0.0.4.tar.gz BuildArch: noarch Requires: python3-numpy Requires: python3-pandas Requires: python3-setuptools Requires: python3-scikit-learn %description # EMMV Implementation of EM/MV metrics based on N. Goix et al. This is a means of evaluating anomaly detection models without anomaly labels ## Installation ```shell pip install emmv ``` ## Example Use ```python from emmv import emmv_scores test_scores = emmv_scores(model, features) ``` - Where 'model' is your **trained** scikit-learn, PyOD, or PyCaret model - Where 'features' is a 2D DataFrame of features (the *X* matrix) Example resulting object: ```json { "em": 0.77586, "mv": 0.25367 } ``` If you are using models without a built-in *decision_function* (e.g. Keras or ADTK models), then you need to specify an anomaly scoring function. Please see examples in the examples folder. ## Running Examples ```shell pip install . python ./examples/sklearn_example.py ``` ## Interpreting scores - The best model should have the **highest** Excess Mass score - The best model should have the **lowest** Mass Volume score - Probably easiest to just use one of the metrics - Extreme values are possible ## Contact Please feel free to get in touch at christian.oleary@mtu.ie ## Citation ```latex @Misc{emmv, author = {Christian O'Leary}, title = {EMMV library}, howpublished = {\url{https://pypi.org/project/emmv/}}, year = {2021--2021} } ``` %package -n python3-emmv Summary: Metrics for unsupervised anomaly detection models Provides: python-emmv BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-emmv # EMMV Implementation of EM/MV metrics based on N. Goix et al. This is a means of evaluating anomaly detection models without anomaly labels ## Installation ```shell pip install emmv ``` ## Example Use ```python from emmv import emmv_scores test_scores = emmv_scores(model, features) ``` - Where 'model' is your **trained** scikit-learn, PyOD, or PyCaret model - Where 'features' is a 2D DataFrame of features (the *X* matrix) Example resulting object: ```json { "em": 0.77586, "mv": 0.25367 } ``` If you are using models without a built-in *decision_function* (e.g. Keras or ADTK models), then you need to specify an anomaly scoring function. Please see examples in the examples folder. ## Running Examples ```shell pip install . python ./examples/sklearn_example.py ``` ## Interpreting scores - The best model should have the **highest** Excess Mass score - The best model should have the **lowest** Mass Volume score - Probably easiest to just use one of the metrics - Extreme values are possible ## Contact Please feel free to get in touch at christian.oleary@mtu.ie ## Citation ```latex @Misc{emmv, author = {Christian O'Leary}, title = {EMMV library}, howpublished = {\url{https://pypi.org/project/emmv/}}, year = {2021--2021} } ``` %package help Summary: Development documents and examples for emmv Provides: python3-emmv-doc %description help # EMMV Implementation of EM/MV metrics based on N. Goix et al. This is a means of evaluating anomaly detection models without anomaly labels ## Installation ```shell pip install emmv ``` ## Example Use ```python from emmv import emmv_scores test_scores = emmv_scores(model, features) ``` - Where 'model' is your **trained** scikit-learn, PyOD, or PyCaret model - Where 'features' is a 2D DataFrame of features (the *X* matrix) Example resulting object: ```json { "em": 0.77586, "mv": 0.25367 } ``` If you are using models without a built-in *decision_function* (e.g. Keras or ADTK models), then you need to specify an anomaly scoring function. Please see examples in the examples folder. ## Running Examples ```shell pip install . python ./examples/sklearn_example.py ``` ## Interpreting scores - The best model should have the **highest** Excess Mass score - The best model should have the **lowest** Mass Volume score - Probably easiest to just use one of the metrics - Extreme values are possible ## Contact Please feel free to get in touch at christian.oleary@mtu.ie ## Citation ```latex @Misc{emmv, author = {Christian O'Leary}, title = {EMMV library}, howpublished = {\url{https://pypi.org/project/emmv/}}, year = {2021--2021} } ``` %prep %autosetup -n emmv-0.0.4 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-emmv -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Apr 11 2023 Python_Bot - 0.0.4-1 - Package Spec generated