- 博客(120)
- 资源 (1)
- 收藏
- 关注
原创 从零手工撸写个人工神经元网络(解决异或问题)Python+c++结构化
分别用Python原生Python二、结构化以后的Python和 三、结构化以后的c++,并带模型存储等功能
2025-03-11 15:20:37
187
原创 我用 macbook pro 2020 (intel 版本) 可以学习 gpu 编程吗?我的显示适配器(显卡)只是 Macbook Pro 原装的 Intel(R) Iris(R) Plus Gra
/ 1. 获取 OpenCL 平台和设备。// 3. 创建 OpenCL 程序和内核。// OpenCL 内核代码 (Kernel)// 2. 创建上下文和命令队列。// 4. 分配 GPU 内存。// 5. 设置内核参数。// 6. 运行内核。// 7. 读取结果。// 8. 清理资源。
2025-02-18 00:55:55
330
原创 用c++或c 做一个深度遍历的 棋谱树,我用来 做围棋棋谱的教学,要求节省内存、效率高,便于保存(棋谱)和拷贝棋谱
• 保存为简单的 CSV 格式:B,3,3 表示黑棋落在 (3,3),END 表示子节点结束。// 用END标记一个节点的子节点结束。
2024-12-27 17:52:53
568
原创 通俗、举例讲解怎样学习和入门google的gtest?用gtest 做测试用例?
创建一个简单的 C++ 程序,比如一个计算整数加法的函数,然后编写测试用例。学习和入门 Google 的 GTest(Google Test)是一项有益的技能,尤其适用于进行 C++ 程序的自动化测试。通过上述步骤,你可以开始使用 GTest 来为你的 C++ 代码编写和执行自动化测试。随着经验的积累,你可以探索更高级的测试功能,如模拟对象、测试固件和参数化测试。如果你是 Windows 用户,可以从 GitHub 下载 GTest 的源码,然后使用 CMake 构建并安装。# 添加你的源文件和头文件。
2024-04-24 02:16:31
644
原创 Gmp的安装-windows下编译安装240401-gmpxx.h咋装
遵循上述步骤应该能解决你的问题。如果仍然遇到困难,可能需要检查GMP的官方文档或寻求社区支持,以获得更具体的帮助。:GMP的C++接口需要C++编译器(如g++)来编译。确保你的系统已安装C++编译器。确保在配置时加上合适的选项以启用C++支持。文件(gmp.h存在!)时,这通常意味着C++接口没有被安装。当你从源码编译安装GMP库,并且发现。是GMP库的C++接口部分,而。:在编译GMP之前,你需要使用。目录下是否现在包含了。
2024-04-08 03:31:01
1456
原创 c++高精度计算20除法High-precision20calculate240101
比如要计算 sin(π6)sin(6π) 至少100位的精度,你可以考虑使用如GNU Multiple Precision Arithmetic Library (GMP) 或者MPFR库来处理高精度数学运算。MPFR库是专门为了提供一个可靠的多精度浮点数计算平台,能够保证结果的准确性,包括四舍五入的控制。为实现一个基本的 高精度计算 c++库,应该从最基本的。要在C++中实现高精度和高性能的计算,大数的 加减乘除 撸起……
2024-04-06 10:52:07
279
原创 用crypto库的哈希函数CryptoPP::SHA256实现最简单的区块链20240101
Crypto++ 库和 OpenSSL 库中的哈希函数都很优秀,具体选择哪个库取决于您的具体需求。Crypto++ 库和 OpenSSL 库都提供了各种哈希函数,包括 SHA256 函数。
2024-03-14 00:51:53
1415
1
原创 造车先做三蹦子220101--机器学习字符(字母、和数字识别)的“小白鼠”与“果蝇”
但是,能完整的 架构出来一辆 五菱宏光、架构出一辆老头乐,架构出一辆三蹦子……那才是一位合格的架构师……那我只给你三个月时间,只给你10万~100万人民币!请你先给俺架构出一辆 老头乐的或五菱宏光。torch,tensorflew,pytorch这个相当于马达、发动机、变速器等底层原件……我需要 三年时间、三个亿$架构出一辆 特斯了、Prius混动汽车。就可以 造 宝马……Prius、本田、混动了吗。一、造车要不要先研究马达、轮子、发动机……学习 Prius的新型架构当然有用!对于初级架构师傅来讲……
2023-10-22 03:45:54
489
原创 用c动态数组(不用c++vector)实现手撸神经网咯230901
用c语言动态数组(不用c++的vector)实现:inputs = { {1, 1}, {1, 0} };数据targets={0,1};测试数据 inputs22 = { {1, 0}, {1,1} };构建神经网络,例如:NeuralNetwork nn({ 2, 4, 1 });则网络有四层、输入层2个节点、输出层1个节点、隐藏层4个节点、网络有梯度下降、反向传播…
2023-10-04 10:41:44
214
原创 现代c++手撸2309神经网络最简化版230901
用c++输入数据:vector inputs = { {1, 1}, {1, 0} };数据targets={0,1}; 测试:vector inputs22 = { {1, 0}, {1,1} }; 构建神经网络,例如:NeuralNetwork nn({ 2, 4, 1 }); 则网络有四层、输入层2个节点、输出层1个节点、隐藏层4个节点、网络有梯度下降、反向传播…等。以下是一个使用C++构建的基本神经网络示例,包含前向传播和基于梯度下降的反向
2023-10-02 10:40:32
888
原创 modernC++手撸任意层神经网络22前向传播反向传播&梯度下降等23代码补全的例子0901b
【代码】modernC++手撸任意层神经网络22前向传播反向传播&梯度下降等23代码补全的例子0901b。
2023-09-04 20:23:06
507
原创 手撸任意层神经网络-读从文本s.txt取网络结构初始化neuralNetwork
现代c++读取文本文件,文本文件:"s.txt"中有字符串,如:"{2,4,3,1}",获取数字如:2,4,3,1赋值给变量 vectov<int>La;
2023-09-04 09:26:04
954
原创 增减网络20220101
程序运行开始读取一个文本文件"s1.txt",而文本文件中如果有字符串,"{2,4,3,1}"则网络结构就是{2,4,3,1}(即输入层2个Nodes,输出层有1个node,第1个隐藏层有4个nodes,第2个隐藏层有3nodes!之后程序再读取文本文件"s2.txt"读取文本文件中的第二个字符串,比如:"{2,4,1}"又重新重构神经网络,这次输入层有2个nodes,输出层有1个node,隐藏层有4个nodes,并且再次反向传播训练!
2023-09-01 11:05:25
250
原创 老妪能训,老妪能编--用现代C++构建的前向、反向传播神经网络的例子。构建一个具有任意层数和每层任意结点数的全连接神经网络(backpropagation Neural Network
这个例子也包括了基本的梯度下降优化,要求实现异或xor的神经网络,要求输入数据有四组{1,0}、{0,1}、{1,1}、{0,0},训练目标数据target也有四个{1}、{1}、{0}、{0}……要求每次train训练结束以后将weights权重矩阵保存到文本文件,以供下次添加其它训练数据后,使用上次训练的权重矩阵接着训练。// modern异或c++ArbitraryLayerBackpropagationNN调整权重矩阵230830a.cpp : 此文件包含 "main" 函数。
2023-08-31 03:25:32
87
原创 用现代C++构建前反向传播神经网络(backpropagation Neural Network)230829a
使用现代C++构建的前向、反向传播神经网络的例子。构建一个具有任意层数和每层任意结点数的全连接神经网络(backpropagation Neural Network)。这个例子也包括了基本的梯度下降优化,要求每次train训练结束以后将weights权重矩阵保存到文本文件,以供下次添加其它训练数据后,使用上次训练的权重矩阵接着训练!为了保存和读取权重矩阵,我们可以简单地将权重矩阵和偏置向量保存到文本文件中。下面是一个完整的例子,其中包括了如何保存和读取权重。
2023-08-30 12:25:40
314
原创 C++最易读手撸神经网络两隐藏层(任意Nodes每层)梯度下降230821a
inputNode输入层之节点数s(inputNode输入层之节点数s), hidden01Node隐藏层01结点数s(hidden01Node隐藏层01结点数s), hidden22Nodes(hidden22Nodes), outputNode输出层结点数s(outputNode输出层结点数s)for (int ii = 0;updateWeights(隐藏层1数据1, hidden2_errors, 隐藏层2数据2, 隐藏层1到第二隐藏层2之权重矩阵1to2, 隐藏层2偏置2, lr学习率);
2023-08-23 06:12:35
888
原创 C++最易读手撸神经网络两隐藏层(任意Nodes每层)梯度下降230820a
int inputNode输入层之节点数s, hidden01Nodes, hidden22Nodes, outputNode输出层结点数s; vector 输入层到第1隐藏层之权重矩阵, 隐藏层1到第二隐藏层2之权重矩阵1to2, 隐藏22到输出层de权重矩阵; //这些变量为矩阵 vector 隐藏层1偏置1, 隐藏层2偏置2, O输出偏置o; vector隐藏层1数据1, 隐藏层2数据2, 输出数据o
2023-08-22 05:12:11
818
原创 史上最简洁实用人工神经元网络c++编写202301
这是史上最简单、清晰……C++语言编写的 带正向传播、反向传播(Forward ……和Back Propagation)……任意Nodes数的人工神经元神经网络……。大一学生、甚至中学生可以读懂。适合于,没学过高数的程序员……照猫画虎编写人工智能、深度学习之神经网络……著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。“我在网上看到过很多神经网络的实现方法,但这一篇是最简单、最清晰的。”一位来自Umass的华人小哥Along Asong,写了篇神经网络入门教程,在
2023-08-20 09:34:39
339
1
原创 在Console无图形界面程序使用SetTimer
我们都知道Windows是消息驱动的,那定时器SetTimer的超时也是通过消息来驱动的,Console进程主线程没有消息的循环分发,Windows是不会调用我们的超时回调函数的。但是我们又需要使用Windows API中的定时器SetTimer来进行定时处理一些任务。在Demo中我创建了一个定时器,设置超时时间为3s,在超时回调函数中,获取当前时间并输出,可以比较清晰的看到执行的结果。我们可以主动在当前线程中添加一个消息循环,来使当前线程中的消息分发下去,从而使定时器可以正常的运行。
2023-07-16 02:44:25
245
原创 高手不用Redis内存数据库一
不是说Redis不好,不用Redis用别的(比如:Memcached 2、VoltDB 3、MongoDB 4、Hazelcast 5、Aerospike)//第2个睡觉点,自觉让出cpu。而是说,我们的水平更高了以后,您一定会感受到 内存数据库 不够用、不够灵活、不够高效……//intre LoopCodeing…(clock()/N10==oldTimeUL) //不至于轮询太快,没有sleep时间。//将新创建的共享内存区映射到调用进程的地址空间。
2022-12-28 09:54:50
596
原创 Terry22泰式轮询 Win版221202
/ /10 此处及时更新oldTimeUInt及时计时,循环体后更新的缺点是:循环体很费时,但计时在后,下次循环会误成 没有跳clock_clik, 又要等clock_clik跳时间;//真正睡觉点,第1个睡觉点,干完活儿睡觉;//原文链接:https://blog.youkuaiyun.com/aw344/article/details/128426174。
2022-12-26 00:32:08
758
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人