- 博客(36)
- 收藏
- 关注
原创 [抽取式文本摘要 ACL2019]Searching for Effective Neural Extractive Summarization: What Works and What’s Next
Zhonget al.,(2019)ACL.模块sentence encoder: sentence representations 选什么基本没区别document encoder: contextualized sentence representationsdecoder: extract a subset of sentences Sequence L...
2020-02-26 20:46:41
371
原创 [leetcode] 127. Word Ladder (BFS)
注意点:一次变一个位置上的字母——>相邻,最短——>bfs,访问后删除是由于有最短的要求(若再次访问到意味着形成环,不是最短,所以无效)。bfs借助队列,每轮访问一层(看作树的话),即上一轮所访问节点的所有有效的相邻节点。bfs的框架借助循环+队列实现。以下,注释的部分直接使用vector,会超时,于是改用unordered_set。class Solution {publ...
2018-10-12 09:37:20
236
原创 tensorflow实操 word2vec 小白入门
为了让更多胖友体会到和我一样的快感!首先务必更新您的tensorflow!(本人1.9.0)然后(以下来自Sanford CS224n的课题代码)utils.py# -*- coding: utf-8 -*-"""Created on Thu Aug 02 15:39:24 2018@author: lulu"""import osimport gzipim...
2018-08-02 20:22:44
637
原创 Stanford 深度自然语言处理 学习笔记(十)
注意力机制为各隐层节点分配不同的注意力(权重)。可按需访问隐层状态。利用注意力模型在源和目标之间建立隐式的关联。可以看成一种对齐。打分函数————>分数—softmax—>权重。加权和就是上下文向量。用到了编码器的全部隐层状态信息。不同时刻分配的权重不同。第二种方法使ht和hs形成更复杂的交互。第三种方法使用单层神经网络,ht和hs没有交互。...
2018-08-02 10:33:47
379
原创 Stanford 深度自然语言处理 学习笔记(九)
复习 机器翻译传统的机器翻译需要很多人工特征 编码器使用RNN扩展:使得两个单元解耦,同时两个RNN模块都会有更高的准确率。这意味着编码器和解码器有不同的W(hh)矩阵。解码阶段的输入改变翻转输入词的顺序使对应词的位置更靠近,能够减少输出阶段的误差比例,减少梯度消失问题 ...
2018-08-02 10:23:40
331
原创 Stanford 深度自然语言处理 学习笔记(八)
概率越大,越有可能是正确的表达。 RNN 关于梯度当t-k足够大且βWβh比1小或比1大时,指数(βWβh)t−k很容易为较小或较大的值。由于词距较远的交叉熵误差通过t-k来评估。当梯度消失时,在迭代t中词距较远的词对于预测下一个词的贡献度将会逐渐下降。 在实验过程中,一旦梯度值增长很大,就会很容易探测到其引起的溢出(如:无穷与非数值);这就是梯度爆炸...
2018-08-01 17:05:59
286
原创 Stanford 深度自然语言处理 学习笔记(七)
本节课是tensorflow入门 axis=1表示列。合为一列。 lr表示learning rate Visual Dialog 三个向量合并后连接全连接层和解码器 线性回归 命名 需要调用多个命名作用域skip-gram定义 skipgram()修改skipgram(), 在返回前增加验证集的处理定义 ru...
2018-08-01 16:01:05
253
原创 Stanford 深度自然语言处理 学习笔记(三)
归一化因子的计算代价很大(softmax的分母部分)。Negative Sampling用sigmoid表概率。主要的思路:对一对实际的词对(一个中心词及一个窗口内的其他词)和一些随机的词对(一个中心词及一个随机词)训练二元逻辑回归模型(参见 这篇文章) 保证一些出现比较少的词可以被尽可能多的抽样 (参见寒小阳博客)这里的 表示“错误的”或者“负面的”语料库。我们可以从...
2018-07-31 09:12:09
302
原创 Stanford 深度自然语言处理 学习笔记(二)
1、one-hot缺点:无法表示词之间的近似含义(相似性)。究其根本你会发现,是你开了一个极高维度的空间,然后每个词语都会占据一个维度,因此没有办法在空间中关联起来。因此我们可能可以把词向量的维度降低一些,在这样一个子空间中,可能原本没有关联的词就关联起来了。(寒小阳的博客)2、distributional similarityrepresent a word by means of ...
2018-07-30 12:09:45
455
原创 Stanford 深度自然语言处理 学习笔记(一)
1、深度学习与机器学习的主要区别:深度学习自动学习特征,机器学习使用人工特征,所做工作在于数值优化。深度学习是表征学习(representation learning,自动学习特征 )的一个分支,得到多层特征。人工特征通常over-specified,incomplete. 而learned features 更加灵活通用,训练过程中不断学习和提升。2、为什么NLP难?人类语言...
2018-07-30 10:03:14
584
原创 POJ 1837 动态规划
完全参考 这篇博客#include<iostream>#include<cstring>using namespace std;int dp[21][150001];////int main(){ int C,G; cin>>C>>G; int *c=new int[C+1]; int *g=new int[G+1]; for(...
2018-07-12 17:04:25
303
原创 POJ 2586
贪心?列举法#include<iostream>using namespace std;int main(){ long long s,d,tsum,sum; while(scanf("%lld %lld",&s,&d)!=EOF){ int i; for(i=1;i<=5;++i){ tsum=(5-i)*s-i*d; if(ts...
2018-07-11 20:30:51
181
原创 POJ 3006 素数
#include<iostream>#include<cstring>///memset#define top 1000001using namespace std;bool isPrime[top];void getIsPrime(){ memset(isPrime,true,top);//按字节初始化 isPrime[0]=isPrime[1]=fa...
2018-07-11 17:53:55
179
原创 POJ 3253 哈夫曼树 优先队列
借助stl的priority_queue实现哈夫曼树的思想。换成__int64后AC#include<iostream>#include<queue>using namespace std;int main(){ __int64 n,k; cin>>n; priority_queue<__int64,vector<__int64>...
2018-07-11 16:46:39
205
原创 POJ 1804 归并排序 求逆序数
借助归并的解法 结果TLE#include<iostream>#include<vector>using namespace std;int count;void merge(vector<int>sr,vector<int>&r,int s,int m,int e){ int k=s,i=s,j=m; for(;i<m&a...
2018-07-11 08:56:58
205
原创 POJ 2388 随机快排
随机快排,寻找第k大的数(当然包括中位数啦注意随机数rand()需要#include<cstdlib>qsort 的return条件有点小变化#include<iostream>#include<vector>#include<cstdlib>//rand()using namespace std;int quicksort(vector&...
2018-07-10 21:16:56
216
原创 POJ 1007 求逆序数 快排
我自己的思路,顺便复习快排#include<iostream>#include<string>#include<vector>using namespace std;int getcount(string s,int len){//求逆序数 int count=0; for(int i=1;i<len;++i){ for(int j=0;...
2018-07-10 18:18:50
774
原创 POJ 1016 串
Time Limit Exceeded why???#include<iostream>#include<algorithm> #include<sstream>using namespace std;string calInv(string s){ int len=s.size();///>1 string res; sort(&am...
2018-07-10 09:41:34
180
原创 POJ 2159
#include<iostream>#include<algorithm>#include<vector>#include<string>using namespace std;void countfreq(string s,vector<int>& freq){ int len=s.size(),count=1; ...
2018-07-09 17:42:53
259
原创 POJ 3299
#include<iostream>#include<cmath>#define exp 2.718281828using namespace std;float geth(float t,float d){ float h,e; e=6.11*pow(exp,5417.7530*((1/273.16)-(1/(d+273.16)))); h=0.5555*...
2018-07-09 10:59:09
367
原创 POJ 1207
暴力 题目简直坑#include<iostream>using namespace std;int main(){ int x,y,max,count,k; while(scanf("%d %d",&x,&y)!=EOF){ cout<<x<<" "<<y<<" "
2018-07-09 09:47:16
330
原创 POJ 1005
#include<iostream>#include<cmath>#define PI 3.1415926using namespace std;int main(){ int n; cin>>n; float x,y,r,area; int year; for(int i=0;i<n;++i){ cin>>x>&g...
2018-07-08 23:50:17
172
原创 POJ 1003
#include<iostream>using namespace std;int main(){ float c; while(cin>>c,c!=0.00){ int k=2; float sum=0.0; sum+=1.0/k; while(sum<c){ k+=1; sum+=1.0/k; } cout<&...
2018-07-08 17:39:36
163
原创 POJ百练 2018研究生上机测试A(回文数)
结束后不能在线评测。欢迎指正。#include<cstdio>#include<stdio.h>#include<cstdlib>#include<sstream>#include<iostream>#include<string>#include<cstring>#include<algorithm
2018-07-08 16:49:08
345
原创 hdoj水题练习(七)
hdoj 1237表达式求值 by 两个栈起初Runtime Error(ACCESS_VIOLATION) 最后参考了这篇博客 特别要注意0满满的都是细节 也是很艰辛//hdoj 1237 表达式求值#include <stdio.h>#include <stack>#include <string.h>///strcmp#incl...
2018-04-22 00:20:40
261
原创 hdoj水题练习(六)
emmm,这个系列似乎没那么水了><DP系列,虽然个人觉得第一题没那么典型,不过确实也用到了自底向上的递推。hdoj 2062思路:递推求解每个分组中数的个数注意:1、long long 和 %lld(Runtime Error(ACCESS_VIOLATION) or WA...) 2、字典序 3、m要减去空集的情况//hdoj 2062#inc...
2018-04-20 20:44:26
250
原创 hdoj水题练习(五)
hdoj2031我的思路:(注意数值转字符或字符串)//hdoj 2031#include <string>#include <stdio.h>#include <iostream>#include <sstream>//字符串流对象using namespace std;int main(){ int n,r; bool minus...
2018-04-20 17:58:04
246
原创 某度笔试编程题
刚做出来,好气哦,不确定对不对,欢迎大家纠错~~题目大概是输入 n行m列,起始点sx,sy,求能到达的最大数字。只能往比自己大的方向走。#include <iostream>#include<vector>using namespace std;int n,m,sx,sy;void until_ismax(int i,int j,vector<vector...
2018-04-18 22:59:41
282
原创 hdoj水题练习(四)
//hdoj 2057十六进制输入输出:%x刚开始自己傻逼地用字符串来做转换TATlearn from others: 由于题目所说的16进制数长度小于15位,所以换算成2进制位的话小于64(16*4)位,需用长整形。 long long 和_int64输出16进制数时,不能输出负数,若是负数必须转换一下。实测:负数输出的是补码-1 0fffffffffffffff...
2018-04-18 11:27:09
214
原创 hdoj水题练习(三)
字符串系列(包括上一篇的2072)//hdoj 2081#include<string>#include<iostream>using namespace std;int main(){ int n; cin>>n; for(int i=0;i<n;++i){ string l,s="6"; cin>>l; s+=l.substr(6,5...
2018-04-18 11:17:33
247
原创 中序遍历二叉树
//中序遍历1#include<stack>void inorder(TreeNode* root){//注意p的更新! if(!root) return; stack<TreeNode*> stk; stk.push(root); TreeNode* p; while(!stk.empty()){ while(p=stk.top(...
2018-04-13 20:39:14
236
原创 归并排序
//归并排序#include<vector>#include<iostream>using namespace std;void merge(vector<int> array,vector<int>&res,int m,int n, int t){ int i=m,j=n,k=m; for(;i<n&&j&...
2018-04-13 12:19:46
205
原创 堆排序
//堆排序#include<vector>#include<iostream>using namespace std;void heapAdjust(int s,int t,vector<int>& array){//s,t从1开始,用于数组下标时要-1 int head=array[s-1]; for(int j=2*s;j<=t;...
2018-04-13 10:28:31
174
原创 快速排序
这么基础的东西不应该生疏了!//快速排序#include<vector>#include<iostream>#include<stdio.h>using namespace std;int partion(int low,int high,vector<int>&array){ int pivot=array[low]; whi...
2018-04-13 09:07:19
171
原创 hdoj水题练习(二)
hdoj2072 惭愧,做了好久。但依然是水题嗯。//hdoj2072#include<string>#include<set>#include<iostream>#include <sstream> //getlineusing namespace std;int mai...
2018-04-06 17:04:51
350
原创 hdoj水题练习(一)
刷了不少剑指offer和leetcode练习算法,都是只要写个函数,结果被要求格式的输入输出打败!哭!赶快练习!按这个顺序:https://blog.youkuaiyun.com/liuqiyao_01/article/details/8477645//hdoj1089 针对行数未知的输入#include <stdio.h>//要有.hint main(){ int a, b; whi...
2018-04-06 15:00:05
1100
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人