文本烹饪书

此页面列出了使用 TensorFlow Hub 解决文本领域问题的已知指南和工具集。对于希望使用预训练的 ML 组件来解决典型的 ML 问题,而不是从头开始的人来说,这是一个起点。

分类

当我们想要预测给定示例的类别时,例如 **情感**、**毒性**、**文章类别** 或任何其他特征。

Text Classification Graphic

以下教程从不同的角度解决相同任务,并使用不同的工具。

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
文本分类 done
使用 Keras 进行文本分类 done done done
使用 TF Hub 上的 BERT 预测电影评论情感 done done
Kaggle 上的 IMDB 分类 done done

使用 FastText 嵌入的孟加拉语任务

TensorFlow Hub 目前不提供所有语言的模块。以下教程展示了如何利用 TensorFlow Hub 进行快速实验和模块化 ML 开发。

孟加拉语文章分类器 - 演示如何创建可重用的 TensorFlow Hub 文本嵌入,并使用它来训练 Keras 分类器,用于 BARD 孟加拉语文章数据集

语义相似性

当我们想要找出哪些句子在零样本设置中相互关联时(没有训练示例)。

Semantic Similarity Graphic

基本

语义相似性 - 展示如何使用句子编码器模块来计算句子相似性。

跨语言

跨语言语义相似性 - 展示如何使用跨语言句子编码器之一来计算跨语言的句子相似性。

语义检索

语义检索 - 展示如何使用问答句子编码器来索引文档集合,以便根据语义相似性进行检索。

SentencePiece 输入

使用通用编码器精简版进行语义相似性 - 展示了如何使用接受 SentencePiece 标识符作为输入而不是文本的句子编码器模块。

模块创建

除了使用 tfhub.dev 上的模块外,还有其他方法可以创建自己的模块。这对于提高 ML 代码库的模块化程度以及进一步共享非常有用。

封装现有的预训练嵌入

文本嵌入模块导出器 - 用于将现有的预训练嵌入封装到模块中的工具。展示了如何将文本预处理操作包含到模块中。这允许从词元嵌入创建句子嵌入模块。

文本嵌入模块导出器 v2 - 与上面相同,但与 TensorFlow 2 和 Eager Execution 兼容。