{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,29]],"date-time":"2025-12-29T11:39:50Z","timestamp":1767008390161,"version":"build-2065373602"},"reference-count":41,"publisher":"MDPI AG","issue":"5","license":[{"start":{"date-parts":[[2022,4,20]],"date-time":"2022-04-20T00:00:00Z","timestamp":1650412800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100008530","name":"European Regional Development Fund","doi-asserted-by":"publisher","award":["\u03a42\u0395\u0394\u039a-00550"],"award-info":[{"award-number":["\u03a42\u0395\u0394\u039a-00550"]}],"id":[{"id":"10.13039\/501100008530","id-type":"DOI","asserted-by":"publisher"}]},{"name":"Greek national funds","award":["\u03a42\u0395\u0394\u039a-00550"],"award-info":[{"award-number":["\u03a42\u0395\u0394\u039a-00550"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Future Internet"],"abstract":"<jats:p>To help developers discover libraries suited to their software projects, automated approaches often start from already employed libraries and recommend more based on co-occurrence patterns in other projects. The most accurate project\u2013library recommendation systems employ Graph Neural Networks (GNNs) that learn latent node representations for link prediction. However, GNNs need to be retrained when dependency graphs are updated, for example, to recommend libraries for new projects, and are thus unwieldy for scalable deployment. To avoid retraining, we propose that recommendations can instead be performed with graph filters; by analyzing dependency graph dynamics emulating human-driven library discovery, we identify low-pass filtering with memory as a promising direction and introduce a novel filter, called symmetric partially absorbing random walks, which infers rather than trains the parameters of filters with node-specific memory to guarantee low-pass filtering. Experiments on a dependency graph between Android projects and third-party libraries show that our approach makes recommendations with a quality and diversification loosely comparable to those state-of-the-art GNNs without computationally intensive retraining for new predictions.<\/jats:p>","DOI":"10.3390\/fi14050124","type":"journal-article","created":{"date-parts":[[2022,4,21]],"date-time":"2022-04-21T01:55:51Z","timestamp":1650506151000},"page":"124","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Fast Library Recommendation in Software Dependency Graphs with Symmetric Partially Absorbing Random Walks"],"prefix":"10.3390","volume":"14","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-3947-222X","authenticated-orcid":false,"given":"Emmanouil","family":"Krasanakis","sequence":"first","affiliation":[{"name":"Central Macedonia, Aristotle University of Thessaloniki, 54124 Thessaloniki, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0235-6046","authenticated-orcid":false,"given":"Andreas","family":"Symeonidis","sequence":"additional","affiliation":[{"name":"Central Macedonia, Aristotle University of Thessaloniki, 54124 Thessaloniki, Greece"},{"name":"Cyclopt, Central Macedonia, 55535 Thessaloniki, Greece"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"1968","published-online":{"date-parts":[[2022,4,20]]},"reference":[{"key":"ref_1","doi-asserted-by":"crossref","first-page":"79","DOI":"10.1145\/1226736.1226739","article-title":"Theoretical reflections on agile development methodologies","volume":"50","author":"Nerur","year":"2007","journal-title":"Commun. ACM"},{"key":"ref_2","unstructured":"Miller, F.P., Vandome, A.F., and McBrewster, J. (2010). Apache Maven, Alpha Press."},{"key":"ref_3","unstructured":"Python Package Index\u2014PyPI (2022, March 02). Python Software Foundation. Available online: https:\/\/pypi.org."},{"key":"ref_4","unstructured":"npm (2022, March 02). npm, Inc.. Available online: https:\/\/www.npmjs.com."},{"key":"ref_5","doi-asserted-by":"crossref","unstructured":"Raemaekers, S., Van Deursen, A., and Visser, J. (2013, January 18\u201319). The maven repository dataset of metrics, changes, and dependencies. Proceedings of the 2013 10th Working Conference on Mining Software Repositories (MSR), San Francisco, CA, USA.","DOI":"10.1109\/MSR.2013.6624031"},{"key":"ref_6","doi-asserted-by":"crossref","first-page":"193","DOI":"10.1016\/j.jss.2014.12.027","article-title":"A systematic mapping study on technical debt and its management","volume":"101","author":"Li","year":"2015","journal-title":"J. Syst. Softw."},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"He, X., Liao, L., Zhang, H., Nie, L., Hu, X., and Chua, T.S. (2017, January 3\u20137). Neural collaborative filtering. Proceedings of the 26th International Conference on World Wide Web, Perth, Australia.","DOI":"10.1145\/3038912.3052569"},{"key":"ref_8","doi-asserted-by":"crossref","first-page":"855","DOI":"10.1109\/TSE.2017.2716925","article-title":"Global-aware recommendations for repairing violations in exception handling","volume":"44","author":"Barbosa","year":"2017","journal-title":"IEEE Trans. Softw. Eng."},{"key":"ref_9","doi-asserted-by":"crossref","unstructured":"Huang, Q., Xia, X., Xing, Z., Lo, D., and Wang, X. (2018, January 3\u20137). API method recommendation without worrying about the task-API knowledge gap. Proceedings of the 2018 33rd IEEE\/ACM International Conference on Automated Software Engineering (ASE), Montpellier, France.","DOI":"10.1145\/3238147.3238191"},{"key":"ref_10","doi-asserted-by":"crossref","unstructured":"Ichii, M., Hayase, Y., Yokomori, R., Yamamoto, T., and Inoue, K. (2009, January 16). Software component recommendation using collaborative filtering. Proceedings of the 2009 ICSE Workshop on Search-Driven Development-Users, Infrastructure, Tools and Evaluation, Vancouver, BC, Canada.","DOI":"10.1109\/SUITE.2009.5070014"},{"key":"ref_11","doi-asserted-by":"crossref","unstructured":"Thung, F., Lo, D., and Lawall, J. (2013, January 14\u201317). Automated library recommendation. Proceedings of the 2013 20th Working conference on reverse engineering (WCRE), Koblenz, Germany.","DOI":"10.1109\/WCRE.2013.6671293"},{"key":"ref_12","doi-asserted-by":"crossref","first-page":"55","DOI":"10.1016\/j.infsof.2016.11.007","article-title":"Search-based Software Library Recommendation using multi-objective optimization","volume":"83","author":"Ouni","year":"2017","journal-title":"Inf. Softw. Technol."},{"key":"ref_13","doi-asserted-by":"crossref","first-page":"421425","DOI":"10.1155\/2009\/421425","article-title":"A survey of collaborative filtering techniques","volume":"2009","author":"Su","year":"2009","journal-title":"Adv. Artif. Intell."},{"key":"ref_14","doi-asserted-by":"crossref","first-page":"150","DOI":"10.1109\/TSE.2020.2982154","article-title":"Diversified third-party library prediction for mobile app development","volume":"48","author":"He","year":"2020","journal-title":"IEEE Trans. Softw. Eng."},{"key":"ref_15","unstructured":"Bottou, L. (2010, January 22\u201327). Large-scale machine learning with stochastic gradient descent. Proceedings of the COMPSTAT\u20192010: 19th International Conference on Computational Statistics, Paris, France. Keynote, Invited and Contributed Papers."},{"key":"ref_16","doi-asserted-by":"crossref","unstructured":"Li, B., He, Q., Chen, F., Xia, X., Li, L., Grundy, J., and Yang, Y. (2021, January 23\u201328). Embedding app-library graph for neural third party library recommendation. Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Athens, Greece.","DOI":"10.1145\/3468264.3468552"},{"key":"ref_17","doi-asserted-by":"crossref","unstructured":"Yan, D., Tang, T., Xie, W., Zhang, Y., and He, Q. (2021). Session-based Social and Dependency-aware Software Recommendation. arXiv.","DOI":"10.1016\/j.asoc.2022.108463"},{"key":"ref_18","doi-asserted-by":"crossref","first-page":"808","DOI":"10.1109\/JPROC.2018.2820126","article-title":"Graph signal processing: Overview, challenges, and applications","volume":"106","author":"Ortega","year":"2018","journal-title":"Proc. IEEE"},{"key":"ref_19","doi-asserted-by":"crossref","unstructured":"Krasanakis, E., Papadopoulos, S., Kompatsiaris, I., and Symeonidis, A. (2021). pygrank: A Python Package for Graph Node Ranking. arXiv.","DOI":"10.1016\/j.softx.2022.101227"},{"key":"ref_20","unstructured":"Page, L., Brin, S., Motwani, R., and Winograd, T. (1999). The PageRank Citation Ranking: Bringing Order to the Web, Stanford InfoLab. Technical Report."},{"key":"ref_21","doi-asserted-by":"crossref","unstructured":"Andersen, R., Chung, F., and Lang, K. (2006, January 21\u201324). Local graph partitioning using pagerank vectors. Proceedings of the 2006 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS\u201906), Berkeley, CA, USA.","DOI":"10.1109\/FOCS.2006.44"},{"key":"ref_22","doi-asserted-by":"crossref","unstructured":"Bahmani, B., Chowdhury, A., and Goel, A. (2010). Fast incremental and personalized pagerank. arXiv.","DOI":"10.1145\/1989323.1989425"},{"key":"ref_23","doi-asserted-by":"crossref","first-page":"19735","DOI":"10.1073\/pnas.0708838104","article-title":"The heat kernel as the pagerank of a graph","volume":"104","author":"Chung","year":"2007","journal-title":"Proc. Natl. Acad. Sci. USA"},{"key":"ref_24","doi-asserted-by":"crossref","unstructured":"Kloster, K., and Gleich, D.F. (2014, January 24\u201327). Heat kernel based community detection. Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, New York, NY, USA.","DOI":"10.1145\/2623330.2623706"},{"key":"ref_25","doi-asserted-by":"crossref","first-page":"4","DOI":"10.1109\/TNNLS.2020.2978386","article-title":"A comprehensive survey on graph neural networks","volume":"32","author":"Wu","year":"2020","journal-title":"IEEE Trans. Neural Netw. Learn. Syst."},{"key":"ref_26","doi-asserted-by":"crossref","first-page":"249","DOI":"10.1109\/TKDE.2020.2981333","article-title":"Deep learning on graphs: A survey","volume":"34","author":"Zhang","year":"2020","journal-title":"IEEE Trans. Knowl. Data Eng."},{"key":"ref_27","doi-asserted-by":"crossref","unstructured":"Wang, X., He, X., Wang, M., Feng, F., and Chua, T.S. (2019, January 21\u201325). Neural graph collaborative filtering. Proceedings of the 42nd international ACM SIGIR conference on Research and development in Information Retrieval, Paris, French.","DOI":"10.1145\/3331184.3331267"},{"key":"ref_28","unstructured":"Kipf, T.N., and Welling, M. (2016). Semi-supervised classification with graph convolutional networks. arXiv."},{"key":"ref_29","unstructured":"Agarap, A.F. (2018). Deep learning using rectified linear units (relu). arXiv."},{"key":"ref_30","unstructured":"Hamilton, W.L., Ying, R., and Leskovec, J. (2017, January 4\u20139). Inductive representation learning on large graphs. Proceedings of the 31st International Conference on Neural Information Processing Systems, Long Beach, CA, USA."},{"key":"ref_31","unstructured":"Klicpera, J., Bojchevski, A., and G\u00fcnnemann, S. (2018). Predict then propagate: Graph neural networks meet personalized pagerank. arXiv."},{"key":"ref_32","unstructured":"Chen, M., Wei, Z., Huang, Z., Ding, B., and Li, Y. (2020, January 13\u201318). Simple and deep graph convolutional networks. Proceedings of the International Conference on Machine Learning. PMLR, Virtual Event."},{"key":"ref_33","doi-asserted-by":"crossref","unstructured":"Adamczyk, P., Smith, P.H., Johnson, R.E., and Hafiz, M. (2011). Rest and web services: In theory and in practice. REST: From Research to Practice, Springer.","DOI":"10.1007\/978-1-4419-8303-9_2"},{"key":"ref_34","doi-asserted-by":"crossref","first-page":"87","DOI":"10.1016\/S0925-5273(98)00222-9","article-title":"Agile manufacturing: A framework for research and development","volume":"62","author":"Gunasekaran","year":"1999","journal-title":"Int. J. Prod. Econ."},{"key":"ref_35","doi-asserted-by":"crossref","unstructured":"Dong, H., Chen, J., Feng, F., He, X., Bi, S., Ding, Z., and Cui, P. (2021, January 19\u201323). On the equivalence of decoupled graph convolution network and label propagation. Proceedings of the Web Conference 2021, New York, NY, USA.","DOI":"10.1145\/3442381.3449927"},{"key":"ref_36","doi-asserted-by":"crossref","unstructured":"Yang, F., Zhang, H., Tao, S., and Hao, S. (2022). Graph representation learning via simple jumping knowledge networks. Appl. Intell., 1\u201319.","DOI":"10.1007\/s10489-021-02889-z"},{"key":"ref_37","doi-asserted-by":"crossref","unstructured":"Gleich, D.F., and Seshadhri, C. (2012, January 12\u201316). Vertex neighborhoods, low conductance cuts, and good seeds for local community methods. Proceedings of the 18th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Beijing, China.","DOI":"10.1145\/2339530.2339628"},{"key":"ref_38","doi-asserted-by":"crossref","unstructured":"Tong, H., Faloutsos, C., and Pan, J.Y. (2006, January 18\u201322). Fast random walk with restart and its applications. Proceedings of the Sixth International Conference on Data Mining (ICDM\u201906), Hong Kong, China.","DOI":"10.1109\/ICDM.2006.70"},{"key":"ref_39","first-page":"3077","article-title":"Learning with partially absorbing random walks","volume":"25","author":"Wu","year":"2012","journal-title":"Adv. Neural Inf. Process. Syst."},{"key":"ref_40","doi-asserted-by":"crossref","unstructured":"Krasanakis, E., Papadopoulos, S., and Kompatsiaris, I. (2020, January 7\u201310). Stopping personalized PageRank without an error tolerance parameter. Proceedings of the 2020 IEEE\/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM), Hague, The Netherlands.","DOI":"10.1109\/ASONAM49781.2020.9381435"},{"key":"ref_41","doi-asserted-by":"crossref","unstructured":"Wang, J., Song, G., Wu, Y., and Wang, L. (2020, January 19\u201323). Streaming graph neural networks via continual learning. Proceedings of the 29th ACM International Conference on Information & Knowledge Management, Virtual.","DOI":"10.1145\/3340531.3411963"}],"container-title":["Future Internet"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/1999-5903\/14\/5\/124\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T22:57:19Z","timestamp":1760137039000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/1999-5903\/14\/5\/124"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,4,20]]},"references-count":41,"journal-issue":{"issue":"5","published-online":{"date-parts":[[2022,5]]}},"alternative-id":["fi14050124"],"URL":"https:\/\/doi.org\/10.3390\/fi14050124","relation":{},"ISSN":["1999-5903"],"issn-type":[{"type":"electronic","value":"1999-5903"}],"subject":[],"published":{"date-parts":[[2022,4,20]]}}}