温清梦
温清梦
> 作者的model是一个五层CNN,经过多次调参,测试集准确率最高到50%。 > > 和同学探讨之后,认为模型(五层CNN)过于简单(也可能我们调参不够好),于是我们将模型换为了34层的残差网络res34-net,达到了测试集上86%的准确率。 > > 86% Setting:1W例训练集、1000例测试集、15-30个epoch、64大小batch_size、学习率0.0002,loss最终在0.001左右。 训练集10w、测试集1000、epoch30、batch_size64、学习率0.0002, 我将模型的卷积层全部去掉,换成了pytorch官方预训练好的resent34,并将resnet最后一层的fc改为了作者模型倒数第二层的fc,将模型移至gpu上训练,30轮后损失在0.001上下,测试集准确率为96%左右
我搜索英文也会遇到这个问题,看到作者说不能修改max_length,所以只能做截断,但是我没有找到显式的截断api 在我这里,报错input_ids长度大于1024的原因不是用户输入的prompt过长,而是作者代码没有对搜索引擎搜索到的reference按规定长度截断,并将他们直接添加到了prompt中,导致input_ids大小超过1024。 解决方法是修改`modeling_webglm.py`中的query函数或stream_query函数。计算每个ref对应的token长度,限制总的prompt长度: ``` def query(self, question): refs = self.ref_retriever.query(question) if not refs: return { "references": [], "answer": "" } prompt = '' question = f'Question: {question}\\Answer: [gMASK]' total_token_num =...
mindyolo v0.3.0, mindspore v2.3.0尝试可以解决