易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

【ChatGPT研究】自回归语言模型-RNN神经网络模型v2   [复制链接]

    2023-04-15 16:47:56
    高级教程源码
    易语言资源网
    2571 次浏览
    来源链接


接上一篇【ChatGPT研究】自回归语言模型的易语言实现方法_精易论坛 (125.la)

这次更新的模型是传统RNN自回归语言模型,使用了向量矩阵算法,以及正向扩散和反向传播神经网络,随机梯度下降算法。


由于本次引入了向量矩阵复杂算法,在没有cuda加持下,cpu训练耗时较久


我本身也是刚研究这方面的新手,代码都是手工翻译自c#,对里面的复杂算法和向量传递,一知半解。


至于出来的效果,我也不好评价,可能也跟我只训练了两步有关,或者训练素材太少,又或者本身算法有问题,具体的还得高手们自行分析了。

最终的目的是抛砖引玉,希望有大佬可以搞一个 易语言chatgpt模型出来供大家学习,以及理解神经网络模型!

当然我知道,易语言想做大模型,不支持64位和cuda肯定是办不到的,但不妨碍只会易语言的同学对神经网络模型的学习和理解。

这一版的代码比较复杂,但仍然有丰富的注释可供学习!

代码中调用了两个模块,一个是 分词模块,有能力的可以删了模块自己写。

同时调用了我自己的模块,主要用了哈希表和取随机数,也可以自行删掉,用自己的。


有一些问题:

1.训练词典越大,训练时间越久

2.学习率越低,学习效果越好

3.训练次数也跟最终效果有很大影响,但不是越多越好,容易过拟合

4.由于易语言双精度小数位数只有6位,会极大影响模型最终效果

有能力的朋友可以自行修改,如果你做出了更好的,记得给我帖子留个言,好让我跟着学习观摩


源码下载【包含分词库】https://rtb4.lanzouw.com/iVkF10ssvr2h

补充内容 (2023-4-12 19:55):

9楼 对模型参数设置 进行了详细说明




点我下载 (已有 89 次下载)

引用模块


源码文件名 模块文件名
分词模块测试.e
eParticiple1.5 EC.ec
自回归语言模型.e
eParticiple1.5 EC.ec
rtb4黑月专用功能模块2.001.ec


引用支持库


源码文件名 支持库文件名 支持库标识
分词模块测试.e 系统核心支持库 5.3 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
自回归语言模型.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
应用接口支持库 3.1 F7FC1AE45C5C4758AF03EF19F18A395D
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0


[错误报告]   上一篇:随便哼哼KTV 视频点歌系统 V1.0....     下一篇:算法源码首秀!动态规划算法取两文本最长公...