GNN模型输入数据处理方法

提示:参考上一篇文章:图神经网络GNN实践入门


前言

  • 本篇是基于torch_geometric对图神经网络的进一步实践,将真实数据集处理成模型需要的格式。
  • 可以将这种思想应用到处理自己的数据集上。

提示:以下是本篇文章正文内容,下面案例可供参考

一、数据集简介

  • 一个商品购买数据集
  • yoochoose-clicks:表示用户的浏览行为,其中一个session_id就表示一次登录都浏览了什么商品。
  • item-id:表示该用户所浏览的商品,其中yoochoose-buys描述了他最终是否会购买,相当于标签。
  • 数据集下载网址:https://www.kaggle.com/datasets/chadgostopp/recsys-challenge-2015

二、数据处理方法

1.引入库

代码如下(示例):

import os
import pandas as pd
from sklearn.preprocessing import LabelEncoder
import torch
from torch_geometric.data import InMemoryDataset, Data
from tqdm import tqdm
  • LabelEncoder:用于将分类变量(如‘item_id’)转换为数字编码。
  • torch 和 torch_geometric.data:用于处理和定义图数据结构。
  • tqdm:用于显示进度条。

2、数据集基本预处理

1)读取文件

from sklearn.preprocessing import LabelEncoder
import pandas as pd

df = pd.read_csv('yoochoose-clicks.dat', header=None)
df.columns = ['session_id', 'timestamp', 'item_id', 'category']

buy_df = pd.read_csv('yoochoose-buys.dat', header=None)
buy_df.columns = ['session_id', 'timestamp', 'item_id', 'price', 'quality']
#对‘item_id’列进行编码
item_encoder = LabelEncoder()
df[
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值