求问VQAV2现在都是怎么做evaluation的啊,EvalAI里好像不能上传了?或者应该怎么在线评?或者离线怎么评啊
28条回答 默认 最新
- 就是这样,喵~ 2024-11-21 16:20关注
VQAv2(Visual Question Answering)的评估主要涉及模型在给定图片和相关问题的情况下,生成正确答案的能力。以下是关于VQAv2评估方法的详细解释:
在线评价
-
EvalAI平台:
- EvalAI是一个开源的挑战平台,类似于Kaggle,但提供了更多的自定义功能和更快的评估速度。
- 尽管EvalAI支持用户上传和评估模型,但由于其开放性和灵活性,有时可能会遇到文件上传失败或命名重复等问题。
- 为了解决这些问题,可以使用第三方的fork版本,如live-wire/EvalAI。
- EvalAI的后端评估管道经过并行化设计,可以显著提升评估性能。例如,对于VQA Challenge 2017的数据集,EvalAI可以在约130秒内完成整个测试集的评估。
-
评估流程:
- 在EvalAI上创建挑战时,可以选择使用直观的用户界面(UI)或zip配置文件。
- 提交结果后,EvalAI会自动进行评估,并返回评估分数和排名。
离线评价
如果无法在线上传或需要更灵活的评估方式,也可以选择离线评价。以下是一般步骤:
-
准备数据:
- 确保拥有VQAv2的数据集,包括训练集、验证集和测试集。
- 下载并预处理必要的数据,如预训练的glove词向量、annotation和question等。
-
模型训练:
- 使用深度学习框架(如PyTorch)加载预训练的模型,如Bert或MUTAN。
- 根据任务需求调整模型架构和超参数。
-
模型评估:
- 编写脚本以加载验证集或测试集的数据。
- 将数据输入到模型中,生成预测结果。
- 将预测结果与真实标签进行比较,计算准确率或其他评估指标。
-
结果保存:
- 将评估结果保存为JSON或其他格式的文件,以便后续分析和提交。
注意事项
- 在评估过程中,请确保遵循VQAv2数据集的使用规范和许可协议。
- 如果使用EvalAI进行在线评估,请留意平台的使用限制和可能的技术问题。
- 离线评估时,请确保环境配置正确,所有依赖项都已安装。
希望以上信息对您有所帮助!如果您有更多具体问题或需要进一步的帮助,请随时告诉我。
解决 无用评论 打赏 举报 -
- 专家-皆知 2024-11-21 16:20关注
参考免费微信小程序:皆我百晓生 作答,经由专家-皆知整理回复,如问题解决,望采纳;如仍有疑问,请评论回复。
VQAV2(Visual Question Answering version 2)是一个视觉问答任务的数据集,用于评估模型在理解图像内容并回答与图像相关的问题上的能力。对于VQAV2数据集的评估,通常涉及以下几个步骤:
1. 数据准备
首先,你需要下载VQAV2的数据集,它包含训练、验证和测试集。测试集的Ground Truth答案是不公开的,以确保评估的公正性。
2. 模型训练与验证
- 训练:使用训练集训练你的模型。
- 验证:在验证集上评估模型性能,调整超参数。
3. 评估流程
离线评估
- 提交格式:准备一个包含问题ID和对应预测答案的文件,格式通常为CSV,其中列名可能为
question_id
和answer
。 - 计算指标:使用官方提供的评估脚本或自己实现评估逻辑,主要指标是准确率(Accuracy),即模型预测的答案与 ground truth 答案匹配的比例。
- 如果你有Python环境,可以参考下面的伪代码示例,但实际的评估脚本需要根据官方发布的代码进行调整。
import pandas as pd from sklearn.metrics import accuracy_score # 假设df_true是包含真实答案的DataFrame,df_pred包含预测答案 df_true = pd.read_csv('path/to/answers.csv') # 真实答案文件 df_pred = pd.read_csv('path/to/predictions.csv') # 预测答案文件 # 确保两者的question_id对齐 assert set(df_true['question_id']) == set(df_pred['question_id']) # 计算准确率 accuracy = accuracy_score(df_true['answer'], df_pred['answer']) print(f'Accuracy: {accuracy}')
在线评估
对于VQAV2,官方可能会提供特定的评估平台,如EvalAI,但如果你提到EvalAI不再接受上传,这可能意味着平台政策或维护状态有所改变。在这种情况下,你需要查找最新的官方通知或指南。
- 查看官方更新:访问VQAV2的官方网站或GitHub仓库,寻找最新公告。
- 提交到Leaderboard:如果平台允许,按照最新的指示提交你的预测文件。
- 手动提交:如果在线平台不可用,有时组织者会提供邮箱或其他方式,让你提交结果以获取官方评分。
4. 注意事项
- 确保遵守数据使用协议,不要泄露测试集信息。
- 使用标准的提交格式,否则可能会导致评估脚本无法正确读取数据。
- 跟踪官方资源,因为评估流程或平台可能会随时间更新。
由于具体提交细节和平台操作可能变化,建议直接查看VQAV2的GitHub页面或官方文档,获取最准确的提交和评估指导。
解决 无用评论 打赏 举报 - 问答-莫得感情 2024-11-21 16:20关注
️题主您好️,目前由我为您解答👇🏼
🧡参考谷歌智能助手,由吾为汝整理提供🧡VQAv2 在 EvalAI 上的评估已经停止了。目前,VQAv2 的评估主要依靠官方提供的评估脚本进行离线评估。
以下是详细的离线评估步骤及代码示例:
-
下载官方评估代码和数据:
你需要下载 VQAv2 的数据集和评估代码。 官方推荐的方式是使用
tcm-qa
库,它包含了下载和评估的工具。pip install tcm-qa
然后使用
download_tcm
命令下载数据集和评估脚本:python -m tcm_qa.download_tcm --dataset vqa --split {'val', 'test-dev'}
这会下载
vqa_v2
数据集的val
和test-dev
分割。 你也可以只下载其中一个。 -
生成预测结果文件:
你的模型需要生成一个 JSON 文件,包含对验证集或测试集每个问题的预测答案。 JSON 文件的格式应该如下:
[ {"question_id": 1, "answer": "yes"}, {"question_id": 2, "answer": "blue"}, {"question_id": 3, "answer": "4"}, ... ]
确保
question_id
与 VQAv2 数据集中的question_id
对应,answer
是模型预测的答案字符串。 -
使用官方脚本进行评估:
下载完成后,
vqa_v2
目录下会有一个vqa_v2_eval
文件夹,其中包含评估脚本vqaEval.py
。 你可以使用以下命令进行评估:python vqa_v2_eval/vqaEval.py --annotation-file vqa_v2/val/vqa_v2_val_annotations.json --result-file <path_to_your_results.json>
将
<path_to_your_results.json>
替换为你生成的预测结果文件的路径。对于 test-dev 集的评估,使用以下命令:
python vqa_v2_eval/vqaEval.py --annotation-file vqa_v2/test-dev/vqa_v2_test-dev_annotations.json --result-file <path_to_your_results.json> --no-ground-truth
注意
--no-ground-truth
参数,因为 test-dev 集没有公开的 ground truth 答案。 -
理解评估结果:
评估脚本会输出多个指标,包括 overall accuracy 和各个答案类型的准确率。 最重要的指标是 overall accuracy。
代码示例 (Python):
import json # 假设你的模型预测结果存储在 results 列表中 results = [ {"question_id": 1, "answer": "yes"}, {"question_id": 2, "answer": "blue"}, {"question_id": 3, "answer": "4"}, # ... more results ] # 保存结果到 JSON 文件 with open("results.json", "w") as f: json.dump(results, f) # 运行评估脚本 (假设你已经下载了数据集和评估脚本) import subprocess command = ["python", "vqa_v2_eval/vqaEval.py", "--annotation-file", "vqa_v2/val/vqa_v2_val_annotations.json", "--result-file", "results.json"] process = subprocess.Poplex(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = process.communicate() print(stdout.decode()) # 打印评估结果 if stderr: print(stderr.decode()) # 打印错误信息
总结:
现在 VQAv2 的评估主要依赖于官方提供的离线评估脚本。 确保你的结果文件格式正确,并使用正确的命令运行评估脚本。 理解评估输出的各项指标,特别是 overall accuracy,可以帮助你评估模型的性能。 通过
tcm-qa
库可以方便的下载数据集和评估脚本。 记住,test-dev 集没有 ground truth,评估结果仅供参考,不能用于模型选择或调参。解决 无用评论 打赏 举报 -
- 小熊佩琪滴 2024-11-21 16:20关注解决 无用评论 打赏 举报
- GISer Liu 2024-11-21 16:30关注
该回答引用自GPT-4o, 由博主 GISer Liu 编写:
问题分析
用户询问的是关于VQAV2(Visual Question Answering V2)模型的评估方法。具体问题包括:
- 在线评估:EvalAI是否还能用于上传和评估VQAV2模型。
- 离线评估:如何进行离线评估。
解决方案
1. 在线评估
EvalAI是一个常用的在线评估平台,但用户提到EvalAI可能不再支持VQAV2的上传和评估。这可能是因为EvalAI的更新或维护导致某些功能暂时不可用。
解决方案:
- 检查EvalAI的最新状态:首先,用户可以访问EvalAI官网,查看是否有关于VQAV2评估的最新公告或更新。
- 使用其他在线平台:如果EvalAI不可用,可以尝试其他在线评估平台,如Codalab或AIcrowd,这些平台也可能支持VQAV2的评估。
2. 离线评估
离线评估是指在本地环境中对模型进行评估,不需要依赖在线平台。
解决方案:
- 下载评估数据集:首先,从VQAV2的官方数据集仓库(如VQAV2数据集)下载评估所需的数据集。
- 使用评估脚本:VQAV2通常提供官方的评估脚本,用户可以下载并使用这些脚本进行离线评估。以下是一个简单的评估脚本大纲:
# 评估脚本大纲 import json from vqa_eval import VQAEval # 加载预测结果和真实标签 predictions = json.load(open('predictions.json')) answers = json.load(open('answers.json')) # 初始化评估器 vqa_eval = VQAEval() # 计算评估指标 vqa_eval.evaluate(predictions, answers) # 输出评估结果 print(vqa_eval.results)
详细步骤:
- 下载评估脚本:从VQAV2的官方GitHub仓库下载评估脚本(如
vqa_eval.py
)。 - 准备数据:将模型的预测结果保存为
predictions.json
,将真实标签保存为answers.json
。 - 运行评估脚本:在本地环境中运行上述脚本,计算并输出评估结果。
总结
- 在线评估:检查EvalAI的最新状态,或尝试其他在线评估平台。
- 离线评估:下载VQAV2数据集和评估脚本,在本地环境中进行评估。
通过以上方法,用户可以有效地进行VQAV2模型的评估,无论是通过在线平台还是离线方式。
如果该回答解决了您的问题,请采纳!如果没有,请私信联系或评论您的疑惑
解决 无用评论 打赏 举报 - 才华横溢caozy 2024-11-21 16:32关注
以下答案是由GPT4-pro回答,本人整理后的结果,如有帮助,还请采纳!
VQAv2(Visual Question Answering v2)是一个图像问答任务,要求模型在给定一张图片和一个问题的情况下,输出一个合理的答案。VQAv2的数据集包含数万张图片和与之相关的不同问题,数据集的评估方法对于衡量模型的性能非常重要。以下是如何进行VQAv2的评估方法的详细探讨。一、VQAv2评估概述
VQAv2的评估方法主要有两个方面:
- 准确率评估(Accuracy):即模型预测的答案是否正确,通常根据正确的答案数量来衡量。
- 其他更复杂的评估指标:例如 BLEU、ROUGE、CIDEr等,这些是常用于自然语言处理任务中的评估标准,能够更好地衡量生成回答的质量。
VQAv2通常采用离线评估方法,在测试集上批量评估模型的性能。这个过程通常在训练完成后进行。因为VQAv2是一个多选择问题(MCQ),所以常用的评估方法就是通过比对生成的答案与标准答案进行对比。
二、VQAv2在线和离线评估方式
1. 离线评估(Offline Evaluation)
VQAv2的离线评估通常是基于官方提供的评估脚本来进行的。这些评估脚本会根据预测的答案与真实的标签进行比对,计算出模型的准确率和其他相关的评价指标。
离线评估的步骤如下:
- 准备预测结果:在测试集上的每个问题,生成一个或多个候选答案。通常,模型会返回一个答案和它的相关分数。
- 准备评估脚本:使用官方提供的评估脚本。VQAv2的数据集有一个标准的评估脚本(比如
vqa_eval.py
),它可以计算每个问题的准确率(准确答案占所有答案的比例)。 - 计算评估指标:
- 准确率(Accuracy):直接对比预测的答案和标准答案,计算正确预测的比例。
- 其他评估指标:例如 BLEU、ROUGE、CIDEr等,这些指标可以通过计算与标准答案之间的相似度来衡量生成回答的质量。
在VQAv2的官方仓库中,通常会提供相关的评估脚本以及如何使用它们的说明。一般来说,离线评估需要将预测结果保存在文件中,并使用这些脚本来计算最终的评估结果。
2. 在线评估(Online Evaluation)
VQAv2的数据集评估平台(例如EvalAI)主要用于提交模型输出并在线进行评分。然而,EvalAI平台不再直接支持上传结果,这可能是由于平台政策或技术变动导致的。如果EvalAI不支持直接上传评估,您可以考虑以下方法:
- 使用官方API:如果EvalAI平台更新了其接口,您可以通过API接口将模型的预测结果提交到平台进行评估。
- 使用其他平台:在一些情况下,可能有其他平台支持在线评估任务。可以尝试联系VQAv2数据集的维护者,了解是否有替代平台。
- 自建在线评估系统:如果没有合适的在线评估平台,您也可以基于已有的评估代码,搭建自己的评估系统。这个系统会接收模型的输出,计算准确率等评估指标,并返回评估结果。
3. 使用EvalAI进行离线评估(如果平台不能上传)
如果EvalAI平台无法上传并在线评估,您依然可以使用以下方式进行离线评估:
- 下载评估数据集:从VQAv2的官网或相关数据集平台下载测试数据集及相关的标准答案。
- 生成预测结果:使用您的模型在测试集上进行推理,生成预测答案。
- 使用标准评估脚本:运行官方提供的评估脚本来计算评估指标,通常这些脚本会包含准确率(accuracy)、BLEU、ROUGE等评价标准。
python vqa_eval.py --prediction_file predictions.json --gt_file annotations.json
在该命令中,
predictions.json
是模型输出的预测文件,annotations.json
是标准答案的文件。运行此脚本后,您会获得模型在标准答案上的表现。三、VQAv2评估指标
除了最常用的准确率外,还有其他的评估指标,用于衡量生成的回答质量:
Accuracy:标准的准确率,直接比较生成的答案与标准答案是否匹配。
- Top-1 Accuracy:只考虑模型最有可能预测的答案,比较它与标准答案是否一致。
- Top-5 Accuracy:考虑模型预测的前五个答案,至少有一个与标准答案一致时即为正确。
BLEU:评估机器生成的文本与参考文本之间的相似度。通常BLEU评分用于机器翻译任务,但也可以用于VQA任务,尤其是对于生成式的回答。
ROUGE:通过计算N-gram的重合来评估生成回答与标准答案之间的相似度。ROUGE更适合评估生成文本的质量,尤其是多词回答。
CIDEr:计算生成答案与标准答案之间的相似性,考虑到词语的重复性和信息的覆盖度。CIDEr常用于评估图像描述生成任务,也适用于VQA任务。
四、离线评估的代码实现
下面是如何使用Python代码进行VQAv2离线评估的一个简单例子:
import json from collections import defaultdict def load_data(prediction_file, ground_truth_file): # 加载预测结果和标准答案 with open(prediction_file, 'r') as f: predictions = json.load(f) with open(ground_truth_file, 'r') as f: ground_truth = json.load(f) return predictions, ground_truth def compute_accuracy(predictions, ground_truth): correct = 0 total = len(predictions) for img_id, pred_answer in predictions.items(): true_answers = ground_truth.get(img_id, []) if pred_answer in true_answers: correct += 1 accuracy = correct / total return accuracy def evaluate(prediction_file, ground_truth_file): predictions, ground_truth = load_data(prediction_file, ground_truth_file) accuracy = compute_accuracy(predictions, ground_truth) print(f"Accuracy: {accuracy * 100:.2f}%") # 示例调用 evaluate("predictions.json", "annotations.json")
五、总结
VQAv2的评估过程主要是通过比对模型生成的答案与标准答案来计算准确率以及其他多个评估指标。离线评估是最常见的方式,通过使用评估脚本对模型输出进行评估。虽然EvalAI平台无法直接支持文件上传,但可以利用官方的评估脚本进行离线评估。如果要在线评估,可以尝试使用API接口或其他平台,或者自己搭建一个在线评估系统。
希望这个回答对您有帮助。如果需要更具体的代码实现或遇到其他问题,欢迎继续提问。
解决 无用评论 打赏 举报 关注 回答引用自GPT-4o,由博主小ᶻZ࿆编写,若还有疑问可评论或留言:
VQAv2现在都是怎么做evaluation的啊
问题描述
题主询问关于VQAv2(Visual Question Answering v2)数据集的评估方法,特别是当前在线平台 EvalAI 似乎无法上传评估结果的情况下,如何进行在线或离线评估。
在线评估方式
EvalAI平台
平台概述:
EvalAI 是一个开源的在线评估平台,提供多种竞赛和评估工具。通常,VQAv2的评估通过 EvalAI 进行,用户上传结果文件后,平台会自动进行评估并返回分数。当前限制:
如果 EvalAI 不再支持上传 VQAv2 的评估结果,建议:- 检查 EvalAI 官方网站 或其 GitHub 仓库,获取最新通知。
- 寻找其他在线评估平台,如 Codalab 或 AIcrowd,可能也支持 VQA 的任务评估。
其他选择:
如果无法使用 EvalAI,也可以联系 VQAv2 数据集的维护方,了解是否有备用在线评估选项。
离线评估方式
离线评估步骤
准备数据:
- 确保已下载 VQAv2 数据集,包括验证集(val)和测试集(test-dev)。
- 获取相应的标准答案文件(Ground Truth)。
生成预测文件:
- 使用模型对验证集或测试集生成预测结果。
- 将预测结果保存为 JSON 文件,格式如下:
[ {"question_id": 1, "answer": "yes"}, {"question_id": 2, "answer": "blue"}, {"question_id": 3, "answer": "4"} ]
使用官方评估脚本:
- 从 VQAv2 官方 GitHub 仓库下载评估脚本,例如
vqaEval.py
。 - 使用以下命令运行评估脚本:
python vqaEval.py --annotation-file vqa_val_annotations.json --result-file predictions.json
- 从 VQAv2 官方 GitHub 仓库下载评估脚本,例如
输出评估指标:
- 主要评估指标包括 Overall Accuracy 和各类问题的分类准确率。
Python代码示例
准备评估脚本
import json def compute_accuracy(predictions, ground_truths): correct = 0 total = len(ground_truths) for item in ground_truths: qid = item['question_id'] if qid in predictions and predictions[qid] == item['answer']: correct += 1 accuracy = correct / total return accuracy # 加载预测结果和标准答案 with open('predictions.json', 'r') as pred_file, open('annotations.json', 'r') as gt_file: predictions = {item['question_id']: item['answer'] for item in json.load(pred_file)} ground_truths = json.load(gt_file) # 计算准确率 accuracy = compute_accuracy(predictions, ground_truths) print(f'Overall Accuracy: {accuracy * 100:.2f}%')
注意事项
提交格式:
确保预测文件与标准答案文件中的question_id
对齐,格式正确。工具更新:
跟踪 VQAv2 官方 GitHub 仓库,及时获取最新的评估脚本和工具。许可和规范:
使用 VQAv2 数据集时,需遵守其许可协议和使用规范。
如有帮助,题主可以帮忙采纳一下嘛,谢谢~
解决 无用评论 打赏 举报关注 解决 无用评论 打赏 举报- 清水白石008 2024-11-21 22:24关注解决 无用评论 打赏 举报
- caperxi 2024-11-21 23:02关注解决 无用评论 打赏 举报
- 颠覆。 2024-11-22 00:48关注解决 无用评论 打赏 举报
- 葱老师呀 2024-11-22 00:49关注解决 无用评论 打赏 举报
- master_chenchengg 2024-11-22 01:12关注
答案来星火AI,希望能对题主有所帮助!
VQA(Visual Question Answering)是一种结合计算机视觉和自然语言处理的任务,旨在从图像中自动生成问题并回答这些问题。VQAV2是VQA的一个版本,它通过更复杂的模型和数据集来提高问答的准确性。
VQAV2的评估方法
VQAV2的评估通常包括以下几个步骤:
数据准备:使用一个包含图像、问题和答案的数据集进行评估。常见的数据集有VQA v2.0数据集。
模型预测:将图像和问题输入到训练好的VQAV2模型中,得到预测的答案。
计算指标:使用多种评估指标来衡量模型的性能,包括准确率(Accuracy)、召回率(Recall)、F1分数等。
具体评估步骤
1. 数据准备
首先,需要准备一个包含图像、问题和正确答案的测试集。例如,VQA v2.0数据集就提供了这样的测试集。
import json # 加载VQA v2.0数据集的测试集 with open('vqa_test.json', 'r') as f: vqa_data = json.load(f)
2. 模型预测
假设我们已经有一个训练好的VQAV2模型,可以使用该模型对测试集中的问题进行预测。
from transformers import VisionEncoderDecoderModel, ViTFeatureExtractor, AutoTokenizer import torch from PIL import Image # 加载预训练的VQAV2模型和相关组件 model = VisionEncoderDecoderModel.from_pretrained("dandelin/vilt-b32-finetuned-vqav2") feature_extractor = ViTFeatureExtractor.from_pretrained("google/vit-base-patch16-224") tokenizer = AutoTokenizer.from_pretrained("dandelin/vilt-b32-finetuned-vqav2") def predict(image_path, question): image = Image.open(image_path).convert("RGB") pixel_values = feature_extractor(images=image, return_tensors="pt").pixel_values input_ids = tokenizer(question, return_tensors="pt").input_ids outputs = model.generate(pixel_values=pixel_values, input_ids=input_ids) return tokenizer.decode(outputs[0], skip_special_tokens=True) # 示例预测 image_path = "example.jpg" question = "What is this?" predicted_answer = predict(image_path, question) print(predicted_answer)
3. 计算指标
为了评估模型的性能,我们需要计算一些常用的指标,如准确率、召回率和F1分数。
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score # 假设我们有一个包含所有测试样本及其正确答案的列表 true_answers = [sample['answer'] for sample in vqa_data['annotations']] predicted_answers = [] for sample in vqa_data['annotations']: image_path = sample['image_id'] + '.jpg' # 假设图像文件名与image_id一致 question = sample['question'] predicted_answer = predict(image_path, question) predicted_answers.append(predicted_answer) # 计算评估指标 accuracy = accuracy_score(true_answers, predicted_answers) precision = precision_score(true_answers, predicted_answers, average='macro') recall = recall_score(true_answers, predicted_answers, average='macro') f1 = f1_score(true_answers, predicted_answers, average='macro') print(f"Accuracy: {accuracy}") print(f"Precision: {precision}") print(f"Recall: {recall}") print(f"F1 Score: {f1}")
总结
VQAV2的评估过程主要包括数据准备、模型预测和计算评估指标三个步骤。通过这些步骤,我们可以全面地评估VQAV2模型在视觉问答任务上的性能。希望这个回答对你有所帮助!
解决 无用评论 打赏 举报 - 杨同学* 2024-11-22 01:16关注
该回答引用ChatGPT4o, 并由本人整理回复, 如有帮助,还请采纳。
VQAv2(Visual Question Answering version 2)是一个广泛使用的多模态任务,涉及将图像和文本(问题)结合在一起,通过模型生成正确的回答。为了对VQAv2模型进行评估,通常有两种方式:在线评估和离线评估。以下是如何在当前环境中进行这些评估的详细说明:1. 在线评估
VQAv2的官方评估平台曾经是 EvalAI,一个在线评测平台,但最近出现了上传问题,无法直接提交评估。这类情况可能与平台本身的更新或限制有关。针对这种情况,下面提供几种可能的评估途径:
官方评估平台(EvalAI):
EvalAI曾经是VQAv2的官方评估平台,用户可以通过上传提交的预测结果来获取评估指标(如准确率)。目前如果EvalAI平台暂时无法使用,建议检查平台是否有新的维护信息或公告,或者与平台管理员联系以了解进一步的信息。其他评估平台:
你可以尝试在一些其他的多模态评估平台上进行评估,虽然这些平台的支持情况可能较少。例如,有些研究社区会提供自己的API接口进行VQA任务的评估,也有可能通过GitHub等渠道发布开源的评估脚本和模型,供开发者使用。自己搭建评估环境:
如果EvalAI等平台无法直接评估,也可以自己搭建离线评估工具,或者参考一些开源项目,它们可能已经实现了VQAv2的评估脚本。这样,你可以自己运行评估,而不依赖于第三方平台。
2. 离线评估
离线评估是最常见的方式,尤其是当你拥有自己的测试数据集和预测结果时。VQAv2通常提供了标准的测试集和评估代码,你可以根据这些信息进行本地评估。
离线评估步骤:
下载VQAv2的标准数据集:
- VQAv2数据集通常由训练集、验证集和测试集组成。你需要下载验证集或测试集的问答对和图像。
- 官方的VQAv2数据集通常可以从Visual QA V2的官方链接下载。
预测结果文件准备:
- 将你的模型的输出结果(预测的答案)准备成标准的文件格式。通常来说,这些结果应为JSON格式,包含每个问题(id、图像和问题)对应的预测答案。
例如,预测结果的格式可能如下所示:
[ { "question_id": 12345, "image_id": 67890, "answer": "cat" }, ... ]
运行评估代码:
官方的评估代码(通常也会发布在GitHub上)能够自动读取测试集和预测结果,并输出模型的各种性能指标。你可以从以下步骤开始:- 在GitHub上搜索VQAv2的官方评估脚本,例如VQAv2 GitHub。
- 下载评估脚本并按照文档进行配置。
- 运行评估脚本,它会自动计算准确率(Accuracy)、Top-5准确率(Top-5 Accuracy)、以及一些其他常见的评估指标。
通常,评估脚本的调用命令如下:
python eval.py --predictions predictions.json --dataset vqa_data.json
其中
predictions.json
是你的预测结果,vqa_data.json
是标准的数据集。评估指标:
VQAv2的标准评估指标通常包括:- 准确率(Accuracy):模型预测正确答案的比例。
- 准确率Top-5:模型预测前5个答案中是否包含正确答案。
- 均匀准确率:可能会提供更为细致的准确率衡量(例如按答案的类别、问题类型等进行分类评估)。
3. 常见评估代码
- VQA评估工具:你可以使用VQA评估工具来执行标准的评估。这个工具已经实现了对VQAv2数据集的支持,并且可以生成详细的评估报告,包括每个类别的准确率。
4. 总结:
- 如果EvalAI不能使用,你可以尝试联系平台的支持团队,或查看是否有其他备选的评估平台。
- 离线评估是比较常见的方式,你可以使用官方的评估代码,并按照标准的格式准备你的测试数据和预测结果。
- 如果有条件,可以将预测结果上传至其他平台或使用现有的VQA工具包(例如Stanford VQA工具包)进行本地评估。
希望这些信息能帮到你!如果你有更多问题,随时问我。
解决 无用评论 打赏 举报 关注 答案参考chatGPT,希望能对题主有所帮助!提供思路!
好的,让我们来探讨一下VQAv2(Visual Question Answering version 2)的评估方法。
VQAv2评估概述
VQAv2是一种视觉问答任务,它要求模型不仅理解图像内容,还要能够回答与图像相关的自然语言问题。为了评估模型的性能,VQAv2采用了多种评估指标和方法。
基本概念和作用说明
1. 数据集划分
- 训练集:用于训练模型。
- 验证集:用于调整超参数和选择最佳模型。
- 测试集:用于最终评估模型性能。
2. 评估指标
- Accuracy:正确答案的比例。
- **WUPS (Weighted Unigram Performance Score)**:一种更细粒度的评估指标,考虑了词的顺序和匹配程度。
- Human Agreement:与人类标注结果的一致性。
评估流程
- 数据准备:将测试集中的问题和对应的图像输入到模型中,得到预测的答案。
- 计算指标:根据预测答案和真实答案计算各种评估指标。
- 分析结果:通过这些指标了解模型在各个方面的表现。
代码示例
以下是一个简单的Python代码示例,展示如何计算VQAv2中的一些基本评估指标。假设我们有一个包含预测答案和真实答案的列表。
from collections import Counter import numpy as np # 示例数据 true_answers = ["cat", "dog", "bird", "fish"] predicted_answers = ["cat", "dog", "bird", "fish"] def calculate_accuracy(true, pred): correct = sum([1 for t, p in zip(true, pred) if t == p]) return correct / len(true) def calculate_wups(true, pred, n=9): def wup_similarity(a, b): a = a.lower().split() b = b.lower().split() common = Counter(a) & Counter(b) if not common: return 0.0 precision = sum(common.values()) / len(a) recall = sum(common.values()) / len(b) return (precision * recall) / (precision + recall + 1e-6) return np.mean([wup_similarity(t, p) for t, p in zip(true, pred)]) # 计算准确率 accuracy = calculate_accuracy(true_answers, predicted_answers) print(f"Accuracy: {accuracy:.2f}") # 计算WUPS wups = calculate_wups(true_answers, predicted_answers) print(f"WUPS: {wups:.2f}")
总结
VQAv2的评估方法主要包括数据集划分、计算各种评估指标以及分析结果。通过这些步骤,我们可以全面了解模型在视觉问答任务中的表现。希望这个回答对你有所帮助,如果有任何问题,欢迎继续提问!
解决 无用评论 打赏 举报- caozhenyu650 2024-11-22 02:12关注
此答案是由GPT4和本人亲自作答,如有帮助,还请采纳!
VQAv2(Visual Question Answering v2)是一种用于评估视觉问答系统(VQA)性能的数据集和任务。VQA任务要求模型在给定图片的情况下,根据自然语言问题生成合理的答案。VQAv2是VQA任务中较为流行的一个版本,它不仅包含了不同种类的视觉问题,还要求回答为文本。其评估通常包括多种标准,如准确率、选择准确性等。随着时间的发展,VQAv2的评估方式和平台也有所变化,下面将从评估指标、评估平台及代码实现等方面介绍如何进行VQAv2的评估。1. VQAv2评估指标
VQAv2的评估主要依赖于以下几种常见的评估指标:
准确率(Accuracy):对于每一个问题,模型给出的答案与地面真值(Ground Truth)答案匹配的比例。VQAv2通常会有多个答案,因此,准确率的计算方式会考虑到所有的正确答案。
多选准确率(Multiple-choice Accuracy):如果给定的问题有多个可能的正确答案,模型需要选出其中之一为正确答案。对于每个问题,这个指标会计算出模型的选择是否为正确答案。
开放性问题评估(Open-ended Evaluation):VQAv2支持开放性问题评估,模型需要根据图片回答自由形式的文本,通常通过与地面真值答案进行相似度匹配来进行评估。
计算BLEU、METEOR等文本评估指标:这些指标用于评估模型生成的文本答案与参考答案之间的相似性。
常见的VQAv2评估指标有:
- Top-1 Accuracy:模型选出的最优答案是否匹配地面真值。
- Top-5 Accuracy:模型选出的前五个答案是否包含地面真值。
- Open-ended Accuracy:计算模型在开放性问题中的答案准确率,通常结合BLEU、METEOR、ROUGE等自然语言处理(NLP)领域常见的文本评估指标。
2. VQAv2的评估流程
2.1 在线评估
VQAv2的在线评估通常是通过某些平台如EvalAI来实现的。不过,EvalAI等平台的上传限制(比如不能直接上传模型的预测结果)可能会让一些用户感到困惑。解决这个问题的途径包括:
在平台上提交验证集结果:
- VQAv2的数据集一般会提供训练集、验证集和测试集。在EvalAI等平台上,用户需要将自己的预测结果和地面真值文件提交进行评估。
- 由于平台限制,有时上传模型预测结果的接口可能关闭,或者存在版本更新。如果是这种情况,可以参考平台的文档或使用其他开源评估工具。
使用官方提供的评估工具:
- VQAv2官方提供了评估工具,这些工具通常会支持将你的预测结果与地面真值进行对比,并返回评估指标。在GitHub上,VQAv2的官方代码库中一般包含了这些评估工具,你可以通过本地运行这些工具来评估模型。
使用第三方评估平台:
- 除了EvalAI,您还可以使用其他一些开源评估平台,如CocoEval等。这些平台大多支持JSON格式的输入和输出,并能给出相应的评估报告。
2.2 离线评估
离线评估是指不依赖在线评估平台,直接在本地计算评估指标。离线评估有以下几个步骤:
准备数据:
- 下载VQAv2数据集(通常包括训练集、验证集和测试集)。每个问题会有多个可能的答案。数据集通常是JSON格式,包含图片信息、问题、多个答案和相关的ID。
生成预测结果:
- 使用你训练好的VQA模型生成对测试集(或验证集)的预测答案。假设你的模型已经生成了预测答案,你需要将这些答案存储在一个特定的格式(通常是JSON或CSV)中,以便进行评估。
使用评估工具:
- 你可以使用VQAv2提供的评估脚本来计算各种评估指标。以下是一个简单的Python代码示例,展示如何使用官方的评估工具进行离线评估:
import json from vqa.eval import VQAEval # 加载地面真值文件和预测文件 ground_truth_file = 'path/to/ground_truth.json' prediction_file = 'path/to/prediction_results.json' with open(ground_truth_file, 'r') as f: ground_truth_data = json.load(f) with open(prediction_file, 'r') as f: prediction_data = json.load(f) # 创建VQAEval对象进行评估 vqa_eval = VQAEval() vqa_eval.evaluate(ground_truth_data, prediction_data) # 输出评估结果 vqa_eval.print_results()
这个代码的关键步骤是加载地面真值和预测结果,然后通过
VQAEval
类来计算评估指标(如Top-1 Accuracy、BLEU、ROUGE等)。分析结果:
- 评估工具会输出各类评估指标的结果。你可以查看模型在Top-1、Top-5、开放性问题等任务上的表现,进一步分析模型的优缺点。
3. VQAv2评估代码实现
为了让大家更清楚地了解如何进行VQAv2的评估,下面提供一个完整的离线评估代码实现。假设我们已经有了训练好的模型和预测结果,我们将展示如何使用Python脚本进行VQAv2评估。
3.1 准备工作
首先,确保你已经安装了必要的库,例如
json
、numpy
、scikit-learn
、nltk
等。pip install numpy scikit-learn nltk
3.2 离线评估的完整实现
以下是一个示例脚本,用于加载VQAv2数据集并进行离线评估:
import json import numpy as np from nltk.translate.bleu_score import corpus_bleu # 加载地面真值和预测文件 def load_data(ground_truth_path, prediction_path): with open(ground_truth_path, 'r') as gt_file: ground_truth = json.load(gt_file) with open(prediction_path, 'r') as pred_file: predictions = json.load(pred_file) return ground_truth, predictions # 计算BLEU得分 def calculate_bleu(ground_truth, predictions): references = [] hypothesis = [] for item in ground_truth: references.append([item['answers']]) # 每个问题的多个正确答案 hypothesis.append(predictions[item['image_id']]) return corpus_bleu(references, hypothesis) # 计算准确率(Top-1 Accuracy) def calculate_accuracy(ground_truth, predictions): correct = 0 total = len(ground_truth) for item in ground_truth: image_id = item['image_id'] correct_answer = set(item['answers']) predicted_answer = predictions[image_id] if predicted_answer in correct_answer: correct += 1 return correct / total # 主函数 if __name__ == "__main__": ground_truth_path = "path_to_ground_truth.json" prediction_path = "path_to_predictions.json" ground_truth, predictions = load_data(ground_truth_path, prediction_path) # 计算并输出评估指标 top1_accuracy = calculate_accuracy(ground_truth, predictions) print(f"Top-1 Accuracy: {top1_accuracy:.4f}") bleu_score = calculate_bleu(ground_truth, predictions) print(f"BLEU Score: {bleu_score:.4f}")
4. 总结与扩展
通过上面的代码和流程,你可以很方便地在本地进行VQAv2任务的评估。虽然EvalAI和其他在线平台可能存在一些限制,但离线评估工具和代码库足以支撑大多数评估需求。通过这种方式,你可以获得准确的评估结果,并在此基础上进一步优化你的VQA模型。
解决 无用评论 打赏 举报 - threenewbee 2024-11-22 02:23关注解决 无用评论 打赏 举报
- giser@2011 2024-11-22 02:26关注
参考GPT
VQAV2(Visual Question Answering 2)是一个视觉问答的数据集,用于评估计算机视觉和自然语言处理技术生成高质量答案的能力。关于VQAV2的evaluation,以下是一些常见的做法:
在线评估:
使用官方提供的评测工具:通常,数据集的发布者会提供一些官方评测工具,这些工具可以用于计算准确率等指标。您可以在官方文档中查找是否有这样的工具。
使用EvalAI平台:尽管您提到EvalAI可能不再支持VQAV2的上传,但EvalAI是一个常用的在线评测平台,您可能需要联系EvalAI的支持团队,看是否有特殊的方法来评估VQAV2。
自定义在线评测服务:如果您有自己的在线平台或服务器,可以开发一个自定义的API或服务来接收模型生成的答案,并与VQAV2的正确答案进行比对。
离线评估:
- 本地评测脚本:您可以在本地编写一个Python脚本,使用VQAV2的测试集和答案文件,结合您模型的输出进行评测。以下是一个简单的Python脚本示例:
import json from pathlib import Path # 加载VQAV2的测试集和答案文件 test_json = Path("vqav2_test.json").read_text() ground_truth = Path("vqav2_test_grounded_truth.json").read_text() test = json.loads(test_json) ground_truth = json.loads(ground_truth) # 模拟从您的模型获取答案 def get_answer_to_question(question): # 这里应该是您模型生成的答案 return "The answer to this question." # 计算准确率 correct_answers = 0 for item in test: question_id = item["id"] question = item["question"] answer = get_answer_to_question(question) correct_answer = ground_truth[question_id]["golden_answers"][0] if answer == correct_answer: correct_answers += 1 accuracy = correct_answers / len(test) print(f"Accuracy: {accuracy}")
使用其他评测库:有一些Python库可以用来进行文本相似度的计算,如
difflib
或nltk
,这些库可以用来计算您模型的答案与正确答案之间的相似度。指标计算:除了准确率,您还可以计算其他指标,如召回率、F1分数等。
注意事项:
- 数据隐私:在评估过程中,请确保遵守数据隐私法规。
- 公平性:在评测模型时,要确保评测过程公平,不偏向于任何特定的模型或团队。
- 复现性:确保评测过程可以被其他研究者复现。
如果您在使用评测过程中遇到具体问题,可以进一步详细说明,以便获得更具体的帮助。
解决 无用评论 打赏 举报 - 拾光师 2024-11-22 05:14关注
VQA v2.0(Visual Question Answering version 2.0)是一个广泛使用的视觉问答基准数据集。评估 VQA v2.0 模型的性能通常涉及以下几个步骤:
在线评估
EvalAI 平台:
- EvalAI 是一个常用的在线评估平台,但有时可能因为维护或其他原因暂时关闭上传功能。
- 如果 EvalAI 不可用,可以尝试其他在线平台或使用离线评估方法。
其他在线平台:
- 有些研究机构或组织可能会提供类似的在线评估平台。可以关注 VQA 社区或相关论文中的推荐平台。
离线评估
下载评估脚本:
- VQA v2.0 官方提供了评估脚本,可以在其 GitHub 仓库中找到。
- 通常,评估脚本会包括 Python 脚本和必要的数据文件。
准备数据:
- 下载 VQA v2.0 的测试集和验证集。
- 确保你有一个包含模型预测答案的 JSON 文件,格式如下:
[ {"question_id": 12345, "answer": "dog"}, {"question_id": 67890, "answer": "cat"}, ... ]
运行评估脚本:
- 使用官方提供的评估脚本来评估模型的性能。
- 以下是一个示例命令:
python evaluate_vqa.py --questions path/to/v2_OpenEnded_mscoco_val2014_questions.json --annotations path/to/v2_mscoco_val2014_annotations.json --results path/to/predictions.json
详细步骤
克隆 VQA 仓库:
git clone https://github.com/GT-Vision-Lab/VQA.git cd VQA
下载数据集:
- 从 VQA 官方网站下载测试集和验证集的 JSON 文件。
- 例如:
v2_OpenEnded_mscoco_val2014_questions.json
v2_mscoco_val2014_annotations.json
准备预测文件:
- 生成一个包含模型预测答案的 JSON 文件,格式如上所述。
运行评估脚本:
- 确保你已经安装了必要的依赖项,例如
nltk
和numpy
。 - 运行评估脚本:
python Evaluation/PythonHelperTools/vqaEvaluation/vqaEval.py --questions path/to/v2_OpenEnded_mscoco_val2014_questions.json --annotations path/to/v2_mscoco_val2014_annotations.json --results path/to/predictions.json
- 确保你已经安装了必要的依赖项,例如
评估指标
VQA v2.0 通常使用以下指标来评估模型性能:
- 准确率:模型预测答案与标注答案匹配的百分比。
- WUPS 0.9 和 WUPS 0.0:词义相似度得分,用于评估预测答案与标注答案的语义相似度。
示例代码
以下是一个简单的 Python 脚本示例,展示了如何使用官方评估脚本进行评估:
import json from vqaEvaluation.vqaEval import VQAEval from vqaTools.vqa import VQA # 路径设置 questions_path = 'path/to/v2_OpenEnded_mscoco_val2014_questions.json' annotations_path = 'path/to/v2_mscoco_val2014_annotations.json' predictions_path = 'path/to/predictions.json' # 加载数据 vqa = VQA(annotations_path, questions_path) vqaRes = vqa.loadRes(predictions_path, questions_path) # 创建评估对象 vqaEval = VQAEval(vqa, vqaRes, n=2) # n=2, 使用 WUPS 0.9 和 WUPS 0.0 # 评估 vqaEval.evaluate() # 打印结果 print("Overall Accuracy: %.4f" % vqaEval.accuracy['overall']) print("Per Question Type Accuracy:") for quesType in vqaEval.accuracy['perQuestionType']: print("%s: %.4f" % (quesType, vqaEval.accuracy['perQuestionType'][quesType])) print("Per Answer Type Accuracy:") for ansType in vqaEval.accuracy['perAnswerType']: print("%s: %.4f" % (ansType, vqaEval.accuracy['perAnswerType'][ansType]))
总结
- 在线评估:如果 EvalAI 平台不可用,可以尝试其他在线平台。
- 离线评估:下载官方评估脚本和数据集,准备预测文件,运行评估脚本。
希望这些步骤和示例代码能帮助你顺利完成 VQA v2.0 的评估。如果有任何进一步的问题或需要更多帮助,请随时告诉我。
解决 无用评论 打赏 举报 关注 解决 无用评论 打赏 举报- Kwan的解忧杂货铺@新空间代码工作室 2024-11-22 13:34关注解决 无用评论 打赏 举报
- *拯 2024-11-22 14:43关注解决 无用评论 打赏 举报
- 迂 幵 2024-11-22 14:43关注解决 无用评论 打赏 举报
关注 解决 无用评论 打赏 举报- 恐怖如斯恐怖如斯啊 2024-11-21 16:19关注解决评论 打赏 举报无用 1
- 阿里嘎多学长 2024-11-21 16:19关注解决评论 打赏 举报无用 1阿里嘎多学长 2024-11-21 16:21
阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
关于VQA V2的评估,如果您发现EvalAI平台无法上传进行评估,可以考虑以下优化后的解决方案:
-
使用官方评估工具:您可以下载VQA官方提供的评估脚本,如
vqa-evaluation
,这是一个Python库,可以用于本地评估您的模型性能。 -
自行搭建评估环境:在本地环境中,您需要准备VQA V2的测试集,运行您的模型生成预测结果,然后使用
vqa-evaluation
库计算准确率等指标。 -
参考最新社区实践:由于VQA领域不断发展,最新的评估方法和工具可能会有所更新。您可以查看相关的研究论文、GitHub项目或技术论坛,了解当前社区中流行的评估实践。
-
联系EvalAI支持:如果EvalAI平台是您的首选,可以尝试联系平台的技术支持,询问VQA V2评估的最新情况,或者是否有计划支持VQA V2的评估。
通过上述方法,您可以在无法使用EvalAI平台的情况下,依然有效地对VQA V2模型进行评估。
赞回复 -
关注 解决评论 打赏 举报无用 1在评估VQAV2时,通常会使用一些特定的指标来衡量模型的表现。这些指标可能包括但不限于:准确性、召回率、F1分数、精确度等。
对于EvalAI,它是一个用于评估机器学习模型性能的平台。如果你发现EvalAI中无法上传文件或进行在线评估,这可能是由于以下几个原因:
- 确保文件大小不超过规定的限制。
- 文件格式是否支持。
- 你的文件是否已保存在正确的URL上。
- 确认是否有权限访问该网站并进行评估。
为了解决这个问题,可以尝试以下步骤:
- 检查文件大小是否符合规定。
- 检查文件类型是否被允许。
- 确保文件已保存在正确的URL上。
- 如果是付费服务,确保有相应的付费账户信息。
此外,如果你想要离线进行评估,可以在本地计算机上运行Python脚本或其他适当的工具来进行评估。这里有一个简单的示例代码,展示了如何使用TensorFlow进行离线评估:
import tensorflow as tf from sklearn.metrics import f1_score, precision_score, recall_score # 假设我们有一个训练好的模型,并且有一个测试集 model = tf.keras.models.load_model('your_model.h5') test_data = load_test_data_from_file('your_test_data.txt') # 预测标签 predictions = model.predict(test_data) # 计算准确率、召回率和f1分数 accuracy = accuracy_score(test_labels, predictions) recall = recall_score(test_labels, predictions) precision = precision_score(test_labels, predictions) f1 = f1_score(test_labels, predictions) print("Accuracy: ", accuracy) print("Recall: ", recall) print("Precision: ", precision) print("F1 Score: ", f1)
这个代码只是一个基本的例子,实际应用中可能会根据具体的需求调整参数和计算方法。
如果你遇到其他问题,欢迎随时提问。
赞回复关注 🕝凌晨好,题主!目前:🔴[离线]
📢参考通义千问、由郭老师整理提供!
📣今日诗号:明月不知君已去,夜深还照读书窗。VQA(Visual Question Answering)是计算机视觉和自然语言处理领域的一个重要任务,其中VQAv2是最常用的评估数据集之一。对于VQAv2的评估,通常可以分为在线评估和离线评估两种方式。
在线评估
在线评估通常通过一些特定的平台进行,比如EvalAI。但是,如果EvalAI不再支持上传VQAv2结果,你可以考虑其他在线平台或直接联系VQAv2的维护者获取最新的指导方针。
离线评估
如果你想要进行离线评估,可以通过计算VQAv2官方提供的评估指标来实现。VQAv2主要使用两个指标:Accuracy和Mean Reciprocal Rank (MRR)。Accuracy是最常用的指标,它计算模型回答正确的比例。而MRR则更关注于排名最高的答案是否正确。
离线评估代码示例
以下是一个简单的Python脚本,用于计算VQAv2数据集上的Accuracy:
import json from collections import defaultdict def compute_accuracy(answers, predictions): """ 计算准确率。 参数: answers: 字典,键为问题ID,值为正确答案。 predictions: 字典,键为问题ID,值为模型预测的答案。 返回: accuracy: 准确率。 """ correct = 0 total = len(answers) for qid in answers: if qid in predictions and predictions[qid] == answers[qid]: correct += 1 return correct / total def load_data(file_path): """ 加载数据文件。 参数: file_path: 数据文件路径。 返回: data_dict: 包含问题ID到答案映射的字典。 """ with open(file_path, 'r') as f: data = json.load(f) data_dict = {item['question_id']: item['answer'] for item in data} return data_dict # 假设你有ground truth和predictions两个JSON文件 gt_file = 'path/to/val_annotations.json' # ground truth文件 pred_file = 'path/to/predictions.json' # 预测结果文件 # 加载ground truth和预测结果 gt_answers = load_data(gt_file) pred_answers = load_data(pred_file) # 计算准确率 accuracy = compute_accuracy(gt_answers, pred_answers) print(f"Accuracy: {accuracy:.4f}")
注意事项
- 确保你的
predictions.json
文件格式正确,并且包含与val_annotations.json
中相同的question_id
。 - VQAv2评估还可能需要考虑其他因素,如回答标准化等,这在上述代码中没有详细展示。
以上就是一个基本的离线评估方法,如果你需要更详细的评估,例如MRR或者其他复杂的评估指标,可能需要根据具体需求调整代码。希望这个示例对你有所帮助!
解决评论 打赏 举报无用 1- 确保你的
悬赏问题
- ¥20 四叉树的创建和输出问题
- ¥15 使用okhttp分片上传文件,总是超时,到底是哪里的问题
- ¥15 javaweb连接数据库,jsp文件加载不出来
- ¥15 matlab关于高斯赛德尔迭代的应用编撰。(相关搜索:matlab代码|迭代法)
- ¥15 pkg-types,vite,d
- ¥15 损失匹配问题,求解答
- ¥15 3500常用汉字书法体检测数据集下载
- ¥15 odoo17在制造模块或采购模块良品与次品如何分流和在质检模块下如何开发
- ¥15 Qt音乐播放器的音乐文件相对路径怎么写
- ¥15 VB.NET利用摄像头拍照的程序