#python #python-3.x #numpy #matplotlib #neural-network
#python #python-3.x #numpy #matplotlib #нейронная сеть
Вопрос:
Прямо сейчас я пытаюсь продемонстрировать функцию затрат и задаюсь вопросом, есть ли способ обойти параболу, добавив график в тот же подзаголовок и рисунок.
def costfuntion(b, a):
# b Value
x = np.linspace(b*(-b), b*(b), 100)
y = (x - a)**2
return y
Моя попытка построения графика:
plt.plot(costfuntion(20,5))
plt.ylabel("Cost Value");
#b = 'some b value'
plt.plot(b, marker='o', color='b')
Что я пытаюсь имитировать
(Приблизительно: 1:13)
Ответ №1:
Поскольку y
значения зависят от a
значений, вам нужно указать a
для y
поиска. Рассмотрим следующее:
def costfunction(b, a):
# b Value
x = np.linspace(b*(-b), b*(b), 100)
y = (x - a)**2
return x, y
a = 5
c = costfunction(20, a)
plt.plot(c[0], c[1], linestyle='-', linewidth=1)
plt.ylabel("Cost Value");
b = 100
yb = (b - a)**2 # Find the corresponding y-value
plt.plot(b, yb, marker='o', color='b')
plt.show()
Это даст вам
Вы также можете заметить, что я изменил costfunction
определение, чтобы возвращать x
значения, в противном случае matplotlib будет просто использовать любые значения, которые ему заблагорассудятся.
Ответ №2:
def costfuntion(b, a):
# b Value
x = np.linspace(b*(-b), b*(b), 100)
y = (x - a)**2
return x, y
x, y = costfuntion(20,5)
plt.plot(x, y)
for i in range(0, len(x), 2):
plt.plot(x[i], y[i], marker='o', color='b')
Измените функцию стоимости, чтобы возвращать как x
, так и y
функции, которую вы строите, и используйте эту информацию для построения точек на функции.