codemining treelm
1.0.0
codemining-treelm содержит код для языковых моделей, работающих с деревьями.
codemining.ast
содержит код для преобразования AST в независимые от языка TreeNodes.
codemining.lm
содержит реализацию PCFG и TSG, а также некоторый код, связанный с идиомами.
Проект зависит от трёх внутренних (maven) модулей:
a) codemining-utils b) codemining-core c) codemining-sequencelm
Остальные зависимости объявлены в зависимостях maven.
Этот репозиторий содержит код, относящийся к статье:
@inproceedings{allamanis2014mining,
title={Mining Idioms from Source Code},
author={Allamanis, Miltiadis and Sutton, Charles},
booktitle={Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering},
pages={472--483},
year={2014},
organization={ACM}
}
Чтобы обучить TSG для Java, используйте основной класс в codemining.lm.tsg.tui.java.SampleBlockedTSG
с аргументами
/path/to/folder binaryvariables filterblock 1.0 50
провести обучение TSG, как описано в статье «Идиомы интеллектуального анализа данных из исходного кода». Для других вариантов, пожалуйста, изучите код.