{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,1]],"date-time":"2026-07-01T04:05:12Z","timestamp":1782878712305,"version":"3.54.5"},"publisher-location":"New York, NY, USA","reference-count":64,"publisher":"ACM","license":[{"start":{"date-parts":[[2022,5,21]],"date-time":"2022-05-21T00:00:00Z","timestamp":1653091200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by-nc-sa\/4.0\/"}],"funder":[{"name":"H2020","award":["825328"],"award-info":[{"award-number":["825328"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2022,5,21]]},"DOI":"10.1145\/3510003.3510124","type":"proceedings-article","created":{"date-parts":[[2022,7,5]],"date-time":"2022-07-05T22:42:59Z","timestamp":1657060979000},"page":"2241-2252","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":60,"title":["Type4Py"],"prefix":"10.1145","author":[{"given":"Amir M.","family":"Mir","sequence":"first","affiliation":[{"name":"Delft University of Technology, Delft, The Netherlands"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Evaldas","family":"Lato\u0161kinas","sequence":"additional","affiliation":[{"name":"Delft University of Technology, Delft, The Netherlands"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Sebastian","family":"Proksch","sequence":"additional","affiliation":[{"name":"Delft University of Technology, Delft, The Netherlands"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Georgios","family":"Gousios","sequence":"additional","affiliation":[{"name":"Meta"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2022,7,5]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"[n.d.]. Annoy. https:\/\/github.com\/spotify\/annoy. Accessed on: 2022-02-08."},{"key":"e_1_3_2_1_2_1","unstructured":"[n.d.]. CD4Py: Code De-Duplication for Python. https:\/\/github.com\/saltudelft\/CD4Py. Accessed on: 2022-02-07."},{"key":"e_1_3_2_1_3_1","volume-title":"IEEE Spectrum's the Top Programming Languages","year":"2021","unstructured":"[n.d.]. IEEE Spectrum's the Top Programming Languages 2021. https:\/\/spectrum.ieee.org\/top-programming-languages. Accessed on: 2022-02-07."},{"key":"e_1_3_2_1_4_1","unstructured":"[n.d.]. LibSA4Py: Light-weight static analysis for extracting type hints and features. https:\/\/github.com\/saltudelft\/libsa4py. Accessed on: 2022-02-08."},{"key":"e_1_3_2_1_5_1","unstructured":"[n.d.]. Mypy: A static type checker for Python 3. https:\/\/mypy.readthedocs.io\/. Accessed on: 2022-02-07."},{"key":"e_1_3_2_1_6_1","unstructured":"[n.d.]. Pyre: A performant type-checker for Python 3. https:\/\/pyre-check.org\/. Accessed on: 2022-02-07."},{"key":"e_1_3_2_1_7_1","unstructured":"[n.d.]. PyRight. https:\/\/github.com\/microsoft\/pyright. Accessed on: 2022-02-07."},{"key":"e_1_3_2_1_8_1","unstructured":"[n.d.]. PyType. https:\/\/github.com\/google\/pytype. Accessed on: 2022-02-07."},{"key":"e_1_3_2_1_9_1","unstructured":"[n.d.]. Type4Py's Visual Studio Code extension. https:\/\/marketplace.visualstudio.com\/items?itemName=saltud.type4py. Accessed on: 2022-02-08."},{"key":"e_1_3_2_1_10_1","unstructured":"[n.d.]. Typilus' public implementation. https:\/\/github.com\/typilus\/typilus. Accessed on: 2022-02-08."},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/3359591.3359735"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/3385412.3385997"},{"key":"e_1_3_2_1_13_1","volume-title":"International Conference on Learning Representations.","author":"Alon Uri","year":"2020","unstructured":"Uri Alon and Eran Yahav. 2020. On the Bottleneck of Graph Neural Networks and its Practical Implications. In International Conference on Learning Representations."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR.2016.149"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/CVPR.2005.202"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/TIT.1967.1053964"},{"key":"e_1_3_2_1_17_1","unstructured":"ONNX Runtime developers. 2021. ONNX Runtime. https:\/\/onnxruntime.ai\/."},{"key":"e_1_3_2_1_18_1","volume-title":"2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). 1110--1118","author":"Du Yong","year":"2015","unstructured":"Yong Du, Wei Wang, and Liang Wang. 2015. Hierarchical recurrent neural network for skeleton based action recognition. In 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). 1110--1118."},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1529282.1529700"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2017.75"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.neucom.2014.10.085"},{"key":"e_1_3_2_1_22_1","volume-title":"Deep learning","author":"Goodfellow Ian","unstructured":"Ian Goodfellow, Yoshua Bengio, Aaron Courville, and Yoshua Bengio. 2016. Deep learning. Vol. 1. MIT press Cambridge."},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-013-9289-1"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-96142-2_2"},{"key":"e_1_3_2_1_25_1","volume-title":"PyART: Python API Recommendation in Real-Time. In 2021 IEEE\/ACM 43rd International Conference on Software Engineering (ICSE). IEEE, 1634--1645","author":"He Xincheng","year":"2021","unstructured":"Xincheng He, Lei Xu, Xiangyu Zhang, Rui Hao, Yang Feng, and Baowen Xu. 2021. PyART: Python API Recommendation in Real-Time. In 2021 IEEE\/ACM 43rd International Conference on Software Engineering (ICSE). IEEE, 1634--1645."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3236024.3236051"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.5555\/2337223.2337322"},{"key":"e_1_3_2_1_28_1","volume-title":"Long short-term memory. Neural computation 9, 8","author":"Hochreiter Sepp","year":"1997","unstructured":"Sepp Hochreiter and J\u00fcrgen Schmidhuber. 1997. Long short-term memory. Neural computation 9, 8 (1997), 1735--1780."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3468264.3473135"},{"key":"e_1_3_2_1_30_1","volume-title":"Martin","author":"Jurafsky Daniel","year":"2009","unstructured":"Daniel Jurafsky and James H. Martin. 2009. Speech and Language Processing (2nd Edition). Prentice-Hall, Inc., USA."},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2021.3082068"},{"key":"e_1_3_2_1_32_1","volume-title":"Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980","author":"Kingma Diederik P","year":"2014","unstructured":"Diederik P Kingma and Jimmy Ba. 2014. Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980 (2014)."},{"key":"e_1_3_2_1_33_1","unstructured":"J Lehtosalo et al. 2017. Mypy-optional static typing for python."},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICCVW.2017.52"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.neucom.2020.04.084"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/3238147.3238216"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.3115\/1118108.1118117"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/3133908"},{"key":"e_1_3_2_1_40_1","first-page":"1","volume-title":"Proceedings of the 6th Workshop on Dynamic Languages and Applications 5","author":"Maia Eva","year":"2012","unstructured":"Eva Maia, Nelma Moreira, and Rog\u00e9rio Reis. 2012. A static type inference for python. Proceedings of the 6th Workshop on Dynamic Languages and Applications 5, 1 (2012), 1."},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2019.00045"},{"key":"e_1_3_2_1_42_1","volume-title":"Introduction to information retrieval","author":"Manning Christopher D","unstructured":"Christopher D Manning, Hinrich Sch\u00fctze, and Prabhakar Raghavan. 2008. Introduction to information retrieval. Cambridge university press."},{"key":"e_1_3_2_1_43_1","unstructured":"Tomas Mikolov Ilya Sutskever Kai Chen Greg S Corrado and Jeff Dean. 2013. Distributed representations of words and phrases and their compositionality. In Advances in neural information processing systems. 3111--3119."},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2017.33"},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1109\/MSR52588.2021.00079"},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3238147.3238173"},{"key":"e_1_3_2_1_47_1","volume-title":"OptTyper: Probabilistic Type Inference by Optimising Logical and Natural Constraints. arXiv preprint arXiv:2004.00348","author":"Pandi Irene Vlassi","year":"2020","unstructured":"Irene Vlassi Pandi, Earl T Barr, Andrew D Gordon, and Charles Sutton. 2020. OptTyper: Probabilistic Type Inference by Optimising Logical and Natural Constraints. arXiv preprint arXiv:2004.00348 (2020)."},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/2001420.2001445"},{"key":"e_1_3_2_1_49_1","volume-title":"Pytorch: An imperative style, high-performance deep learning library. In Advances in neural information processing systems. 8026--8037.","author":"Paszke Adam","year":"2019","unstructured":"Adam Paszke, Sam Gross, Francisco Massa, Adam Lerer, James Bradbury, Gregory Chanan, Trevor Killeen, Zeming Lin, Natalia Gimelshein, Luca Antiga, et al. 2019. Pytorch: An imperative style, high-performance deep learning library. In Advances in neural information processing systems. 8026--8037."},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/3368089.3409715"},{"key":"e_1_3_2_1_52_1","volume-title":"Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages. 57--70","author":"Ingkarat","year":"2020","unstructured":"Ingkarat Rak-amnouykit, Daniel McCrevan, Ana Milanova, Martin Hirzel, and Julian Dolby. 2020. Python 3 types in the wild: a tale of two type systems. In Proceedings of the 16th ACM SIGPLAN International Symposium on Dynamic Languages. 57--70."},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.neucom.2018.04.045"},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1145\/2635868.2635922"},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/2676726.2677009"},{"key":"e_1_3_2_1_56_1","volume-title":"PyCon Proceedings, Washington DC","author":"Salib Michael","year":"2004","unstructured":"Michael Salib. 2004. Faster than C: Static type inference with Starkiller. in PyCon Proceedings, Washington DC (2004), 2--26."},{"key":"e_1_3_2_1_57_1","doi-asserted-by":"publisher","DOI":"10.1109\/78.650093"},{"key":"e_1_3_2_1_58_1","volume-title":"Dropout: a simple way to prevent neural networks from overfitting. The journal of machine learning research 15, 1","author":"Srivastava Nitish","year":"2014","unstructured":"Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky, Ilya Sutskever, and Ruslan Salakhutdinov. 2014. Dropout: a simple way to prevent neural networks from overfitting. The journal of machine learning research 15, 1 (2014), 1929--1958."},{"key":"e_1_3_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/2047849.2047861"},{"key":"e_1_3_2_1_60_1","volume-title":"PEP 484--type hints. Index of Python Enhancement Proposals","author":"Rossum Guido Van","year":"2014","unstructured":"Guido Van Rossum, Jukka Lehtosalo, and Lukasz Langa. 2014. PEP 484--type hints. Index of Python Enhancement Proposals (2014)."},{"key":"e_1_3_2_1_61_1","unstructured":"Oriol Vinyals Meire Fortunato and Navdeep Jaitly. 2015. Pointer networks. In Advances in neural information processing systems. 2692--2700."},{"key":"e_1_3_2_1_62_1","volume-title":"International Conference on Learning Representations.","author":"Wei Jiayi","year":"2019","unstructured":"Jiayi Wei, Maruth Goyal, Greg Durrett, and Isil Dillig. 2019. LambdaNet: Probabilistic Type Inference using Graph Neural Networks. In International Conference on Learning Representations."},{"key":"e_1_3_2_1_63_1","volume-title":"A learning algorithm for continually running fully recurrent neural networks. Neural computation 1, 2","author":"Williams Ronald J","year":"1989","unstructured":"Ronald J Williams and David Zipser. 1989. A learning algorithm for continually running fully recurrent neural networks. Neural computation 1, 2 (1989), 270--280."},{"key":"e_1_3_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950343"},{"key":"e_1_3_2_1_65_1","doi-asserted-by":"publisher","DOI":"10.1007\/s12559-018-9621-6"},{"key":"e_1_3_2_1_66_1","volume-title":"A brief introduction to weakly supervised learning. National science review 5, 1","author":"Zhou Zhi-Hua","year":"2018","unstructured":"Zhi-Hua Zhou. 2018. A brief introduction to weakly supervised learning. National science review 5, 1 (2018), 44--53."}],"event":{"name":"ICSE '22: 44th International Conference on Software Engineering","location":"Pittsburgh Pennsylvania","acronym":"ICSE '22","sponsor":["SIGSOFT ACM Special Interest Group on Software Engineering","IEEE CS"]},"container-title":["Proceedings of the 44th International Conference on Software Engineering"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3510003.3510124","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3510003.3510124","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T18:10:24Z","timestamp":1750183824000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3510003.3510124"}},"subtitle":["practical deep similarity learning-based type inference for python"],"short-title":[],"issued":{"date-parts":[[2022,5,21]]},"references-count":64,"alternative-id":["10.1145\/3510003.3510124","10.1145\/3510003"],"URL":"https:\/\/doi.org\/10.1145\/3510003.3510124","relation":{},"subject":[],"published":{"date-parts":[[2022,5,21]]},"assertion":[{"value":"2022-07-05","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}