
实现算法
- def fit(self, X, y, learning_rate=0.2, epochs=10000):
- X = np.atleast_2d(X)
- temp = np.ones([X.shape[0], X.shape[1]+1])
- temp[:, 0:-1] = X
- X = temp
- y = np.array(y)
- for k in range(epochs):
- i = np.random.randint(X.shape[0])
- a = [X[i]]
- for l in range(len(self.weights)):
- a.append(self.activation(np.dot(a[l], self.weights[l])))
- error = y[i] - a[-1]
- deltas = [error * self.activation_deriv(a[-1])]
- for l in range(len(a) - 2, 0, -1):
- deltas.append(deltas[-1].dot(self.weights[l].T)*self.activation_deriv(a[l]))
- deltas.reverse()
推荐阅读
【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路! 定义强化进修是机械进修的一个重要分支,是多学科多范畴交叉的一个产品,它的本质是解决 decision making>>>详细阅读
本文标题:神经网络理论基础及Python实现
地址:http://www.17bianji.com/lsqh/36265.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示