【NLP_Stanford课堂】正则表达式】的更多相关文章

或者 [Ww]oods,方括号里的是或的关系,符合其一即被提出.用来匹配单个字符 [A-Z]:表示所有的大写字母之一 [a-z]:表示所有的小写字母之一 [0-9]:表示所有的0-9的数字之一 否定:[^A-Z]表示不是任何大写字母,在开头否定方括号里的所有内容. [^e^]:表示不是e也不是^ a^b: a|b,用|来表示或,不需要框起来,相当于[abc],可以是长单词 yours|mine 匹配次数 ?表示?前面的那个字符可以出现或者不出现 *表示*前面的那个字符可以出现0次或者多次 +表示…
依照什么切分句子——标点符号 无歧义的:!?等 存在歧义的:. 英文中的.不止表示句号,也可能出现在句子中间,比如缩写Dr. 或者数字里的小数点4.3 解决方法:建立一个二元分类器: 检查“.” 判断这个是不是出现在句尾 具体使用手写规则(正则表达式).机器学习分类器,最简单的是决策树 决策树: 首先检查是否在该词之后有很多空白行,如果是,则该词是句尾,否则检查下一项 检查最后一个标点是不是?, !, 或者:,如果是,则该词是句尾,否则检查下一项 检查最后一个标点是不是句号,如果否,则该词不是句…
一.简介 实例: 电影评论.产品评论是positive还是negative 公众.消费者的信心是否在增加 公众对于候选人.社会事件等的倾向 预测股票市场的涨跌 Affective States又分为: emotion:短暂的情感,比如生气.伤心.joyful开心.害怕.羞愧.骄傲等 mood:漫无原因的低强度长时间持续的主观感觉变化,比如cheerful,gloomy阴郁.irritable急躁. interpersonal stance:人际关系中对另一个人的立场,比如友好的.友善的 atti…
一.实验评估参数 实验数据本身可以分为是否属于某一个类(即correct和not correct),表示本身是否属于某一类别上,这是客观事实:又可以按照我们系统的输出是否属于某一个类(即selected和not selected),表示是否分到某一类别,这是实验输出. 以垃圾邮件为例: tp:表示系统认为它是垃圾邮件,而确实它是垃圾邮件,所以为true positive fn:表示系统不认为它是垃圾邮件,但它其实是垃圾邮件,所以为false negative fp:表示系统认为是,其实不是,所以…
文本分类实例:分辨垃圾邮件.文章作者识别.作者性别识别.电影评论情感识别(积极或消极).文章主题识别及任何可分类的任务. 一.文本分类问题定义: 输入: 一个文本d 一个固定的类别集合C={c1,c2,...,cj},一共j个类别 输出:一个d的预测类别c∈C 方法: 最简单的是使用基于词或其他特征组合的手写规则 垃圾邮件:列举出一系列黑名单的邮箱地址或者词(比如,“dollars”和“have been selected”) 如果规则很完备,准确率会非常高,但是一般很难做到或者花费会很贵 一般…
在多种应用比如word中都有拼写检查和校正功能,具体步骤分为: 拼写错误检测 拼写错误校正: 自动校正:hte -> the 建议一个校正 建议多个校正 拼写错误类型: Non-word Errors非词错误:即写了一个不是单词的词,比如graffe并不存在,应校正为giraffe 检测方法:认为任一不在字典中的词都是一个非词错误,因此字典本身越大越好 校正方法:为错误词产生一个候选,其是跟错误词相似的真词,然后选择加权编辑距离最短或者信道噪声概率最高的那个词. Real-word Errors…
平滑方法: 1. Add-1 smoothing 2. Add-k smoothing 设m=1/V,则有 从而每一项可以跟词汇表的大小相关 3. Unigram prior smoothing 将上式中的1/v换成unigram概率P(wi),则有: 其是插值的一种变体,其将某种unigram概率加入到bigram的计算中. 4. Good-Turing Smoothing 大部分平滑算法比如Good-Turing.Kneser-Ney.Witten-Bell采用的主要思想是用之前已知的数据的…
一.产生句子 方法:Shannon Visualization Method 过程:根据概率,每次随机选择一个bigram,从而来产生一个句子 比如: 从句子开始标志的bigram开始,我们先有一个(<s>, w),w是随机一个单词,比较有可能的是I这个单词,那么我们就有(<s>, I) 随机选择下一个单词,得到(w,x),这里w是I,x概率最大的是want 重复以上步骤,直到得到</s> 问题1:过度拟合.N-grams在预测句子上只有当测试语料库和训练语料库非常相似…
一.如何评价语言模型的好坏 标准:比起语法不通的.不太可能出现的句子,是否为“真实”或"比较可能出现的”句子分配更高的概率 过程:先在训练数据集上训练模型的参数,然后在测试数据集上测试模型的效果. 要求:测试数据集与训练数据集完全不同 评价指标:用以评价模型的测试数据集上的效果 二.N-gram 模型的外部评测 1. 比较两个模型最好的评价方法: 将两个模型A和B应用于同一个任务:拼写检查.语音识别.机器翻译等 运行这个任务,分别得到A和B的准确性:有多少个拼写错误的单词被恰当的纠正了?或者有多…
一.语言模型 旨在:给一个句子或一组词计算一个联合概率 作用: 机器翻译:用以区分翻译结果的好坏 拼写校正:某一个拼错的单词是这个单词的概率更大,所以校正 语音识别:语音识别出来是这个句子的概率更大 总结或问答系统 相关任务:在原句子的基础上,计算一个新词的条件概率,该概率与P(w1w2w3w4w5)息息相关. 任何一个模型计算以上两个概率的,我们都称之为语言模型LM. 二.如何计算概率 方法:依赖概率的链式规则 从而有: 问题:如何预估这些概率 方法一:计数和细分 但是不可能做到! 原因:句子…
一.什么是最小编辑距离 最小编辑距离:是用以衡量两个字符串之间的相似度,是两个字符串之间的最小操作数,即从一个字符转换成另一个字符所需要的操作数,包括插入.删除和置换. 每个操作数的cost: 每个操作数的cost一般是1 如果置换的cost是2,而插入和删除的cost是1,我们称之为Levenshtein 距离. 作用: 计算衡量机器翻译和语音识别的好坏:将机器得到的字符串与专家写的字符串比较最小编辑距离,以一个单词为一个单位. 命名实体识别和链接:比如通过计算最小编辑距离,可以判定IBM.I…
一.为什么要规范化 在做信息检索的时候,一般都是精确匹配,如果不做规范化,难以做查询,比如用U.S.A去检索文本,结果文本里实际上存的是USA,那么实际上应该能查到的结果查不到了. 所以需要对所有内容做规范化,以实现检索的有效性. 二.怎么规范化 大小写转换 在信息检索的应用上,通常将大写字母转换成小写字母,因为用户更倾向于使用小写字母 例外情况:当大写字母出现在句子的中间的时候,一般有特殊意义,不能转换,比如是某个机构的缩写 对于情感分析.机器翻译或者信息抽取,大写字母一般都非常重要,不能转换…
一.如何定义一个单词 在统计一句话有多少个单词的时候,首要问题是如何定义一个单词,通常有三种情况: 是否认为句中的停顿词比如Uh是一个单词,我们称之为fragment,或者filled pause. 是否认为一个单词的不同形态是一个单词. 是否认为一个完整的词组,比如San Francisco是一个单词 以上三种在不同任务下有不同的处理方法. 二.统计什么信息 在统计时,我们统计如下信息: word types:词汇表中的一个元素,不重复 word token:文本中该type的一个实例,可重复…
正则表达式是构成搜索模式的字符序列. 该搜索模式可用于文本搜索和文本替换操作. 什么是正则表达式? 正则表达式是构成搜索模式(search pattern)的字符序列. 当您搜索文本中的数据时,您可使用搜索模式来描述您搜索的内容. 正则表达式可以是单字符,或者更复杂的模式. 正则表达式可用于执行所有类型的文本搜索和文本替换操作. 语法 /pattern/modifiers; 实例 var patt = /Sysoft/i; 例子解释: /sysoft/i 是一个正则表达式. sysoft是模式(…
1.[]表达式的用法 正则表达式可以让我们匹配我们想要的字符串形式,增加了效率,在自然语言处理领域有较大的作用. 模式 匹配 [Ww]oodchuck Woodchuck,woodchuck [1234567890] Any digit 如上面所用的模式既是正则表达式中的常用语法,在“[]”内部的字母表示可以匹配其中的任一字母, [A-Z]表示大写字母,[a-z]表示小写字母,[0-9]表示数字,[A-Za-z]表示大写加小写字母, 2.特别字符的用法 模式 含义 匹配 colou?r 匹配前面…
OCP 051课堂笔记 目录 OCP 051课堂笔记... 1 第一章.Oracle命令类别:... 4 第二章.SQL的基本函数... 4 2.1 单行函数与多行函数... 4 2.2 单行函数的几种类型... 4 第三章.SQL的数据类型... 10 3.1 四种基本的常用数据类型... 10 3.2 数据类型的转换... 12 第四章.WHERE子句中数据的比较和运算... 15 4.1 隐式比较与显式比较:... 15 4.2 运算符优先级:... 15 4.3 用BETWEEN AND…
昨天 2018 年 01 月 31 日,农历腊月十五日.20:00 左右,152 年一遇的月全食.血月.蓝月将今晚呈现空中,虽然没有看到蓝月亮,血月.月全食也是勉强可以了,还是可以想像一下一瓶蓝月亮洗衣液悬于空上,耳边是"大家好,我是渣渣灰,给大家推荐一款好玩的游戏--贪玩蓝月......" 22:00左右的样子,月亮已经出来了,坐下来写写博客啦. 对计算机程序员而言,要问当下前沿什么方向最流行?我想在大数据.云计算.人工智能这些方向中,目前位于翘楚的就是大AL(人工智能了),一种产品…
专栏目录: Python爬虫与数据分析之python教学视频.python源码分享,python Python爬虫与数据分析之基础教程:Python的语法.字典.元组.列表 Python爬虫与数据分析之进阶教程:文件操作.lambda表达式.递归.yield生成器 Python爬虫与数据分析之模块:内置模块.开源模块.自定义模块 Python爬虫与数据分析之爬虫技能:urlib库.xpath选择器.正则表达式 Python爬虫与数据分析之京东爬虫实战:爬取京东商品并存入sqlite3数据库 Py…
正则表达式就是用查找字符串的,它能查找规则比较复杂的字符串反斜杠:正则表达式里面用"\"作为转义字符. s='<a class="h3" href=""><b>python学习笔记</b></a>' print(re.findall(r'\<a class\=\"h3\" href\=\"\"><b>(.*)\<\/b\>\…
<Java 程序设计>课堂实践项目-Arrays和String单元测试 课后学习总结 目录 改变 Arrays和String单元测试实验要求 课堂实践成果 课后思考 改变 修改了博客整体布局,改变了之前贴个截图粘个代码就糊弄完的观念,这次布局和内容都有修改.     补充了部分没有讲过的测试类的样例,图片等都是再次运行之后截得细致的图片,电脑上也有原图. Arrays和String单元测试实践要求 问:在IDEA中以TDD的方式对String类和Arrays类进行学习- 测试相关方法的正常,错…
第六周课堂测试 1.现有以下代码,哪些选项插入到第5行可以通过编译?(BDF) 1.import java.util.*; 2. 3.Class FindStuff { 4.public static void main (String[]args) { 5.//insert code here 6.c.put ("X", 123): 7. } 8.} A .Map c= new SortedMap(); B .HashMap c= new HashMap(); C .HashMap…
第五周课堂测试 1.下列关于内部类的说法,正确的是(ABD) A .其他类不可以用某个类的内部类声明对象. B .内部类字节码文件的名字格式是"外嵌类名$内部类名". C .内部类的类体可以声明类变量和类方法. D .内部类在成员位置上,因此可以被private修饰. 2.外部类访问内部类,必须建立内部类对象.(A) A .true B .false 3.下面的类无法通过编译,第三行出现错误提示,因为类不可以被static修饰.(B) class Outer{ int x = 3; s…
一.正则表达式 1.概念:英语:Regular Expression,在代码中常简写为regex.正则表达式,是一个字符串,使用单个字符串来描述.用来定义匹配规则,匹配一系列符合某个句法规则的字符串. 在开发中,正则表达式通常被用来检索.替换那些符合某个规则的文本. 2. 正则表达式的匹配规则: JDK中Pattern类中有正则表达式的的规则定义,正则表达式中明确区分大小写字母. 3.正则表达式的语法规则: 字符:x 含义:代表的是字符x 例如:匹配规则为 "a",那么需要匹配的字符串…
如下:“23nr qreq2 34fq4 4454gsr 45” [将这一串字符中的数字挑出来,当然人家作伴的不能被分开]. 一.普通方法: <script type="text/javascript"> var str = "23nr qreq2 34fq4 4454gsr 45"; var tep = ""; var arr= []; for(var i=0;i<str.length;i++){ if(str.charAt(…
20155322 2016-2017-2 <Java面向对象程序设计>第十二周课堂练习之Arrays和String单元测试 练习目地 在IDEA中以TDD的方式对String类和Arrays类进行学习 练习要求 测试相关方法的正常,错误和边界情况 TDD的方式 在实验二ComplexTest的基础上进行修改 练习内容 Strings类: charAt split Arrays类: sort binarySearch 练习过程: 1. charAt: 此方法返回位于字符串的指定索引处的字符.该字…
编程范式巡礼(最终季)--超级范式 本周是编程范式系列的最后一次分享,让我们拉长视角,看向远方,进入"元编程"的领域,在<冒号课堂>中起了个很酷的名字:"超级范式". 从通用语言到领域语言 先给大家做一个小练习: 以下哪些属于编程语言: A.Java B.Html C.Spring Bean Definition D.Comment 答案是ABC,从中,我们可以感受到编程语言的一些特性: 必需:有语法结构.可运行 可选:可编译.可调试.可扩展 类似人类语…
js进阶正则表达式5几个小实例(原样匹配的字符在正则中原样输出)(取反^) 一.总结 原样匹配的字符在正则中原样输出:var reg4=/第[1-2][0-9]章/g //10-29 取反^:var reg1=/[^0-9]/g 二.js进阶正则表达式5几个小实例 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8"> <title>…
js进阶正则表达式方括号(方括号作用)(js正则是在双正斜杠之中:/[a-z]/g) 一.总结 方括号:范围 圆括号:选 大括号:数量 1.js正则是在双正斜杠之中: var reg2=/[a-z]/g 2.字符串点replace: str2.replace(reg,'') 二.js进阶正则表达式方括号 方括号用于查找某个范围内的字符: 表达式 描述 [abc] 查找方括号之间的任何字符. [^abc] 查找任何不在方括号之间的字符. [0-9] 查找任何从 0 至 9 的数字. [a-z] 查…
js进阶正则表达式修饰符(i.g.m)(var reg2=/html/gi) 一.总结 1.正则表达式使用:通过那些支持正则表达式的字符串函数来使用(search.match.replace.split) 2.正则表达式修饰符:i和g和m  global ignoreCase multiline 3.两种使用方式: var reg1=new RegExp('a','g'); var reg2=/a/g; 4.修饰符使用:var reg2=/html/gi //g执行全局匹配 5.正则表达式使用:…
js进阶正则表达式实现过滤字符串(RegExp对象操作正则表达式)(正则:regular)(表达式:expression) 一.总结 1.str_replace:正则作用:高效快速匹配 2.break关键字 3.RegExp对象操作正则表达式 (正则:regular) ['regjʊlə] (表达式:expression) [ɪkˈspreʃn] 二.js进阶正则表达式实现过滤字符串 <!DOCTYPE html> <html lang="zh-cn"> <…