Skip to main content

Uniovi Simur WearablePerMed Predictor.

Project description

Project generated with PyScaffold

Description

Uniovi Simur WearablePerMed Predictor.

Build and publish docker image

You must install docker previous to use these commands

To build the image execute this command:

$ docker build -t wearablepermed-predictor:1.18.0 .

To tag the image to be published in simuruo docker hub account execute this command:

$ docker build tag wearablepermed-predictor:1.18.0 simuruo/wearablepermed-predictor:1.18.0 

Login in simuruo docker hub account execute this command:

$ docker login -u simuruo
Password: 

To publish image in simuruo docker hub account execute this command:

$ docker push simuruo/wearablepermed-predictor:1.18.0

Execute from Python package

If you want use our models published in Huggin Face you must execute a command like this:

$ predictor \
--model-type randomforest \
--sensor-channel accelerometer_gyroscope \
--segment-body wrist \
--class-type classes_4 \
--resources-folder /home/miguel/temp/models/wearablepermed_models/input \
--resource-id PMP1024_W1_M.csv \
--cases-folder /home/miguel/temp/models/wearablepermed_models/results \
--case-id case_M_BRF_acc_gyr_4_classes \
--case-file-format csv \
--verbose

If you want to use your custom models must execute a command like this:

$ predictor \
--model_file /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/models/RandomForest.pkl,
--label_file /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/models/label_encoder.pkl,
--resources-folder /home/miguel/temp/models/wearablepermed_models/input,
--resource-id PMP1024_W1_M.csv,
--cases-folder /home/miguel/temp/models/wearablepermed_models/results,
--case-id case_M_BRF_acc_gyr_4_classes,
--case-file-format csv,
--verbose

Actually only Ranfom Forest is implemented in predictor

Execute from docker image

$ docker run \
--rm \
-u $(id -u):$(id -g) \
-v /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/input:/home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/input \
-v /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/output:/home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/output \
simuruo/wearablepermed-predictor:1.18.0 \
--model-type randomforest \
--sensor-channel accelerometer_gyroscope \
--segment-body wrist \
--class-type classes_4 \
--resources-folder /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/input \
--resource-id case_PI_BRF_acc_gyr_01/PMP1024_W1_PI_1.csv \
--cases-folder /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/output \
--case-id case_PI_BRF_acc_gyr_4_classes_01 \
--verbose

Predictor arguments

These arguments are used if you select Python Package or Docker containers to execute predictor command:

  • model-type: The model type: esann, capture24, randomforest, xgboost.

  • sensor-channe: The model channels trained: accelerometer, accelerometer_gyroscope.

  • class-type: The model class type trained: classes_4, classes_15.

  • segment-body (*): The model segment body trained: thigh, wrist, hip.

  • model-file: if you want use your custom model set the model file

  • label-file: if you want use your custom labels set the label file

  • resources-folder (*): The root resourcers folder.

  • resource-id (*): The resource file id in csv format.

  • cases-folder: The root cases folder.

  • case-id: Case unique name where save results under cases-folder.

  • case-file-format: Case file format. Default is npz. Possible values: [npz, csv].

  • is-label-export: Specify if predictions are export as label format. Default is False.

  • is-database-export: The prediction result is database saved. Default is False.

  • verbose: activate verbose logging mode.

(*) are mandatory arguments

If you want login inside the container execute this command.

$ docker run \
--rm \
-it \
-u $(id -u):$(id -g) \
-v /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/input:/home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/input \
-v /home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/output:/home/miguel/git/uniovi/simur/uniovi-simur-wearablepermed-predictor/data/output \
--entrypoint sh \
simuruo/wearablepermed-predictor:1.18.0

Default Value

All models offered by predictor are trained with

  • Window size of 250 and overlapping of 50%.
  • Right now only individual models are offered by predc¡ictor: Wrist, Thigh or Hip segment bodies.

Build and Publish in Pypi and Docker Hub

  1. Set the final version to the precitor python package from file setup.cfg

    version = 1.18.0
    
  2. Set the new version in the shell scripts: run_predictor.sh, run_predictor.bat

    Linux/Mac run_predictor.sh script:

    # --- CONFIGURATION (Change these) ---
    PREDICTOR_VERSION="1.18.0"
    

    Windows `run_predictor.bat script:

    :: --- SYSTEM CONFIGURATION ---
    set PREDICTOR_VERSION=1.18.0
    
  3. Rebuild and publish package in Pypi repository (You must have credentials)

    $ tox -e clean
    $ tox -e build
    $ tox -e publish -- --repository pypi
    
  4. Finally build docker image with the last version selected and publish in simuruo Docker Hub account (You must have credentials)

    $ docker build -t wearablepermed-predictor:1.18.0 .
    $ docker tag wearablepermed-predictor:1.18.0 simuruo/wearablepermed-predictor:1.18.0
    $ docker push simuruo/wearablepermed-predictor:1.18.0
    

Note

This project has been set up using PyScaffold 4.6. For details and usage information on PyScaffold see https://pyscaffold.org/.

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

uniovi_simur_wearablepermed_predictor-1.22.0.tar.gz (31.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file uniovi_simur_wearablepermed_predictor-1.22.0.tar.gz.

File metadata

File hashes

Hashes for uniovi_simur_wearablepermed_predictor-1.22.0.tar.gz
Algorithm Hash digest
SHA256 ef754fec0e1705bac394aacffee6b9ae3c290da7a3aff769933e398c294a7f0c
MD5 b86ebfd7c2f19f788bad09b8cb5ee0a2
BLAKE2b-256 282f329859e12c6bef3473bf3634f90bf9db4893d4c9a407ff29caa1302db5a6

See more details on using hashes here.

File details

Details for the file uniovi_simur_wearablepermed_predictor-1.22.0-py3-none-any.whl.

File metadata

File hashes

Hashes for uniovi_simur_wearablepermed_predictor-1.22.0-py3-none-any.whl
Algorithm Hash digest
SHA256 576bcfa98909710c367b3e7603aace01a753ebf58181687c7f9c469026db6b18
MD5 53278ee5dc48e70a920931794851e7bd
BLAKE2b-256 5d126fe784ed7c02ab0eac1eda47089ae5e27afed9353bb5223d68556935b6c5

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