1樓:IT野狐禪
用梯度下降法擬合、損失函式用平方差。下面示例上損失函式用絕對值,效果沒平方差好
#二元線性擬合
import
tensorflow
astf
#定義模型 Y= w X + bX=
tf.placeholder(tf
.float32,[
None,1
])w=tf
.Variable(tf
.zeros([1
,1]))b=tf
.Variable(tf
.zeros([1
]))y_out=tf
.matmul(X
,w)+
bY=tf
.placeholder(tf
.float32,[
None,1
])#定義損失函式
cost=tf
.reduce_mean
(abs(Y
-y_out
))# abs(Y-y_out) tf.square(Y-y_out) 最小二乘法
#通過梯度下降法
train_step=tf
.train
.GradientDescentOptimizer
(0.005).
minimize
(cost
)#初始化資料, 建立會話
init=tf
.global_variables_initializer
()sess=tf
.Session
()sess
.run
(init
)#定義測試資料 Y = w X + b w==2 b==3
x_train=[[
1],[
2],[
3],[
4],[
5.1],[
6],[
7],[
8],[
9],[
10]]
y_train=[[
5.1],[
7.1],[
9.2],[
11.1
],[12.88
],[15
],[17.06
],[18.77
],[21
],[23.001
]]#在會話中開始訓練模型
fori
inrange
(5000
):sess
.run
(train_step
,feed_dict=)
ifi%200==0
("step:
%5i,w:
%f,b:
%f,cost:%f"
%(i,
sess
.run(w
),sess
.run(b
),sess
.run
(cost
,feed_dict=))
)# print(sess.run(y_out,feed_dict=) )
2樓:
用scipy.optimize中的lsq_linear()函式。
空間解析中二元一次方程為什麼可以表示平面?
柳重汐 乙個方程保證了乙個約束關係 空間是三個維度的,其中乙個維度被約束住了,所以是乙個二維平面。這麼說當然比較浮誇,所以可以說的詳細一點 Ax By Cz 0 對於這個方程來說,也就是向量 A,B,C 與 x,y,z 垂直即可。所以一切與乙個給定方向 A,B,C 垂直的向量都是在這個方程的表示範疇...
Python怎麼求解一元三次方程?
調包方法是使用符號化運算庫,常用庫有Theano SympyTheano不知道有沒有,Sympy可以用以下方式求解import sympy as sp x sp.Symbol x f x 3 2 x 2 1 sp.solve f 輸出 1,1 2 sqrt 5 2,sqrt 5 2 1 2 返回結果...
二元一次方程,1變形之後就不能往1裡帶了,這到底是為什麼?誰能給我個詳細的解釋?
晚風 因為變形後再代入,本質上相當於做了反覆變形,那個式子還是那個式子。要弄清楚,解二元一次方程組,本質就是尋找兩個方程的公共解。你始終在乙個方程裡繞,何來公共解?代入法的本質,就是把兩個方程通過移項轉化與代入合併為乙個方程,從而求解。即二元一次方程組 一元一次方程。這需要兩個方程的共同參與 秋雨盈...