单层感知机实现或运算
慢慢发现,百度上很多东西都没有,还是得自己去写,代码很简单,慢慢看就容易看懂,建议看之前,先看这篇文章
转载请注明:http://www.cnblogs.com/gambler/p/9039607.html
#include<bits/stdc++.h> using namespace std; #define MAX_SIZE 1000000//或运算结果图 //0 0 0 //1 0 1 //0 1 0 //1 1 0 // int expdata[MAX_SIZE][2];//训练数据 double w[2];//权值 double jud;//阈值 double spe;//训练速率 int Y=0;//实际输出值 int M;//理论输出值 int N;//表示有多少组数据 void init(void){//初始化数据cout<<"请输入初始权值:"<<endl;cin>>w[0]>>w[1];cout<<"请输入初始阈值和训练速率:"<<endl;cin>>jud>>spe;cout<<"开始训练!"<<endl;freopen("input.txt","r",stdin);cin>>N;int j;for(j=0;j<N;j++){cin>>expdata[j][0]>>expdata[j][1];} }int T(int a,int b){if(a==1||b==1){return 1;}else{return 0;} }//加权修正公式为:w[i]=w[i]+spe*(T-Y)*x void weighteinterpolation(int a,int b){w[0]=w[0]+spe*(M-Y)*a;w[1]=w[1]+spe*(M-Y)*b; }void display(int a){cout<<"第"<<a+1<<"次训练:"<<endl;cout<<"输入: X0="<<expdata[a][0]<<"\tX1="<<expdata[a][1]<<endl;cout<<"权值: w[0]="<<w[0]<<"\tw[1]="<<w[1]<<endl;cout<<"理论值:M="<<M<<"\ts实际值="<<Y<<endl;}void trainperceptron(){//进行训练int result=0;int i;for(i=0;i<N;i++){result=w[0]*expdata[i][0]+w[1]*expdata[i][1]-jud;if(result<=0){Y=0;}else{Y=1;}M=T(expdata[i][0],expdata[i][1]);if(T(expdata[i][0],expdata[i][1])!=Y){weighteinterpolation(expdata[i][0],expdata[i][1]);}display(i);}}void show(){cout<<"训练结束!!!"<<endl;cout<<"训练后的权值是:"<<endl;cout<<"w[0]:"<<w[0]<<"\tw[1]:"<<w[1]<<endl; }int main(){init();trainperceptron();show(); }
转载于:https://www.cnblogs.com/gambler/p/9039607.html
单层感知机实现或运算相关推荐
- 学习日志(四):单层感知机+激活函数
感知机与多层网络 声明:在阅读本文时,手里最好配备一本<机器学习>,以做好前期的一些理论知识铺垫. 在阅读书中(<机器学习>,周志华)的第5章时,文中主要以逻辑与.或.非,以及 ...
- 初探神经网络(二)单层感知机的Rosenblatt算法原理
本期大量干货,配合线性代数和较扎实的统计知识食用更佳. 介绍过了M-P模型,也了解到了M-P模型本质上是对生物上神经元的抽象模型.在上一章,我反复在强调这只是一个生物学的概念,我相信看到这篇文章的人绝 ...
- TensorFlow单层感知机实现
TensorFlow单层感知机实现 简单感知机是一个单层神经网络.它使用阈值激活函数,正如 Marvin Minsky 在论文中所证明的,只能解决线性可分的问题.虽然限制了单层感知机只能应用于线性可分 ...
- 【深度学习的数学】单层感知机是什么?
参考文章:深度学习-31:单层感知机
- PyTorch教程(十):单层感知机以及梯度更新
单层感知机模型 y=XW+by=∑xi∗wi+by = XW + b \\ y = \sum x_i*w_i+ b y=XW+by=∑xi∗wi+b 单层感知机模型的每一个输入节点xix_ixi ...
- pytorch梯度下降函数_Pytorch学习笔记6:激活函数/单层感知机/梯度下降求最小值实例...
#添加到学习笔记2末尾,直接运行.代码意义可以看注释. #需要import以下库 import torch import numpy as np from matplotlib import pypl ...
- TensorFlow2.0:单层感知机梯度计算
** 一 单层单输出感知机梯度计算 ** 单层感知机指的是输入有多个节点,输出只有一个节点. 其实质为二分类,即将样本的多个特征值作为输入,输出为二分类. 假设输入有5个样本,每个样本有3个特征参数, ...
- 人工神经网络简介和单层网络实现AND运算--AForge.NET框架的使用(五)
前面4篇文章说的是模糊系统,它不同于传统的值逻辑,理论基础是模糊数学,所以有些朋友看着有点迷糊,如果有兴趣建议参考相关书籍,我推荐<模糊数学教程>,国防工业出版社,讲的很全,而且很便宜(我 ...
- 基于双月数据集单层感知机_python
前言 一.单层感知机 二.双月数据集 三.程序 1.引入库 2.主函数 总结 完整程序 前言 本文主要针对双月数据集实现二分类问题. 一.单层感知机 单层感知机目标是将被感知数据集划分为两类的分离超平 ...
- 单层感知机实现布尔函数,附代码
单层感知机 单层感知器属于单层前向网络,即除输入层和输出层之外,只拥有一层神经元节点. 特点:输入数据从输入层经过隐藏层向输出层逐层传播,相邻两层的神经元之间相互连接,同一层的神经元之间没有连接. 感 ...
最新文章
- powerdesigner 同步mysql 报错_PowerDesigner实用技巧小结 及 导出word,想字段顺序跟模型中一致,如何设置...
- java中不同包中怎么实例化,Java 笔试题 (01)
- 【NOIP2013模拟联考6】选课(select)
- 克制linux启动盘,制作Linux启动盘的四种方法
- 在linux学习中遇到的问题
- 付完版面费就该吃土了
- Navicat for MySql管理工具 中文破解版
- c 语言所有符号,c语言 符号
- 兑现2021年合肥市高新区建设世界一流高科技园区政策部分条款申报指南
- 费氏数列 中第n项数值的计算并打印
- CCF NOI 2022获奖名单
- 退欧令英国科技业措手不及,可能不再享受多项利好政策
- photoshop快捷键大全
- vim编辑器如何删除一行或者多行内容
- 随机数——Random
- python编写程序计算三角形的面积_编程题:编写程序输入三角形的3条边长,计算并输出三角形的面积。...
- ITE平台开发 chapter4 - https通信
- 实现新闻搜索功能:用户输入关键字,用来匹配新闻标题或内容。
- win10 UWP 剪贴板 Clipboard
- java cup_JavaCUP
热门文章
- add file in debian/source/include-binaries if you want to store the modified binary in the debian
- LINUX C获取并设置环境变量
- linux rpm安装简要说明
- eclipse中汉字对齐错误
- 手机WIFI的上行下行速度不同
- 解决办法:KeyError: ‘ExpandBackward’及老版本pytorch/torchvision的安装办法。
- Callback、Listener、Worker、Manager的命名说明
- AbstractFactory(抽象工厂)
- sketch软件_UI设计师必定需要了解的sketch素材
- VC++ DLL注入目标程序