このトピックでは、Machine Learning Designerが提供するデータ型変換コンポーネントについて説明します。 データ型変換コンポーネントを使用して、すべてのデータ型のフィーチャをSTRING、DOUBLE、またはINTデータ型のフィーチャに変換できます。 このコンポーネントでは、データ型の変換中に例外が発生した場合に、欠落した値を置き換えることもできます。
背景情報
テーブルフィールドのデータ型を変換できます。
テーブルフィールドの複数のデータ型を同時に変換できます。
ODPSのフィールドをDECIMAL、FLOAT、INTなどの数値データ型に変換2.0ことができます。
説明この機能は、中国 (北京) 、中国 (上海) 、中国 (杭州) 、中国 (深セン) 、中国 (張家口) 、中国 (成都) の各リージョンでのみ使用できます。
元の列を予約するかどうかを選択できます。
コンポーネントの設定
次のいずれかの方法を使用して、コンポーネントパラメーターを設定できます。
方法1: Machine Learning Platform for AI (PAI) コンソールの使用
Machine Learning Designerのパイプラインページでコンポーネントパラメーターを設定します。
タブ | パラメーター | 説明 |
フィールド設定 | ダブルタイプ列に変換 | データ型をDOUBLEデータ型に変換する必要がある列。 |
変換が失敗したときのデフォルトの固定値 | DOUBLEデータ型への変換に失敗した場合に入力されるデフォルト値。 | |
Int型列に変換 | データ型をINTデータ型に変換する必要がある列。 | |
変換が失敗したときのデフォルトの固定値 | INTデータ型への変換に失敗した場合に入力されるデフォルト値。 | |
文字列型列に変換 | データ型をSTRINGデータ型に変換する必要がある列。 | |
変換が失敗したときのデフォルトの固定値 | STRINGデータ型への変換が失敗した場合に入力されるデフォルト値。 | |
元の列を予約 | 元の列を予約するかどうかを指定します。 データ型の変換後、列名の前にtyped_が付いています。 | |
ノードあたりのメモリサイズ | 有効値: 1024〜65536 (64 × 1024) 。 単位:MB。 | |
コア | コンピューティングで使用されるコアの数。 このパラメーターは、[ノードごとのメモリサイズ] パラメーターと共に使用する必要があります。 有効な値: [1,9999] 。 |
方法2: PAIコマンドの使用
PAIコマンドを使用してコンポーネントパラメータを設定します。 SQLスクリプトコンポーネントを使用してPAIコマンドを呼び出すことができます。 詳細については、「SQLスクリプト」をご参照ください。
pai -project algo_public
-name type_transform_v1
-DinputTable=type_test
-Dcols_to_string="f0"
-Ddefault_double_value=0.0
-DoutputTable=type_test_output;
パラメーター | 必須 | 説明 | デフォルト値 |
inputTable | 可 | 入力テーブルの名前。 | なし |
inputTablePartitions | 不可 | トレーニング用に入力テーブルから選択されたパーティション。 このパラメーターを次のいずれかの形式で指定します。
説明 複数のパーティションを指定する場合は、コンマ (,) で区切ります。 | すべてのパーティション |
outputTable | 可 | データ型変換の出力テーブル。 | なし |
reserveOldFeat | 不可 | 元の列を予約するかどうかを指定します。 | なし |
cols_to_double | 不可 | データ型をDOUBLEに変換する必要があるフィーチャ列。 | なし |
cols_to_string | 不可 | データ型をSTRINGに変換する必要があるフィーチャ列。 | なし |
cols_to_int | 不可 | データ型をINTに変換する必要があるフィーチャ列。 | なし |
default_int_value | 不可 | cols_to_intパラメーターが指定されていない場合に入力される値です。 | 0 |
default_double_value | 不可 | cols_to_doubleパラメーターが指定されていない場合に入力される値です。 | 0.0 |
default_string_value | 不可 | cols_to_stringパラメーターが指定されていない場合に入力される値。 | "" |
coreNum | 不可 | コアの数。 このパラメーターは、memSizePerCoreパラメーターと共に使用する必要があります。 有効な値: [1,9999] 。 | システムによって決定される |
memSizePerCore | 不可 | 各コアのメモリサイズ。 有効値: 1024〜65536 (64 × 1024) 。 単位:MB。 | システムによって決定される |
lifecycle | 不可 | 出力テーブルのライフサイクル。 | 7 |
例
テストデータ
としてテーブルtransform_testを作成
create table transform_test as select * from ( select true as f0,2.0 as f1,1 as f2 union all select false as f0,3.0 as f1,1 as f2 union all select false as f0,4.0 as f1,1 as f2 union all select true as f0,3.0 as f1,1 as f2 union all select false as f0,3.0 as f1,1 as f2 union all select false as f0,4.0 as f1,1 as f2 union all select true as f0,3.0 as f1,1 as f2 union all select false as f0,5.0 as f1,1 as f2 union all select false as f0,3.0 as f1,1 as f2 union all select true as f0,4.0 as f1,1 as f2 union all select false as f0,3.0 as f1,1 as f2 union all select true as f0,4.0 as f1,1 as f2 )tmp;
トレーニングデータ
f0
f1
f2
false
3.0
1
false
3.0
1
true
2.0
1
true
4.0
1
false
4.0
1
false
3.0
1
false
3.0
1
true
3.0
1
false
4.0
1
true
4.0
1
false
5.0
1
true
3.0
1
トレーニングのためのPAIコマンド
pai -project projectxlib4 -name type_transform_v1 -DinputTable=transform_test -Dcols_to_double=f0 -Dcols_to_int=f1 -Dcols_to_string=f2 -DoutputTable=trans_test_output;
Output
結果テーブル
f0
f1
f2
0.0
3
1
0.0
3
1
1.0
2
1
1.0
4
1
0.0
4
1
0.0
3
1
1.0
3
1
0.0
4
1
0.0
3
1
0.0
5
1
1.0
3
1
1.0
4
1