zoukankan      html  css  js  c++  java
  • qwe 简易深度框架

    qwe

    github地址

    简介

    简单的深度框架,参考Ng的深度学习课程作业,使用了keras的API设计。

    方便了解网络具体实现,避免深陷于成熟框架的细节和一些晦涩的优化代码。

    网络层实现了Dense, Flatten, Convolution2D, Activation, Dropout等。

    优化算法实现了带有动量的梯度下降,同时还有一个带正则的优化算法备选。

    权重初始化有多维高斯分布和Xavier initialization两种。

    目标函数有MSE,CategoricalCrossEntropy。

    在测试中有全连接网络与CNN手写字体识别示例。

    环境与安装

    python 3.x

    依赖

    1. numpy
    2. sklearn
    3. matplotlib
    4. numba

    安装

    无需安装,使用前请先设置PYTHONPATH路径

    qwe工程根目录

    eg.qwe位于/home/test/qwe, 执行 export PYTHONPATH=$PYTHONPATH:/home/test/qwe

    在config/basic.py中通过SWITCH_EXT选择是否开启扩展,默认关闭。

    若选择开启,在qwe/src/ext目录下执行 python setup.py build_ext -i 即可

    测试

    在test目录下执行 python testfile.py 即可

    目录结构

    1. src/
      1. ext/
        1. src/
          1. convUtil.pyx Cython的扩展,加速CNN
      2. layers/
        1.activation.py 激活函数,sigmoid, ReLU, tanh
        1.convolution2D.py 卷积层
        1.simple_convolution2D.py 简单卷积未优化
        1.dense.py 全连接层
        1.dropout.py 丢弃层?
        1.flatten.py 拉伸层
        1.pool.py 池化层,max average
      3. container.py 模型容器,equential
      4. initialization.py 参数初始化方法
      5. objective.py 目标函数
      6. optimizer.py 优化方法
      7. py_util.py py 实现的方法
      8. unit.py 计算单元
      9. util.py 一些方法
    2. test/
      1. parse_mnist.py 解析mnist图片
      2. test_col2img.py 测试
      3. test_mnist_cnn.py 使用CNN训练 mnist
      4. test_mnist_nn.py 使用全连接训练 mnist
      5. test_nn.py 使用全连接训练sklearn一个数据集
      6. test_objective.py 测试
      7. test_unit.py 测试
  • 相关阅读:
    自动化测试知识点汇总(200421)
    Mac_使用allure 生成测试报告
    mac_使用Charles抓取Firefox 链接
    工具列表
    Appium_iOS_Safari测试脚本(2)
    日志学习(一)
    java中==和equals的区别(转)
    jackson使用localdatetime转换json出现问题
    js复习--基础
    复习下CSS-零碎要点
  • 原文地址:https://www.cnblogs.com/pigbreeder/p/8375935.html
Copyright © 2011-2022 走看看