翻译自 LinkedIn Unifies Stream and Batch Processing with Apache Beam 。
今天我们推出了TensorFlow数据验证(TensorFlow Data Validation, TFDV),这是一个可帮助开发人员理解、验证和监控大规模机器学习数据的开源库。学术界和工业界都非常关注机器学习算法及其性能,但如果输入数据是错误的,所有这些优化工作都白费。理解和验证数据对于少量数据来说似乎是一项微不足道的任务,因为它们可以手动检查。然而,在实践中,数据太大,难以手动检查,并且数据通常大块连续地到达,因此有必要自动化和规模化数据分析、验证和监视任务。
Apache Beam: Portability in the times of Real Time Streaming -- Pablo Estrada(Google)
在最新版本的Flink 1.10中,PyFlink支持Python用户定义的函数,使您能够在Table API和SQL中注册和使用这些函数。但是,听完所有这些后,您可能仍然想知道PyFlink的架构到底是什么?作为PyFlink的快速指南,本文将回答这些问题。
【新智元导读】谷歌今天公布了一个用 TensorFlow 构建神经机器翻译(NMT)系统的教程,全面解释 seq2seq 模型,并演示如何从零开始构建 NMT 翻译模型。这个教程从 NMT 的背景知识讲起,详细讲解如何构建并训练一个 NMT 模型,并提供代码,绝对有用。 机器翻译——自动在两种语言之间进行翻译的任务——是机器学习中最活跃的研究领域之一。在多种机器翻译方法中,序列到序列(“seq2seq”)模型最近取得了巨大的成功,并已经成为大多数商业翻译系统的事实上的标准,例如谷歌翻译。这是由于 seq2s
Beam 是一个函数即服务平台,允许开发人员快速在云上运行他们的 AI 应用程序。用户主要在我们的平台上运行 AI 和数据工作负载,我们目前在我们的 Python SDK 中暴露了两种自动缩放策略。
这里我们借用[DeepQA]里面数据处理部分的代码,省去从原始本文文件构造对话的过程直接使用其生成的dataset-cornell-length10-filter1-vocabSize40000.pkl文件。有了该文件之后数据处理的代码就精简了很多,主要包括:
「Key insight:」 在序列生成模型中,增大beam search的搜索宽度反而会导致生成文本质量的下降,为了研究beam search隐含的归纳偏差,作者通过探索解码目标MAP的正则项,将beam search隐含的归纳偏差与认知科学中的均匀信息密度(UID)假说联系起来,通过实验证明了UID假说与文本质量的强相关性,以及beam search隐含的归纳偏差使得模型能够生成更符合UID假设的文本,恰好弥补了模型本身的误差。
最近,由于在大规模语料集上训练的大型Transformer-based语言模型的兴起(如著名的OpenAI-GPT2模型),社区对开放式语言生成的兴趣日益增加。GPT2、XLNet、CTRL这些开放式语言生成的结果令人印象深刻,除了得益于优化的transformer架构和大量无监督的训练数据外,「更好的解码方法」也发挥了重要作用。
获奖论文《Real-time Short Video Recommendation on Mobile Devices》针对短视频推荐场景,传统服务端部署的推荐系统在决策时机和实时特征利用方面的不足问题,通过在移动客户端部署推荐系统来实时响应用户反馈,提高推荐结果的精准度,从而提升用户体验。论文提出的方案 100% 流量部署到了快手短视频推荐生产环境,影响了日均超过 3.4 亿用户的体验,是端上智能在大规模推荐场景落地的创新实践。
导读:大家好,很荣幸跟大家分享 Apache Beam 架构原理及应用实践。讲这门课之前大家可以想想,从进入 IT 行业以来,不停的搬运数据,不管职务为前端,还是后台服务器端开发。随着这两年科技的发展,各种数据库,数据源,应运而生,大数据组件,框架也是千变万化,从 Hadoop 到现在的 Spark、Flink,数据库从先前的 oracle、MySQL 到现在的 NOSQL,不断延伸。那么有没有统一的框架,统一的数据源搬砖工具呢?
本文档介绍了在Android上的基本的NFC任务。它说明了如何发送和接收的NDEF消息(NDEF messages)的形式的表单里包含的NFC数据(NFC data),并介绍Android框架里支持这些功能的API。对于更高级的主题,包括与非NDEF数据的讨论,请参阅高级NFC。
大家好,我是郝一亚,来自网易云信,目前主要负责网易云信在RTC领域的音频算法的研发。本次我想要分享的题目是如何将AI音频算法应用、结合到RTC中,我会结合自己在国外的一些研究和开发的经验,包括网易云信在AI音频算法应用实战当中的一些经验总结,和大家一起聊一聊如何将AI音频算法与RTC有机结合。
自然语言处理任务(例如字幕生成和机器翻译)涉及生成单词序列。
技术社区里有种很有意思的现象,那就是不少人们口耳相传中的强大技术,往往因为上手难度高而显得曲高和寡。从这个角度看来,WebGL 和函数式编程有些类似,都属于优势已被论证了多年,却一直较为不温不火的技术。但是,一旦这些技术的易用性跨越了某个临界点,它们其实并没有那么遥不可及。这次我们就将以 WebGL 为例,尝试降低它的入门门槛,讲解它在前端图像处理领域的应用入门。
大数据处理其实经常被很多人低估,缺乏正确的处理体系,其实,如果没有高质量的数据处理流程,人工智能将只有人工而没有智能。现在的趋势是数据体量不断上涨,团队却低估了规模所带来的复杂度。大数据领域泰斗级人物Jesse Anderson曾做过研究,一个组织架构比较合理的人工智能团队,数据处理工程师需要占团队总人数的4/5,然而很多团队还没有认识到这点。大数据处理涉及大量复杂因素,而Apache Beam恰恰可以降低数据处理的难度,它是一个概念产品,所有使用者都可以根据它的概念继续拓展。
Lambda 架构已经成为一种流行的架构风格,它通过使用批处理和流式处理的混合方法来保证数据处理的速度和准确性。但它也有一些缺点,比如额外的复杂性和开发 / 运维开销。LinkedIn 高级会员有一个功能,就是可以查看谁浏览过你的个人资料 (Who Viewed Your Profile,WVYP),这个功能曾在一段时间内采用了 Lambda 架构。支持这一功能的后端系统在过去的几年中经历了几次架构迭代:从 Kafka 客户端处理单个 Kafka 主题开始,最终演变为具有更复杂处理逻辑的 Lambda 架构。然而,为了追求更快的产品迭代和更低的运维开销,我们最近把它变成无 Lambda 的。在这篇文章中,我们将分享一些在采用 Lambda 架构时的经验教训、过渡到无 Lambda 时所做的决定,以及经历这个过渡所必需的转换工作。
技术雷达是ThoughtWorks每半年发布一期的技术趋势报告,它不仅是一份持续的技术成熟度评估,其产生还源于ThoughtWorks另一个更大宏大的使命—IT革命。我们一直深信,IT行业从定位、价值、实践和技术都会发生巨大的变革。然而任何宏观的变革,都会有一些微小的信号,我们需要持续关注这些微小的改变,这也就是技术雷达的由来。
谷歌昨日宣布,Apache Beam 在经过近一年的孵化后终于从 Apache 孵化器毕业,现在已经是一个成熟的顶级 Apache 项目。这一成就直接反应了社区为把 Beam 转变为开放、专业、社区驱动的项目所付出的努力。 11个月前,谷歌以及一些合作伙伴向 Apachee 软件基金会捐赠了大量代码,从而得以开始孵化 Beam 项目。这些代码的大部分来自谷歌的 Cloud Dataflow SDK,是开发者用来编写流处理(streaming)和批处理管道(batch pinelines)的库,可以在任何支持
原文链接 / https://www.red5pro.com/blog/5-factors-in-choosing-low-latency-hls-vs-webrtc/
从 Google 在 2017 年发表著名的「Attention is all you need」文章开始,Transformer 架构就开始攻占 AI 的多个领域:不仅成为自然语言处理(NLP)和语音等很多 AI 应用的默认核心架构,同时也成功跨界到计算机视觉方向,在超分辨率、图像识别和物体检测中取得 state-of-the-art 的性能。
我们现在从讨论编程模型和 API 转向实现它们的系统。模型和 API 允许用户描述他们想要计算的内容。在规模上准确地运行计算需要一个系统——通常是一个分布式系统。
本文的代码都可以到我的 github 中下载:https://github.com/lc222/seq2seq_chatbot 前面几篇文章我们已经介绍了 seq2seq 模型的理论知识,并且从 tensorflow 源码层面解析了其实现原理,本篇文章我们会聚焦于如何调用 tf 提供的 seq2seq 的 API,实现一个简单的 chatbot 对话系统。这里先给出几个参考的博客和代码: tensorflow 官网 API 指导(http://t.cn/R8MiZcR ) Chatbots with Se
Beam Search并不是很陌生的算法,它和深度优先算法、广度优先算法一样都曾被使用于树结构的搜索。本文重提Beam Search主要是因为在智能对话生成式模型中,Beam Search被应用在解码过程。而对话系统的生成式模型,本公众号也曾经进行过介绍。 本文主要解决如下三个问题: Q1: 在生成式对话系统中,为什么会使用Beam Search算法? Q2: Beam Search的具体原理是什么? Q3: 对话系统中,为生成更好的回复,对Beam Search可以做什么改进? 对于Q1,首先就要回顾一下
Beam提供了一套统一的API来处理两种数据处理模式(批和流),让我们只需要将注意力专注于在数据处理的算法上,而不用再花时间去对两种数据处理模式上的差异进行维护。
Apache Beam是一个统一的编程模型,用于构建可移植的批处理和流处理数据管道。虽然主要由Java和Python SDK支持,但也有一个实验性的Go SDK,允许开发人员使用Go语言编写 Beam 程序。本文将介绍Go SDK的基本概念,常见问题,以及如何避免这些错误。
机器之心专栏 作者:字节跳动AI Lab、UT Austin、新加坡科技设计大学StatNLP组 目前强大的语言模型普遍在很多下游 NLP 任务中能轻易地达到比较好的结果,但在推理效果上没有达到我们的预期 [1]。字节跳动人工智能实验室与新加坡科技与设计大学提出一个基于演绎推理的方法,希望实现类似 System 2 的推理能力 [2]. 论文链接:https://arxiv.org/abs/2203.10316 研究动机 作为一类需要解题的推理过程,在数学解题任务中比较适合应用演绎推理模型。我们尝试在此任
在低延迟HLS或是WebRTC之间做选择时,哪种协议能够带来最佳的实时流体验?因为协议决定了编码视频数据通过网络连接传输的速度,所以在两者之间做出选择是非常重要的。
Flink是Apache的一个顶级项目,Apache Flink 是一个开源的分布式流处理和批处理系统。Flink 的核心是在数据流上提供数据分发、通信、具备容错的分布式计算。同时,Flink 在流处理引擎上构建了批处理引擎,原生支持了迭代计算、内存管理和程序优化。
本项目开源了基于医疗指令微调的中文医疗问诊模型:明医 (MING)。目前模型的主要功能如下:
详见此链接:https://www.jianshu.com/p/34c23dbd9dc1
在做NLP领域的NMT或者chatbot等方面的工作时,在进行inference(推理)的时候,经常会用到两种搜索方式,即Greedy Search和Beam Search。
本文介绍了如何使用 Apache Beam 实现 WordCount 程序,通过一个简单的 Maven 项目结构,展示了如何通过 Apache Beam 及其相关依赖和配置,使用 Spark、Flink 和 Apex 等大数据框架来运行并执行 WordCount 程序。
本文以 huggingface-transformers 的文本生成解码代码为例,对文本生成常用的五种解码策略 greedy search、beam search、sample、sample and rank & beam sample、group beam search 进行逐行解读。每一小节首先会介绍对应解码策略的原理,接着给出供大家快速上手的代码示例,并逐层介绍调用过程,最后给出所使用到的所有类之间调用的时序图。由简到繁再到简,帮助大家建立起一个整体的认识,并且能够快速应用。干货较多,欢迎阅读并进行实践尝试。
TensorFlow Extended: An end-to-end machine learning platform for TensorFlow--Robert Crowe(Google)
近年来深度学习在OCR领域取得了巨大的成功,但OCR应用中识别错误时有出现。错误的识别结果不仅难以阅读和理解,同时也降低文本的信息价值。在某些领域,如医疗行业,识别错误可能带来巨大的损失。因此如何降低OCR任务的错字率受到学术界和工业界的广泛关注。合合信息通过本文来讲解文本纠错技术帮助更多人解决业务问题。通常文本纠错的流程可以分为错误文本识别、候选词生成和候选词排序三个步骤。文本纠错方法可包括基于CTC解码和使用模型两种方式,下面分别对这两种纠错方式进行介绍。
在这个例子中输入数据是10个中文汉字,输出为6个英文单词, 和 数量不一致,这就需要用到序列到序列的RNN模型。
Apache Beam是Google开源的,旨在统一批处理和流处理的编程范式,核心思想是将批处理和流处理都抽象成Pipeline、Pcollection、PTransform三个概念。Apache Beam本身是不具备计算功能的,数据的交换和计算都是由底层的工作流引擎(Apache Apex, Apache Flink, Apache Spark, and Google Cloud Dataflow)完成,由各个计算引擎提供Runner供Apache Beam调用,而Apache Beam提供了Java、Python、Go语言三个SDK供开发者使用。
图 4:Beam Search Decoding (Decoder + Beam Search) 流程图
编写|PaddlePaddle 排版|wangp 本教程将指导你如何在 PaddlePaddle 中配置循环神经网络(RNN)。本教程中,您将了解如何: 配置循环神经网络架构 使用学习完成的循环神经网络模型生成序列 我们将使用 vanilla 循环神经网络和 sequence to sequence 模型来指导你完成这些步骤。sequence to sequence 模型的代码可以在 book/08.machine_translation(链接:https://github.com/PaddlePaddle
为生产而构建的机器学习系统需要有效地培训、部署和更新机器学习模型。在决定每个系统的体系结构时,必须考虑各种因素。这篇博文的部分内容是基于Coursera和GCP(谷歌云平台)关于构建生产机器学习系统的课程。下面,我将列出构建可伸缩机器学习系统时需要考虑的一些问题:
“DiskANN: Fast Accurate Billion-point Nearest Neighbor Search on a Single Node” [1]是 2019 年发表在 NeurIPS 上的论文。
在执行解码时,我们有几种选词方案,第一种则是穷举所有可能序列,这种成本过大无法承受。如果每一步都选择概率最大的词,这种解码方式叫做贪心搜索。然而,这种解码算法不一定能找到全局最优的序列,因为如果第一次解码时选择的并不是最大概率的,有可能第二次解码的条件概率却是特别大的。
首先,对于长度方向大于截面尺寸10倍以上的结构,通过用梁单元简化,可以有效缩减模型规模,提高计算效率。因此,梁单元适用范围很广,是常用的结构单元之一。
机器翻译依赖于大型平行语料库,即源语和目的语中成对句子的数据集。但是,双语语料是十分有限的,而单语语料更容易获得。传统上,单语语料被用于训练语言模型,大大提高了统计机器翻译的流畅性。
第十五届全国机器翻译大会(The 15th China Conference on Machine Translation, CCMT 2019)于2019年9月27日至29日在江西南昌举行。本次会议由中国中文信息学会主办,江西师范大学承办。CCMT旨在为国内外机器翻译界同行提供一个交互平台,加强国内外同行的学术交流,召集各路专家学者针对机器翻译的理论方法、应用技术和评测活动等若干关键问题进行深入的研讨,为促进中国机器翻译事业的发展,起到积极的推动作用。
每天给你送来NLP技术干货! ---- 来自:CAAI认知系统与信息处理专委会 视觉-语言导航任务(Vision-Language Navigation, VLN)是指在陌生环境中,无人系统依据语言指示和观测图像之间的跨模态匹配信息,进行自主智能路径导航的方法。不同于前进、后退等简单操控指令,VLN采用类似人人交互的语言指示,比如“走出右侧大门,穿过卧室和客厅,在绿色地毯上的餐桌旁停下”。VLN是一种新型的跨模态智能人机交互方法,能够极大地提升无人系统的自主能力,能够为无人系统走向实用提供关键技术支撑。 序
在自然语言生成任务(NLG)中,采样方法是指从生成模型中获取文本输出的一种技术。本文将介绍常用的5中方法并用Pytorch进行实现。
领取专属 10元无门槛券
手把手带您无忧上云