啊,又遇到难题了 == 想要对两个 dataframe 做自然连接 merge,连接的key 为 “userid”,但是报错:ValueError: 'userid' is both an index level and a column label, which is ambiguous. [解决过程] 1.不知道是不是因为pandas版本问题,至少同样的代码在去年是可以跑得通的,今年却出现了这样的问题. 于是尝试使用Pycharm选择暗转pandas 0.9版本的,(当前Pycharm里面是…
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.…
在调试 <Outer Product-based Neural Collaborative Filtering>论文的源码(https://github.com/duxy-me/ConvNCF )时,出现的问题: 即使修改成与下一行一样的 _dataset(前面加了下划线),依然不行…,还报了新的错误…… 是因为dataset 没有被初始化吗??...然而,数据是可以加载的…… debug一下,数据也是有的: _dataset 也是有数据的: 最后的最后……,解决办法是:修改如下: (可能的原…
在数据预处理过程中,出现:IndexError: single positional indexer is out-of-bounds 原因是在使用 Pandas 读取 dataframe 的时候,分隔符搞错了!!! 这个时候,定点Debug一下,看一下切分出来的数据片格式 即可,…
调试程序,出现以下错误: Python: TypeError: 'generator' object is not subscriptable “在Python中,这种一边循环一边计算的机制,称为生成器:generator.” 我这个功能函数用了 yield 返回函数的值,这个似乎是属于 generator 这种情况,于是改成用 return来返回值.——问题得到解决.…
在调试 <Neural Factorization Machines for Sparse Predictive Analytics>论文的源码(https://github.com/hexiangnan/neural_factorization_machine )时,出现的问题: 原因: 版本更新,sub 换成了 subtract 了. 改过来之后,完美解决!:…
运行到子函数时提示报错:  === 这个断点一步步debug下来是顺利的,但是咋就超出数组范围了呢,这会是什么问题. ——sess肯定超过索引了,那个sess(:,2)的值肯定超过V的行数了. ——由右图可知:V只有1842行,而cellD里面包含的肯定不止, 看是V错了, 还是cellD错了. V的行数是整个数据集的所有item数目没错.而cellD的行数则是训练集的所有session数. I mean:cellD里面包含的,每次肯定只能传cellD其中的一个元胞,把cellD里面每个元胞的最…
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好傻好傻…
201811—201903???   1)关于训练参数是复数的问题    ——q_k ^theta   q_k(是item的特征矩阵)中有可能是负数,而指数 theta 如果是含小数点的话,就会产生复数了.MATLAB 程序计算结果出现 复数(a+bi)问题 解决办法: ① 令 q_k 所有元素都为非负数了.看: non-negative matrix 非负矩阵的问题 :https://www.cnblogs.com/ywl925/p/3315758.html ② 令 theta 为正整数.但是…
FSBPR 迭代一轮就停止???…… 循环条件没有问题.. 达到收敛条件了?——参数变化小于1e-4…? deltaU =0 —— U没有更新?——incU < 0 —— 取消动量(前半部分即可) Lack of the ability of debugging...…
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…
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 即可.…
在使用 CNN的时候,报错: TypeError: ('Keyword argument not understood:', 'padding') 将“padding”改为“border_mode”,即可: 原因:padding 是Keras 2.X的语法,而我的PC安装的是 Keras 1.X版本. 二者的API 有一些地方是有变化的. 如下:(从 1.X 到 2.X ) ========[Models] 1.Constructor arguments for Model have been…
Android群英传帝落篇--程序人生,路漫漫其修远兮,吾将上下而求索! 当写这篇博客的时候,自2016-02-22到现在5.2号,一晃眼,也㓟两个多月就过去了,我才将这本书看完,虽然写笔记花了很大的功夫,但是还是自己松懈了,群英传这本书看完了,这里做一个小总结:这本书,不深不浅,讲的还是挺详细的,知识面把控得很不错,也就是说,这本书其实最适合的是那些即将工作或者刚工作不久的人,我感觉很合适 Android群英传笔记 Android群英传笔记--摘要,概述,新的出发点,温故而知新,可以为师矣!…
python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用 redispy安装安装及简单使用:https://github.com/andymccurdy/redis-pyapi参考文档:http://redis-py.readthedocs.io/en/latest/ 1.安装redis-py pip install redis C:\Users\ajie>workon flask (flask) C:\Users\ajie>d: (flask) d…
摘要:AI开发看上去很美,实践起来却不是一件容易的事.一个聪明的开发者知道借助工具提升开发效率,一个智能的平台则会站在开发者的立场,为用户提供贴心服务. 前言 “理想很丰满,现实很骨感.”如果用一句话来描述AI开发的现状,恐怕没有比这句话更合适的了.近两年,人工智能作为朝阳行业引得资本.企业.个人纷纷涌入,大有抢滩登陆之势.尤其是对充满极客精神的开发者来说,都想着在AI开发的浪潮中大显身手,做个时代的弄潮儿. 然而,AI开发看上去很美,实践起来却不是一件容易的事.特别是在这个信息爆炸.技术迭代如…
错误信息: 2019/09/09 13:54:37 [crit] 796#7096: *1 GetFileAttributesEx() "F: ginx-1.12.2\html\dist" failed (123: The filename, directory name, or volume label syntax is incorrect), client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1&q…
2015年12月26日是个特别的日子,我的Python成之路迈出第一步.见到了心目中的Python大神(Alex),也认识到了新的志向相投的伙伴,非常开心. 尽管之前看过一些Python的视频.书,算是有一点基础.但在这里我要保持空杯心态,一切从头开始.好了不多说,Let's Python!!!! 一.Python简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言.目前Python已经成为实际上除了中国最流行的开发语…
一.数据库介绍 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据.我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢.所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量.所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据. RDBMS即关系数据库管理系统(Relational Database Managem…
七.列表——list Python的列表是一种内置的数据类型,是由Python的基本数据类型组成的有序的集合.有点类似C语言的数组,但与数组不同的是,Python在定义列表的时候不用指定列表的容积(长度),可根据需要任意扩展,另外列表的内的元素可以是不同的数据类型,当然既然是任何数据类型,当然也包括另一个列表也就是嵌套.Python中列表使用中括号[]括起来,例如[1,2,True,'ABC',[5,'678']]. 1.列表的切片 通字符串一样列表也支持切片操作,例如我们有一个列表A_list…
作业二:三级菜单 三级菜单 可一次进入各个子菜单 思路: 这个题看似不难,难点在于三层循环的嵌套,我的思路就是通过flag的真假来控制每一层的循环的,简单来说就是就是通过给每一层循环一个单独的布尔变量XXX_flag例如,程序已经进入了第三层循环,要返回第二层循环就是把第三层循环的flag改为Fasle,第二层的flag还是True,这样进入就可以退出第三层循环进入第二层循环,进入第二层循环的时候再把第三城循环的flag改为True,这样就能保证第二层循环输入正确的菜单选项后还能正常进入第三层循…
作业一:编写登录接口 输入用户名密码 认证成功系那是欢迎信息 输错三次后锁定 思路: 1.参考模型,这个作业我参考了linux的登录认证流程以及结合网上银行支付宝等锁定规则 1)认证流程参考的是Linux的登录:当你输入完用户名密码后再验证用户名是否存在用户是否被锁定,然后在验证密码是否正确,如果验证不过去只会告诉你验证失败,而不告诉你到底是用户名错误还是密码错误,增加了暴力破解的难度.如下图所示 2)关于输入错误次数的计数和锁定,我参考的是银行和支付宝的做法,也就是只关心你输错了多少次,不关心…
六.流程控制 与C语言不通的事Python的流程控制的代码块不是用{}花括号表示的,而是用强制缩进来,而且缩进必须一致,官方推荐是使用4个空格,不建议使用使用tab(制表符)做缩进,一是不同的系统tab所占宽度不一致,会比较乱,二是由于Python要求同级缩进必须保持一致,所以有些时候看上去是对其了,但是有的是空格有的是tab键使得不容易排错,另外条件判断的条件语句不需要使用()括起来,但是条件语句后面使用: 1.条件判断——if语句 条件判断就是执行某个代码段之前先进性判断,如果符合在执行某个…
四.变量和常量 变量是用来存储程序运行期间需要临时保存可以不断改变的数据的标识符.Python有自身的内存回收机制,所以在开发过程中不用考虑变量的销毁等 Python中的变量名命名有如下规则: 1.变量名必须是字母.数字和下划线的组合 2.数字不能开头 3.不能使用Python保留的关键字入print.id等(注意这个不是Python强制的,但是如果使用关键字定义了会是改变关键原来的用途) 关于变量名的一些建议: 1.变量名最好有意义,尽量不要使用a = 1, x = 'ABC',var = 1…
三.数据类型 Python基本类型(能够直接处理的数据类型有以下几种)主要有5种 1.整数(int) Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 2.浮点数(float) 浮点数也就是数学中的小数.由于整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差.需要注意. 3.字符串 字符串是以单引号'或双引号"括起来的任意文本,比如'abc',"xy…
迭代 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration). 在Python中,迭代是通过for ... in来完成的,而很多语言比如C或者Java,迭代list是通过下标完成的,比如Java代码: for(i=0;i<list.length;i++){ n=list[i]; } 可以看出,Python的for循环抽象程度要高于Java的for循环,因为Python的for循环不仅可以用在list或tuple上,还可以…
五.数据运算与数据运算符 1.算术运算符 算术运算符 运算符 描述 示例 + 加法 >>> 14 - 5 9 - 减法 >>> 14 - 5 9  *  乘法 >>> 5 * 14 70  / 除法 >>> 14 / 5 2.8  %  取模,即两个的数商的余数部分 >>> 14 % 5 4  **  幂运算 >>> 2 ** 3 8  //  整除,返回两个数的商的整数部分 >>>…
前言 基于网络通信(AF_INET)的socket(套接字)实现了TCP/UDP协议 目录 基于TCP协议的socket 基于UDP协议的socket TCP协议下粘包现象及处理 使用socketserver模块实现高并发 基于TCP协议的socket 服务端 #服务端 from socket import * #AF_INIT(基于网络通信) SOCK_STREAM(TCP协议)(买手机) tcp_server= socket(AF_INET,SOCK_STREAM) #防止端口FIN_WAI…