Привет всем и привет миру. Это мой первый вопрос о StackOverflow, и любая помощь будет полезна!
Я пытаюсь создать простую модель регрессии опорных векторов (SVR) для прогнозирования запасов с использованием локальных акций и использования sklearn.svm
SVR
.
train
- это мой обучающий фрейм данных, в то время как у фрейма данных есть только дата и цена закрытия в качестве столбцов
GSCV()
- это функция, которая возвращает оптимальные C
и gamma
, полученные изиспользуя GridSearchCV
train["Date"]=pd.to_datetime(train["Date"])
dates = pd.DataFrame.to_numpy(train["Date"]).reshape(-1,1)
closing_prices = (pd.DataFrame.to_numpy(train[' Close'])).reshape(-1,1)
c,g = GSCV('rbf',dates, closing_prices)
svr_rbf = SVR('rbf', C=c, gamma = g, cache_size=20000)
c,g = GSCV('linear',dates, closing_prices)
svr_lin = SVR(kernel= 'linear', C= c, gamma = g,cache_size=20000)
c,g = GSCV('poly',dates, closing_prices)
svr_poly = SVR(kernel= 'poly', C= c, degree= 2, gamma = g,cache_size=20000)
svr_rbf.fit(dates, closing_prices)
svr_lin.fit(dates, closing_prices)
svr_poly.fit(dates, closing_prices)
Я хотел бы отметить, что у меня есть два типа наборов данных: запасы с малой дисперсией и запасы с высокой дисперсией. При кормлении запасами с малой дисперсией модели немедленно прекращают работу, хотя с постоянным прогнозом повсюду. С другой стороны, большие отклонения вызывают мою проблему без прерывания.
В моем эксперименте необходимо создать модели, основанные на данных за 2,4,6,8,10 лет. Самое большее, у меня 2100+ точек данных, но даже с 400+ точками данных код, похоже, не заканчивается. Это слишком много для начала?
Я попытался 1. масштабировать данные с помощью StandardScaler
2. установить cache=20000
в надежде на ускорение
Спасибо всем и всемввод!