FeaturizationConfig Kelas
Menentukan konfigurasi rekayasa fitur untuk eksperimen pembelajaran mesin otomatis di Azure Machine Learning.
Gunakan kelas FeaturizationConfig pada featurization
parameter AutoMLConfig kelas. Untuk informasi selengkapnya, lihat Mengonfigurasi eksperimen ML otomatis.
Buat FeaturizationConfig.
- Warisan
-
builtins.objectFeaturizationConfig
Konstruktor
FeaturizationConfig(blocked_transformers: List[str] | None = None, column_purposes: Dict[str, str] | None = None, transformer_params: Dict[str, List[Tuple[List[str], Dict[str, Any]]]] | None = None, drop_columns: List[str] | None = None, dataset_language: str | None = None, prediction_transform_type: str | None = None)
Parameter
Daftar nama pentransformasi yang akan diblokir selama fiturisasi.
- column_purposes
- dict
Kamus nama kolom dan jenis fitur yang digunakan untuk memperbarui tujuan kolom.
- transformer_params
- dict
Kamus pentransformasi dan parameter kustomisasi yang sesuai.
Daftar kolom yang harus diabaikan dalam proses fiturisasi. Pengaturan ini tidak digunakan lagi. Silakan hilangkan kolom dari himpunan data Anda sebagai bagian dari proses penyiapan data Anda sebelum memberikan himpunan data ke AutoML.
- prediction_transform_type
- str
Sebuah str dari jenis transformasi target yang akan digunakan untuk mentransmisikan jenis kolom target.
Daftar nama pentransformasi yang akan diblokir selama fiturisasi.
- column_purposes
- dict
Kamus nama kolom dan jenis fitur yang digunakan untuk memperbarui tujuan kolom.
Daftar kolom yang harus diabaikan dalam proses fiturisasi. Pengaturan ini tidak digunakan lagi. Silakan hilangkan kolom dari himpunan data Anda sebagai bagian dari proses penyiapan data Anda sebelum memberikan himpunan data ke AutoML.
- dataset_language
- str
Tiga karakter kode ISO 639-3 untuk bahasa yang terkandung dalam himpunan data. Bahasa selain bahasa Inggris hanya didukung jika Anda menggunakan komputasi berkemampuan GPU. langugage_code 'mul' harus digunakan jika himpunan data berisi beberapa bahasa. Untuk menemukan kode ISO 639-3 untuk bahasa yang berbeda, silakan lihat https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes.
- prediction_transform_type
- str
Sebuah str dari jenis transformasi target yang akan digunakan untuk mentransmisikan jenis kolom target.
Keterangan
Kustomisasi fiturisasi memiliki metode yang memungkinkan Anda untuk:
Menambahkan atau menghapus tujuan kolom. Dengan metode
add_column_purpose
danremove_column_purpose
Anda dapat mengambil alih jenis fitur untuk kolom yang ditentukan, misalnya, ketika jenis fitur kolom tidak mencerminkan tujuannya dengan benar. Metode tambahkan mendukung penambahan semua jenis fitur yang diberikan dalam atribut FULL_SET dari kelas FeatureType.Menambahkan atau menghapus parameter pentransformasi. Dengan metode
add_transformer_params
danremove_transformer_params
Anda dapat mengubah parameter pentransformasi yang dapat disesuaikan seperti Imputer, HashOneHotEncoder, dan TfIdf. Pentransformasi yang dapat disesuaikan tercantum dalam atribut CUSTOMIZABLE_TRANSFORMERS kelas SupportedTransformers. Menggunakanget_transformer_params
untuk mencari parameter kustomisasi.Memblokir pentransformasi. Memblokir pentransformasi yang akan digunakan untuk proses fiturisasi dengan metode
add_blocked_transformers
. Pentransformasi harus merupakan salah satu pentransformasi yang tercantum dalam atribut BLOCKED_TRANSFORMERS kelas SupportedTransformers.Menambahkan kolom hilangkan yang akan diabaikan untuk fiturisasi dan pelatihan dengan metode
add_drop_columns
. Misalnya, Anda dapat menghilangkan kolom yang tidak berisi informasi yang berguna.Tambahkan atau hapus jenis transformasi prediksi. Dengan
add_prediction_transform_type
dan
metode remove_prediction_transform_type
Anda dapat mengambil alih jenis kolom target yang ada.
Jenis transformasi prediksi tercantum dalam atribut PredictionTransformTypes.
Contoh kode berikut menunjukkan cara mengkustomisasi fiturisasi dalam Pembelajaran Mesin otomatis untuk prakiraan. Dalam kode contoh, menghilangkan kolom dan menambahkan parameter transformasi ditampilkan.
featurization_config = FeaturizationConfig()
# Force the CPWVOL5 feature to be numeric type.
featurization_config.add_column_purpose("CPWVOL5", "Numeric")
# Fill missing values in the target column, Quantity, with zeros.
featurization_config.add_transformer_params(
"Imputer", ["Quantity"], {"strategy": "constant", "fill_value": 0}
)
# Fill missing values in the INCOME column with median value.
featurization_config.add_transformer_params(
"Imputer", ["INCOME"], {"strategy": "median"}
)
# Fill missing values in the Price column with forward fill (last value carried forward).
featurization_config.add_transformer_params("Imputer", ["Price"], {"strategy": "ffill"})
Sampel lengkap tersedia dari https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb
Contoh berikutnya menunjukkan fiturisasi kustomisasi dalam masalah regresi menggunakan Himpunan Data Performa Perangkat Keras. Dalam kode contoh, pentransformasi yang diblokir ditentukan, tujuan kolom ditambahkan, dan parameter pentransformasi ditambahkan.
featurization_config = FeaturizationConfig()
featurization_config.blocked_transformers = ["LabelEncoder"]
# featurization_config.drop_columns = ['MMIN']
featurization_config.add_column_purpose("MYCT", "Numeric")
featurization_config.add_column_purpose("VendorName", "CategoricalHash")
# default strategy mean, add transformer param for for 3 columns
featurization_config.add_transformer_params("Imputer", ["CACH"], {"strategy": "median"})
featurization_config.add_transformer_params(
"Imputer", ["CHMIN"], {"strategy": "median"}
)
featurization_config.add_transformer_params(
"Imputer", ["PRP"], {"strategy": "most_frequent"}
)
# featurization_config.add_transformer_params('HashOneHotEncoder', [], {"number_of_bits": 3})
Sampel lengkap tersedia dari https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/regression-explanation-featurization/auto-ml-regression-explanation-featurization.ipynb
FeaturizationConfig yang didefinisikan dalam contoh kode di atas kemudian dapat digunakan dalam konfigurasi eksperimen ML otomatis seperti yang ditunjukkan dalam contoh kode berikutnya.
automl_settings = {
"enable_early_stopping": True,
"experiment_timeout_hours": 0.25,
"max_concurrent_iterations": 4,
"max_cores_per_iteration": -1,
"n_cross_validations": 5,
"primary_metric": "normalized_root_mean_squared_error",
"verbosity": logging.INFO,
}
automl_config = AutoMLConfig(
task="regression",
debug_log="automl_errors.log",
compute_target=compute_target,
featurization=featurization_config,
training_data=train_data,
label_column_name=label,
**automl_settings,
)
Sampel lengkap tersedia dari https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/regression-explanation-featurization/auto-ml-regression-explanation-featurization.ipynb
Metode
add_blocked_transformers |
Tambahkan pentransformasi untuk diblokir. |
add_column_purpose |
Tambahkan jenis fitur untuk kolom yang ditentukan. |
add_drop_columns |
Tambahkan nama kolom atau daftar nama kolom untuk diabaikan. |
add_prediction_transform_type |
Tambahkan jenis transformasi prediksi untuk kolom target. kelas PredictionTransformTypes. :type prediction_transform_type: str |
add_transformer_params |
Tambahkan parameter pentransformasi yang dikustomisasi ke daftar parameter pentransformasi kustom. Terapkan ke semua kolom jika daftar kolom kosong. |
get_transformer_params |
Ambil parameter kustomisasi pentransformasi untuk kolom. |
remove_column_purpose |
Hapus jenis fitur untuk kolom yang ditentukan. Jika tidak ada fitur yang ditentukan untuk kolom, fitur default yang terdeteksi digunakan. |
remove_prediction_transform_type |
Kembalikan jenis transformasi prediksi ke default untuk kolom target. |
remove_transformer_params |
Hapus parameter kustomisasi pentransformasi untuk kolom tertentu atau semua kolom. |
add_blocked_transformers
Tambahkan pentransformasi untuk diblokir.
add_blocked_transformers(transformers: str | List[str]) -> None
Parameter
Nama transformator atau daftar nama transformator. Nama pentransformasi harus merupakan salah satu pentransformasi yang tercantum dalam atribut BLOCKED_TRANSFORMERS dari kelas SupportedTransformers.
add_column_purpose
Tambahkan jenis fitur untuk kolom yang ditentukan.
add_column_purpose(column_name: str, feature_type: str) -> None
Parameter
- feature_type
- FeatureType
Jenis fitur yang akan digunakan untuk kolom. Jenis fitur harus merupakan yang ditentukan dalam atribut FULL_SET dari kelas FeatureType.
add_drop_columns
Tambahkan nama kolom atau daftar nama kolom untuk diabaikan.
add_drop_columns(drop_columns: str | List[str]) -> None
Parameter
add_prediction_transform_type
Tambahkan jenis transformasi prediksi untuk kolom target.
kelas PredictionTransformTypes. :type prediction_transform_type: str
add_prediction_transform_type(prediction_transform_type: str) -> None
Parameter
- prediction_transform_type
Jenis transformasi prediksi yang akan digunakan untuk mentransmisikan kolom target. Jenis fitur harus ditentukan dalam atribut FULL_SET dari
add_transformer_params
Tambahkan parameter pentransformasi yang dikustomisasi ke daftar parameter pentransformasi kustom.
Terapkan ke semua kolom jika daftar kolom kosong.
add_transformer_params(transformer: str, cols: List[str], params: Dict[str, Any]) -> None
Parameter
- transformer
- str
Nama transformator. Nama pentransformasi harus merupakan salah satu CUSTOMIZABLE_TRANSFORMERS yang tercantum dalam kelas SupportedTransformers.
Kolom input untuk pentransformasi tertentu. Beberapa pentransformasi dapat mengambil beberapa kolom sebagai input yang ditentukan sebagai daftar.
Keterangan
Contoh kode berikut menunjukkan cara mengkustomisasi fiturisasi dalam ML otomatis untuk prakiraan. Dalam kode contoh, menghilangkan kolom dan menambahkan parameter transformasi ditampilkan.
featurization_config = FeaturizationConfig()
# Force the CPWVOL5 feature to be numeric type.
featurization_config.add_column_purpose("CPWVOL5", "Numeric")
# Fill missing values in the target column, Quantity, with zeros.
featurization_config.add_transformer_params(
"Imputer", ["Quantity"], {"strategy": "constant", "fill_value": 0}
)
# Fill missing values in the INCOME column with median value.
featurization_config.add_transformer_params(
"Imputer", ["INCOME"], {"strategy": "median"}
)
# Fill missing values in the Price column with forward fill (last value carried forward).
featurization_config.add_transformer_params("Imputer", ["Price"], {"strategy": "ffill"})
Sampel lengkap tersedia dari https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb
get_transformer_params
Ambil parameter kustomisasi pentransformasi untuk kolom.
get_transformer_params(transformer: str, cols: List[str]) -> Dict[str, Any]
Parameter
- transformer
- str
Nama pentransformasi. Nama pentransformasi harus merupakan salah satu CUSTOMIZABLE_TRANSFORMERS yang tercantum dalam kelas SupportedTransformers.
Nama kolom untuk mendapatkan informasi. Gunakan daftar kosong untuk menentukan semua kolom.
Mengembalikan
Pengaturan parameter pentransformasi.
Tipe hasil
remove_column_purpose
Hapus jenis fitur untuk kolom yang ditentukan.
Jika tidak ada fitur yang ditentukan untuk kolom, fitur default yang terdeteksi digunakan.
remove_column_purpose(column_name: str) -> None
Parameter
remove_prediction_transform_type
Kembalikan jenis transformasi prediksi ke default untuk kolom target.
remove_prediction_transform_type() -> None
remove_transformer_params
Hapus parameter kustomisasi pentransformasi untuk kolom tertentu atau semua kolom.
remove_transformer_params(transformer: str, cols: List[str] | None = None) -> None
Parameter
- transformer
- str
Nama transformator. Nama pentransformasi harus merupakan salah satu CUSTOMIZABLE_TRANSFORMERS yang tercantum dalam kelas SupportedTransformers.
Atribut
blocked_transformers
column_purposes
dataset_language
drop_columns
prediction_transform_type
transformer_params
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk