此页面列出了使用 TensorFlow Hub 解决文本领域问题的已知指南和工具集。对于希望使用预训练的 ML 组件来解决典型的 ML 问题,而不是从头开始的人来说,这是一个起点。
分类
当我们想要预测给定示例的类别时,例如 **情感**、**毒性**、**文章类别** 或任何其他特征。
以下教程从不同的角度解决相同任务,并使用不同的工具。
Keras
使用 Keras 进行文本分类 - 使用 Keras 和 TensorFlow Datasets 构建 IMDB 情感分类器的示例。
估计器
文本分类 - 使用 Estimator 构建 IMDB 情感分类器的示例。包含多个改进提示和模块比较部分。
BERT
使用 TF Hub 上的 BERT 预测电影评论情感 - 展示如何使用 BERT 模块进行分类。包括使用 bert
库进行标记化和预处理。
Kaggle
Kaggle 上的 IMDB 分类 - 展示如何从 Colab 轻松与 Kaggle 竞赛交互,包括下载数据和提交结果。
估计器 | Keras | TF2 | TF 数据集 | BERT | Kaggle API | |
---|---|---|---|---|---|---|
文本分类 | ||||||
使用 Keras 进行文本分类 | ||||||
使用 TF Hub 上的 BERT 预测电影评论情感 | ||||||
Kaggle 上的 IMDB 分类 |
使用 FastText 嵌入的孟加拉语任务
TensorFlow Hub 目前不提供所有语言的模块。以下教程展示了如何利用 TensorFlow Hub 进行快速实验和模块化 ML 开发。
孟加拉语文章分类器 - 演示如何创建可重用的 TensorFlow Hub 文本嵌入,并使用它来训练 Keras 分类器,用于 BARD 孟加拉语文章数据集。
语义相似性
当我们想要找出哪些句子在零样本设置中相互关联时(没有训练示例)。
基本
语义相似性 - 展示如何使用句子编码器模块来计算句子相似性。
跨语言
跨语言语义相似性 - 展示如何使用跨语言句子编码器之一来计算跨语言的句子相似性。
语义检索
语义检索 - 展示如何使用问答句子编码器来索引文档集合,以便根据语义相似性进行检索。
SentencePiece 输入
使用通用编码器精简版进行语义相似性 - 展示了如何使用接受 SentencePiece 标识符作为输入而不是文本的句子编码器模块。
模块创建
除了使用 tfhub.dev 上的模块外,还有其他方法可以创建自己的模块。这对于提高 ML 代码库的模块化程度以及进一步共享非常有用。
封装现有的预训练嵌入
文本嵌入模块导出器 - 用于将现有的预训练嵌入封装到模块中的工具。展示了如何将文本预处理操作包含到模块中。这允许从词元嵌入创建句子嵌入模块。
文本嵌入模块导出器 v2 - 与上面相同,但与 TensorFlow 2 和 Eager Execution 兼容。