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.21.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.21.0.tar.gz.

File metadata

File hashes

Hashes for uniovi_simur_wearablepermed_predictor-1.21.0.tar.gz
Algorithm Hash digest
SHA256 57524067c487f555a688e98a32984df2b7bcff1d9b32df83a08d1cf11ec9dc68
MD5 c3baa62a94fbed5dd8bafb49f33f6c3c
BLAKE2b-256 061c695dc737caafb2f3ea3daea99424918cbc3b8ced6e3c7fa56be744e3d213

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for uniovi_simur_wearablepermed_predictor-1.21.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5ed33e9e061d982bbd8c4add9de26045336ce5532965c8e6c4cf8a91ac1c6f49
MD5 0b61957add58cc241ef1017b3f81af51
BLAKE2b-256 ed1a8408bf5acfde12e3cda8bef793cdbc8af2678f6c12a72eb943b091252d63

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