2

我有以下示例数据框:

import pandas as pd
df_test = pd.DataFrame({'y_var':[0,0,0,1,1],
                        'x_c1':[1,2,3,4,5],
                        'x_c2':[6,7,8,9,9],
                        'x_p1':[2,2,2,3,3],
                        'x_p2':[5,6,7,9,9]})

如何y_var使用stensorflow_probability的权重x_c遵循normal分布和 s 的权重x_p遵循分布的位置进行简单的线性回归lognormal

更新

因此,例如,如果我尝试这个来构建模型:

import tensorflow as tf
import tensorflow_probability as tfp
tfk = tf.keras
tfkl = tf.keras.layers
tfd = tfp.distributions
tfpl = tfp.layers

model = tfk.Sequential([
  tfkl.Dense(1),
  tfpl.DistributionLambda(lambda t: tfd.Normal(loc=0, scale=1)),
  tfpl.DistributionLambda(lambda t: tfd.LogNormal(loc=0, scale=1)),
  tfkl.Dense(1, activation='linear')
])

然后这将创建 4 层,最后所有参数都将遵循对数正态,而我只希望x_ps 权重遵循lognormal

4

0 回答 0