hiroto7 / APSEC2019Class

The repository for the APSEC'19 paper, "Class Name Recommendation based on Graph Embedding of Program Elements"

Home Page:https://ieeexplore.ieee.org/document/8946106

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

"Class Name Recommendation based on Graph Embedding of Program Elements"

  • Here is the repository for APSEC'19 paper
  • The source code preprocessing the dataset is at RelationExtractor/src/main/java
  • The source code of the proposed approach is at core
  • All experiments in the paper are available in exp.ipynb

Requirements

  • openjdk == 11.0.1
  • python == 3.6.8
  • pipenv version 2018.11.26
  • maven == 3.6.2
  • CUDA == 8.0.61

Procedure

  1. clone this repository
  2. cd APSEC2019Class
  3. mkdir data && mkdir data/input data/model data/output data
  4. download the data and put it in data/raw_data
  5. cd RelationExtractor ; mvn clean install ; cd ..
  6. java -cp RelationExtractor/target/RelationExtractor-1.0-SNAPSHOT-jar-with-dependencies.jar FilePathOrganizer
  7. touch data/tmp/${ ... }
  8. java -cp RelationExtractor/target/RelationExtractor-1.0-SNAPSHOT-jar-with-dependencies.jar Main
  9. pipenv install
  10. pipenv run jupyter notebook

BibTeX

@inproceedings{kurimoto2019class,
  title={Class Name Recommendation Based on Graph Embedding of Program Elements},
  author={Kurimoto, Shintaro and Hayase, Yasuhiro and Yonai, Hiroshi and Ito, Hiroyoshi and Kitagawa, Hiroyuki},
  booktitle={2019 26th Asia-Pacific Software Engineering Conference (APSEC)},
  pages={498--505},
  year={2019},
  organization={IEEE}
}

About

The repository for the APSEC'19 paper, "Class Name Recommendation based on Graph Embedding of Program Elements"

https://ieeexplore.ieee.org/document/8946106


Languages

Language:Jupyter Notebook 78.9%Language:Python 16.1%Language:Java 5.0%