ซอร์สโค้ดและชุดข้อมูลสำหรับ EMSE-DEEPCOM
คำสั่ง: python3 __main__.py config.yaml --train -v
ข้อมูลโครงการแสดงอยู่ในโครงการไฟล์ txt แต่ละบรรทัดแสดงถึงโครงการซึ่งรวมถึงชื่อผู้ใช้ GitHub และชื่อโครงการที่เชื่อมต่อโดย "_"
คำสั่ง: python3 get_ast.py source.code ast.json
source.code: ไฟล์ซอร์สโค้ดและแต่ละบรรทัดแสดงถึงวิธี Java หนึ่งวิธี AST.JSON: ไฟล์ AST สำหรับวิธี Java และแต่ละบรรทัดแสดงถึง AST หนึ่งรายการ:
ตัวอย่างเช่น:
public boolean doesNotHaveIds (){
return getIds () == null || getIds (). getIds (). isEmpty ();
}
[
{"id": 0, "type": "MethodDeclaration", "children": [1, 2], "value": "doesNotHaveIds"},
{"id": 1, "type": "BasicType", "value": "boolean"},
{"id": 2, "type": "ReturnStatement", "children": [3], "value": "return"},
{"id": 3, "type": "BinaryOperation", "children": [4, 7]},
{"id": 4, "type": "BinaryOperation", "children": [5, 6]},
{"id": 5, "type": "MethodInvocation", "value": "getIds"},
{"id": 6, "type": "Literal", "value": "null"},
{"id": 7, "type": "MethodInvocation", "children": [8, 9], "value": "getIds"},
{"id": 8, "type": "MethodInvocation", "value": "."},
{"id": 9, "type": "MethodInvocation", "value": "."}
]
ตามข้อ จำกัด ของ LFS ชุดข้อมูลสามารถดาวน์โหลดได้จาก Google Drive
สคริปต์การประเมินผลแสดงอยู่ในสคริปต์ไฟล์
คำสั่ง: python3 evaluation.py reference predictions
คำสั่ง: perl multi-bleu.perl reference < predictions
คำสั่ง: java -Xmx2G -jar meteor-1.5.jar predictions reference -l en -norm
การอ้างอิง: ไฟล์ความจริงภาคพื้นดิน (ไฟล์ test.token.nl ในชุดข้อมูลของเรา) การคาดการณ์: ไฟล์ความคิดเห็นที่สร้างขึ้น แต่ละบรรทัดแสดงตัวอย่างหนึ่งตัวอย่าง