- 博客(32)
- 资源 (1)
- 收藏
- 关注
原创 代码整洁之道阅读笔记
代码整洁规范减少重复代码提高表达力提早构建简单抽象文章目录有意义的命名函数注释格式数据,对象的反对称性错误处理测试类好的代码示范有意义的命名名副其实如果你需要注释来解释一个变量,那就说明它不是名副其实一旦发现有更好的命名,就要换掉旧的,要记住换花的时间是值得的避免误导尽量少使用类型名,除非它真的是这个类型不要使用过于相似的名字命名规范类名和对象是名词,方法是动...
2019-06-02 16:50:21
291
原创 git 知识点整理
文章目录命令解析git status 查看文件状态git diff 查看文件前后对比git commit 提交记录git rm 删除git stash 备份git log 查看提交历史Git Branch 分支创建(合并分支和分离HEAD)git merge&git rebase 合并分支git reset&git revert 撤销变更git cherry-pick 整理提交...
2019-05-27 20:34:34
386
转载 训练的LOSS一直为0
http://www.cnblogs.com/sddai/p/8526955.htmlTensorFlow训练神经网络cost一直为0问题描述这几天在用TensorFlow搭建一个神经网络来做一个binary classifier,搭建一个典型的神经网络的基本思路是:定义神经网络的layers(层)以及初始化每一层的参数然后迭代:前向传播(Forward propagation)计...
2019-03-07 16:51:49
30842
3
转载 TypeError: __int__ returned non-int (type NoneType)
这个说法是指你的输入shape跟要求的不符合静态和动态维度TensorFlow: Shapes and dynamic dimensions一文中,对张量的静态和动态维度做了描述。使用tf.get_shape()获取静态维度使用tf.shape获取动态维度如果你的placeholder输入的维度都是固定的情况下,使用get_shape()。但是很多情况下,我们希望想训练得到的网络可以用于...
2019-03-07 16:10:08
11107
1
原创 缺乏标注语料下如何实体识别
最近有知识图谱的任务,要做实体识别。才发现实体识别的坑在于公开数据集只标注了人名机构名地点,但是知识图谱的需求一般都是针对垂直领域。即需要识别出数据库字段对应特定的实体,然而有些领域的实体标注会很麻烦,一个是没有足够的语料,一个是非专家可能会标错。因此找了一个无监督生成实体的方法。https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3865922/其核心...
2019-02-27 14:52:40
2302
3
原创 windows tensorborad 启动报错ImportError: cannot import name '_message' from 'google.protobuf.pyext'
windows操作系统只需要把tensorboard进行降级。 pip install tensorboard==1.10.0
2019-02-26 20:34:08
4081
转载 Quora Insincere Questions Classification 文本分类归纳
1st place 解决方案模型结构过复杂的模型不一定有效,这里只是使用了一层LSTM和卷积Embeddings多个embedding模型按权重组合embeding的目标是尽可能地为词典找到对应地向量,所以有以下地操作:1 do not limit the vocab at all2 checking singular and plural of the word3 check...
2019-02-20 18:45:14
1152
原创 递归神经网络 cs224n
语言模型:词袋模型(BoW)-简单:一篇文本(文章)被表示成"装着词的袋子",也就是说忽略文章的词序和语法,句法;将文章看做词的组合,文中出现的每个词都是独立的,不依赖于其他词.虽然这个事实上并不成立,但是在实际工作中,效果很好.如下,在词袋模型BoW中,每个词的数量表示有多种方法:可以表示为0-1(在这篇文章中,这个词出现了没有–词集模型),词频(在这篇文章中,这个词出现了多少次),也可以...
2019-02-20 12:04:53
527
原创 OpenNER关系抽取代码阅读
继上文阅读了论文Neural Relation Extraction with Selective Attention over Instances后,就找源码来修修改改以完成关系抽取的任务。论文源码是C++实现,在其github上面找到另一个整合了几篇论文更好的框架OpenNER遇到的坑no module named framework这不是少包,这是包在目录下没找到,只需要在impor...
2019-02-11 20:42:29
3569
5
原创 论文阅读:Neural Relation Extraction with Selective Attention over Instances
摘要现存问题:远程监督会出现一些错误标注的问题解决方法:使用卷积神经网络映射句子语义,使用attention机制减少噪声 数据的权重。实验证明和意义:模型可以利用句子的所有信息,并且减少错误样本的影响。介绍现状:针对KB,现有实体跟现实世界的实体差很远很远。因此自动的关系抽取很重要(因为可以不依赖现有实体去做)。介绍他人工作:目前大多数关系抽取都是基于大量的人工标注...
2019-02-06 19:42:26
580
原创 CNN介绍&dropout cs224n
RNN无法做到的事情:can’t capture phrases without prefix contextoften capture too much of last words in final vector所以引入了CNN:
2019-02-03 17:15:25
298
原创 NMT和Attention cs224n
NMT(neural machine translation)不管是传统学习还是深度学习,都是encoder-decoder的架构:MT的优势end-to-end training(也是所有深度学习的优势):为优化同一个损失函数调整所有参数Distributed representation:更好地利用词语、短语之间的相似性(因为利用了word vector和sentence ve...
2019-01-30 16:49:14
405
原创 LSTM和GRU cs224n
通过机器翻译来介绍LSTM和GRU传统做法需要的两个平行语料库,然后基于统计分析的模型这种方法是很难的,因为涉及到多对多以及很多的句法对齐。如果很容易就不会由后面的改进了。这里他提出了一个思想我觉得很重要:end-to-end model: 这还只是传统机器翻译系统的冰山一角,有许多细节没有涉及到,还需要大量的人肉特征工程,总之是非常复杂的系统。其中每个环节都是独立不同的机器学习问题。...
2019-01-21 19:06:50
222
原创 RNN和梯度消失爆炸 cs224n
语言模型说实话,这里是很重要。因为做一件事情首先需要明确的就是目的是什么?否则就会再后续的问题中迷失了方向。什么是语言模型,视频中是指计算一个单词序列(句子)的概率P(w1,…,wm)P(w_1,…,w_m)P(w1,…,wm)的模型。听上去很简单,做起来很难;听上去没什么用处,但用处非常多。比如在机器翻译中,判断译文序列中一种词序的自然程度高于另一种,判断一种用词选择优于另一种。这个...
2019-01-18 14:31:03
208
原创 通用代码
记录下一些常用的框架代码,以便后续快速使用文章目录embedding查看覆盖率文本清洗embedding查看覆盖率import pandas as pdfrom tqdm import tqdmtqdm.pandas()import operator from gensim.models import KeyedVectorsnews_path = '../input/embe...
2019-01-17 23:05:59
524
原创 Pandas与Numpy收集的代码小技巧
文章目录pandas操作出现进度条:pandas操作出现进度条:用作迭代器用于Pandas的操作import pandas as pdfrom tqdm import tqdmtqdm.pandas()sentences = train["question_text"].progress_apply(lambda x: x.split()).valuesfor sentence...
2019-01-17 21:55:35
172
原创 竞赛中的可视化方式及代码
打比赛中,很头疼的一件事情就是想看看这个和那个的关系,没有快速上手的画图工具代码。这里就记录一下。从kaggle和其他竞赛中获得的一些画图代码。文章目录plotly条形图子图以及n-gram词条形图plt刻画词云plotly条形图适合简单观察变量,以及变量之间的相关关系from plotly import toolsimport plotly.offline as pypy.in...
2019-01-16 22:38:23
563
原创 NLP竞赛综述
参加了一个竞赛学习小组,要求每天要打卡发布文章。公益性的组织确实不易,自己既然参加了,就不要辜负大佬的期望。先总结一下别人的经验。文章目录[如何到top5%?NLP文本分类和情感分析竞赛总结](https://zhuanlan.zhihu.com/p/54397748)语义粒度与文本长度词向量模型与维度语言模型词向量训练模型trick如何到top5%?NLP文本分类和情感分析竞赛总结就像他...
2019-01-16 21:34:44
1556
原创 tensorflow基础入门 cs224n
tensorflow基础入门这是cs224n上的视频教程,后续自己也会继续往这里面补充自己对tensorflow的理解。包括基础的概念,代码的实例,变量共享,以及一些小技巧tensorflow的三个重要概念:keyidea:express a numerical computation as a graphgraph nodes:operations which have any nu...
2019-01-16 16:13:03
193
原创 NLP术语
不定期更新(我的理解可能会有误差,若有错误还望大神赐教)词向量矩阵(非词汇表向量):word vector matrix/look-up table词向量:word vector/word embedding/word representation语料库: corpus归一化:Normalization将一系列的单词 转化成 某种 统一 的形式,比如:将一句话的各个单词中,有大写、有...
2019-01-07 10:42:36
266
原创 word2vec-GLOVE模型 cs224n
word2vec的缺陷:没有考虑词序,因为它假设了词的上下文无关(把概率变为连乘)没有考虑全局的统计信息针对这两个方面,应该都有很多解决的方案,毕竟word2vec是很老的东西了。这里介绍了一个方法,改进全局的统计信息。co-occurrence matrix计算共现矩阵,作用于两个方面:句子:捕捉语义和语法的相似性文章:捕捉主题的相似性基于窗口的共现矩阵比如窗口半径为1...
2019-01-07 10:11:49
262
原创 wor2vec 讲解 cs224n
wor2vec 讲解结合三个我看过的比较好的网站,这里我重新整理和总结一下word2vec的一些基本原理。公式讲解清楚:https://plmsmile.github.io/2017/11/12/cs224n-notes1-word2vec/图讲解清楚:http://www.hankcs.com/nlp/word2vec.html#h3-12有一个实际的小例子怎么用而不是公式:cs224n...
2019-01-06 11:06:30
395
原创 [leetcode]双指针 Sort Colors
Sort Colors这题说实话,最直观的想法没有想到emmmm,先构造一个hash然后在进行重新构造的思想,我觉得挺好的。不过它要求做one-pass,就重新想了一个。这题的主要考点:one-pass和two-pass的区别test_case的考虑因为只能扫描数组一遍,所以自然想到肯定是交换,然后又因为这题只有0,1,2三个数,所以只要设置两个指针,碰到0往左交换,碰到2往右交换,就...
2019-01-04 14:32:23
162
原创 [leetcode]双指针 Implement strStr
Implement strStr找到一个句子里面的字串其实这题自己算是踩进一个大坑,总担心暴力不行。这题的主要考点:first occurrence寻找的对象是字符串想了N久,感觉暴力可能会TLE,结果才发现自己多想,不过这个确实提醒了自己,对于字符串来说,暴力的解法是不会超时的,因为实际情况一般字符串不会存在很长很长的情况(说不定以后做题会打脸)。自己的解法class Solu...
2019-01-02 14:55:19
112
原创 神经网络前向传播后向传播 cs224n
cs224n作业 神经网络前向传播后向传播推导 看完视频做这个作业的时候,可卡住我好一会,这里特此记录一下。其实神经网络前向后向推导不难,难就在于网上很多教程没有把特征和维数讲清楚,以致于在具体写代码实现的过程中卡壳,同样也反映了自己目前思考问题还是平面,没有达到空间思考的程度。 其实首先不是去思考前向传播时什么,后向传播是什么,首先应该思考这每一层的维数,即shape是什么 。基本...
2019-01-01 19:04:24
325
原创 [leetcode]双指针 Remove Nth Node From End of List
Remove Nth Node From End of List这题我觉得应该算easy题里面,涉及到的知识确实不多:看到链表能不能反应过来使用指针对于这个n-th节点的边界情况自己一开始就能想到前后指针,两个指针的间隔为n,然后同步移动,当后指针到末尾的时候,前指针的位置就是需要进行链表删除的上一个位置,很方便。但是又一个坑就在于如果要删除头节点怎么办,因为上面的解法固定了我们的前...
2019-01-01 15:59:56
92
原创 [leetcode]双指针 Longest Substring Without Repeating Characters
Longest Substring Without Repeating Characters考虑不重复的字串,主要的考点在于:是否了解指针构建字串移动窗口当出现新的重复值时怎么改变窗口left指针其实自己一开始的想法是想着能不能记录下每次出现的位置,然后用集合取交集的思想得到一个区域差值。最后发现不可以,因为对于两端的情况很难解决。参考网上的解法,其实只要知道用双指针来构建这个字串的...
2018-12-31 16:34:02
182
原创 [leetcode]双指针题:Three sum
three sum考虑三数之和,主要的考点在于:三数是否意味着需要设置三个变量?如何保证结果的去重?针对第一点,这其实是指针题很喜欢的场景,因为对于新手可能一下子思路很直,单其实一般如果几个变量之间存在一定的关系,都要采取化简得形式,毕竟变量越少处理的时候就会越简洁。针对第二点,其实是这题的一个重点,我第一次的想法也是判断一下数组里面如果存在就不继续添加这种线性的思维。其实应该判断,...
2018-12-31 16:32:55
239
原创 双指针解题思路
刷leetcode一个月之后,发现就跟高中刷题一样,单纯的刷,到一定程度就上不去了,必须对题目进行收集和整理才能有更高的突破。一.概念快慢指针快指针在每一步走的步长要比慢指针一步走的步长要多。快指针通常的步速是慢指针的2倍。在循环中的指针移动通常为:faster = faster.next.next; slower = slower.next;首尾(大小)指针首尾指针是指对数组进行排...
2018-12-31 15:31:37
499
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人