2014-04-19 2 views
0

Я работаю над школьным проектом, в котором мы используем SVR для прогнозирования следующего значения ряда значений (например, значений запаса). Мы нашли пример кода на scikit (Python), который мы не можем понять для синтаксиса.Описание синтаксиса прогнозирования SVR

Не могли бы мы помочь нам расшифровать это?

X = np.sort(5 * np.random.rand(40, 1), axis=0) 
    Y = np.sin(X).ravel() 

    from sklearn.svm import SVR 
    svr_rbf = SVR(kernel='rbf', C=1e3, gamma=0.1) 

    y_rbf = svr_rbf.fit(X, Y).predict(X) 

Я понимаю, первые 4 строки этого кода ... мой вопрос больше с y_rbf линии ... как именно это работает? Выполняем ли мы форму кривой, основанную на наборе тренировок, а затем прогнозируем на основе одного и того же входного вектора?

Я не уверен, что означает синтаксис. Любая помощь приветствуется.

спасибо.

ответ

0

Последняя строка может быть разбита на:

svr_rbf.fit(X, Y) # 1 
y_rbf = svr_rbf.predict(X) # 2 
  1. Вы строите модель того, как выход у зависит от X. Согласно documentation вы:

    Смонтируйте SVM в соответствии с данными обучения.

  2. Здесь вы используете ранее построенную модель для прогнозирования значений (y) для каждой точки. Как documention выразился:

    Выполните регресс на образцах в X.

Это хорошо для эксперимента, но просто чтобы вы знали: в общем, вы будете хотеть, чтобы проверить вашей модели по данным, отличным от того, что использовалось для соответствия модели, чтобы избежать переобучения. Вы можете прочитать о перекрестной проверке, если вы не знакомы с ней.

Смежные вопросы