資料的前兩列為成績,第三列為是否錄取的決定。
完成x和y的初始化,方便以後的函式的使用
data = np.loadtxt('ex2data1.txt',delimiter=',')
x = np.mat(np.delete(data,-1,axis=1))
x = np.hstack((np.ones((x.shape[0],1)),x))
y = np.mat(data[:,-1]).t
m,n = x.shape
代價函式如下:
def
costfunction
(theta):
y1 = np.array(sigmoid(x*theta))
y0 = np.array(y)
cost = np.sum(y0 * np.log(y1) + (1.0 - y0) * np.log(1.0 - y1))/m
return cost
求代價函式的導數:
def
deri
(theta):
h = np.array(sigmoid(x*theta))
err = h - y
der = (x.t * err)/m
return der
梯度下降法求theta:
def
grident
(alpha, theta, iters):
while iters > 0:
der = deri(theta)
theta = theta - alpha*der
iters -= 1
return theta
畫出決策邊界如圖所示:
邏輯結構練習題
1.編寫程式數一下 1到 100 的所有整數 現多少個數字9 1 100中9的出現次數 public class test01 system.out.println count 2.輸出1000 2000的所有閏年 輸出1000 2000之間的所有閏年 public class test02 3.列...
數字邏輯練習題(一)
1.真值表是研究數字邏輯的重要分析工具。如果輸入變數有三個,輸出函式對應的結果就有 種情況,真值表中就要列出對應數目的行。正確答案 第一空 82.數字邏輯電路中有三種基本的邏輯,即與 邏輯,任何複雜的邏輯都可以由這三種基本邏輯或它們的適當組合來表示。正確答案 第一空 或第二空 非3.在實際的邏輯問題...
數字邏輯練習題(二)
1.邊沿jk觸發器比主從jk觸發器的抗干擾性更強。正確答案 2.基本rs觸發器和可控rs觸發器存在約束條件,但主從rs觸發器就不用約束條件了。正確答案 3.帶直接置位 復位端的可控rs觸發器中,當置位或復位端訊號為有效訊號時,該觸發器將不受cp控制訊號的影響而直接置位或復位。正確答案 4.74ls8...