网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
07月23日漏签0天
python吧 关注:475,691贴子:1,970,396
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 2回复贴,共1页
<<返回python吧
>0< 加载中...

新人求助,出现这这情况怎么破

  • 只看楼主
  • 收藏

  • 回复
  • 69114428
  • 白丁
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
import numpy as np
def tanh(x):
return np.tanh(x)
def tanh_dao(x):
return 1.0-np.tanh(x)*np.tanh(x)
def luoji(x):
return 1/(1+np.exp(-x))
def luojidao(x):
return luoji(x)*(1-luoji(x))
class NN:
def __int__ (self,layers,hanshu='tanh'):
if hanshu=='luoji':
self.hanshu=luoji
self.hanshudao=luojidao
elif hanshu=='tanh':
self.hanshu='tanh'
self.hanshudao=tanh_dao
self.quanzhong=[]
for i in range(1,len(layers)-1):
self.quanzhong.append((2*np.random.random((layers[i-1]+1,layers[i]+1))-1)*0.25)
self.quanzhong.append((2*np.random.random((layers[i] + 1,layers[i+1]))-1)*0.25)
def xunlian (self,X,y,xuexisudu=0.2,xunliancishu=10000):
X=np.atleast_2d(X)
kongjuzheng=np.ones([X.shape[0],X.shape[1]+1])
kongjuzheng[:,0:-1]=X
X=kongjuzheng
y=np.array(y)
for k in range(xunliancishu):
i=np.random.randint(X.shape[0])
a=[X[i]]
for l in range(len(self.quanzhong)):
a.append(self.hanshu(np.dot(a[l],self.quanzhong[l])))
error=y[i]-a[-1]
dertas=[error*self.hanshudao(a[-1])]
for l in range(len(a)-2,0,-1):
dertas.append(dertas[-1].dot(self.quanzhong[l].T)*self.hanshudao(a[l]))
dertas.reverse()
for i in range(len(self.quanzhong)):
layer=np.atleast_2d(a[i])
derta=np.atleast_2d(dertas[i])
self.quanzhong[i]+=xuexisudu*layer.T.dot(derta)
def ceshi(self,x):
x=np.array(x)
kongjuzheng=np.ones(x.shape[0]+1)
kongjuzheng[0:-1]=x
a=kongjuzheng
for l in range(0,len(self.quanzhong)):
a=self.hanshu(np.dot(a,self.quanzhong[l]))
return a
这是文件NN.py代码
from NN import NN
import numpy as np
nn=NN([2,2,1],'tanh')
x=np.array([[0,0],[0,1],[1,0],[1,1]])
y=np.array([0,1,1,0])
nn.xunlian(x,y)
for i in [[0,0],[0,1],[1,0],[1,1]]:
print(i,nn.ceshi(i))
通过调用NN实现异或
出现这
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/xuexi/yihuo.py", line 4, in <module>
nn=NN([2,2,1],'tanh')
TypeError: this constructor takes no arguments


  • 雪梨pl帝路哈冈
  • 探花
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
看着貌似是神经网络?


2025-07-23 07:16:23
广告
不感兴趣
开通SVIP免广告
  • 雪梨pl帝路哈冈
  • 探花
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
__int__
少个i
这个错误纠正__init__就行了
不过还有其他bug


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 2回复贴,共1页
<<返回python吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示