数据集规模太小会导致网络出现欠拟合的情况,为此这里本人做了一个数据增强,原来的数据集假设是data,这里我对data做了一个归一化处理得到了newdata,然后data = torch.cat([data,newdata]),这样处理以后可以凭空增加一倍的数据量。
先介绍1维卷积网络的使用,nn.Conv1d接受的4个主要参数如下,in_channels是输入的维度,举例子来说一下,我们给出的推荐系统数据集的形状是:[N,213]表示有N条广告,每一条广告有213个特征,那么使用1维卷积的时候,需要先把数据集形状修改为[N,1,213],这个1也就是in_channels,最后经过卷积以后会得到一个形状为[N,out_channels,input_dim]的数据集,这里面input_dim的计算如下所示
input_dim = (input_dim - ker)//stride + 1
ker表示卷积核的大小,stride表示步长。
self.cov1 = nn.Conv1d(in_channels = 1,