НачатьНачать бесплатно

Параметры модели

Теперь, когда вы построили общую модель, давайте «оптимизируем» или «подгоним» её к новому (заранее загруженному) набору измеренных данных xd, yd — для этого нужно найти конкретные значения параметров модели a0, a1, при которых смоделированные и измеренные данные совпадают на графике.

Это итеративная визуальная стратегия: мы начинаем с предположения о параметрах модели, передаём их в model(), накладываем полученные смоделированные данные на измеренные и визуально проверяем, проходит ли линия через точки. Если нет — меняем параметры и повторяем попытку.

Это упражнение является частью курса

Введение в линейное моделирование на Python

Посмотреть курс

Инструкции к упражнению

  • Доработайте функцию plot_data_and_model(xd, yd, ym), передав xd, yd и xd, ym во внутренние вызовы построения графика.
  • Вычислите прогнозы модели с помощью ym = model(), передав в неё данные xd и предполагаемые параметры модели a0 и a1.
    • Изучите приведённые выше данные и используйте их как ориентир при задании первых двух оценок. После того как вы увидите, как линия соотносится с данными, можно вернуться и скорректировать эти оценки.
  • Используйте plot_data_and_model() для совместного отображения xd, yd и ym на графике.
  • Измените значения a0 и a1 и повторите предыдущие 2 шага, пока линия не пройдёт через все точки.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Complete the plotting function definition
def plot_data_with_model(xd, yd, ym):
    fig = plot_data(____, ____)  # plot measured data
    fig.axes[0].plot(____, ____, color='red')  # over-plot modeled data
    plt.show()
    return fig

# Select new model parameters a0, a1, and generate modeled `ym` from them.
a0 = ____
a1 = ____
ym = model(xd, a0, a1)

# Plot the resulting model to see whether it fits the data
fig = plot_data_with_model(xd, yd, ____)
Редактировать и запускать код