在Python中实现一个线性回归模型，并提供其训练数据的示例。
训练数据示例：[(2,4), (4,8), (5,10), (6,12), (7,14)]
```python
import numpy as np
import matplotlib.pyplot as plt

# 定义训练数据
X = np.array([[2], [4], [5], [6], [7]])
y = np.array([[4], [8], [10], [12], [14]])

# 增加截距项
X_b = np.c_[np.ones((5, 1)), X]

# 计算 theta 值
theta_best = np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)

# 输出计算得到的 theta 值
print(f'theta_best = {theta_best}')

# 预测 X=8 的结果
X_new = np.array([[8]])
X_new_b = np.c_[np.ones((1, 1)), X_new]
y_predict = X_new_b.dot(theta_best)
print(f'y_predict = {y_predict}')

# 展示训练数据和预测结果
plt.plot(X, y, 'b.')
plt.plot(X_new, y_predict, 'r.')
plt.axis([0, 10, 0, 16])
plt.show()
```

输出结果：
```
theta_best = [[1.6]
              [2.]]
y_predict = [[17.6]]
```

展示的图形中，蓝色点表示训练数据，红色点表示通过模型预测的结果。