{"id":"https://openalex.org/W4285163726","doi":"https://doi.org/10.1109/tr.2022.3171309","title":"CRAM: Code Recommendation With Programming Context Based on Self-Attention Mechanism","display_name":"CRAM: Code Recommendation With Programming Context Based on Self-Attention Mechanism","publication_year":2022,"publication_date":"2022-05-12","ids":{"openalex":"https://openalex.org/W4285163726","doi":"https://doi.org/10.1109/tr.2022.3171309"},"language":"en","primary_location":{"id":"doi:10.1109/tr.2022.3171309","is_oa":false,"landing_page_url":"https://doi.org/10.1109/tr.2022.3171309","pdf_url":null,"source":{"id":"https://openalex.org/S87725633","display_name":"IEEE Transactions on Reliability","issn_l":"0018-9529","issn":["0018-9529","1558-1721"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Reliability","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5002015838","display_name":"Chuanqi Tao","orcid":"https://orcid.org/0000-0002-0698-7307"},"institutions":[{"id":"https://openalex.org/I881766915","display_name":"Nanjing University","ror":"https://ror.org/01rxvg760","country_code":"CN","type":"education","lineage":["https://openalex.org/I881766915"]},{"id":"https://openalex.org/I9842412","display_name":"Nanjing University of Aeronautics and Astronautics","ror":"https://ror.org/01scyh794","country_code":"CN","type":"education","lineage":["https://openalex.org/I9842412"]}],"countries":["CN"],"is_corresponding":true,"raw_author_name":"Chuanqi Tao","raw_affiliation_strings":["College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, China","Ministry Key Laboratory for Safety-Critical Software Development and Verification, Nanjing University of Aeronautics and Astronautics, Nanjing, China","State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, China"],"affiliations":[{"raw_affiliation_string":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, China","institution_ids":["https://openalex.org/I9842412"]},{"raw_affiliation_string":"Ministry Key Laboratory for Safety-Critical Software Development and Verification, Nanjing University of Aeronautics and Astronautics, Nanjing, China","institution_ids":["https://openalex.org/I9842412"]},{"raw_affiliation_string":"State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing, China","institution_ids":["https://openalex.org/I881766915"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5064346711","display_name":"Kai Lin","orcid":null},"institutions":[{"id":"https://openalex.org/I9842412","display_name":"Nanjing University of Aeronautics and Astronautics","ror":"https://ror.org/01scyh794","country_code":"CN","type":"education","lineage":["https://openalex.org/I9842412"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Kai Lin","raw_affiliation_strings":["College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, China"],"affiliations":[{"raw_affiliation_string":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, China","institution_ids":["https://openalex.org/I9842412"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5025184050","display_name":"Zhiqiu Huang","orcid":"https://orcid.org/0000-0001-6843-1892"},"institutions":[{"id":"https://openalex.org/I9842412","display_name":"Nanjing University of Aeronautics and Astronautics","ror":"https://ror.org/01scyh794","country_code":"CN","type":"education","lineage":["https://openalex.org/I9842412"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Zhiqiu Huang","raw_affiliation_strings":["College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, China","Ministry Key Laboratory for Safety-Critical Software Development and Verification, Nanjing University of Aeronautics and Astronautics, Nanjing, China"],"affiliations":[{"raw_affiliation_string":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, China","institution_ids":["https://openalex.org/I9842412"]},{"raw_affiliation_string":"Ministry Key Laboratory for Safety-Critical Software Development and Verification, Nanjing University of Aeronautics and Astronautics, Nanjing, China","institution_ids":["https://openalex.org/I9842412"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5006966486","display_name":"Xiaobing Sun","orcid":"https://orcid.org/0000-0001-5165-5080"},"institutions":[{"id":"https://openalex.org/I78978612","display_name":"Yangzhou University","ror":"https://ror.org/03tqb8s11","country_code":"CN","type":"education","lineage":["https://openalex.org/I78978612"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Xiaobing Sun","raw_affiliation_strings":["School of Information Engineering, Yangzhou University, Jiangsu, China"],"affiliations":[{"raw_affiliation_string":"School of Information Engineering, Yangzhou University, Jiangsu, China","institution_ids":["https://openalex.org/I78978612"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5002015838"],"corresponding_institution_ids":["https://openalex.org/I881766915","https://openalex.org/I9842412"],"apc_list":null,"apc_paid":null,"fwci":2.8631,"has_fulltext":false,"cited_by_count":9,"citation_normalized_percentile":{"value":0.92195522,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":98},"biblio":{"volume":"72","issue":"1","first_page":"302","last_page":"316"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9911999702453613,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9886999726295471,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8844208717346191},{"id":"https://openalex.org/keywords/codebase","display_name":"Codebase","score":0.8403786420822144},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5683175325393677},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.5458053946495056},{"id":"https://openalex.org/keywords/precision-and-recall","display_name":"Precision and recall","score":0.4987785816192627},{"id":"https://openalex.org/keywords/abstract-syntax-tree","display_name":"Abstract syntax tree","score":0.4720861613750458},{"id":"https://openalex.org/keywords/information-retrieval","display_name":"Information retrieval","score":0.46560102701187134},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.4551049470901489},{"id":"https://openalex.org/keywords/code-review","display_name":"Code review","score":0.4485642611980438},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.43053123354911804},{"id":"https://openalex.org/keywords/static-program-analysis","display_name":"Static program analysis","score":0.41523945331573486},{"id":"https://openalex.org/keywords/syntax","display_name":"Syntax","score":0.4102543592453003},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.3546642065048218},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3542482852935791},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.2693372368812561},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.19141829013824463},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.17002281546592712}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8844208717346191},{"id":"https://openalex.org/C51929080","wikidata":"https://www.wikidata.org/wiki/Q2425187","display_name":"Codebase","level":3,"score":0.8403786420822144},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5683175325393677},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.5458053946495056},{"id":"https://openalex.org/C81669768","wikidata":"https://www.wikidata.org/wiki/Q2359161","display_name":"Precision and recall","level":2,"score":0.4987785816192627},{"id":"https://openalex.org/C58646249","wikidata":"https://www.wikidata.org/wiki/Q127380","display_name":"Abstract syntax tree","level":3,"score":0.4720861613750458},{"id":"https://openalex.org/C23123220","wikidata":"https://www.wikidata.org/wiki/Q816826","display_name":"Information retrieval","level":1,"score":0.46560102701187134},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.4551049470901489},{"id":"https://openalex.org/C150292731","wikidata":"https://www.wikidata.org/wiki/Q1342704","display_name":"Code review","level":5,"score":0.4485642611980438},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.43053123354911804},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.41523945331573486},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.4102543592453003},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.3546642065048218},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3542482852935791},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.2693372368812561},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.19141829013824463},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.17002281546592712},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/tr.2022.3171309","is_oa":false,"landing_page_url":"https://doi.org/10.1109/tr.2022.3171309","pdf_url":null,"source":{"id":"https://openalex.org/S87725633","display_name":"IEEE Transactions on Reliability","issn_l":"0018-9529","issn":["0018-9529","1558-1721"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Reliability","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/4","score":0.7599999904632568,"display_name":"Quality Education"}],"awards":[{"id":"https://openalex.org/G1533970194","display_name":null,"funder_award_id":"61402229","funder_id":"https://openalex.org/F4320321001","funder_display_name":"National Natural Science Foundation of China"},{"id":"https://openalex.org/G5845821273","display_name":null,"funder_award_id":"NS2019058","funder_id":"https://openalex.org/F4320335787","funder_display_name":"Fundamental Research Funds for the Central Universities"},{"id":"https://openalex.org/G7844191210","display_name":null,"funder_award_id":"61602267","funder_id":"https://openalex.org/F4320321001","funder_display_name":"National Natural Science Foundation of China"}],"funders":[{"id":"https://openalex.org/F4320321001","display_name":"National Natural Science Foundation of China","ror":"https://ror.org/01h0zpd94"},{"id":"https://openalex.org/F4320335787","display_name":"Fundamental Research Funds for the Central Universities","ror":null}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":57,"referenced_works":["https://openalex.org/W90447038","https://openalex.org/W100780383","https://openalex.org/W1965636883","https://openalex.org/W1985658893","https://openalex.org/W1986601961","https://openalex.org/W2014755981","https://openalex.org/W2026608875","https://openalex.org/W2072566913","https://openalex.org/W2122599295","https://openalex.org/W2158439356","https://openalex.org/W2165246739","https://openalex.org/W2175297521","https://openalex.org/W2247374552","https://openalex.org/W2387719207","https://openalex.org/W2402619042","https://openalex.org/W2406365535","https://openalex.org/W2504945316","https://openalex.org/W2617733587","https://openalex.org/W2741705590","https://openalex.org/W2767717989","https://openalex.org/W2767989436","https://openalex.org/W2769696322","https://openalex.org/W2794601162","https://openalex.org/W2805788202","https://openalex.org/W2888539709","https://openalex.org/W2888559334","https://openalex.org/W2896457183","https://openalex.org/W2949297108","https://openalex.org/W2954552517","https://openalex.org/W2955426500","https://openalex.org/W2955972181","https://openalex.org/W2958887440","https://openalex.org/W2962706825","https://openalex.org/W2962728167","https://openalex.org/W2963617989","https://openalex.org/W2963868406","https://openalex.org/W2968051759","https://openalex.org/W2968179027","https://openalex.org/W2971351900","https://openalex.org/W2979271470","https://openalex.org/W2993900998","https://openalex.org/W3045279034","https://openalex.org/W3085192122","https://openalex.org/W3085514074","https://openalex.org/W3104874136","https://openalex.org/W3107793421","https://openalex.org/W3128554366","https://openalex.org/W3131328028","https://openalex.org/W3198685994","https://openalex.org/W4301168982","https://openalex.org/W6636510571","https://openalex.org/W6682691769","https://openalex.org/W6739901393","https://openalex.org/W6746213830","https://openalex.org/W6753851271","https://openalex.org/W6755207826","https://openalex.org/W6783227185"],"related_works":["https://openalex.org/W2344367508","https://openalex.org/W3046227412","https://openalex.org/W2994851798","https://openalex.org/W2575922489","https://openalex.org/W2811301137","https://openalex.org/W2986478207","https://openalex.org/W4312706861","https://openalex.org/W3049398420","https://openalex.org/W4285356836","https://openalex.org/W656101134"],"abstract_inverted_index":{"Code":[0],"recommendation":[1,109],"with":[2,110],"programming":[3,111],"context":[4,112],"is":[5,70],"to":[6,15,27,44,64,72,139,152,158],"use":[7,60],"the":[8,12,21,30,33,38,74,135,141,149],"contextual":[9],"code":[10,14,22,55,67,77,108,151,169,180],"surrounding":[11],"missing":[13],"automatically":[16],"find":[17],"that":[18,175],"which":[19,69],"of":[20,32,76,144],"snippets":[23],"would":[24],"be":[25],"useful":[26],"assist":[28],"in":[29,86,134,162,185],"completion":[31],"program.":[34],"In":[35],"this":[36],"way,":[37],"developers":[39],"need":[40],"not":[41],"take":[42],"time":[43],"formulate":[45],"explicit":[46],"queries":[47],"or":[48],"write":[49],"descriptions.":[50],"Existing":[51],"work":[52,184],"only":[53],"treats":[54],"as":[56],"textual":[57],"documents":[58],"and":[59,146,181,188],"information":[61,97],"retrieval":[62],"techniques":[63],"retrieve":[65],"relevant":[66,150],"snippets,":[68],"difficult":[71],"capture":[73,140],"semantics":[75,143],"adequately.":[78],"The":[79,118,171],"self-attention":[80,115,132],"mechanism":[81,116],"have":[82],"achieved":[83],"promising":[84],"progress":[85],"various":[87],"natural":[88],"language":[89],"processing":[90],"tasks,":[91],"especially":[92],"for":[93],"extracting":[94],"deep":[95,142],"semantic":[96],"from":[98,102,127],"long":[99],"sequences.":[100],"Inspired":[101],"this,":[103],"we":[104],"propose":[105],"a":[106,123,163],"novel":[107],"based":[113],"on":[114],"(CRAM).":[117],"proposed":[119],"approach":[120,161],"first":[121],"builds":[122],"small-scale":[124],"candidate":[125],"set":[126],"codebase.":[128],"Then,":[129],"it":[130],"utilizes":[131],"networks":[133],"abstract":[136],"syntax":[137],"tree":[138],"code,":[145],"finally":[147],"recommend":[148,179],"developers.":[153],"We":[154],"conduct":[155],"several":[156],"experiments":[157],"evaluate":[159],"our":[160],"large-scale":[164],"codebase":[165],"containing":[166],"741":[167],"148":[168],"snippets.":[170],"experimental":[172],"results":[173],"show":[174],"CRAM":[176],"can":[177],"effectively":[178],"outperforms":[182],"related":[183],"recall,":[186],"precision,":[187],"NDCG.":[189]},"counts_by_year":[{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":2}],"updated_date":"2026-03-27T14:29:43.386196","created_date":"2025-10-10T00:00:00"}
