闲记

零散问题:
1)编辑距离

def minEditDist(sm,sn):
    m,n = len(sm)+1,len(sn)+1
    # create a matrix (m*n) 
    matrix = [[0]*n for i in range(m)] 
    matrix[0][0]=0
    for i in range(1,m):
        matrix[i][0] = matrix[i-1][0] + 1 
    for j in range(1,n):
        matrix[0][j] = matrix[0][j-1]+1 
     for i in range(m):
        print matrix[i]

    print "********************"
    cost = 0 
    for i in range(1,m):
        for j in range(1,n):
            if sm[i-1]==sn[j-1]:
                cost = 0
            else:
                cost = 1 
            matrix[i][j]=min(matrix[i-1][j]+1,matrix[i][j-1]+1,matrix[i-1][j-1]+cost)
    for i in range(m):
        print matrix[i]  return matrix[m-1][n-1]
	mindist=minEditDist("ivan1","ivan2")
	print mindist

2)cos–相似度计算
input1.size() [batch_size, num_choices, hidden_size]
input2.size() [batch_size, hidden_size]
input2.repeat(1,num_chioces,1)
returned = torch.nn.CosineSimilarity(dim=2,eps=1e-6)->[batch_size, num_choices]
3)word break


CHID比赛:
1)

求blank state和choice_sentence余弦度,感觉过于简单,首先blank states应该进行更深的embedding, 其实cos太过简单(我只是想随便改改参数做个比赛,说实话我不是很认真,纯属是想碰运气外加了解了解)
一般阅读理解是给出,context,question,answer。而CHID是给出context和answer,有点像完形填空,但是完形填空是单个词,而我的是有解释的文本向量,

2)方法搜查:
想问题和sentence每个词做attn,之后问题与sentence匹配,
I. 略,依存语法:理解较复杂句子的结构和语义信息
II. bert阅读理解,是直接问题和context通过concat之后输入bert,之后预测答案(start,end),实际意义不大,
III. 语义匹配:
解决answer selction的一般思路是:首先用LSTM或者CNN的神经编码器学习问题和答案的表示,然后进行text matching,将任务转换为分类或者learning-to-rank问题。神经排序模型在QA中对候选答案进行排序以回答问题,核心是问答表示之间交互函数的设计。
https://zhuanlan.zhihu.com/p/39920446 主要是各种attention,

cloze传统方法:

  • AoA Reader这个比较厉害,
    预计使用atted-context,与blank state 进行concat,然后两个矩阵进行,运算太大,

textcnn:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值