【问题标题】:Tensorflow linear regression house pricesTensorflow 线性回归房价
【发布时间】:2018-05-26 17:35:56
【问题描述】:

我正在尝试使用神经网络解决线性回归问题,但我的损失达到 10 次方,并且没有减少训练。我正在使用房价预测数据集(https://www.kaggle.com/c/house-prices-advanced-regression-techniques),但不知道出了什么问题。请帮助某人

X_train, X_test, y_train, y_test = train_test_split(df2, y, test_size=0.2)
X_tr=np.array(X_train)
y_tr=np.array(y_train)

X_te=np.array(X_test)
y_te=np.array(y_test)

def get_weights(shape,name): #(no of neurons*no of columns)
    s=tf.truncated_normal(shape)
    w=tf.Variable(s,name=name)
    return w

def get_bias(number,name):
    s=tf.truncated_normal([number])
    b=tf.Variable(s,name=name)
    return b

x=tf.placeholder(tf.float32,name="input")
w=get_weights([34,100],'layer1')
b=get_bias(100,'bias1')

op=tf.matmul(x,w)+b
a=tf.nn.relu(op)

fl=get_weights([100,1],'output')
b2=get_bias(1,'bias2')


op2=tf.matmul(a,fl)+b2


y=tf.placeholder(tf.float32,name='target')
loss=tf.losses.mean_squared_error(y,op2)
optimizer = tf.train.GradientDescentOptimizer(0.1).minimize(loss)

with tf.Session() as sess:
    for i in range(0,1000):

        sess.run(tf.global_variables_initializer())
        _,l=sess.run([optimizer,loss],feed_dict={x:X_tr,y:y_tr})
        print(l)

【问题讨论】:

    标签: tensorflow linear-regression


    【解决方案1】:

    您只是在每个训练步骤中随机初始化变量。只需在循环前调用一次sess.run(tf.global_variables_initializer())

    【讨论】:

    • 当我这样做时,我开始得到“inf nan nan”作为我的损失
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-28
    • 1970-01-01
    • 2018-01-06
    • 2019-04-12
    • 2021-11-18
    • 1970-01-01
    • 2019-12-31
    相关资源
    最近更新 更多