-
公开(公告)号:US11126930B2
公开(公告)日:2021-09-21
申请号:US16396686
申请日:2019-04-27
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Shengyu Fu , Neelakantan Sundaresan , Jason Wang , Ying Zhao
Abstract: A code completion system predicts candidates to complete a method invocation in a source code program written in a dynamically-typed programming language. A pseudo type is generated for each variable in the source code program to approximate the runtime type of the variable. The pseudo type is then used to group a set of method invocations into a classification that can be modeled by an n-order Markov chain model. The n-order Markov chain model is used to predict candidate methods more likely to complete a method invocation in a dynamically-typed programming language.
-
公开(公告)号:US10983761B2
公开(公告)日:2021-04-20
申请号:US16377789
申请日:2019-04-08
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Alexey Svyatkovskiy , Shengyu Fu , Neelakantan Sundaresan , Ying Zhao
Abstract: A code completion tool uses a deep learning model to predict the likelihood of a method completing a method invocation. In one aspect, the deep learning model is a LSTM trained on features that represent the syntactic context of a method invocation derived from an abstract tree representation of the code fragment.
-
公开(公告)号:US11645576B2
公开(公告)日:2023-05-09
申请号:US16391284
申请日:2019-04-22
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Shengyu Fu , Neelakantan Sundaresan , Ying Zhao
Abstract: A code completion system predicts candidates to complete a code fragment with a tag name and/or an attribute name in source code written in a hierarchically-structured language. Candidates for predicting a tag name are based on a first-order tag Markov chain model generated from usage patterns of relationships of tag names found in a training dataset. Candidates for predicting an attribute name are based on a second-order attribute Markov chain model generated from usage patterns of sequences of attribute names associated with each tag name found in the training dataset.
-
公开(公告)号:US10990358B2
公开(公告)日:2021-04-27
申请号:US16360008
申请日:2019-03-21
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Shengyu Fu , Neelakantan Sundaresan , Ying Zhao
Abstract: A code completion tool uses machine learning models to more precisely predict the likelihood of an invocation of a particular overloaded method completing a code fragment that follows one or more method invocations of a same class in a same document during program development. In one aspect, the machine learning model is a n-order Markov chain model that is trained on features that represent the method signatures of overloaded methods in order to generate ordered sequences of method signatures of overloaded method invocations.
-
公开(公告)号:US11379190B2
公开(公告)日:2022-07-05
申请号:US17233527
申请日:2021-04-18
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Alexey Svyatkovskiy , Shengyu Fu , Neelakantan Sundaresan , Ying Zhao
Abstract: A code completion tool uses a deep learning model to predict the likelihood of a method completing a method invocation. In one aspect, the deep learning model is a LSTM trained on features that represent the syntactic context of a method invocation derived from an abstract tree representation of the code fragment.
-
公开(公告)号:US11586839B2
公开(公告)日:2023-02-21
申请号:US16208455
申请日:2018-12-03
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Shengyu Fu , David Poeschl , Neelakantan Sundaresan , Shuo Zhang , Ying Zhao
Abstract: A code completion tool uses machine learning models to more precisely predict the likelihood of the parameters of a method invocation. A score is computed for each candidate variable that is used to rank the viability of a variable as the intended parameter. The score is a weighted sum of a scope factor, an edit distance factor and a declaration proximity factor. The factors are based on a scope model, a method overload model, and a weight file trained offline on a training set of source code programs utilizing various method invocations.
-
公开(公告)号:US10671355B2
公开(公告)日:2020-06-02
申请号:US15939742
申请日:2018-03-29
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
Inventor: Jorge Banuelos , Shengyu Fu , Roshanak Zilouchian Moghaddam , Neelakantan Sundaresan , Siyu Yang , Ying Zhao
Abstract: A code completion tool uses machine learning models to more precisely predict the likelihood of a method invocation completing a code fragment that follows one or more method invocations of a same class in a same document during program development. In one aspect, the machine learning model is a n-order Markov chain model that is trained on features that represent characteristics of the context of method invocations of a class in commonly-used programs from a sampled population.
-
-
-
-
-
-