Путаница в понимании работы FeatureUnions (панд) - PullRequest
0 голосов
/ 04 октября 2018

Я узнаю о конвейерах и функциональных объединениях в пандах.Я понимаю работу конвейеров, которые помогают применять серию преобразований к данному набору данных.Но я запутался в отношении союзов.Я прочитал документы , где говорится, что трансформаторы применяются параллельно, а затем результат объединяется.

Я сомневаюсь в этом, если мы применим все трансформаторы ко всемунабор данных или различные трансформаторы только для выбранных функций?Если ко всему набору данных как мы объединяем результат?Кроме того, есть ли случаи общего использования, когда я должен использовать FeatureUnion?

1 Ответ

0 голосов
/ 05 октября 2018

FeatureUnion используется, когда вы хотите применить различные виды преобразования к функциям.Может случиться так, что для одного и того же набора функций вы хотите применить несколько типов преобразований и хотите использовать комбинацию всех этих преобразований в качестве новых функций.

Объяснение в документации здесь должно дать вам некоторое представление.

Я думаю, вы запутались после прочтения документации по текущей версии.Ранее FeatureUnion раньше делал то, что ColumnTransformer делает в версии 0.20.Сравните последний пример здесь:

с предыдущимДокументация по версии здесь:

Вы заметите сходство.

Вы можете попробовать поиск в Stackoverflow, чтобы найти различные варианты использования FeatureUnion.Если вы все еще не удовлетворены, пожалуйста, не стесняйтесь задавать более конкретные вопросы.Может быть полезно знать, что вы хотите сделать со своим набором данных.

Обновление для комментария :

Количество функций может увеличиваться или уменьшаться.FeatureUnion не сохранит ваши исходные функции, если вы не сохраните их в преобразовании.

Возьмите этот пример:

estimators = [('linear_pca', PCA(n_components=5)), 
              ('kernel_pca', KernelPCA(n_components=10))]
combined = FeatureUnion(estimators)

Предполагая, что ваши исходные данные имеют 100 функций.Вышеуказанный FeatureUnion вернет только 15 новых функций.

  • PCA получит все ваши 100 функций и преобразует их, чтобы сохранить только 5 компонентов, которые будут возвращены в FeatureUnion.

  • Аналогично,KernelPCA также получит все ваши 100 функций и сохранит 10 компонентов в преобразованных данных.

  • FeatureUnion просто объединит эти 5 и 10 функций, чтобы вернуть вам 15 новых функций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...