Задать вопрос
@ivodopyanov
NLP, python, numpy, tensorflow

Как можно использовать одни и те же параметры для разных шагов Pipeline в scikit-learn при grid search?

Решаю задачу классификации текста при помощи сверточных сетей.
Pipeline состоит из двух шагов:
1) препроцессор MyPreprocessor, который разбивает текст на слова, определяет словарь и заменяет слова в тексте на порядковые индексы в словаре
2) классификатор MyClassifier, который собственно обучает сеть.
Однако у этих двух шагов есть общий набор параметров (размер словаря max_features и макс. допустимая длина фразы max_len). Что надо сделать, чтобы они менялись синхронно?

Условный код:
clf = Pipeline([('vect', MyPreprocessor()), 
                ('clf', MyClassifier())])}
params = {'vect__max_features': [5000, 10000], 
               'vect__max_len': [64, 96, 128],
               'clf__max_features': [5000, 10000],
               'clf__max_len': [64, 96, 128]}
gs_clf = GridSearchCV(clf, params, n_jobs=-1)
gs_clf = gs_clf.fit(X_train, Y_train)
  • Вопрос задан
  • 190 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Специалист по Data Science
    13 месяцев
    Далее
  • OTUS
    Machine Learning. Professional
    5 месяцев
    Далее
  • Нетология
    Data Scientist: расширенный курс
    13 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы