Build CNN Network 之后,运行,但是报错: ValueError: Input 0 is incompatible with layer predict_vector_conv1: expected ndim=3, found ndim=2  原因: 对于lexicographic,先element wise 点积(user*item),这样维度只能是2维的.而Convolutional操作和maxpooling 操作都需要3D,缺少的那一维好像没办法给出来. <0723好傻好傻…
Debug 路漫漫-05: 1.使用这种方式计算 AUC 指标,结果出来居然是 NAN, —— 分母为(M*N),M或者N必有一个为0 了.(nan出现的情况绝大部分是分母出现0了)   若分子为0的情况,(分母不为0),结果也应该是0而非 NAN. 2.(0831) 明明维度都对上了,它提示错误使用点乘. ——那w索引少东西了,w是矩阵,而这里用的是单索引,这里的这个问题 ,u是1x5 ,w用单索引出来是个 nx1 ,怎么可能点乘 ??! (而原先:先前那个u是 nx5, w用单索引是n x…
Debug 路漫漫-03:SVD++的 Matlab 版本 SVD++ 的 pu 这一项: 圈圈中的这一项,它既然要和pu 相加 的话 ,那么,它的维度也应该是 m*K.(就是维度和Pu一致的 . 而 y_i 则是 n*k  (m:user 个数.n:item个数) 按照更新公式: 若是使用matlab的话,循环 需要换成 矩阵: 2. 3.…
1.错误使用 cat 要串联的数组的维度不一致. ——前面给个初始化即可: D = cell(length(trainIdx),1); user_itemData = cell(length(trainIdx),1); 2.    这个 ixW 是对 winner 进行更新,ixV 是对 loser 进行更新,那第三个式子,要对 yItem(所有Item) 进行更新,也就无区分winner或loser,对所有item 进行更新,并不可以这样用吗: D(p{j},2:3 [会提示维度不一致] D…
重现标准 BTL Model ,using MATLAB: 1. 错误使用 cat要串联的数组的维度不一致.出错 cell2mat (line 83) m{n} = cat(1,c{:,n}); —— cell2mat(...)括号里cell 必须符合每个行的维度相同.  2. 错误使用 sum数据类型无效.第一个参数必须为数值或逻辑值. —— 3. 无法执行赋值,因为左侧的大小为 62101-by-5,右侧的大小为 62101-by-1.出错 BTL_baseline_v1>graded_so…
运行到子函数时提示报错:  === 这个断点一步步debug下来是顺利的,但是咋就超出数组范围了呢,这会是什么问题. ——sess肯定超过索引了,那个sess(:,2)的值肯定超过V的行数了. ——由右图可知:V只有1842行,而cellD里面包含的肯定不止, 看是V错了, 还是cellD错了. V的行数是整个数据集的所有item数目没错.而cellD的行数则是训练集的所有session数. I mean:cellD里面包含的,每次肯定只能传cellD其中的一个元胞,把cellD里面每个元胞的最…
在调试 <Outer Product-based Neural Collaborative Filtering>论文的源码(https://github.com/duxy-me/ConvNCF )时,出现的问题: 即使修改成与下一行一样的 _dataset(前面加了下划线),依然不行…,还报了新的错误…… 是因为dataset 没有被初始化吗??...然而,数据是可以加载的…… debug一下,数据也是有的: _dataset 也是有数据的: 最后的最后……,解决办法是:修改如下: (可能的原…
在调试 <Neural Factorization Machines for Sparse Predictive Analytics>论文的源码(https://github.com/hexiangnan/neural_factorization_machine )时,出现的问题: 原因: 版本更新,sub 换成了 subtract 了. 改过来之后,完美解决!:…
在数据预处理过程中,出现:IndexError: single positional indexer is out-of-bounds 原因是在使用 Pandas 读取 dataframe 的时候,分隔符搞错了!!! 这个时候,定点Debug一下,看一下切分出来的数据片格式 即可,…
CNN的Embedding层报错: 报错:AttributeError: 'Embedding' object has no attribute 'get_shape' 查了下是这个问题: https://stackoverflow.com/questions/44285907/attributeerror-embedding-object-has-no-attribute-get-shape-with-tensorflow 即,在Embedding函数后面添加:input.output 即可.…