实验室苦逼搬砖暑假生活纪实
虽然进步很小很缓慢,但总归是有的。
7月13日
关于论文的主要内容,学长进行了讲解:
任务目标:通过迁移学习实现用户对齐问题,并将对齐结果与其他的用户对其方法进行比较:其中的方法包括“监督类型的”和“非监督类型的”,最终论文里要将我们的方法与其他至少三四种方法进行比较。下面的时间应该做到:
0)熟悉各数据集,每个数据集经过哪个函数变成什么样子?
myspace
文件夹中,.node
文件前一个数字表示结点标号,后面的表示用户名。
.edges
文件每一行的两个数字表示边连接的两个节点。
aminer.tar.gz
,flicker.tar.gz
,lastfm.tar.gz
,linkedin.tar,gz
,livejournal.tar.gz
这五个压缩包都是上面形式的点和边
aminer-linkedin.map.raw
文件,将aminer.tar.gz
文件中的结点映射到linkedin
上1)
DRNE
(将图表示矩阵转化成向量)
转化成的向量是什么格式?它是怎样表示矩阵的?它的输入和输出是怎样的?2)
wGAN
的一个变种函数(生成相应的对齐结果)
它的输入和输出是怎样的?
7月14日
非常艰难的一天,DRNE
作者的readme
文档写错了,指令是错误的,我第一次接触这个看不懂debug信息,学长也没发现。最后发邮件问原作者才知道readme
中把\
打成了/
🤬
这一件事情花了我三天的时间,一开始以为自己的环境没搭建好,安装了各种库,利用anaconda
创造了许多环境测试,我哭了。
关于安装
tensorflow
的方法:
莫凡Python
ling’s bolg上面这些乱七八糟的都不如直接
pip install
,觉得慢的话换成清华镜像资源清华大学开源软件镜像站
7月15日
其实要是只有几个点倒简单,但是仅仅接触了一点`Python`就要写个几千点判断连通图的程序,我想到的第一点是效率会非常低。。。最后这个代码学长亲自写了。
这里顺带复习了一下数据结构的东西
- 邻接矩阵与邻接表
邻接矩阵 - 边表
边集表,图的储存结构之一。边表由表头结点和表结点两部分组成,图中每个顶点均对应一个存储在数组中的表头结点。
边表存储了以点为起点的边的信息,邻接表存储了以点为出发点的点的信息。 - edgelist边表中每行有两个数,表示这两个结点之间有边
- python nx.has_path(G, source, target)用来判断是否为连通图
- networkx库查阅资料:
network资料
NetworkX是一个用Python语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进行复杂网络数据分析、仿真建模等工作。networkx支持创建简单无向图、有向图和多重图(multigraph);内置许多标准的图论算法,节点可为任意数据;支持任意的边值维度,功能丰富,简单易用。
network官方文档
发现文档里举的例子都是自己输入的个别的点,我可以先研究一下DRNE的代码,从里面得到一些有用的内容。
代码看不懂的地方,首先就是embedding:
关于embedding
7月16日
- CONSNET数据集:
deepwalk-master先不用,做对比算法的
DRNE-master 用来做embedding的
GAN用来生成模型 - 关于anaconda的使用:
Anaconda是一个方便的python包管理和环境管理软件,一般用来配置不同的项目环境。
我们常常会遇到这样的情况,正在做的项目A和项目B分别基于python2和python3,而第电脑只能安装一个环境,这个时候Anaconda就派上了用场,它可以创建多个互不干扰的环境,分别运行不同版本的软件包,以达到兼容的目的。
Anaconda通过管理工具包、开发环境、Python版本,大大简化了你的工作流程。不仅可以方便地安装、更新、卸载工具包,而且安装时能自动安装相应的依赖包,同时还能使用不同的虚拟环境隔离不同要求的项目。
Anaconda入门
7月17日
使用anaconda先创建一个用于drne的环境
安装以上环境
其中添加的资源库都没有tensorflow == 1.2.0
按照提示To search for alternate channels that may provide the conda package you’re looking for, navigate to https://anaconda.org and use the search bar at the top of the page.
去官网搜索资源即可下载
环境安装完成
anaconda跑不出来,先学习anaconda的使用方法:
anaconda1
7月19日
继续研究network库
7月21日
研读networkx的文档,在后面处理相关问题的时候会简单很多。
在学习图的过程中,遇到的问题:
最后一行输出,我记得莫凡python里有讲这个,关于迭代器的东西,然后搜索了一下,继续进行学习:
Python迭代器
任务:
写一个可以将ground truth抽样的函数,给定一个列表,例如[0.3, 0.5, 0.7],
0.3表示在groundtruth里面随机抽样30%,并生成名为new-gt-0.3.txt的文件,列表长度为多少,就生成多少个这样的文件。
7月22日
readme文档中AcrossNetworkEmbeddingData文件夹里的文件和实际文件夹里的不一样,是否有问题?
anchor users 定位用户
7月23日
读学长写的:
连通图代码
numpy.zeros
https://blog.csdn.net/qq_28618765/article/details/78085457抽样代码
自己完成:数据转换代码
python open函数的参数
https://www.runoob.com/python/python-func-open.html
if __name__ == "__main__": |
https://blog.csdn.net/qq_33254870/article/details/81668297
https://cloud.tencent.com/developer/ask/172682
一定要系统地学一下python!要不然什么都不会,写起来效率太低了!!怎样用csvreader读入用tab分隔的文件——直接用\t
https://www.runoob.com/python/att-list-len.html
for while if后面都要有冒号
python的‘和’符号是 and
关于newline参数
7月24日
i = 0 |
7月31日
drne配适自己的代码:
activate for_drne
e:
8月4日
coursera视频无法播放
https://blog.csdn.net/qq_39521554/article/details/79039548
欧式距离
https://www.cnblogs.com/kimkat/p/9938475.html
测试程序(把程序拆成几小部分)
- np.linalg.norm(vec1 - vec2)
- 读入部分,怎样读出来两个向量
python cookbook 真的能学到很多东西!!
挺有用!
https://zhidao.baidu.com/question/115008008.html
https://www.cnblogs.com/bakari/p/4807847.html
8月5日
列表最后有一个逗号,就会多出来一个空元素
https://www.cnblogs.com/lostme/articles/8857083.htmloperands could not be broadcast together with shapes (2,) (250,)
https://blog.csdn.net/Odyssues_lee/article/details/85244735运行map()后,报:map object at 0x02629E50解决方法与原因分析
https://blog.csdn.net/weixin_40807247/article/details/82797378
https://www.cnblogs.com/hwd9654/p/5707920.html
python中,“
”是什么意思?怎么解决?
https://zhidao.baidu.com/question/329317296.html数据格式要求很严格:
3 2
5 4
7 6
9 7
tab和x个空格不一样输出百分比:
https://blog.csdn.net/u013553529/article/details/78567696
8月7日
博客搭建
https://blog.csdn.net/fangquan1980/article/details/80648171
https://blog.csdn.net/zyupupup/article/details/85098366
https://blog.csdn.net/weixin_42419856/article/details/81141546
https://blog.csdn.net/lvsehaiyang1993/article/details/80881433
http://zhangchunlei.com/blog/2014/12/01/modify-a-record-of-my-website-dns/
On a Windows machine, you'll want to run nslookup your-domain.com and ensure that the output does not include any of the deprecated IP addresses (207.97.227.XXX, 204.232.175.XX, or 199.27.73.XXX). |
https://blog.csdn.net/a1023182899/article/details/77461567
8月8日
https://www.v2ex.com/amp/t/465570
LINE(PALE中)
GAN
画圈
8月11日
xlrd模块:
https://www.cnblogs.com/insane-Mr-Li/p/9092619.html
8月13日
random.choices
https://blog.csdn.net/lcqin111/article/details/83504029Cannot feed value of shape (256, 255) for Tensor ‘Placeholder:0’, which has shape ‘(?, 256)’
http://www.mamicode.com/info-detail-2346029.html
for i in range(4000): |
总结
7.13
了解任务详情
7.14
装相应的环境,跑DRNE,发现了文档的错误
DRNE在命令行窗口运行。
输入:edgelist
输出:.npy(需要再写程序转换为embedding)
7.15
想要完成任务:判断是否为连通图
结果就是不行,,
7.16
还在为DRNE的无脑错误 debug
7.17
学习了anaconda的使用,还在跑DRNE,,
7.18
DRNE,,
7.19
完成一个可以将ground truth抽样的函数,例如[0.3, 0.5, 0.7]
7.21
学习关于图的内容,不敢下手自己写代码
7.22
开始跑IONE(java)
7.23
数据转换代码,将cosnet数据集中的用户名转换成结点号
7.24
删去edges里面没有在groundtruth中出现的记录,以此来缩小数据集
7.25
用学长改过的代码跑ione
7.31
用anaconda环境跑DRNE
8.4
写计算距离,画圈的代码
8.5
计算距离的代码,注意数据格式
8.7
博客搭建
8.8
跑PALE中的LINE,尝试WGAN
8.11
跑学长改过的WGAN
8.11
跑学长改过的WGAN完成,DRNE结果的npy转成txt