-
Notifications
You must be signed in to change notification settings - Fork 1
Description
2016-07-10 周日
-
完成我的本科毕业论文
勉勉强强完成了论文,有很多点都没写好,但还是学到很多东西。一直做工程较多,对于研究型内容有些力有不逮,还是源于基础不够扎实,持续学习很重要。
-
研究方向调整
由于社交网络用户影响力评价标准不一,难以有效说明,所以暂时搁置了这方面研究,转而研究学术网络下的影响力。
-
Angular - SAP
从开始接触 Angular 开始,就对数据双向绑定、前端路由等特性着迷,前端发展早已不可同日而语。自己也用 Angular 做了几个项目,结合 bootstrap,weui 来做 UI,Grunt 做编译压缩,目前只有测试还没写过,未来学习 karma 测试框架也是任务之一。还有 React 和 Vue 诱惑着我,前端简直学无止境啊。
-
jqGrid
在帮实验室同学做一个快速开发项目时,发现了 jqGrid 这个表格框架,基于 jQuery 实现,功能几乎无所不包,尤其适合与后端 CRUD 接口整合,大大减轻了前端开始任务。世上没有完美的东西,这个框架的确点就是文档不全,资料很少,不过貌似是闭源的,也没什么说的了。
小记
很久没有更新这里,总是瞎忙,忙毕业,忙项目,忙聚会。本科生活结束,硕士生活开始;迷茫生活结束,奋斗生活开始……
2016-05-29 周日
-
写毕业论文
写了 93%,剩最后关键的实验部分。
-
修改对比算法
修改 IC Model, TwitterRank 和 Topic-sensitive 相应的实现。之前存在一些错误。
2016-05-22 周日
-
写毕业论文
第一次写论文还没找到套路,在艰难的凑字数。
-
完善和修改 cnki-crawler
在慢慢摸索中学会了用 selenium-webdriver 这个库所支持的 promise 来实现异步流程控制,从而解决了大部分问题。在 github 和 stackoverflow 上也查了很多资料,因为 nodejs 版本的资料相对较少,一度想要放弃,但还是坚持解决了所有问题。为自己点赞~^_^
-
验证各个算法结果
结果不是很理想,对论文中自己的算法理解不是非常到位。
2016-05-15 周日
-
做论文相关的实验
因为盲审的紧逼暴露出之前实验的许多问题,实验算法实现的小问题和验证结果的不理想,都没能充分考虑和解决。深感无奈。
-
刚开始先学习了 selenium-webdriver 这个框架,在其简单的 doc 和 stackoverflow 的基础上总算掌握了基本使用。但是因为异步的原因,有些问题总是解决不掉。如 alert 弹窗处理和窗口切换与关闭出现的问题等等。
2016-05-08 周日
主要工作
-
测试微博数据
- Indegree
- TunkRank
这两个算法最简单,也顺便测试重构后框架的易用程度。
-
使用 GibbsLDA++-0.2 处理数据
将较大的文本分割后进行递增地处理。
-
整理毕设相关的东西到 github 上
-
学习 python 爬虫
写了简单的爬 api 的代码。尝试针对下载知网数据,使用爬虫进行模拟登录并下载,未果。
小记
随着夏天到来,人也变得躁动,不能静下心来编码和读书,总是时断时续。还有两周就得完成毕设论文了,还有实验室的一些工作要做,感觉自己的效率真的是太低了。开始爱上了健身,希望身体和心灵都在路上。
2016-05-01 周日
主要工作
-
处理微博数据
- 数据量大,约 120 GB 原始数据
- 在 Ubuntu 14.04 LTS 上,MongoDB 3.2.4 表现很差(暂不知道原因)
- 分词和吉布斯采样及后续算法很耗时,难以并行
放弃使用 Mongodb,直接文件流处理,使用 JSON 的 Jar 包,逐行解析和筛选。
-
解决 LDA Gibbs Sampling 在大数据上的问题
使用 GibbsLDA++-0.2 处理,可以在之前的训练集上推演新的数据集,做到增量 LDA.
2016-04-24 周日
主要工作
-
写 rosenjx 的文档
第一次写文档,感受到要把自己熟悉东西介绍给完全不了解这方面的人,是件很难的事情。这才理解了文档能力的重要性。每个人的知识体系和价值观都不完全相同,要让别人了解自己做的东西,需要换位思考和对自己作品充分的研究,才能向别人道出其中原委。
-
测试 Twitter 数据
测试简单算法,重构了一下代码结构,使用 DataModel 类来屏蔽掉算法输入数据多样性。
- InDegree
- TunkRank
其他算法需要 LDA Gibbs Sampling ,还不能实验。
-
看阮一峰老师的 JavaScript 笔记
小记
这周毕设总算推进了,首先做了两个简单的算法实验,从数据处理,算法结果,到验证结果,全部跑通。其中还有一些问题,如验证算法速度慢,和对不同数据源,不同数据结构,不同算法,怎样写代码可以让以后跑实验的改动最小等等。
co-author 数据已经发现可以爬 Aminer.org 的网站 api 接口,因为网络问题,还没有完全得到。得到之后需要按照论文你的采样算法来采样处理,不确定性太多,需要大量时间投入。
2016-04-17 周日
主要工作
- 理解和修改 LDAGibbsSampling
- 用 angular 重写实验室网站模板
- 外包网站基本完成
小记
这周很累,在 angular 开发上可以说又进了一小步,还是很开心。
首先说在项目构建上,我开始变得不太喜欢用 bower ,因为在用 grunt-usemin 的时候,不能细粒度地控制编译 js 库。重写实验室网站的时候就只直接用 npm 管理了前端库,但是 npm 也有问题,依赖太多,前后端库分不开等等,node_modules 目录下是把所有以来展开了,这样做有好处,却令人看起来很杂乱,不如 bower 那么清爽。
然后,在久试不通之后,果断放弃了用 jquery-carouFredSel.js,虽然它很强大,但真的不适合我。换了 bootstrap 来做轮播,代码清爽了很多,不用写 js。
毕设在这周进展寥寥,理解了 LDA Gibbs Sampling 之后,还需要进一步修改,以使用它。
加油。
2016-04-10 周日
主要工作
-
处理 Twitter 数据,自然语言处理和吉布斯采样
自然语言处理用了 nltk 完成,吉布斯采样因为内存限制还没有结果。
-
Angular-static-single-page
- 使用 bower 和 grunt 构建项目
- 添加了 markdown 支持
- 修改 IE 下兼容性问题
由于 Angular 对 DOM 的管理,导致很多意想不到的问题,在解决的时候也倍觉棘手,深感自己在原理、底层上功夫过浅。
小记
这周在 Angular-static-single-page 这个项目上花费了很多精力和时间,主要解决 Angular 封装带来的资源或库的问题,如脚本运行的时机,资源加载时机造成的脚本运行结果顺序不对,ng-repeat 渲染完成的事件问题,$scope 层级问题等等。
抓狂中也学习了不少东西,包括 Grunt 编译压缩整个项目,使用起来像 make 工具,提供了非常丰富的插件来完成各种任务。但是也有一些实际问题,如 grunt-usemin 在 build html comment bower 时,会将 bower 管理的所有依赖都编译进去,像 html5shiv.js 这样应该放在注释里以兼容 IE 的做法就难以实现;还有 grunt-contrib-uglify 在编译 js 文件时,会有是否兼容 IE8 的选项,如果是 true ,那么将会出现如 this.this 和 a.class 等此类压缩后不兼容 IE8 的代码,因为 this 和 class 都是保留字,在 IE8 中会报错。而如果是 false ,上面的代码就会变成 this["this"] 和 a.className。
2016-04-03 周日
主要工作
-
修改 Zeppelin 二进制包中的源码,添加新功能或新可视化图表
按照这个 #issue 添加地图功能
-
帮师姐跑实验
服务组合论文相关实验,主要是配置文件很多,每次都要手动修改,然后运行。尝试自动跑程序失败,推测是工程依赖的 dll 文件的问题。
-
Angular-static-single-page
一个用 Angular 做静态模板及单页面路由的小项目。完成了初步的模板拆分和路由配置等。
-
读书
《JS 高级程设》,《用 AngularJS 开发下一代 Web 应用》
小记
通过修改添加 zeppelin 地图扩展,对 zeppelin 前端结构有了深入一些的认识。因为接触过 Angular 开发,上手也较为容易。
然后在一个外包项目中使用了 zeppelin 前端框架结构,不过改成了 Angular 静态单页面路由的形式,将页面不同模块拆分、复用。上手容易,但是 Angular 做静态模板还是有点不够灵活。比如 ngInclude 的限制,IE 下的兼容性,ngInclude 模板中对 script 和 html 代码安全的限制,ngInclude 模板中如果有 h5 标签,通过引入 Google 的 html5shiv.js 不能解决这个问题等等。
感觉 Angular 还是适合表单等交互性 Web 应用,以充分体现其双向绑定的优点。
ps.拖延症犯了,坚持不是一件容易的事。2016/4/12.
2016-03-27 周日
主要工作
-
阅读 Zeppelin 前端源码
index.html :
- 引入项目所依赖的静态文件( css, js, image 等)
- angular-include 其他模板或components
- 使用 WebSocket 进行异步通信
- 每个 component 对应的 controller 来处理诸如交互,展示等任务
粗看了所有代码,对 WebSocket 部分的通信和事件了解的不是很清楚。准备进一步阅读。
-
原作者用 Ractive 写的实现,我简单学习了下,很容易上手,静态单页面的路由也是第一次见到,对于一些整体布局改变不大,但是频繁交互的页面来说非常有用,单页面应用对 js 内存泄漏应该也有很好处理机制,最近学的 Zeppelin 也算一个单页面应用吧,用 AngularJS 实现,模块化组织,也很清晰。
-
整理 Twitter 数据
由于 Twitter 的转发评论与微博设计不同,所以在整理 Twitter 数据时遇到一些难题,如找出转发某条 tweet 的所有人。
这周解决了推文中包含的转推关系,包括不同转推格式(如,RT @name/RT@name:)和多次转推展开等,使用正则表达式匹配,捕获分组来获取(转发格式:被转发人:被转发推文)。然后使用 Redis 作为缓存,以(作者+推文)为键,(推文编号)作为值形成一个 Hash table,以便统计转推关系。
小记
看了 github-issue-blog 和 zeppelin 的前端代码,有了对实验室模板代码进行模块化组织和单页面静态路由的想法,准备下周有时间去做。这周还玩了下 Docker ,出现各种问题,很受挫,尤其是查尽资料解决不了问题那种抓狂的感觉,还需要磨练。
之前面对毕设项目中存在的问题有点消极,没有很主动地去解决,对毕设的态度自然决定了毕设的质量,回头看自己的毕设内容,我共享的部分主要是代码实现,对原有算法的改进和思考则鲜有。总是想学习新的有趣的技术,忽略了”正务“,是浮躁和缺乏思考的表现。
换到新的环境已近一个月,各方面都稳定下来,也在融入这个实验室。在学习,生活,技术和个人提升方面还有很多要做的。
2016-03-20 周日
主要工作
-
熟练搭建 Zeppelin 环境(单机)
Centos 环境搭建的话,总会出现个 databind 的错误,查了发现是 jackson 包在编译时选择的版本不对,但是由于网络等原因,用 Maven 构建总是失败,只能换到 Ubuntu 14.04 中搭建。
-
了解 Zeppelin 前后端架构
Zeppelin 在前端主要使用了 AngularJS ,在交互方面表现很好,可视化使用 nvD3 ,构建工具使用了 npm, grunt 和 bower ,UI 使用 Bootstrap,js 兼容库使用 jQuery。
后端主要使用 java 开发,用了 Jetty 和 Jersey 两个框架来实现 WebSocket , RESTful API 等功能。
-
实现一个简单的 Zeppelin Interpreter
仿照 Markdown Interpreter 的写法,自己编译打包了一个简单的 myInterpreter,将输入加上 %text 后再输出,了解了 Interpreter 的创建方法和工作原理。
-
在阿里云搭建 实验室主页
阿里的云翼计划 ¥10/月 可以租用一个配置不错的 ECS,用来搭建实验室的静态主页绰绰有余。
小记
这学期主要有两个项目,一个毕设,一个实验室一起做的大数据平台。
毕设在上学期进行到数据集准备和算法测试阶段,由于算法存在问题,数据集不完善,毕设项目遇到了不小的阻力,后面要在毕设上多下功夫,解决问题。
大数据平台项目我所在的小组主要负责前端部分,即支持交互式的数据查询与分析的 Apache Zeppelin 项目,学习,运用和修改它。通过粗略地阅读项目,对 Zeppelin 有了大致的了解,这个项目由于还在孵化期,使用的构建技术和框架较为前沿,学习的点很多,包括前端的可视化,angular,后端的 Jetty 和 Jersey 框架等。了解它如何运作还需要一定的积累。
业余时间看书时间变少,简单的健身和背单词效果平平,更多的刷社交网络和碎片化的知识并不是一个好的提升自我的手段,需要不断给自己施加压力。
2016-03-13 Sun
Main Work
-
[Big Data Platform] Install and Use Zeppelin
And previously install Hadoop 2.6.4 and Spark 1.6 envirment on Ubuntu 14.04 LTS (Single-Node)
-
[Social Network] Learn and Use Klout API
-
[Other] Reinstall OS, build some development envirment
-
[Life] Work in Lab
-
[Life] Start Exercise
Note
Record my work and thought weekly.