自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 收藏
  • 关注

原创 基于反馈的Query改写:你说过的,我才最懂

​一、前言本文对之前做过一段时间的Query改写(纠错,本文不严格区分这两种叫法)做一些总结,算法原理可以参考亚马逊的这篇论文:Feedback-Based Self-Learning in Large-Scale Conversational AI Agents。二、方法以前做Query纠错的一些通用思路是:基于大规模的线上日志训练一个相对置信的语言模型,基于相似度、编辑距离等方式挖掘一批高频词汇改写对,譬如说对于“伴奏兄弟”-->“半吨兄弟”这么一个改写对,原始ASR识别后的query

2020-12-30 10:41:00 1340

原创 多标准中文分词:你需要的小trick

一、前言作为NLP领域中经典任务之一,分词几乎是其他所有NLP任务的基础,开展下游NLP任务之前,往往需要先对文本进行分词。多标准分词(Multi-criteria Chinese word segmentation, MCCWS)的任务目的,即是为了利用多种标准分词结果的共性知识,来提升单一分词标准的标注效果。本文提出的模型,可以根据分词标准指示,基于单一模型,给出不同标准的分词结果。二、模型2.1 模型细节从现在这个时间点看,模型相对来看比较简单(这也许是中了EMNLP Findings

2020-12-30 10:32:35 325

原创 跨语言评测数据集之XNLI介绍

一、前言:对于跨语言理解及与稀缺语言相关的迁移学习而言,一个评测数据集不可或缺。2018年,Facebook的提出了XNLI(Cross-Lingual Natural Language Inference)这个数据集,旨在提供一个统一的评测数据集以方便相关研究。在论文中,Facebook还提出包括多个机器翻译任务、词袋及LSTM编码器在内的baseline。关于XNLI更多内容可参考Face...

2020-02-23 20:59:26 5684 2

原创 flair embedding--《Contextual String Embeddings for Sequence Labeling》阅读笔记

这篇文章主要是提出了一种embedding方法。首先作者介绍了现有sota的embedding方法:classical word embedding,在超大语料上预训练; character-level features,在领域内的数据集上训练,以捕捉任务相关的subword特性; 情境化的embedding,捕捉一些多义词和任务相关的词;作者提出了一种上下文字符embedding...

2019-11-24 17:48:25 1034

原创 句子相似度计算模型

前言:句子相似度计算,结合蚂蚁的竞赛来进行模型的分析,加深自己的理解基于bilstm的句子相似度计算模型首先是得到句子对应的双向的lstm后的表示,在这里,首先使用embedding_lookup函数找到句子中对应分词的embedding,在将分词list扔进前后向的lstm中,分别得到前向和后向的编码,再使用tf.nn.bidirectional_dynamic_rnn将前后向lstm编码...

2019-10-28 23:03:06 1391

原创 sequence labeling笔记(一)

最近一直在做序列标注的工作,记录一下在工作中读的一些论文,今天记录这两篇,分别是《Morphosyntactic Tagging with a Meta-BiLSTM Model over Context Sensitive Token Encodings》和《Hierarchically-Refined Label Attention Network for Sequence Labeling》...

2019-10-21 00:15:57 1973

原创 Python批量修改图片分辨率

前言:处理图片需要,需把图片都转换成1920*1280的大小, python实现很方便,需要导入图片处理的Image包和匹配的glob包,很简单,代码如下:img_path = glob.glob("D:/chosed/*.jpg")path_save = "D:/closedd"for file in img_path: name = os.path.join(path_save

2018-01-28 15:46:09 10886 1

原创 隐马尔科夫实现中文分词(Python3实现)

前言:隐马尔科夫的相关概念就不多说了,就是一个三元组(A,B,Pi),分别表示转移概率,发射概率和初始状态概率。首先是语料库的训练部分:#!/usr/bin/python#-*-coding:utf-8import sysimport mathimport pdbstate_M = 4word_N = 0A_dic = {}B_dic = {}Count_dic = {

2018-01-22 21:07:33 2953 5

原创 批量读取不同类型数据并存入不同数据库表

前言:读取trace和warning数据,批量存入不同的数据库表中package com.data;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.sql.Connection;import java.s

2018-01-18 16:12:08 748

原创 电磁初步分析(部分图表生成)

1、一段时间内dc数据每天生成总量的折线分布。fig,ax = plt.subplots()x = timey = spaceplt.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus'] = Falsexticks = range(0, len(x))xlabels = [x[index] f

2018-01-15 11:46:20 402

原创 远程读取elasticSearch数据库并导出数据

package org.elasticsearch.esTest;import java.awt.List;import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;import java

2018-01-15 11:36:28 7131

原创 数据分析之微信通讯录分析

简介: python有个itchat的库,据说是一个非常神奇的python库,可以干很多有意思的事情,今天闲着没事,把自己的微信分析了个遍,包括对微信好友性别、地域、以及签名等的分析。 思路: 有了itchat这个库,一切都不是太难办。先介绍一下,本人微信上目前有340左右的好友,首先是对微信好友性别的分析,我想看一下自己微信上究竟是男生还是女生还是,好吧,其实是想看一下性别的占比。话不多说,

2017-08-20 23:53:01 3483 1

原创 scrapy爬取途牛网站旅游数据

描述:采取了scrapy框架对途牛网旅游数据进行了爬取,刚开始练手,所以只爬了四个字段用作测试,分别是景点名称、景点位置、景点开放时间、景点描述,爬取结果存的是json格式。 部分数据: 部分代码: 遇到的问题:start_urls是不能动态添加URL的,这个还需要研究,这里只是简单把所有待爬取的网址全扔进了start_urls里面,这是可行的,但是对网址的预处理就很耗时间了。然后是对

2017-08-20 00:00:31 6046 1

原创 Python+jieba生成词云

描述:使用Python和jieba生成词云。#coding:utf-8from os import pathfrom scipy.misc import imreadimport numpy as npimport pickleimport matplotlib.pyplot as pltimport jiebafrom wordcloud import WordCloud,STOPW

2017-07-06 00:44:13 1442

原创 Python根据数值大小随机返回一个key,并保证返回这个key的概率和它所对应的value成正比

题目:def randomSymbol(symbolAndWeight): ”’ Input: symbolAndWeight is a dict of { str: int }, for example, { ‘a’: 2, ‘b’: 3, ‘c’: 5, }Returns:

2017-06-29 14:30:56 902

原创 剑指offer_25

题意:输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径(一直到叶节点)。 思路:分别用栈和ArrayList实现了。 代码:package MianShiTi_25;import java.awt.FontFormatException;import java.util.ArrayList;import java.util.Queue;import java.util

2017-03-26 16:30:18 235 1

原创 剑指offer_23

题意:层序打印二叉树 思路:维护一个队列,存储二叉树从上至下、从左至右的打印顺序,先进先出。 代码:package MianShiTi_23;import java.util.LinkedList;import java.util.Queue;import javax.swing.text.AbstractDocument.LeafElement;public class MianShiTi_

2017-03-24 23:03:21 203

原创 剑指offer_22

题意:栈元素的压入、弹出 思路:给出了压入的顺序和弹出的次序,需要搞一个栈来存储压入的数组元素,然后进行比较。具体看代码。package MianShiTi_22;import java.util.Stack;public class MianShiTi_22 { //只有当要弹出的元素恰好是栈顶元素,那么直接弹出。 //若下一个弹出的元素不在栈栈顶,那么把压栈顺序中还没有压入的元素

2017-03-24 23:01:42 165

原创 剑指offer_21

题意:实现带有min函数的栈 思路:用两个栈,一个num栈,一个min栈,当压入一个数字时候,若是比min栈中最小值大,那么min栈依然压入min栈栈顶的数字,否则,压入当前待压入的值。 代码:package MianShiTi_21;import java.util.Stack;public class MianShiTi_21 { static Stack<Integer> num

2017-03-23 15:18:51 224

原创 jianzhioffer_20

题意:顺时针打印出矩阵的所有元素 思路:看代码。 代码:package MianShiTi_20;public class MianShiTi_20 { public static void printMatrixClockwisely(int[][] numbers) { int rows = numbers.length; int cols = numb

2017-03-22 22:45:19 224

原创 剑指offer_19

题意:二叉树镜像 思路:看代码,鲁棒性要处理好,对于空节点的处理。 代码:package MianShiTi_19;public class MianShiTi_19 { public static class BinaryNode{ int value; BinaryNode left; BinaryNode right; }

2017-03-21 20:17:15 206

原创 剑指offer_14(调整数组顺序使得奇数位于偶数前面)

题意:调整数组顺序使得奇数位于偶数前面 思路:搞两个指针一前一后 代码:package MianShiTi_14;public class MianShiTi_14 { //将奇数都移到前面,偶数都移到后面 public static void EvenExchangeOdd(int[] num) throws Exception { if(num == null

2017-03-17 20:06:41 175

原创 剑指offer_13(在O(1)的时间内删除链表中的某一个元素)

题意:在O(1)的时间内删除链表中的某一个元素 思路:若链表只有一个元素,那么就是删除这一唯一元素;若删除的是链表最后一个元素,那么只能从头遍历;若删除的是只是中间的一个元素,那么将待删除的元素的下一个元素的值赋给待删除元素,再将待删除元素的下一个元素给删除即可。 代码:package MianShiTi_13;import java.awt.List;public class MianShiT

2017-03-17 16:32:47 229

原创 剑指offer_12(打印出从1到最大n位数)

题意:给定一个整数n,打印出从1到最大n位数。 思路:一般解法很简单,但是基于效率考虑,选择位运算来解答。 代码:package MianShiTi_12;public class MianShiTi_12 { public static boolean isOverflow(int[] number) throws Exception { if(number.leng

2017-03-17 16:28:44 180

原创 剑指offer_9

题意:在Excel表中,A表示第一列,B表示第二列……Z表示第26列,AA表示第27列,AB表示第28列….以此类推,输入用字母表示的列号编码,输出他是第几列。 思路:看成26进制来处理就可以。

2017-03-09 22:58:55 205

原创 剑指offer_8

题意:找出旋转数组的最小值。例如,3,4,5,1,2是1,2,3,4,5的一个旋转数组。 思路:采用二分查找的方式可以获得O(log(n))的时间复杂度,但是这里需要注意几地方,第一,循环的中止;第二,当begin、last和mid的值都相等的时候,怎么处理。 代码:package MianShiTi_8;public class MianShiTi_8 { public static

2017-03-08 22:29:42 192

原创 怎么判断N!的阶乘末尾有几个零

题意:N!的阶乘末尾有几个零。 思路:能产生零的只有2*5=10,所但是2的个数是绝对比5多的,所以只需知道5的个数。 代码:package theEndOfN_阶乘;public class theEndOfN_阶乘 { public static int solve(int N) { int count = 0; for(int i = 1 ; i

2017-03-03 00:01:30 2583

原创 360笔试题(2016年)—找出第一个出现一次的字符

题意:给定字符数N,找出N个字符中第一次出现的字符。 思路:遍历字符串,记录每个字符出现的次数,存放在数组中,再遍历数组,找出第一个次数为1的字符。 代码:package FindFirstCharacter;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.IOException;imp

2017-03-02 00:48:18 229

原创 剑指offer(题六)

题意:给出二叉树前序和中序序列,要求重构该二叉树并输出根节点。 思路:就是由前序和中序确认该二叉树的形状。 代码:package MianShiTi_6;public class MianShiTi_6 { public static class BinaryTreeNode{ int value; BinaryTreeNode left;

2017-02-27 20:47:06 162

原创 剑指offer(题四)

题意:将一个字符串中所有的空格替换成指定的字符串。 思路:先遍历字符串,计算有多少空格,再计算将该字符串中空格替换了指定字符串后,替换后的长度是多大。初始化一个长度为替换后长度的数组,设定两个游标,index1指向替换后数组的末尾,index2指向替换前字符串的末尾,从后往前遍历,若index2指定的字符为空格,则在index1指定的位置加上待替换的字符串,否则则将字符复制至index1位置。

2017-02-24 21:53:37 182

原创 剑指offer(题三)

题意:给出一个二维矩阵,每行、每列都递增排序。查找这个矩阵中的某个数,看是否存在。 思路:每次看最右上角的数,若和待查找的数相等,则返回;若是大于目标数,则将矩阵中的该列删除;若是小于目标数,则将矩阵中的该行删除。同样,也可每次看最左下角的数字。 代码:package MianShiTi_3;public class MianShiTi_3 { //从最右上角开始查找 publi

2017-02-23 22:25:21 211

原创 restore ip addresses

题意:给定一串数字,返回这串数字能够组成的所有合法ip。 思路:对ip的每一段进行isValid判断,再对每一段的ip,若满足长度为3且通过isValid判断,则返回;否则,对每一段的ip,若当前分割满足isValid,则递归调用dfs,进行下一轮的调用。 代码:package com.RestoreIpAddresses;import java.util.ArrayList;public cl

2016-12-09 11:25:35 192

原创 概率算法

一、Sherwood算法 概念:设A是一个确定性算法,当他的输入实例为X时所需的计算时间为tA(x),记Xn为算法A的输入规模为n的全体,则当问题的输入规模为n时,算法A所需要的平均时间是:显然不能排除存在x∈Xn,的可能性。希望获得一个随机化算法B,使得对问题的输入规模为n的每一个实例均有这就是舍伍德算法设计的基本思想。当s(n)与tA(n)相比可忽略时,舍伍德算法可获得很好的平均性能。 二、

2016-12-07 23:11:21 337

原创 Surrounded Regions

题意:这道题是说一个O周围都是X那么这个O就得变成X。那么就可以发现四周这一圈如果有O肯定不能四周都被X包围,同时这个O也将会是潜在的内部的O的缺口。 思路:用BFS。对第一行和最后一行,第一列和最后一列进行遍历,若是X,则不作处理直接返回;若是O,则遍历其上下左右的元素,若是有O,则把相邻的O置为#;结束之后,遍历每一个元素,若为#,则说明之前的是O,把#置为O即可;若还是为O,则说明这个O是被

2016-12-03 10:09:18 181

原创 word ladder &word ladder 2

word ladder 题意:给定start和end,一个字典序列,计算从start变成end,利用字典序列里的字符串进行转换,所需要变换次数。 例如,start = hit,end = cog ,dict = [“hot” , “dot” , “dog” , “lot” , “log”]; 思路:使用BFS的遍历思路,对start,对其每一位上的字母从‘a’到‘z’进行替换,若是替换后的字符

2016-12-03 09:41:43 394

原创 Longest Substring without repeating Characters(12.5)

题意:给定一个字符串,找出最长不重复的子串。 思路1:贪心法。从左往右扫描,当遇到重复字母时,以上一个重复字母的index+1,作为新的搜索起始位置,直至最后一个字母。 思路二:滚动数组法。维护一个hashset,两个指针end和start。记录当前遍历的子串,具体见代码。 代码: package com.LongestSubstring_12_5;import java.util.HashS

2016-11-28 11:25:44 238

原创 container with most water(12.6)

题意:(i,ai)二维坐标上的一组数组。给出这么一个数组,计算出任意两个数据能够组成的最大的面积。 思路:短板原理。维护两个指针,一前一后,计算面积。 代码:package com.ContainerWithMostWater;public class CalWater { public int calWater(int[] heights) { int low = 0

2016-11-28 11:14:57 178

原创 Jump Game

题意:Given an array of non-negative integers, you are initially positioned at the first index of the array.Each element in the array represents your maximum jump length at that position.Determine if you

2016-11-27 20:40:45 140

原创 decode ways

题意:把A-Z字母按照1-26的顺序对应起来,然后给出一个数字字符串,计算出对应的字母顺序有多少种。如‘12’,对应有AB、L两种。 思路:动规,设置prev,cur两个变量记录。 代码:package com.decodeWays;public class decodeWays { public int calDecodeWays(String s){ int prev

2016-11-25 22:10:21 196

原创 Edit Distance

题意:将一个字符串转为另外一个字符串需要的步数,可以插入、删除、替换一个字符,求需要的最少的操作步数。 思路:动规解决。Distance[i][j]记录操作步数。 考虑str1c和str2d,若是c == d,则Distance[i][j] = Distance[i-1][j] +1; 若是在c后面添加一个d,则是Distance[i][j] = Distance[i][j-1] +1; 若

2016-11-25 19:10:58 203

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除