Project Icon

retvec

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

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

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}
}

贡献

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

免责声明

这不是谷歌的官方产品。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号