ExGeo代码理解(二)preprocess.py(预处理数据集并为模型运行执行IP聚类)

代码链接:https://github.com/ICDM-UESTC/ExGeo

└── ExGeo
    ├── datasets # 包含3个大规模的真实街道IP地理位置数据集。
    │        |── New_York # 从纽约市收集的街道级IP地理定位数据集,包括91,808个IP地址。
    │        |── Los_Angeles # 从洛杉矶收集的街道级IP地理定位数据集,包括92,804个IP地址。
    │        |── Shanghai # 收集自上海的街道级IP地理定位数据集,包括126,258个IP地址。
    ├── lib # 包含模型(model)实现文件
    │        |── layers.py # 注意力机制的代码。
    │        |── model.py # ExGeo的核心源代码。
    │        |── sublayers.py # layer.py的支持文件。
    │        |── utils.py # 辅助函数
    ├── asset # 包含运行模型时保存的检查点和日志
    │        |── log # 包含运行模型时保存的日志
    │        |── model # 包含运行模型时保存的检查点

    ├── generateidx.py # 生成target  nodes和landmark nodes的idx(索引)

    ├── preprocess.py # 预处理数据集并为模型运行执行IP聚类
    ├── main.py # 运行模型进行训练和测试
    ├── test.py #加载检查点,然后测试
    └── README.md

一、导入各种模块和数据库

# Load data and IP clustering
 
import math
import random
import pandas as pd
import numpy as np
import argparse
from sklearn import preprocessing
from lib.utils import MaxMinScaler
from tqdm import tqdm

加载数据和IP聚类,这些导入语句是为了引入在后续代码中可能会使用到的数学、随机数、数据处理等工具和库。

和ExGeo代码理解(一)generateidx.py的是一样的。,不同之处在于:

1、import csv:读取CSV文件

二、使用argparse库创建了一个命令行解析器

parser = argparse.ArgumentParser()

parser.add_argument('--dataset', type=str, default='Shanghai', choices=["Shanghai", "New_York", "Los_Angeles"],
                    help='which dataset to use')
parser.add_argument('--train_test_ratio', type=float, default=0.8, help='landmark ratio')
parser.add_argument('--lm_ratio', type=float, default=0.7, help='landmark ratio')
parser.add_argument('--seed', type=int, default=1234)
# parser.add_argument('--seed', type=int, default=2022)


opt = parser.parse_args()
print("Dataset: ", opt.dataset)

这部分代码的功能是通过命令行输入来配置脚本的行为。用户可以在运行脚本时通过命令行参数指定数据集名称、训练集测试集比例、地标比例以及随机数生成的种子等参数。解析后,这些参数将在脚本中被引用,从而影响程序的行为。

该部分实现和RIPGeo的(一)preprocess.py中的一样,不同之处在于:

默认的数据集变成了shanghai。

1、parser.add_argument('--dataset', type=str, default='Shanghai', choices=["Shanghai", "New_York", "Los_Angeles"], help='which dataset

  • 16
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值