• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

WeaveNet: star收集中...使用C#编写的用于神经网络的计算图框架computational graph。 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

WeaveNet

开源软件地址:

https://gitee.com/UDCS/WeaveAI

开源软件介绍:

WeaveNet

版权所有:河南知真信息技术有限公司

介绍

一个使用C#编写的用于神经网络的计算图框架computational graph。带有 cnn,bp,fcn,lstm,convlstm,GRU 等示例。使用方法接进pytorch。

软件架构

架构完全使用c#编写,可以看到内部任何细节的实现,包含 cnn,bp,fcn,lstm,convlstm,GRU 等示例内容,包含示例所用的数据内容。各项功能都在进行或者完事中,欢迎您参与此项事业,可与我联系:QQ群17375149,QQ20573886,email:[email protected]

使用说明

  1. LOSS支持:MESLOSS,cross-entropy
  2. 激活函数支持:ReLu,Tanh,Sigmod,Softmax
  3. 数据类型支持: float[][] 与 float[][][,],二维与四维
  4. 池化支持:平均池化,最大池化
  5. 其他支持:ConvLayer,Conv2DLayer,MulLayer,ConvTranspose2DLayer

部分BP代码示例

          //声明两个ConvLayer 和一个激活函数SigmodLayer           ConvLayer cl1 = new ConvLayer(13, 5, true);                      SigmodLayer sl = new SigmodLayer();            float lr = 0.5f;            ConvLayer cl2 = new ConvLayer(5, 1, true);                        int i = 0,a=0;            while (a < 5000)            {                                     dynamic ff = cl1.Forward(x);                    ff = sl.Forward(ff);                    ff = cl2.Forward(ff);                                       //计算误差                    MSELoss mloss = new MSELoss();                                       var loss = mloss.Forward(ff, y);                    Console.WriteLine("误差:" + loss);                    dynamic grid = mloss.Backward();                    //反传播w2                                       dynamic w22 = cl2.backweight(grid);                    //反传播W1                    dynamic grid1 = cl2.backward(grid);                    grid1 = sl.Backward(grid1);                    dynamic w11 = cl1.backweight(grid1);                                          //更新参数                    cl2.weights = Matrix.MatrixSub(cl2.weights, Matrix.multiply(w22.grid, lr));                    cl2.basicData = Matrix.MatrixSub(cl2.basicData, Matrix.multiply(w22.basic, lr));                    cl1.weights = Matrix.MatrixSub(cl1.weights, Matrix.multiply(w11.grid, lr));                    cl1.basicData = Matrix.MatrixSub(cl1.basicData, Matrix.multiply(w11.basic, lr));                    i++;                              a++;            }

BP网络运行图

BP网络运行图

CNN网络95%识别成功率

输入图片说明

lstm网络预测PM2.5空气质量

lstm网络预测PM2.5空气质量


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap