首页新闻找找看学习计划

非线性问题解决

0
[待解决问题]

题目:出自书本中的一条练习题

编程解决下述非线性问题:

输入数据:[1,1,1],输出目标值:2

输入数据:[1,0,1],输出目标值:1

输入数据:[1,2,3],输出目标值:3

下面是我写的代码:

import tensorflow as tf
import numpy as np

rowCount=3
xData = np.array([
[1,1,1],
[1,0,1],
[1,2,3],])

xTrainData = [2,1,3]
x = tf.placeholder(dtype=tf.float32)
yTrain =tf.placeholder(dtype=tf.float32)
w = tf.Variable(tf.zeros([3]),dtype=tf.float32)
b = tf.Variable(1,dtype=tf.float32)
n = w * x
y =tf.reduce_sum(n) + b

loss = tf.abs(y-yTrain)

optimizer = tf.train.RMSPropOptimizer(0.001)

train = optimizer.minimize(loss)

sess = tf.Session()
sess.run( tf.global_variables_initializer())
for i in range(10000):
for j in range(rowCount):
result= sess.run([train,x,w,b,yTrain,y,loss],feed_dict={x:xData[j],yTrain:xTrainData[j]})
print(result)

课本说是非线性问题,我写的是线性,y=wx+b,但是题目需要实现非线性,用sigmoid不能输出2,1,3这些值啊,是能够用其它的激活函数进行非线性(去线性化)吗???

python终极者的主页 python终极者 | 菜鸟二级 | 园豆:206
提问于:2019-07-03 15:20
< >
分享
所有回答(1)
0

不太明白,就3个样本就想训练出一个模型?这是个分类问题还是回归问题,如果是分类问题,建议问主看看逻辑回归的多分类问题,还得用sigmoid函数;如果是回归问题,课本说不是线性的,意思是不是要用多项式回归解决?

会长 | 园豆:5205 (大侠五级) | 2019-07-03 15:49

这道题目,你能说说你的理解吗?这是一个分类问题吗?

支持(0) 反对(0) python终极者 | 园豆:206 (菜鸟二级) | 2019-07-04 16:27

@python终极者: 恕我愚钝,真的没看明白,样本太少了,如果有1000个样本,输出值只有固定几个,那就是分类问题。

你要不结合前面讲的内容,然后猜测一下出题者的意图

支持(1) 反对(0) 会长 | 园豆:5205 (大侠五级) | 2019-07-04 16:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册