Como uso um TimeSeriesSplit com um objeto GridSearchCV para ajustar um modelo no scikit-learn?

Eu procurei nodocumentos do sklearn paraTimeSeriesSplit e adocumentos para validação cruzada mas não consegui encontrar um exemplo de trabalho.

Estou usando a versão 0.19 do sklearn.

Esta é a minha configuração

import xgboost as xgb
from sklearn.model_selection import TimeSeriesSplit
from sklearn.grid_search import GridSearchCV
import numpy as np
X = np.array([[4, 5, 6, 1, 0, 2], [3.1, 3.5, 1.0, 2.1, 8.3, 1.1]]).T
y = np.array([1, 6, 7, 1, 2, 3])
tscv = TimeSeriesSplit(n_splits=2)
for train, test in tscv.split(X):
    print(train, test)

dá:

[0 1] [2 3]
[0 1 2 3] [4 5]

Se eu tentar:

model = xgb.XGBRegressor()
param_search = {'max_depth' : [3, 5]}

my_cv = TimeSeriesSplit(n_splits=2).split(X)
gsearch = GridSearchCV(estimator=model, cv=my_cv,
                        param_grid=param_search)
gsearch.fit(X, y)

dá:TypeError: object of type 'generator' has no len()

Eu recebo o problema:GridSearchCV está tentando ligarlen(cv) masmy_cv é um iterador sem comprimento. No entanto, odocumentos paraGridSearchCV estado em que posso usar um

int, gerador de validação cruzada ou um iterável, opcional

Eu tentei usarTimeSeriesSplit sem o.split(X) mas ainda não funcionou.

Tenho certeza que estou ignorando algo simples, obrigado !!

questionAnswers(1)

yourAnswerToTheQuestion