聚类是理解大量文本数据的一种方式。嵌入对于聚类任务很有用,因为它们能为每个文本提供语义上有意义的向量表示,从而以无监督的方式揭示数据集中隐藏的分组。
例如,在某个例子中,通过聚类发现了四个不同的集群:一个专注于狗食,一个专注于负面评论,两个专注于正面评论。
此外,OpenAI 的文本嵌入通常还用于搜索(结果按与查询字符串的相关性排序)、推荐(推荐具有相关文本字符串的项目)、异常检测(识别出相关性很小的异常值)、多样性测量(分析相似性分布)、分类(其中文本字符串按其最相似的标签分类)等。嵌入是浮点数的向量(列表),两个向量之间的距离衡量它们的相关性,小距离表示高相关性,大距离表示低相关性。
要获得嵌入,可将文本字符串连同选择的嵌入模型 ID 一起发送到嵌入 API 端点,响应将包含一个嵌入,您可以提取、保存和使用它。更多 Python 代码示例可在OpenAI Cookbook中查看。
[User_and_product_embeddings.ipynb](https://github.com/openai/openai-cookbook/blob/main/examples/User_and_product_embeddings.ipynb)我们可以通过对他们的所有评论进行平均来获得用户嵌入。同样,我们可以通过对有关该产品的所有评论进行平均来获得产品嵌入。为了展示这种方法的实用性,我们使用50k评论的子集来覆盖每个用户和每个产品的更多评论。我们在单独的测试集上评估这些嵌入的有用性,我们将用户和产品嵌入的相似性绘制为评分的函数。有趣的是,基于这种方法,甚至在用户收到产品之前,我们就可以比随机预测更好地预测他们是否喜欢该产品。[heading3]聚类[content][Clustering.ipynb](https://github.com/openai/openai-cookbook/blob/main/examples/Clustering.ipynb)聚类是理解大量文本数据的一种方式。嵌入对于这项任务很有用,因为它们提供了每个文本的语义上有意义的向量表示。因此,以一种无监督的方式,聚类将揭示我们数据集中隐藏的分组。在这个例子中,我们发现了四个不同的集群:一个专注于狗食,一个专注于负面评论,两个专注于正面评论。[heading3]使用嵌入的文本搜索[content][Semantic_text_search_using_embeddings.ipynb](https://github.com/openai/openai-cookbook/blob/main/examples/Semantic_text_search_using_embeddings.ipynb)为了检索最相关的文档,我们使用查询的嵌入向量与每个文档之间的余弦相似度,并返回得分最高的文档。
关联流派:Chamber Music,Jazz Ensemble,Band●Clustered定义/描述:Clustered指的是密集和聚集的音乐风格,通常具有复杂和层叠的音效。典型使用:用于表现密集和多层次的音乐作品。示例:Ligeti的《大气层》。关联流派:Avant-garde,Classical,Electronic●Coalescent定义/描述:Coalescent指的是融合和一体化的音乐风格,通常具有和谐和统一的特质。典型使用:用于表现不同元素和风格的融合。示例:融合爵士乐中的多样元素。关联流派:Fusion,World Music,Crossover●Cognizant定义/描述:Cognizant指的是有意识和觉知的音乐风格,通常带有深思熟虑和智慧的特质。典型使用:用于表现内省和反思的音乐作品。示例:Joni Mitchell的《Both Sides Now》。关联流派:Singer-Songwriter,Folk,Jazz●Coherent定义/描述:Coherent指的是连贯和一致的音乐风格,通常具有明确的结构和逻辑。典型使用:用于表现条理清晰和结构严谨的音乐作品。示例:贝多芬的交响曲。关联流派:Classical,Orchestral,Progressive Rock●Collapsing定义/描述:Collapsing指的是崩溃或坍塌的音乐风格,通常表现出破碎和解构的特质。典型使用:用于表现紧张和不安的音乐作品。示例:实验音乐中的解构音效。
OpenAI的文本嵌入衡量文本字符串的相关性。嵌入通常用于:搜索(结果按与查询字符串的相关性排序)聚类(其中文本字符串按相似性分组)推荐(推荐具有相关文本字符串的项目)异常检测(识别出相关性很小的异常值)多样性测量(分析相似性分布)分类(其中文本字符串按其最相似的标签分类)嵌入是浮点数的向量(列表)。两个向量之间的距离衡量它们的相关性。小距离表示高相关性,大距离表示低相关性。访问我们的定价页面以了解嵌入定价。请求根据发送的输入中的Token数量计费。[heading3]如何获得嵌入[content]要获得嵌入,请将您的文本字符串连同选择的嵌入模型ID(例如,text-embedding-ada-002)一起发送到嵌入API端点。响应将包含一个嵌入,您可以提取、保存和使用它。[heading3]示例请求:[heading3]示例响应:[content]在[OpenAI Cookbook](https://github.com/openai/openai-cookbook/)中查看更多Python代码示例。