You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* efficiently work with large datasets that do not even fit into memory
14
+
* perform end-to-end ECG processing
15
+
* build, train and test neural networks and other machine learning models.
17
16
18
17
For more details see [the documentation and tutorials](https://analysiscenter.github.io/cardio/).
19
18
19
+
20
20
## About CardIO
21
21
22
-
The library is based on [Dataset](https://github.com/analysiscenter/dataset/). We suggest to read Dataset's [documentation](https://analysiscenter.github.io/dataset/) to learn more.
22
+
> CardIO is based on [Dataset](https://github.com/analysiscenter/dataset). You might benefit from reading [its documentation](https://analysiscenter.github.io/dataset).
23
+
However, it is not required, especially at the beginning.
23
24
24
-
CardIO has three modules: [```batch```](https://analysiscenter.github.io/cardio/intro/batch.html)[```models```](https://analysiscenter.github.io/cardio/intro/models.html) and [```pipelines```](https://analysiscenter.github.io/cardio/intro/pipeline.html).
25
+
CardIO has three modules: [``batch``](https://analysiscenter.github.io/cardio/intro/batch.html),
26
+
[``models``](https://analysiscenter.github.io/cardio/intro/models.html) and
Module ```batch``` contains low-level actions for ECG processing.
27
-
Actions are included in ```EcgBatch``` class that also defines how
28
-
to store ECGs. From these actions you can biuld new pipelines. You can also
29
-
write custom action and include it in ```EcgBatch```.
29
+
``batch`` module contains ``EcgBatch`` class which defines how ECG are stored and includes actions for ECG processing.
30
+
These actions might be used to build multi-staged workflows that can also involve machine learning models.
30
31
31
-
In ```models``` we provide several models that were elaborated to learn the most important problems in ECG:
32
-
* how to recognize specific features of ECG like R-peaks, P-wave, T-wave
33
-
* how to recognize heart diseases from ECG, for example - atrial fibrillation.
32
+
``models`` module provides several ready to use models for important problems in ECG analysis:
33
+
* how to detect specific features of ECG like R-peaks, P-wave, T-wave, etc;
34
+
* how to recognize heart diseases from ECG, for example, atrial fibrillation.
34
35
35
-
Module ```pipelines```contains high-level methods that
36
-
* train model to allocate PQ, QT, QRS segments
36
+
``pipelines`` module contains predefined workflows to
37
+
* train a model to detect PQ, QT, QRS segments
37
38
* calculate heart rate
38
-
* train model to find probabilities of heart diseases.
39
+
* train a model to find probabilities of heart diseases, in particular, atrial fibrillation.
40
+
41
+
Under the hood these methods contain actions that load signals, filter it and do complex calculations.
39
42
40
-
Under the hood these methods contain many actions that load signals, filter it and do complex caclulations. Using pipelines you do not think about this part of work and simply pass ECG datasets and get results.
41
43
42
44
## Basic usage
43
45
44
-
Here is an example of pipeline that loads ECG signals, makes some preprocessing and learns model over 50 epochs.
46
+
Here is an example of pipeline that loads ECG signals, makes preprocessing and train a model over 50 epochs:
45
47
```python
46
48
train_pipeline = (
47
49
dataset.train
@@ -62,15 +64,15 @@ train_pipeline = (
62
64
)
63
65
```
64
66
65
-
As a result of this pipeline one obtains a trained model.
66
67
67
68
## Installation
68
69
69
70
> `CardIO` module is in the beta stage. Your suggestions and improvements are very welcome.
70
71
71
72
> `CardIO` supports python 3.5 or higher.
72
73
73
-
### Installation as python package
74
+
75
+
### Installation as a python package
74
76
75
77
With [pipenv](https://docs.pipenv.org/):
76
78
@@ -85,13 +87,16 @@ After that just import `cardio`:
85
87
import cardio
86
88
```
87
89
90
+
88
91
### Installation as a project repository:
89
92
93
+
When cloning repo from GitHub use flag ``--recursive`` to make sure that ``Dataset`` submodule is also cloned.
* efficiently work with large datasets that do not even fit into memory
16
-
* easily arrange new custom actions into pipelines
17
-
* do end-to-end ECG processing
18
-
* build, train and test custom models for deep research
15
+
* perform end-to-end ECG processing
16
+
* build, train and test neural networks and other machine learning models.
19
17
20
-
… and do everything under a single API.
21
18
22
-
The library is based on `Dataset <https://github.com/analysiscenter/dataset>`_. We suggest to read Dataset's documentation to learn more, however, you may skip it for the first reading.
19
+
.. note:: CardIO is based on `Dataset <https://github.com/analysiscenter/dataset>`_. You might benefit from reading `its documentation <https://analysiscenter.github.io/dataset>`_. However, it is not required, especially at the beginning.
23
20
24
21
CardIO has three modules: :doc:`batch <./api/cardio.batch>`, :doc:`models <./api/cardio.models>` and :doc:`pipelines <api/cardio.pipelines>`.
25
22
26
-
Module batch contains low-level actions for ECG processing. Actions are included in EcgBatch class that also defines how to store ECGs. From these actions you can build new pipelines. You can also write custom action and include it in EcgBatch.
27
23
28
-
In models we provide several models that were elaborated to learn the most important problems in ECG:
24
+
``batch`` module contains ``EcgBatch`` class which defines how ECG are stored and includes actions for ECG processing.
25
+
These actions might be used to build multi-staged workflows that can also involve machine learning models.
29
26
30
-
* how to recognize specific features of ECG like R-peaks, P-wave, T-wave
31
-
* how to recognize heart diseases from ECG, for example - atrial fibrillation.
27
+
``models`` module provides several ready to use models for important problems in ECG analysis:
32
28
33
-
Module pipelines contains high-level methods that build pipelines for model training and prediction, preprocessing, etc.
29
+
* how to detect specific features of ECG like R-peaks, P-wave, T-wave, etc;
30
+
* how to recognize heart diseases from ECG, for example, atrial fibrillation.
34
31
32
+
``pipelines`` module contains predefined workflows to
33
+
34
+
* train a model to detect PQ, QT, QRS segments
35
+
* calculate heart rate
36
+
* train a model to find probabilities of heart diseases, in particular, atrial fibrillation.
37
+
38
+
Under the hood these methods contain actions that load signals, filter it and do complex calculations.
35
39
36
40
Contents
37
41
========
@@ -46,9 +50,7 @@ Contents
46
50
Basic usage
47
51
===========
48
52
49
-
Here is an example of pipeline that loads ECG signals, makes some preprocessing and learns model over 50 epochs:
50
-
51
-
.. code-block :: python
53
+
Here is an example of pipeline that loads ECG signals, makes preprocessing and train a model over 50 epochs::
52
54
53
55
train_pipeline = (
54
56
dataset.train
@@ -69,7 +71,6 @@ Here is an example of pipeline that loads ECG signals, makes some preprocessing
0 commit comments