Opportunity Dataset Loader
Opportunity
Opportunityデータセットに記録されているセンサデータとメタデータを読み込む.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path |
Opportunity(UCI)データセットのパス. "dataset"ディレクトリの親ディレクトリを指定する. |
required |
Attributes:
Name | Type | Description |
---|---|---|
NOT_SUPPORTED_LABELS |
List[str] |
サポートしていないラベルのリスト |
X_LABELS |
List[str] |
ターゲット以外のすべてのラベルのリスト |
SUPPORTED_Y_LABELS |
List[str] |
ターゲットラベルのリスト |
load(self, window_size, stride, x_labels=None, y_labels=None, ftrim_sec=2, btrim_sec=2)
Opportunity(UCI)データセットを読み込み,sliding-window処理を行ったデータを返す.
ここではADLのみをサポートしている.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
window_size |
int |
フレーム分けするサンプルサイズ |
required |
stride |
int |
ウィンドウの移動幅 |
required |
x_labels |
Optional[list] |
入力(従属変数)のラベルリスト(ラベル名は元データセットに準拠) ここで指定したラベルのデータが入力として取り出される. 一部サポートしていないラベルがあることに注意. |
None |
y_labels |
Optional[list] |
ターゲットのラベルリスト(使用方法はx_labelsと同様). |
None |
ftrim_sec |
int |
セグメント先頭のトリミングサイズ(単位は秒) |
2 |
btrim_sec |
int |
セグメント末尾のトリミングサイズ(単位は秒) |
2 |
Examples:
>>> opportunity_path = Path('path/to/dataset')
>>> opportunity = Opportunity(opportunity_path)
>>>
>>> x_labels = [
>>> 'Accelerometer_RKN^_accX',
>>> 'Accelerometer_RKN^_accY',
>>> 'Accelerometer_RKN^_accZ',
>>> 'Accelerometer_HIP_accX',
>>> 'Accelerometer_HIP_accY',
>>> 'Accelerometer_HIP_accZ',
>>> ]
>>> y_labels = ['Locomotion', 'subject'] # 基本行動と被験者をターゲットラベルとして取り出す
>>>
>>> x, y = opportunity.load(window_size=256, stride=256, x_labels=xlabels, y_labels=ylabels, ftrim_sec=2, btrim_sec=2)
>>> print(f'x: {x.shape}, y: {y.shape}')
>>>
>>> # > x: (?, 6, 256), y: (?, 2)
Returns:
Type | Description |
---|---|
Tuple[numpy.ndarray, numpy.ndarray] |
sliding-windowで切り出した入力とターゲットのフレームリスト x_framesは3次元配列で構造は大まかに(Batch, Channels, Frame)のようになっている. Channelsはx_labelsで指定したものが格納される. y_framesは2次元配列で構造は大まかに(Batch, Labels)のようになっている. Labelsはy_labelsで指定したものが格納される. y_framesはデータセット内の値をそのまま返すため,分類で用いる際はラベルの再割り当てが必要となることに注意する. |
load(path)
Function for loading Opportunity dataset
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Union[pathlib.Path, str] |
Directory path of Opportunity(UCI) dataset, which is parent directory of "dataset" directory. |
required |
Returns:
Type | Description |
---|---|
Tuple[List[pandas.core.frame.DataFrame], List[pandas.core.frame.DataFrame]] |
Sensor data segmented by activity(Locomotion) and subject. |
load_raw(path)
Function for loading raw data of Opportunity dataset
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path |
Directory path of Opportunity(UCI) dataset, which is parent directory of "dataset" directory. |
required |
Returns:
Type | Description |
---|---|
List[pandas.core.frame.DataFrame] |
Raw data of Opportunity dataset. Each item in 'chunks' is a part of dataset, which is splited by subject. |