Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

简单神经网络回归示例

本项目提供一个使用 C++ 实现的一维回归神经网络示例,支持通过数据文件训练模型,并在终端中交互式预测输出值。

功能简介

  • 输入层 1 个特征(x),输出层 1 个值(y)。
  • 支持 0~3 个隐藏层,每层最多 10 个神经元。
  • 自动进行数据归一化处理,训练轮次不少于 200 次。
  • 训练时按轮次打乱样本顺序,提升训练稳定性与收敛效果。
  • 交互式输入新样本并输出预测结果与误差(保留 6 位小数)。

数据格式

数据文件包含 n 行,每行两个浮点数,以 Tab 或空格分隔:

x<TAB>y

示例:

-1.0	2.5
0.0	3.0
1.0	4.1

编译方法

在项目根目录下执行:

g++ -std=c++11 -Wall -Wextra -O2 main.cpp NeuralNetwork.cpp -o nn

运行方式

执行可执行文件后,按照提示输入配置与数据文件路径:

./nn

程序会依次提示:

  1. 隐藏层数量(0-3)
  2. 每层神经元数量(1-10)
  3. 学习率
  4. 训练轮次(>=200)
  5. 数据文件路径
  6. 预测输入 x
  7. 真实 y 值(用于计算误差)

目录结构

  • NeuralNetwork.h:神经网络类声明
  • NeuralNetwork.cpp:神经网络实现
  • main.cpp:交互式示例入口

说明

本示例面向 Dev C++ 等常见 C++ 编译环境,代码结构清晰、注释齐全,适合教学与入门使用。

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages