| """
|
| 转换预测结果为比赛提交格式
|
| 从: {"sample_id": 0, "unique_segment_index": 24, ...}
|
| 到: {"id": 0, "predicted_index": 24}
|
| """
|
| import json
|
|
|
| def convert_format(input_file, output_file):
|
| """转换格式"""
|
| print(f"读取: {input_file}")
|
|
|
|
|
| results = []
|
| with open(input_file, 'r', encoding='utf-8') as f:
|
| for line in f:
|
| if line.strip():
|
| results.append(json.loads(line))
|
|
|
| print(f"共 {len(results)} 条预测结果")
|
|
|
|
|
| converted = []
|
| for result in results:
|
| converted.append({
|
| "id": result["sample_id"],
|
| "predicted_index": result["unique_segment_index"]
|
| })
|
|
|
|
|
| with open(output_file, 'w', encoding='utf-8') as f:
|
| for item in converted:
|
| json.dump(item, f, ensure_ascii=False)
|
| f.write('\n')
|
|
|
| print(f"保存到: {output_file}")
|
| print("\n前3条结果:")
|
| for item in converted[:3]:
|
| print(f" {item}")
|
|
|
| print(f"\n✅ 格式转换完成!")
|
| print(f"提交文件: {output_file}")
|
|
|
| if __name__ == "__main__":
|
|
|
| input_file = "../submission/predictions.jsonl"
|
| output_file = "../submission/Emotion_Detection_Result.jsonl"
|
|
|
| convert_format(input_file, output_file)
|
|
|
|
|