Skip to content

flyingsnow31/cal

Repository files navigation

ML 实验

基本环境

  1. opencv库函数编译和配置

神经网络

子系统中测试方法:

g++ Function.h Function.cpp libNet.h libNet.cpp MyNet.cpp -o MyNet  $(pkg-config --cflags --libs opencv4)
./MyNet
  • 改进策略(按照优先顺序)
    1. 参数改进,可调参数:
      1. 学习率
      2. 训练次数
    2. 网络结构改进
      1. 不同的隐藏层以及每个层的神经元个数
    3. 数据集改进
      1. 数据采样方法
        • 过采样
        • 欠采样
      2. 数值正则化
        • 全部统一正则
        • 不正则
        • 对分类特征数据进行数值类别转换
激活函数 网络结构 初始偏置 初始权重 学习率 训练轮次 准确率
  • 由于初始权重都设置为相同的值,会导致输出为一个值,也就是没有得到充分训练时,输出的结果都是一个值

数据集

  • 对数据进行正则化
    • 过采样:原始
    • 过采样:对分类特征进行处理
    • 欠采样:原始
    • 欠采样:对分类特征进行处理
数据集名称 特征数量 备注
input_label_0-1_train.csv 26 将所有数值类型数据进行正则化后的原始数据集
input_label_0-1_test.csv 26 -
input_label_0-1_train_no.csv 13 不对数据进行正则化处理,保留数据集原来的味道
input_label_0-1_train_no.csv 13 -
input_label_0-1_train_abc.csv 36 将所有的分类特征作为字符串进行处理,即对原来列为数值类型的列也转为字符串,再进行独热编码
input_label_0-1_test_abc.csv 36 -

问题

  • opencv在windows子系统下配置
    1. 无法编译成功(windows下需要非win32的另一个版本的mingw)
    2. 在子系统中编译需要将opencv编译文件放到ex文件系统(ubuntu目录下) 3. 测试安装成功:pkg-config --modversion opencv4
    3. 配置好opencv后,还可能找不到具体的.so链接库,需要配置文件位置
      安装目录 > `/etc/ld.so.conf
      sudo /sbin/ldconfig -v
      ldconfig
    4. 编译写法:按照创建顺序写c++相关文件,h在前cpp在后,链接库:$(pkg-config --cflags --libs opencv4)
    5. 引入4.x版本opencv,头文件写法已经改变<opencv2/opencv.hpp>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors