1.首先git上下载源代码:
git clone https://github.com/zhougr1993/DeepInterestNetwork.git
2. 详细操作可以参考README.md文件,下面介绍下python3环境下最简单训练样本的方法:
1)进入/din目录下:
cd DeepInterestNetwork/din
2) 作者直接给出了基于amazon数据集处理好的.pkl的文件,只需要合并一下就可以操作:
cat aa ab ac > dataset.pkl
3)python3需要修改的地方:
train.py文件21行,读取.pkl文件时需要修改读取编码方式,否则无法正常解析.pkl文件:
with open('dataset.pkl', 'rb') as f:
train_set = pickle.load(f,encoding='iso-8859-1')
test_set = pickle.load(f,encoding='iso-8859-1')
cate_list = pickle.load(f,encoding='iso-8859-1')
user_count, item_count, cate_count = pickle.load(f)
两个遍历数据集class:DataInput 和 DataInputTest(均在input.py文件中定义)中的函数
def next(self):
修改为:
def __next__(self):
注意,这是python2和python3中,实现遍历功能class实现上的区别。
4)完成以上步骤后,直接执行:
python3 train.py
不出意外的话,可开启训练:
先讲到这里,后面会继续介绍具体特征以及具体的代码功能实现。