3 / 3 / 0
Регистрация: 02.04.2017
Сообщений: 273
1

Как минимизировать такую функцию?

28.09.2019, 12:43. Показов 1110. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть список значений Y и список X и я хочу минимизировать функцию такого вида(прикрепил картинку).

Также есть начальные значения Theta0 = 1.537, Theta1 = 1.143, Theta2 = 0.01604. Как минимизировать такую функцию?
Миниатюры
Как минимизировать такую функцию?  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.09.2019, 12:43
Ответы с готовыми решениями:

Не получается минимизировать функцию потерь
Пытаюсь минимизировать функцию потерь радикальных оценок для оценки параметров нормального...

Как задать такую функцию в питоне?

Как минимизировать такую функцию?
Функция def Phi(u, X): return -(1+u*X+u*X+u*X+u*X) Известно, что : 1) X...X...

Как минимизировать такую таблицу истинности?
Есть следующая таблица истинности для функций возбуждения автомата Мура на JK триггерах. Как...

7
1486 / 1413 / 240
Регистрация: 19.02.2010
Сообщений: 3,914
28.09.2019, 13:00 2
Превращайте эту полиномиальную регрессию в линейную путём ввода новой независимой переменной Z=X^2, далее любыми способами решения задачи линейной множественной регрессии. Например, через решение СЛАУ методом Гаусса.
0
3 / 3 / 0
Регистрация: 02.04.2017
Сообщений: 273
28.09.2019, 17:43  [ТС] 3
VTsaregorodtsev, Немного не правильно выразился. Попробую на конкретном примере
Как с помощью scipy найти минимум функции трех переменных
https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{1}{2}(5.59 -  (\Theta_0+3.35\Theta_1+11.22\Theta_2))^2\to\min\limits_{\Theta_0,\Theta_1,\Theta_2}?

Добавлено через 39 минут
Это делается примерно так:
Python
1
2
3
4
5
6
def f(params):
    a, b, c = params
    return 1/2*((5.59-(a + 3.35*b + 11.22*c)))**2
 
initial_guess = [1.537, 1.143, 0.01604]
result = minimize(f, initial_guess)
А что делать, когда нужно найти минимум суммы https://www.cyberforum.ru/cgi-bin/latex.cgi?\sum\limits_{i=1}^{n} 0.5*(Y_i - (\Theta_0 + \Theta_1X_i + \Theta_2X_i^2  )^2, где X и Y - два списка?

Добавлено через 11 минут
Пробовал так:


Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def f(params,X,y,i):
    a, b, c = params
    return (y[i]-(a + X[i]*b + X[i]**2*c))
 
 
def f2(params):
    sum = 0
    for i in range(len(y)):
        sum += 0.5*(f(params,X,y,i))**2
 
    return(sum)
 
initial_guess = [1.537, 1.143, 0.01604]
result = minimize(f2, initial_guess)
Но получаю ошибку
Bash
1
ValueError: Desired error not necessarily achieved due to precision loss.
0
Эксперт Python
4630 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,131
Записей в блоге: 6
30.09.2019, 11:49 4
Вам сюда: https://docs.scipy.org/doc/sci... imize.html
0
672 / 475 / 215
Регистрация: 06.09.2013
Сообщений: 1,306
30.09.2019, 15:18 5
Цитата Сообщение от Key27 Посмотреть сообщение
А что делать, когда нужно найти минимум суммы
Надо просто продифференцировать и приравнять производные к нулю. Если лень это делать, то можно найти формулу для коэффициентов множественной регрессии:
https://www.cyberforum.ru/cgi-bin/latex.cgi?\Theta = (X^T X)^{-1} X^T Y
В данном случае незачем использовать scipy можно обойтись одним numpy, что-то типа
Python
1
2
3
4
5
6
import numpy as np
x = np.array(...)
y = np.array(...)
x = x.reshape(-1, 1)
x_ext = np.hstack((np.ones(x.shape), x, x**2))
theta = np.linalg.inv(np.dot(x_ext.T, x_ext)).dot(x_ext.T).dot(y)
0
Эксперт Python
4630 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,131
Записей в блоге: 6
30.09.2019, 15:44 6
woldemas, не надо диференцировать.
100 к одному, задача именно на минимизацию путём градиентного спуска или чем-то подобным.
normal equation подходит в случае, когда признаков немного и способ не этого урока
0
672 / 475 / 215
Регистрация: 06.09.2013
Сообщений: 1,306
30.09.2019, 16:43 7
Цитата Сообщение от dondublon Посмотреть сообщение
задача именно на минимизацию путём градиентного спуска
Это в чистом виде полиномиальная регрессия (если я правильно понял обозначения - ТС там в скобках путается). Градиентный спуск даст тот же результат - там же целевая функция квадратичная.
0
Эксперт Python
4630 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,131
Записей в блоге: 6
30.09.2019, 16:52 8
woldemas, да я вижу, что регрессия.
Тут ведь дело не просто в том, чтобы результат получить, а научиться вызывать минимизацию в соответствии с учебным курсом
0
30.09.2019, 16:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.09.2019, 16:52
Помогаю со студенческими работами здесь

Как минимизировать функцию методом покоординатного спуска ?
Подскажите пожалуйста необходимо минимизировать функцию методом покоординатного спуска, ну...

Как можно минимизировать функцию кроме Карт Карно.
Всем привет. У меня такой вопрос как можно еще минимизировать функции кроме Карт Карно(диаграма...

Как можно упростить код с TextBox или же минимизировать данную функцию?
На форме есть 2 textBox, ВОПРОС...Как можно упрастить код или же минимозировать данную функцию ???...

Как записать такую функцию
Помогите (2n)!!, где (2n)!!=2*4*...*(2n)

как написать такую функцию
Помогите пожалуйста написать функцию, формирующую таблицу символов и их кодов из заданного...

Как описать такую функцию?
Ето опять я Пожалуйсто подскажите как описать функцию так чтобы она принимала не 1 комбинацию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru