首页 文章 精选 留言 我的

精选列表

搜索[文档处理],共10000篇文章
优秀的个人博客,低调大师

WebKit 包含专门针对 YouTube 的处理代码

Hacker News 近日一篇关于 WebKit 的帖子引起了众多讨论和关注,帖子内容主要是提到 WebKit 内核包含了对 YouTube 进行“特别定制”的代码。 代码位于如下目录:https://github.com/WebKit/WebKit/blob/main/Source/WebCore/Modules/plugins/YouTubePluginReplacement.cpp WebKit是开源的 Web 浏览器引擎。它被用于苹果的 Safari 浏览器,其分支 Blink 是由Google主导开发的开源浏览器渲染引擎。Blink 属于浏览器内核 Chromium 的一部分。 开发者指出,当第一部 iPhone 发布时,YouTube 使用的还是 Flash 技术——而不是 HTML5。对于这种情况,Safari 通过特殊的代码来使用自带播放器播放视频,而不是显示一个空白方块。这段代码就是负责该逻辑。 不过又有人发现,这段代码是在 2014 年编写的,时间远在第一代 iPhone 发布之后,而且今年有人试图删除这段代码,但没有获得开发团队的同意,因为现在一些网站依赖于这种 hack 手段。 在评论区中,还有开发者列举了其他相似的案例,比如 Chromium 包含的"flash_embed_rewrite.cc"代码希望在 Flash 删除之前替换他们在野外嵌入的长尾;Windows 95 包含的特定代码可查看 SimCity 是否正在运行,如果运行,则以不同的方式分配内存。甚至有开发者将乔布斯的毕业典礼演讲放到了 Webkit 的测试用例中。 你还知道哪些其他有趣的 hack 案例,欢迎在评论区分享。

优秀的个人博客,低调大师

自然语言处理——文本向量化(二)

一.摘要 本次分享内容是基于上篇文本向量方法的继续,上次内容中,主要分享了文本向量化的两种方法:词袋模型表示方法和基于深度学习词向量方法。词袋模型虽然能够很简单的将词表示为向量,但会造成维度灾难,并且不能够利用到文本中词顺序等信息。NNLM模型的目标是构建一个语言概率模型,但是在nnlm模型求解的过程中,从隐藏层到输出层的权重计算是非常费时的一步。下面我们将了解下C&W模型、CBOW模型和Skip-gram模型。 二.C&W模型 C&W模型是一个以生成词向量为目标的模型。在之前的NNLM模型中我们了解到了他那难于计算的权重是一个非常大的障碍。这里的C&W模型没有采用语言模型的方式去求解词语上下文的条件概率,而是直接对n元短语打分。采用的是一种更为快速高效的获取词向量的方式。C&W模型的核心思想是:如果n元短语在语料库中出现过,那么模型就会给该短语打出较高的分数;对于在语料库中未出现过或出现次数很少的短语则会得到较低的分数。C&W模型结构图如下: 图1:C&W模型结构图 相对于整个语料库来说,C&W模型需要优化的目标函数为: 图2:C&W模型目标函数 其中,(w,c)为从语料中抽取的n元短语,为保证上下文词数量的一致性,所以n为奇数;w是目标词;c表示目标词的上下文语境;w’是从词典中随机抽取出的一个词语。C&W模型采用的是成对词语的方式对目标函数进行优化。通过图2中的表达式可知,目标函数期望正样本的得分比负样本至少高1分。这里的(w,c)表示正样本,这些样本来自语料库;(w’,c)表示的负样本,负样本是将正样本序列的中间词替换成其它词得到的。通常情况是,用一个随机的词语替换正确文本序列的中间词,由此得出的新的文本序列基本就是不符合语法习惯的序列,因此这种构造负样本的方法是合理的。并且负样本是仅仅修改了正样本序列中某一个中间词得到的,所以整体的语境是没有改变的,因此也不会对分类效果造成很大效果。 与NNLM模型的目标词在输出层不同,C&W模型的输出层就包含了目标词,其输出层也变成一个节点,并且该节点的输出值大小代表着元短语的打分高低。相应的C&W模型的最后一层的运算次数为|h|,远低于NNLM模型中的|V|×|h|次。在权重计算量方面,相较NNLM模型,C&W模型可降低运算量。 三.CBOW模型和Skip-gram模型 为了能够提高获取词向量的效率,通过不断地尝试总结,在NNLM和C&W模型的基础上,得出了CBOW(Continuous Bag of-Words)模型和Skip-gram模型。 CBOW模型是使用一段文本的中间词当作目标词,并且在结构上,去掉了隐藏层,这样可以使运行的速率大幅度的提升,节省掉很多的权重矩阵计算。此外CBOW模型使用上下文各词的词向量平均值代替NNLM模型各个拼接的词向量。由于CBOW模型去除掉了隐藏层,所以其输入层就是语义上下文的表示。 图3:CBOW模型结构图 CBOW模型对目标词的条件概率计算表达式为: 图4:CBOW概率计算表达式 CBOW模型基于神经网络的一般形式: 图5:CBOW模型一般形式 CBOW模型的目标函数与NNLM模型类似,具体为最大化式: 图6:模型最大化部分 Skip-gram模型的结构同样也是没有隐藏层。和CBOW模型不同的是输入上下文的平均词向量。Skip-gram模型是从目标词w的上下文中选择一个词,将其词向量组成上下文的表示。 图7:Skip-gram模型结构图 Skip-gram模型基于神经网络的一般形式: 图8:Skip-gram模型一般形式 对于整个语料库来说,Skip-gram模型的目标函数表达式为: 图9:Skip-gram模型目标函数表达式 Skip-gram模型和CBOW模型实际上属于word2vec两种不同策略的实现方法:其中的CBOW的策略是根据上下文输入来预测当前词语的概率,并且上下文中的所有的词对当前词出现概率的影响的权重是相同的,因此也叫continuous bag-of-words模型。就类似从一个袋子中取词,取出数量足够的词就可以了,而对于取出的顺序是没有要求的。Skip-gram模型则刚好相反,它的策略和目的是将当前词当作输入,用来预测上下文概率。 总结 本次内容中的两个模型思想都属于word2vec范围。在NLP中,如过将x看作一个句子中的一个词语,y是这个词语的上下文,那么我们需要一个语言模型f(),这个模型的使命就是判断(x,y)这个样本是否符合自然语言的规则。Word2vec并不注重将这个语言模型训练的多么精确,而是关心模型训练后得到的模型参数,并将这些参数作为x的向量化表示,这便是词向量的形成。基于此,便衍生了上面CBOW模型和Skip-gram模型。

优秀的个人博客,低调大师

Converseen 0.9.9.1 发布,图片批量处理工具

Converseen 是一个用 C++ 编写的开源批量图像转换器和调整器,带有强大的 Qt5 库,它支持 100 多种图像格式。借助 Converseen,用户可以执行单张或多张图片的格式转换,调整一张或多张图像的大小,或者为网页压缩图像。 Converseen 0.9.9.1 正式发布,更新内容如下: 添加了 JFIF 支持; 修复了删除所有图片时引起的崩溃问题; 修复了设置数据位置; 翻译更新; 次要更新; 其他错误修正; 更多详情可查看:https://github.com/Faster3ck/Converseen/releases/tag/v0.9.9.1

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册