Градиентное спуск машинное обучениеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Градиентное спуск машинное обучение

Сообщение Anonymous »

Я посещаю класс Cousera от Эндрю Нг и я видел градиент спуск с множественной переменной. Я пытаюсь запустить градиент спуск в Python. Это мой код в Python < /p>
import sys
import matplotlib.pyplot as plt

def gradient_descent(y_actual, alpha, iterations, m_current, b_current, x_dataset):
if len(y_actual) != len(x_dataset):
print(f"Dofferent lenght of input which is {len(y_actual)} and {len(x_dataset)}")
sys.exit(1)
else:
pass
m_current = m_current
b_current = b_current
m_derivative = 0
b_derivative = 0
new_m = []
new_b = []
itr = []
for z in range(iterations):
for i in range(len(x_dataset)):
m_derivative += (y_actual - ((m_current * x_dataset)+b_current))*x_dataset
b_derivative += (y_actual - ((m_current * x_dataset) + b_current))
itr.append(z)
m_current = m_current - (alpha*(m_derivative/len(x_dataset)))
b_current = b_current - (alpha * (b_derivative / len(x_dataset)))
new_m.append(m_current)
new_b.append(b_current)
m_derivative = 0
b_derivative = 0
return m_current, b_current, itr, new_m, new_b

m, b, iteration, m_history, b_history = gradient_descent([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 0.0001, 1000, 0, 0, [5, 8, 1, 4, 9, 3, 9, 8, 3, 5])

plt.subplot(121)
plt.plot(iteration, m_history)
plt.subplot(122)
plt.plot(iteration,b_history)
plt.show()
< /code>
Я планирую итерацию и взаимосвязь между итерацией и уменьшением B, который является перехватом и взаимосвязи между итерацией и уменьшением M, который является коэффициентом. This is the graph that I get:
Изображение

But the problem is that I saw a lot of graphs about gradient descent in Google like this:

Какова проблема моего кода, который дает мне этот результат?

Подробнее здесь: https://stackoverflow.com/questions/663 ... e-learning
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»