openAI维基百科 openAI维基百科
  • 首页
  • 语言
    • LLaMA
    • ChatGPT
      • 基础教程
      • Prompt训练
      • API编程指南
      • ChatGPT拓展
    • 其它模型
  • 图像
    • 风格化
    • 画质增强
    • 图像识别
    • 视觉交互
    • 扩展填充
  • 绘画
    • Midjourney
    • Stable Diffusion
      • LoRA
      • ControlNet
      • Fooocus
      • ComfyUI
    • 其它模型
  • 音频
    • 人声模拟
    • 音频识别
    • 音频分离
    • 智能编曲
  • 视频
    • AI换脸
    • AI补帧
    • 视频抠图
    • 视频动漫化
    • 文本生成视频
  • 3D
    • 文本生成模型
  • 教程
    • 基础知识
    • 微软AI学习
    • 深度学习笔记
    • 交互式了解AI
  • 问答
  • 资源
首页 › 语言 › ChatGPT › openAI|获取数据集

openAI|获取数据集

PhiltreX
2 年前

获取数据集

本文将介绍如何使用OpenAI API来进行情感分析,以预测文本的情感属性,本教程将使用Amazon的美食评论数据集,并演示如何将评论汇总为一个单独的嵌入向量。

1.加载数据集

本例中使用的数据集是来自亚马逊的美食评论。 该数据集包含截至 2012 年 10 月亚马逊用户留下的总共 568,454 条食品评论。我们将使用该数据集的一个子集,其中包含 1,000 条最新评论以用于说明目的。 评论是英文的,往往是正面的或负面的。 每条评论都有一个 ProductId、UserId、Score、评论标题(摘要)和评论正文(文本)。

我们会将评论摘要和评论文本合并为一个组合文本。 该模型将对该组合文本进行编码,并输出单个向量嵌入。

要运行此笔记本,您需要安装:pandas、openai、transformers、plotly、matplotlib、scikit-learn、torch(transformer dep)、torchvision 和 scipy。

# imports
import pandas as pd
import tiktoken

from openai.embeddings_utils import get_embedding
# embedding model parameters
embedding_model = "text-embedding-ada-002"
embedding_encoding = "cl100k_base"  # this the encoding for text-embedding-ada-002
max_tokens = 8000  # the maximum for text-embedding-ada-002 is 8191
# load & inspect dataset
input_datapath = "data/fine_food_reviews_1k.csv"  # to save space, we provide a pre-filtered dataset
df = pd.read_csv(input_datapath, index_col=0)
df = df[["Time", "ProductId", "UserId", "Score", "Summary", "Text"]]
df = df.dropna()
df["combined"] = (
    "Title: " + df.Summary.str.strip() + "; Content: " + df.Text.str.strip()
)
df.head(2)
时间产品编号用户身份分数概括文本合并
01351123200B003XPF9BOA3R7JR3FMEBXQB5一个人从哪里开始…和停止…用一个…想存一些给我芝加哥的家人……标题:从哪里开始……到哪里结束……机智……
11351123200B003JK537SA3JBPC3WFUT5ZP1Arrived in pieces一点都不高兴。 当我打开盒子时,莫…标题:分片抵达; 内容:不高兴…
# subsample to 1k most recent reviews and remove samples that are too long
top_n = 1000
df = df.sort_values("Time").tail(top_n * 2)  # first cut to first 2k entries, assuming less than half will be filtered out
df.drop("Time", axis=1, inplace=True)

encoding = tiktoken.get_encoding(embedding_encoding)

# omit reviews that are too long to embed
df["n_tokens"] = df.combined.apply(lambda x: len(encoding.encode(x)))
df = df[df.n_tokens <= max_tokens].tail(top_n)
len(df)
1000

2.获取嵌入并保存以备将来重用

# 确保根据自述文件在您的环境中设置了 API 密钥:https://github.com/openai/openai-python#usage

# 这可能需要几分钟的时间
df["embedding"] = df.combined.apply(lambda x: get_embedding(x, engine=embedding_model))
df.to_csv("data/fine_food_reviews_with_embeddings_1k.csv")
APIopanAI APIopenAI
1
0
openAI|聚类嵌入
上一篇
openAI|以 2D 或 3D 形式可视化嵌入
下一篇

评论 (0)

取消
    发表评论

猜你喜欢

  • ChatGPT|HTML网页制作
  • GPT Engineer|自动编程
  • POE|ChatGPT-4 & Claude+

论坛公告

为方便大家交流,交换资源等。

本站论坛限量开放注册中,免费答疑。

欢迎大家踊跃注册,关闭注册时间待定。

论坛地址:https://bbs.openai.wiki

增值服务

本站无广告|无会员|免注册

  1. 提供有偿远程帮助服务
  2. 提供POE会员代充代售
  3. 提供ChatGPT代充代售
  4. 提供Midjourney代充服务

商务合作

关于合作请点此联系

  • 首页
  • 语言
  • 图像
  • 绘画
  • 音频
  • 视频
  • 3D
  • 教程
  • 问答
  • 资源
Copyright © 20221212-2025 openAI维基百科. Designed by nicetheme. 京公网安备 11010502051430号 京ICP备2021019752号-5
  • 首页
  • 语言
    • LLaMA
    • ChatGPT
      • 基础教程
      • Prompt训练
      • API编程指南
      • ChatGPT拓展
    • 其它模型
  • 图像
    • 风格化
    • 画质增强
    • 图像识别
    • 视觉交互
    • 扩展填充
  • 绘画
    • Midjourney
    • Stable Diffusion
      • LoRA
      • ControlNet
      • Fooocus
      • ComfyUI
    • 其它模型
  • 音频
    • 人声模拟
    • 音频识别
    • 音频分离
    • 智能编曲
  • 视频
    • AI换脸
    • AI补帧
    • 视频抠图
    • 视频动漫化
    • 文本生成视频
  • 3D
    • 文本生成模型
  • 教程
    • 基础知识
    • 微软AI学习
    • 深度学习笔记
    • 交互式了解AI
  • 问答
  • 资源