В работе рассматривается задача построения репрезентативного признакового пространства в задаче распознования активностей человека. Исходное признаковое описание активностей - временные ряды сигналов, полученных с инерционных датчиков (акселерометр и гироскоп). Предлагается метод оптимального кодирования многомерного временного сигнала с помощью функций, параметризованных нейронной сетью. Это позволяет существенного снизить размерность признакого пространства, а также использовать полученное репрезентативное векторное представление для решения задач классификации и кластеризации. В работе предлагается процедура обучения модели, обеспечивающая быструю сходимость, а также алгоритм тестирования построенного признакого описания активностей. В работе приведены результаты численных экспериментов на данных, полученных с датчиков, закрепленных на запястье людей во время выполнения различных спортивных активностей.
-libgcc_mutex=0.1=main
- _pytorch_select=0.2=gpu_0
- abseil-cpp=20200225.2=he1b5a44_2
- absl-py=0.11.0=py38h578d9bd_0
- aiohttp=3.7.3=py38h25fe258_0
- aliyun-python-sdk-core=2.13.30=py38h578d9bd_0
- aliyun-python-sdk-kms=2.14.0=pyhd3deb0d_0
- appdirs=1.4.4=pyh9f0ad1d_0
- argcomplete=1.12.2=pyhd8ed1ab_0
- argon2-cffi=20.1.0=py38h27cfd23_1
- arrow-cpp=2.0.0=py38ha9d6ab6_6_cpu
- async-timeout=3.0.1=py_1000
- async_generator=1.10=pyhd3eb1b0_0
- atpublic=1.0=py_0
- attrs=20.3.0=pyhd3deb0d_0
- aws-c-common=0.4.59=h36c2ea0_1
- aws-c-event-stream=0.1.6=had2084c_6
- aws-checksums=0.1.10=h4e93380_0
- aws-sdk-cpp=1.8.70=h57dc084_1
- azure-core=1.10.0=pyhd8ed1ab_0
- azure-storage-blob=12.7.1=pyh44b312d_0
- backcall=0.2.0=pyhd3eb1b0_0
- bcrypt=3.2.0=py38h1e0a361_1
- blas=1.0=mkl
- bleach=3.3.0=pyhd3eb1b0_0
- blinker=1.4=py_1
- boto3=1.17.7=pyhd8ed1ab_0
- botocore=1.20.7=pyhd8ed1ab_0
- brotli=1.0.9=he1b5a44_3
- brotlipy=0.7.0=py38h8df0ef7_1001
- bzip2=1.0.8=h516909a_3
- c-ares=1.17.1=h36c2ea0_0
- ca-certificates=2021.1.19=h06a4308_0
- cachetools=4.2.1=pyhd8ed1ab_0
- certifi=2020.12.5=py38h06a4308_0
- cffi=1.14.5=py38h261ae71_0
- chardet=3.0.4=py38h924ce5b_1008
- click=7.1.2=pyh9f0ad1d_0
- colorama=0.4.4=pyh9f0ad1d_0
- commonmark=0.9.1=py_0
- configobj=5.0.6=py_0
- crcmod=1.7=pyhd8ed1ab_1005
- cryptography=3.2.1=py38h7699a38_0
- cudatoolkit=10.1.243=h6bb024c_0
- cudnn=7.6.5.32=hc0a50b0_1
- cycler=0.10.0=py38_0
- dbus=1.13.18=hb2f20db_0
- decorator=4.4.2=py_0
- defusedxml=0.6.0=pyhd3eb1b0_0
- distro=1.5.0=pyh9f0ad1d_0
- dpath=1.4.2=py38h32f6830_1002
- dulwich=0.20.11=py38h25fe258_0
- dvc=1.11.15=py38h578d9bd_0
- dvc-azure=1.11.15=py38h578d9bd_0
- dvc-base=1.11.15=py38h578d9bd_0
- dvc-gdrive=1.11.15=py38h578d9bd_0
- dvc-gs=1.11.15=py38h578d9bd_0
- dvc-hdfs=1.11.15=py38h578d9bd_0
- dvc-oss=1.11.15=py38h578d9bd_0
- dvc-s3=1.11.15=py38h578d9bd_0
- dvc-ssh=1.11.15=py38h578d9bd_0
- entrypoints=0.3=py38_0
- expat=2.2.10=he6710b0_2
- flatten-dict=0.3.0=pyh9f0ad1d_0
- flufl.lock=3.2=py_0
- fontconfig=2.13.1=h6c09931_0
- freetype=2.10.4=h5ab3b9f_0
- fsspec=0.8.5=pyhd8ed1ab_0
- funcy=1.15=pyh9f0ad1d_0
- future=0.18.2=py38h578d9bd_3
- gflags=2.2.2=he1b5a44_1004
- gitdb=4.0.5=pyhd8ed1ab_1
- gitdb2=4.0.2=py_0
- gitpython=3.1.13=pyhd8ed1ab_0
- glib=2.67.3=h36276a3_1
- glog=0.4.0=h49b9bf7_3
- gmp=6.2.1=h58526e2_0
- google-api-core=1.25.1=pyh44b312d_0
- google-api-python-client=1.12.8=pyhd3deb0d_0
- google-auth=1.24.0=pyhd3deb0d_0
- google-auth-httplib2=0.0.4=pyh9f0ad1d_0
- google-auth-oauthlib=0.4.1=py_2
- google-cloud-core=1.5.0=pyhd3deb0d_0
- google-cloud-storage=1.19.0=py_0
- google-crc32c=1.0.0=py38h6d3b9ce_1
- google-resumable-media=1.2.0=pyhd3deb0d_0
- googleapis-common-protos=1.52.0=py38h578d9bd_1
- grandalf=0.6=py_0
- grpc-cpp=1.33.2=h1870a98_1
- grpcio=1.33.2=py38heead2fc_2
- gst-plugins-base=1.14.0=h8213a91_2
- gstreamer=1.14.0=h28cd5cc_2
- httplib2=0.19.0=pyhd8ed1ab_0
- icu=58.2=he6710b0_3
- idna=2.10=pyh9f0ad1d_0
- importlib-metadata=3.4.0=py38h578d9bd_0
- importlib_metadata=3.4.0=hd8ed1ab_0
- intel-openmp=2020.2=254
- invoke=1.5.0=pyhd3deb0d_0
- ipykernel=5.3.4=py38h5ca1d4c_0
- ipython=7.20.0=py38hb070fc8_1
- ipython_genutils=0.2.0=pyhd3eb1b0_1
- ipywidgets=7.6.3=pyhd3eb1b0_1
- isodate=0.6.0=py_1
- jedi=0.17.0=py38_0
- jinja2=2.11.3=pyhd3eb1b0_0
- jmespath=0.10.0=pyh9f0ad1d_0
- joblib=1.0.0=pyhd3eb1b0_0
- jpeg=9b=h024ee3a_2
- jsonpath-ng=1.5.2=pyh9f0ad1d_0
- jsonschema=3.2.0=py_2
- jupyter=1.0.0=py38_7
- jupyter_client=6.1.7=py_0
- jupyter_console=6.2.0=py_0
- jupyter_core=4.7.1=py38h06a4308_0
- jupyterlab_pygments=0.1.2=py_0
- jupyterlab_widgets=1.0.0=pyhd3eb1b0_1
- kiwisolver=1.3.1=py38h2531618_0
- knack=0.6.3=py_0
- krb5=1.17.2=h926e7f8_0
- lcms2=2.11=h396b838_0
- ld_impl_linux-64=2.33.1=h53a641e_7
- libcrc32c=1.1.1=he1b5a44_2
- libcurl=7.71.1=hcdd3856_3
- libedit=3.1.20191231=h14c3975_1
- libevent=2.1.10=hcdb4288_3
- libffi=3.3=he6710b0_2
- libgcc-ng=9.1.0=hdf63c60_0
- libgfortran-ng=7.3.0=hdf63c60_0
- libpng=1.6.37=hbc83047_0
- libprotobuf=3.13.0.1=h8b12597_0
- libsodium=1.0.18=h36c2ea0_1
- libssh2=1.9.0=hab1572f_5
- libstdcxx-ng=9.1.0=hdf63c60_0
- libthrift=0.13.0=h5aa387f_6
- libtiff=4.1.0=h2733197_1
- libutf8proc=2.6.0=h36c2ea0_0
- libuuid=1.0.3=h1bed415_2
- libxcb=1.14=h7b6447c_0
- libxml2=2.9.10=hb55368b_3
- lz4-c=1.9.2=he1b5a44_3
- markdown=3.3.3=pyh9f0ad1d_0
- markupsafe=1.1.1=py38h7b6447c_0
- matplotlib=3.3.2=h06a4308_0
- matplotlib-base=3.3.2=py38h817c723_0
- mistune=0.8.4=py38h7b6447c_1000
- mkl=2020.2=256
- mkl-service=2.3.0=py38h1e0a361_2
- mkl_fft=1.2.0=py38hab2c0dc_1
- mkl_random=1.2.0=py38hc5bc63f_1
- msrest=0.6.21=pyh44b312d_0
- multidict=4.7.5=py38h1e0a361_2
- nanotime=0.5.2=py_0
- nbclient=0.5.1=py_0
- nbconvert=6.0.7=py38_0
- nbformat=5.1.2=pyhd3eb1b0_1
- ncurses=6.2=he6710b0_1
- nest-asyncio=1.4.3=pyhd3eb1b0_0
- networkx=2.5=py_0
- ninja=1.10.1=hfc4b9b4_2
- notebook=6.2.0=py38h06a4308_0
- numpy=1.19.2=py38h54aff64_0
- numpy-base=1.19.2=py38hfa32c7d_0
- oauth2client=4.1.3=py_0
- oauthlib=3.0.1=py_0
- olefile=0.46=py_0
- openssl=1.1.1i=h27cfd23_0
- orc=1.6.5=hd3605a7_0
- oss2=2.14.0=py38h578d9bd_0
- packaging=20.9=pyh44b312d_0
- pandas=1.2.1=py38ha9443f7_0
- pandoc=2.11=hb0f4dca_0
- pandocfilters=1.4.3=py38h06a4308_1
- paramiko=2.7.2=pyh9f0ad1d_0
- parquet-cpp=1.5.1=2
- parso=0.8.1=pyhd3eb1b0_0
- pathlib2=2.3.5=py38h578d9bd_3
- pathspec=0.8.1=pyhd3deb0d_0
- pcre=8.44=he6710b0_0
- pexpect=4.8.0=pyhd3eb1b0_3
- pickleshare=0.7.5=pyhd3eb1b0_1003
- pillow=8.1.0=py38he98fc37_0
- pip=20.3.3=py38h06a4308_0
- ply=3.11=py_1
- prometheus_client=0.9.0=pyhd3eb1b0_0
- prompt-toolkit=3.0.8=py_0
- prompt_toolkit=3.0.8=0
- protobuf=3.13.0.1=py38hadf7658_1
- ptyprocess=0.7.0=pyhd3eb1b0_2
- pyarrow=2.0.0=py38h5703e5b_6_cpu
- pyasn1=0.4.8=py_0
- pyasn1-modules=0.2.7=py_0
- pycparser=2.20=pyh9f0ad1d_2
- pycryptodome=3.9.9=py38hefce790_0
- pydot=1.2.4=py_0
- pydrive2=1.7.2=pyh44b312d_0
- pygments=2.7.4=pyhd8ed1ab_0
- pygtrie=2.3.2=pyh8c360ce_0
- pyjwt=2.0.1=pyhd8ed1ab_0
- pynacl=1.4.0=py38h1e0a361_2
- pyopenssl=20.0.1=pyhd8ed1ab_0
- pyparsing=2.4.7=pyh9f0ad1d_0
- pyqt=5.9.2=py38h05f1152_4
- pyrsistent=0.17.3=py38h7b6447c_0
- pysocks=1.7.1=py38h578d9bd_3
- python=3.8.5=h7579374_1
- python-dateutil=2.8.1=py_0
- python_abi=3.8=1_cp38
- pytorch=1.4.0=cuda101py38h02f0884_0
- pytorch-lightning=1.1.8=pyhd8ed1ab_0
- pytz=2021.1=pyhd8ed1ab_0
- pyyaml=5.3.1=py38h8df0ef7_1
- pyzmq=20.0.0=py38h2531618_1
- qt=5.9.7=h5867ecd_1
- qtconsole=5.0.2=pyhd3eb1b0_0
- qtpy=1.9.0=py_0
- re2=2020.11.01=h58526e2_0
- readline=8.1=h27cfd23_0
- requests=2.25.1=pyhd3deb0d_0
- requests-oauthlib=1.3.0=pyh9f0ad1d_0
- rich=9.10.0=py38h578d9bd_0
- rsa=4.7=pyhd3deb0d_0
- ruamel.yaml=0.16.12=py38h25fe258_1
- ruamel.yaml.clib=0.2.2=py38h25fe258_1
- s3transfer=0.3.4=pyhd8ed1ab_0
- scikit-learn=0.23.2=py38h0573a6f_0
- scipy=1.6.0=py38h91f5cce_0
- send2trash=1.5.0=pyhd3eb1b0_1
- setuptools=52.0.0=py38h06a4308_0
- setuptools-scm=5.0.1=pyhd3deb0d_0
- setuptools_scm=5.0.1=hd8ed1ab_0
- shortuuid=1.0.1=py38h578d9bd_4
- shtab=1.3.4=pyhd3deb0d_0
- simplejson=3.17.2=py38h1e0a361_1
- sip=4.19.13=py38he6710b0_0
- six=1.15.0=pyh9f0ad1d_0
- smmap=3.0.5=pyh44b312d_0
- snappy=1.1.8=he1b5a44_3
- sqlite=3.33.0=h62c20be_0
- tabulate=0.8.7=pyh9f0ad1d_0
- tensorboard=2.4.1=pyhd8ed1ab_0
- tensorboard-plugin-wit=1.8.0=pyh44b312d_0
- terminado=0.9.2=py38h06a4308_0
- testpath=0.4.4=pyhd3eb1b0_0
- threadpoolctl=2.1.0=pyh5ca1d4c_0
- tk=8.6.10=hbc83047_0
- toml=0.10.2=pyhd8ed1ab_0
- tornado=6.1=py38h27cfd23_0
- tqdm=4.56.2=pyhd8ed1ab_0
- traitlets=5.0.5=pyhd3eb1b0_0
- typing-extensions=3.7.4.3=0
- typing_extensions=3.7.4.3=py_0
- uritemplate=3.0.1=py_0
- urllib3=1.26.3=pyhd8ed1ab_0
- voluptuous=0.12.1=pyhd3deb0d_0
- wcwidth=0.2.5=py_0
- webencodings=0.5.1=py38_1
- werkzeug=1.0.1=pyh9f0ad1d_0
- wheel=0.36.2=pyhd3eb1b0_0
- widgetsnbextension=3.5.1=py38_0
- xz=5.2.5=h7b6447c_0
- yaml=0.2.5=h516909a_0
- yarl=1.6.3=py38h25fe258_0
- zc.lockfile=2.0=py_0
- zeromq=4.3.3=he6710b0_3
- zipp=3.4.0=py_0
- zlib=1.2.11=h7b6447c_3
- zstd=1.4.5=h6597ccf_2
Для обработки датасета crossfit и получения результатов для дескрипторов:
1. Скачать данные: https://drive.google.com/drive/folders/1BvjO8YxJjk5BPZAcEO42HuyJhja6XOOf
(HAR_Crossfit_Sensors_Data/data/constrained_workout/preprocessed_numpy_data/np_exercise_data - путь до нужных данных)
2. Запустить скрипт crossfil_process.py: python crossfil_process.py
3. Запустить скрипт train_DE.py