亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

NameError: global name 'predict' is not defined

NameError: global name 'predict' is not defined ?怎么解決?

正在回答

4 回答

http://img1.sycdn.imooc.com//5f14f1ed0001eb9708570682.jpg

謝謝采納~

1 回復 有任何疑惑可以回復我~
import?numpy?as?npclass?Perceptron(object):
????#?注釋1
????def?__init__(self,?eta?=?0.01,?n_iter?=?10):????????self.eta?=?eta????????self.n_iter?=?n_iter????def?fit(self,?X,?y):????????#?注釋2
????????self.w_?=?np.zeros(1?+?X.shape[1])????????self.errors_?=?[]????????for?_?in?range(self.n_iter):
????????????errors?=?0
????????????#?注釋3
????????????for?xi,?target?in?zip(X,?y):
????????????????update?=?self.eta?*?(target?-?self.predict(xi))????????????????#?注釋4
????????????????self.w_[1:]?+=?update?*?xi????????????????self.w_[0]?+=?update
????????????????errors?+=?int(update?!=?0.0)????????????????self.errors_.append(errors)????def?net_input(self,?X):????????#?注釋5
????????return?np.dot(X,?self.w_[1:])?+?self.w_[0]????def?predict(self,?X):????????return?np.where(self.net_input(X)?>=?0.0,?1,?-1)


1 回復 有任何疑惑可以回復我~

外層同級什么意思?

0 回復 有任何疑惑可以回復我~
#1

qq_雙子_04312075 提問者

就是net_input、predict函數的縮進與fit一樣 如果以上都沒有解決那就重新新建一個項目 我也不清楚為什么jupyter notebook 總是報奇怪的錯
2018-12-25 回復 有任何疑惑可以回復我~

解決了 首先要把net_input和predict函數放到fit函數外層? 和fit函數同級? 還有多次出現NameError...xxx is not defined,先檢查函數名有沒有寫錯,然后出現了TypeError檢查一下你的__init__函數,注意是兩個下劃線__? 然后檢查init 確保沒有寫成int? 希望有幫助? 這是我犯的一些錯

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

NameError: global name 'predict' is not defined

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號