Существует ли библиотека или методология Python, которая создает хорошие нелинейные квантили для двухмерных данных? [закPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Существует ли библиотека или методология Python, которая создает хорошие нелинейные квантили для двухмерных данных? [зак

Сообщение Anonymous »

Я хочу разделить свои нелинейные наборы данных на квантили с помощью Python.
Я хочу построить графики с помощью
  • квантилей линии, которые не пересекаются
  • а также имеют свою индивидуальную форму, соответствующую данным (а не просто одну и ту же строку, 10 раз разделенную % стандартной ошибки)
Пример того, что я собираюсь здесь сделать:
идеальный график квантилей
I Я попробовал smf.quantreg("y ~ X", filtered_data) с smf, импортированным из statsmodels.formula.api.
Это создает линейные графики, когда не все мои наборы данных являются линейными. Из-за характера линейности все линии в конечном итоге пересекаются, что приводит к неверным расчетам процентилей для некоторых точек (как вы можете видеть в квантиле 50% и 60% справа).

smf. попытка построения графика Quantreg
model = smf.quantreg("y ~ X", filtered_data).fit(
q=q,
max_iter=2000,
p_tol=1e-06,
)

Я также пробовал методы keras и tensorflow из -https://colab.research.google.com/githu ... ison.ipynb - которые привело к большей нелинейности, но линии часто пересекаются.
Попытка построения графика keras
def tilted_loss(q, y, f):
e = (y - f)
return tf.reduce_mean(tf.maximum(q * e, (q - 1) * e), axis=-1)

def keras_pred(x_train, train_labels, x_test, q):
# Set input_dim for the number of features.
if len(x_train.shape) == 1:
input_shape = (1,)
else:
input_shape = (x_train.shape[1],)

model = Sequential()
model.add(Input(shape=input_shape))
model.add(Dense(units=10, activation='relu'))
model.add(Dense(units=10, activation='relu'))
model.add(Dense(1))

model.compile(loss=lambda y, f: tilted_loss(q, y, f), optimizer='adadelta')
model.fit(x_train, train_labels, epochs=EPOCHS, batch_size=BATCH_SIZE,
verbose=0)

# Predict the quantile
return model.predict(x_test)

preds.loc[preds.method == 'keras', 'pred'] = np.concatenate(
[keras_pred(x_train_expanded, train_labels, x_test_expanded, q)
for q in QUANTILES])


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

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Существует ли библиотека или методология Python, которая создает хорошие нелинейные квантили для двухмерных данных? [зак
    Anonymous » » в форуме Python
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Существует ли эквивалент или методология Java для ключевого слова typedef в C++?
    Anonymous » » в форуме JAVA
    0 Ответы
    108 Просмотры
    Последнее сообщение Anonymous
  • Существует ли эквивалент или методология Java для ключевого слова typedef в C++?
    Anonymous » » в форуме C++
    0 Ответы
    81 Просмотры
    Последнее сообщение Anonymous
  • Квантили ряда с полярами в качестве кадра данных
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Квантили ряда с полярами в качестве кадра данных
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

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