
神经网络
HarryJD
这个作者很懒,什么都没留下…
展开
-
用Python实现的PID控制算法的演示
看了看PID控制算法的原理,自己用Python的matplotlib简单写了一个控制小球到指定位置的小演示。如果小球不在指定的高度,就计算误差,再输入一个控制信号——这里是加速度a,以便驱动小球运动,从而改变小球的位置。不停的计算:计算高度误差,计算输出的信号——加速度a,计算新的速度,计算新高度。如果只考虑小球当前位置和指定高度的误差,始终会来回摆动,无法进入稳定状态。如果用到P...原创 2020-04-08 17:51:10 · 6814 阅读 · 3 评论 -
入门——感知机训练
根据感知机学习规则,分类直线与权重向量正交。如果开始的分类直线计算出来的Yj与预期输出Dj之间有误差Ej=Dj-Yj,就应该把连接权重Wj的方向依据学习向量X调整。正误差时,Wj朝着X调整,因此,Wj(t+1)=Wj(t)+n*Ej*X.据此,在Python中实现最简单的逻辑与的感知机学习代码:import numpy as np#--------------------------------...原创 2018-05-11 14:42:21 · 1449 阅读 · 0 评论 -
Python写BP神经网络(二):带偏置的3层结构BPNN
理解了BP神经网络的原理,接下来实现一个比较正常的BP神经网络:3个输入节点,3个隐含层节点,2个输出节点。对Numpy不是很熟悉,看例子琢磨了好久,才做通,还是不错。一点体会:Numpy真是强。import numpy as np# --------------------------------------------# 激活函数# 当derive为True时,是对sigmoid函数求...原创 2018-05-25 17:57:04 · 2764 阅读 · 2 评论 -
利用Python写BP神经网络(一):无偏置的BPNN
第一个最简单的BPNN:包括3个输入层节点,3个隐含层节点,1个输出层节点。学习样本为5个,每次都把5个学习样本都学习一遍,直到学习次数达到预设的次数。每次学习都记录下误差(或者叫损失)。为了简单,隐含层和输出层暂时不考虑偏置,等下一次再考虑。训练了1000次,误差在0.05多些,然后损失就下降得很慢了,估计增加偏置后会好些。import numpy as np# --------------...原创 2018-05-22 22:12:50 · 1983 阅读 · 0 评论 -
Python和tensorflow的一些常用代码
1.为数据增加维度# Price是一个1行5列的矩阵,注意列表是两层,表示是二维的:[ [] ]Price = np.array([[15.90, 16.26, 10.1, 19.19, 25.33]])# 生成的是一个1维矩阵mylist = np.array([1, 2, 3])# 在1维矩阵的基础上增加一个维度,成为2维矩阵mylist2 = mylist.[:, np....原创 2018-12-18 15:18:09 · 652 阅读 · 0 评论 -
Python实现的LBP特征提取
# -*- coding: utf-8 -*-import cv2import numpy as npimport mathimport osimport matplotlib.pyplot as plt# 取得给定的LBP字符串的最小二进制值,实现旋转不变形def Rotate_LBP_Min(str_lbp_input): str_lbp_tmp = str_lbp_i...原创 2019-03-11 17:20:05 · 7254 阅读 · 2 评论