retvec

retvec

多语言文本向量化的高效解决方案

RETVec是一种创新的文本向量化工具,为高效处理多语言文本而开发。它具有内置的抗干扰能力,可应对各种字符级修改。该工具支持超过100种语言,无需额外的词汇表。RETVec作为一个轻量级组件,可无缝集成到TensorFlow模型中。它同时提供TensorFlow Lite和JavaScript版本,适用于移动设备和网页应用。RETVec在提升模型稳定性的同时,保证了计算效率,是文本处理任务的理想选择。

RETVec文本向量化多语言对抗性弹性TensorFlowGithub开源项目

RETVec:弹性高效的文本向量化器

概述

RETVec是一种新一代文本向量化器,旨在高效、多语言,并通过使用相似度学习训练的稳健词嵌入提供内置的对抗性弹性。您可以在这里阅读相关论文。

RETVec经过训练,能够抵御字符级操作,包括插入、删除、拼写错误、同形异字、LEET替换等。RETVec模型基于一种新颖的字符编码器训练,可以高效编码所有UTF-8字符和单词。因此,RETVec可以直接在100多种语言上使用,无需查找表或固定词汇表大小。此外,RETVec是一个层,这意味着它可以插入任何TF模型中,无需单独的预处理步骤。

RETVec的速度和大小(约20万参数而非数百万参数)也使其成为设备端和网页用例的绝佳选择。它通过TensorFlow Text中的自定义操作TensorFlow Lite中得到原生支持,我们还提供了RETVec的JavaScript实现,允许您通过TensorFlow.js部署网页模型。

请查看我们的示例Colab笔记本,了解如何开始使用RETVec训练自己的模型。train_retvec_model_tf.ipynb是使用RETVec训练TF模型的一个很好的起点。

演示

要查看RetVec的实际效果,请访问我们的演示

入门

安装

您可以使用pip安装最新的TensorFlow版本RETVec:

pip install retvec

RETVec已在TensorFlow 2.6+和Python 3.8+上进行了测试。

基本用法

您只需一行代码就可以在任何TensorFlow模型中使用RETVec作为向量化层。RETVec可直接处理原始字符串,内置预处理选项(如文本小写化)。例如:

import tensorflow as tf from tensorflow.keras import layers # 定义输入层,接受原始字符串 inputs = layers.Input(shape=(1, ), name="input", dtype=tf.string) # 添加RETVec分词器层,使用RETVec嵌入模型 -- 就是这么简单! x = RETVecTokenizer(sequence_length=128)(inputs) # 像往常一样创建您的模型 # 例如,一个简单的LSTM分类模型,用于NUM_CLASSES类别 x = layers.Bidirectional(layers.LSTM(64, return_sequences=True))(x) x = layers.Bidirectional(layers.LSTM(64))(x) outputs = layers.Dense(NUM_CLASSES, activation='softmax')(x) model = tf.keras.Model(inputs, outputs)

然后您可以像往常一样编译、训练和保存模型!正如我们的论文所示,使用RETVec训练的模型对对抗性攻击和拼写错误更具弹性,并且计算效率更高。RETVec还支持TFJS和TF Lite,使其成为设备端移动和网页用例的完美选择。

Colab笔记本

RETVec的详细示例Colab笔记本可在notebooks目录下找到。这些是开始使用RETVec的好方法。您可以通过点击Google Colab按钮在Google Colab中运行这些笔记本。如果没有与您的用例类似的示例,请告诉我们!

我们提供以下示例Colab笔记本:

  • 使用TensorFlow训练基于RETVec的模型:train_retvec_model_tf.ipynb用于GPU/CPU训练,以及train_tpu.ipynb用于TPU兼容的训练示例。
  • 将RETVec模型转换为TF Lite模型以在设备上运行:tf_lite_retvec.ipynb
  • (即将推出!)使用RETVec JS通过TensorFlow.js在网页中部署RETVec模型

引用

如果您在研究中使用RETVec,请引用以下参考文献:

@article{retvec2023, title={RETVec: Resilient and Efficient Text Vectorizer}, author={Elie Bursztein, Marina Zhang, Owen Vallis, Xinyu Jia, and Alexey Kurakin}, year={2023}, eprint={2302.09207} }

贡献

要为项目做出贡献,请查看贡献指南。谢谢!

免责声明

这不是谷歌的官方产品。

编辑推荐精选

商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

扣子-AI办公

扣子-AI办公

AI办公助手,复杂任务高效处理

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
蛙蛙写作

蛙蛙写作

AI小说写作助手,一站式润色、改写、扩写

蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。

AI辅助写作AI工具蛙蛙写作AI写作工具学术助手办公助手营销助手AI助手
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

热门AI助手AI对话AI工具聊天机器人
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
下拉加载更多