Сопутствующая библиотека книги машинного обучения Инженерия и выбор для объяснимых моделей: второй курс для ученых данных
Metaheuristicsfs Module помогает в определении комбинации функций, которые дают наилучший результат. Процесс поиска лучшей комбинации называется «выбор функций». В этой библиотеке используются алгоритмы на основе метахевристов, такие как генетический алгоритм, моделируемый отжиг, оптимизация колонии муравей и оптимизация роя частиц, для выбора функций.
Параметры машинного обучения: они являются общими для всех алгоритмов
columns_list : Имена столбцов, присутствующие в x_train_dataframe и x_test, которые будут использоваться в качестве входного списка для поиска лучших списков функций.
data_dict : x и y обучающие и тестовые данные, представленные в формате словаря. Ниже приведен пример 5 -кратных данных перекрестной проверки с ключами. {0: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 1: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 2: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 3: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}, 4: {'x_train': x_train_dataframe, 'y_train': y_train_array, 'x_test': x_test_dataframe, 'y_test': y_test_array}}
Если у вас есть только данные поезда и тестирование и вы не хотите делать перекрестную проверку, используйте вышеуказанный формат словаря, только с одним ключом.
use_validation_data : хотите ли вы использовать данные проверки в качестве логического истинного или false. Значение по умолчанию верно. Если false, пользователь не должен предоставлять x_validation_dataframe и y_validation_dataframe
x_validation_dataframe : DataFrame, содержащий функции набора данных Validatoin. По умолчанию Blank Pandas DataFrame.
y_validation_dataframe : dataframe, содержащая зависимую переменную набора данных проверки. По умолчанию Blank Pandas DataFrame.
model : модель объекта. Он должен иметь атрибут .fit и .predict
cost_function_improvement : Цель состоит в том, увеличить или уменьшить стоимость во время последующих итераций. Для регрессии это должно быть «уменьшением», а для классификации это должно быть «увеличение»
cost_function : Функция стоимости для поиска стоимости между фактическими и прогнозируемыми значениями, в зависимости от проблемы регрессии или классификации. Функция стоимости должна принимать «фактические» и «прогнозируется» в качестве массивов и стоимости возврата для обоих.
average : усреднение для использования. Это полезно для метриков класификации, таких как «f1_score», «jaccard_score», 'fbeta_score', 'precision_score', 'remark_score' и 'roc_auc_score', когда зависимая переменная является многокласс
Генетические алгоритмы выбора (GeneticalGorithmfs) Параметры
generations : количество поколений для работы генетического алгоритма. 100 как деафт
population : количество отдельных хромосом. 50 как дефолт. Он должен содержаться как низкое число, если количество возможных перестановки и комбинации наборов функций невелики.
prob_crossover : вероятность кроссовера. 0,9 как дефолт
prob_mutation : вероятность мутации. 0,1 как дефолт
run_time : количество минут для запуска алгоритма. Это проверяется между поколениями. В начале каждого поколения он проверяется, если превышается время выполнения, чем распределенное время. Если время выполнения случая превышало предоставленный предел, наилучший результат, выполненные до настоящего времени, дается в качестве вывода. По умолчанию 2 часа. т.е. 120 минут.
Параметры моделируемого выбора функций отжига (SimulationAnnealingFS)
temperature : начальная температура для отжига. По умолчанию 1500
iterations : количество раз моделируемого отжига будет искать решения. По умолчанию 100.
n_perturb : количество функций количество раз будет нарушено в итерации. По умолчанию 1.
n_features_percent_perturb : процент функций, которые будут возмущены во время каждого возмущения. Значение составляет от 1 до 100.
alpha : коэффициент снижения температуры. По умолчанию 0,9.
run_time : количество минут для запуска алгоритма. Это проверяется между поколениями. В начале каждого поколения он проверяется, если превышается время выполнения, чем распределенное время. Если время выполнения случая превышало предоставленный предел, наилучший результат, выполненные до настоящего времени, дается в качестве вывода. По умолчанию 2 часа. т.е. 120 минут.
Параметры функций оптимизации колоний муравья (AntcolonyoptimizationFS)
iterations : количество раз, когда оптимизация колоний муравей будет искать решения. По умолчанию 100.
N_ants : количество муравьев в каждой итерации. По умолчанию 100.
evaporation_rate : скорость испарения. Значения находятся от 0 до 1. Если они слишком велики, шансы выше, чтобы найти глобальные оптимумы, но вычислительно дорогие. Если он низкий, вероятность поиска глобальных оптимистов меньше. По умолчанию сохраняется 0,8.
Q : Коэффициент обновления феромена. Значение между 0 и 1. Это влияет на скорость сходимости. Если он большой, ACO застрянет в Local Optima. По умолчанию сохраняется 0,2.
run_time : количество минут для запуска алгоритма. Это проверяется между поколениями. В начале каждого поколения он проверяется, если превышается время выполнения, чем распределенное время. Если время выполнения случая превышало предоставленный предел, наилучший результат, выполненные до настоящего времени, дается в качестве вывода. По умолчанию 2 часа. т.е. 120 минут.
Параметры оптимизации оптимизации частиц. Выбор функций Оптимизации (частицВармоптимизации)
iterations : количество времени частиц оптимизация частиц будет искать решения. По умолчанию 100.
swarmSize : размер роя на каждой итерации. По умолчанию 100.
run_time : количество минут для запуска алгоритма. Это проверяется между поколениями. В начале каждого поколения он проверяется, если превышается время выполнения, чем распределенное время. Если время выполнения случая превышало предоставленный предел, наилучший результат, выполненные до настоящего времени, дается в качестве вывода. По умолчанию 2 часа. т.е. 120 минут.
MD Азимул Хак (2022). Функциональная инженерия и выбор для объяснимых моделей: второй курс для ученых данных. Lulu Press, Inc.
pip install MetaHeuristicsFS