Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds...
Transcript of Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds...
![Page 1: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/1.jpg)
Microsoft Research Cambridge
Joint work with Earl T. Barr, Marc
Brockschmidt, Santanu Dash,
Mahmoud Khademi
![Page 2: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/2.jpg)
Program
Structure
Deep
Learning✓ Understands images/language/speech
✓ Finds patterns in noisy data
- Requires many samples
- Handling structured data is hard
✓ Interpretable
✓ Generalisation verifiable
- Manual effort
- Limited to specialists
DPU
![Page 3: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/3.jpg)
![Page 4: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/4.jpg)
Machine Learning (ML) component →Artificial Intelligence (AI) Tool
![Page 5: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/5.jpg)
Research in ML4Code
![Page 6: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/6.jpg)
![Page 7: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/7.jpg)
https://visualstudio.microsoft.com/services/intellicode/
http://www.eclipse.org/recommenders/
![Page 8: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/8.jpg)
public class TextRunnerTest extends TestCase {void execTest(String testClass, boolean success) throws Exception {
...InputStream i = p.getInputStream();while ((i.read()) != -1);...
}...
}
Suggested Name
input (81.9%)
![Page 9: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/9.jpg)
![Page 10: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/10.jpg)
http://jsnice.org/
Deep Learning Type Inference
V. Hellendoorn, C. Bird, E.T. Barr, M. Allamanis. 2018
Predicting Program Properties from Code
V. Raychev, M. Vechev, A. Krause. 2015
![Page 11: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/11.jpg)
![Page 12: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/12.jpg)
Variable Misuse
Allamanis et al. “Learning to Represent Programs with Graphs”. 2018
![Page 13: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/13.jpg)
Defined Types
string
string
![Page 14: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/14.jpg)
Allamanis, Brockschmidt, Khademi. ICLR 2018
![Page 15: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/15.jpg)
int int int
int
return
for (int i =0; < ; ++)
if ( [ ]>0)
+= [ ];
int int int
int
return
for (int i = 0; i < lim; i++)
if (arr[i] > 0)
sum += arr[i];
![Page 16: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/16.jpg)
Assert.NotNull(clazz);
Assert . (NotNull …
ExpressionStatement
InvocationExpression
MemberAccessExpression ArgumentList
Next Token
AST Child
![Page 17: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/17.jpg)
(x, y) = Foo();
while (x > 0)
x = x + y;
Last Write
Last Use
Computed From
![Page 18: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/18.jpg)
int int int
int
return
for (int i =0; < ; ++)
if ( [ ]>0)
+= [ ];
~900 nodes/graph ~8k edges/graph
![Page 19: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/19.jpg)
BA
EG
D
C
F
Li et al (2015). Gated Graph Sequence Neural Networks.
BA
EG
D
C
F
Gilmer et al (2017). Neural Message Passing for Quantum Chemistry.
![Page 20: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/20.jpg)
F
D
E
E F
D F
F
![Page 21: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/21.jpg)
F
F
D
E
E F
D F
Li et al (2015). Gated graph sequence neural networks.
![Page 22: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/22.jpg)
![Page 23: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/23.jpg)
![Page 24: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/24.jpg)
Li et al (2015). Gated Graph Sequence Neural Networks.Gilmer et al (2017). Neural Message Passing for Quantum Chemistry.
• node selection• node classification• graph classification
https://github.com/Microsoft/gated-graph-neural-network-samples
![Page 25: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/25.jpg)
![Page 26: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/26.jpg)
![Page 27: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/27.jpg)
BA
E G
D
C
F
![Page 28: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/28.jpg)
BA
E G
D
C
F
![Page 29: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/29.jpg)
![Page 30: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/30.jpg)
Seen Projects: 24 F/OSS C# projects (2060 kLOC): Used for train and test
3.8 type-correct alternative variables per slot (median 3, σ= 2.6)
Accuracy (%) BiGRU BiGRU+Dataflow GGNN
Seen Projects 50.0 73.7 85.5
![Page 31: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/31.jpg)
Accuracy (%) BiGRU BiGRU+Dataflow GGNN
Seen Projects 50.0 73.7 85.5
Unseen Projects 28.9 60.2 78.2
Seen Projects: 24 F/OSS C# projects (2060 kLOC): Used for train and test
Unseen Projects: 3 F/OSS C# projects (228 kLOC): Used only for test
3.8 type-correct alternative variables per slot (median 3, σ= 2.6)
![Page 32: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/32.jpg)
![Page 33: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/33.jpg)
Dash, Allamanis, Barr. FSE 2018
![Page 34: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/34.jpg)
def
addToCart(productId, providerId, cartId)
username := password
temperature + numOfOranges
![Page 35: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/35.jpg)
Defined Types
string
string
![Page 36: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/36.jpg)
string EncryptAndSignCookie(string cookieValue, FormsAuthenticationConfiguration config) {
string encryptedCookie = config.CryptographyConfiguration.EncryptionProvider.Encrypt(cookieValue);
var hmacBytes = GenerateHmac(encryptedCookie, config);string hmacString = Convert.ToBase64String(hmacBytes);
return hmacString + encryptedCookie;}
![Page 37: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/37.jpg)
![Page 38: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/38.jpg)
![Page 39: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/39.jpg)
def
return
![Page 40: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/40.jpg)
![Page 41: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/41.jpg)
def string
![Page 42: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/42.jpg)
def
def string
![Page 43: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/43.jpg)
![Page 44: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/44.jpg)
![Page 45: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/45.jpg)
![Page 46: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/46.jpg)
![Page 47: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/47.jpg)
![Page 48: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/48.jpg)
![Page 49: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/49.jpg)
![Page 50: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/50.jpg)
![Page 51: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/51.jpg)
![Page 52: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/52.jpg)
![Page 53: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/53.jpg)
![Page 54: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/54.jpg)
![Page 55: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/55.jpg)
![Page 56: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/56.jpg)
![Page 57: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/57.jpg)
![Page 58: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/58.jpg)
![Page 59: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/59.jpg)
Full name of node or constant value in bepuphysics
damping, SuspensionDamping, starchDamping, dampingConstant, angularDamping, LinearDamping
currentDistance, distance3, candidateDistance, pointDistance, distanceFromMaximum, grabDistance, VariableLinearSpeedCurve::GetDistance, tempDistance
goalVelocity, driveSpeed, GoalSpeed
minRadius, MinimumRadius, Radius, minimumRadiusA, WrappedShape::ComputeMinimumRadius, topRadius, MaximumRadius, graphicalRadius, TransformableShape::ComputeMaximumRadius
blendedCoefficient, KineticFriction, dynamicCoefficient,KineticBreakingFrictionCoefficient
angle, myMaximumAngle, MinimumAngle, currentAngle, MaximumAngle, steeringAngle, MathHelper::WrapAngle
targetHeight, Height, ProneHeight, crouchingHeight, standingHeight
Mass, effectiveMass, newMassA, newMass
M22, m11, M44, resultM44, M43, intermediate, m31, X, Y, Z
![Page 60: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/60.jpg)
![Page 61: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/61.jpg)
UI/UX
ML Capabilities
Metrics
Low resources
![Page 62: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/62.jpg)
Learning Signals
target
prediction
𝑓𝜃(𝑥)input
data 𝑥
model of problem
• Given dataset 𝑥1, 𝑦1 , … , 𝑥𝑁 , 𝑦𝑁• Minimize Loss ℒ 𝜃 =
1
𝑁σ𝑖 𝐿 𝑓𝜃 𝑥𝑖 , 𝑦𝑖
![Page 63: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/63.jpg)
Slides at:
http://web.cs.ucdavis.edu/~su/SteeleSplash2016.pdf
![Page 64: Microsoft Research CambridgeProgram Structure Deep Learning Understands images/language/speech Finds patterns in noisy data - Requires many samples - Handling structured data is hard](https://reader035.fdocuments.net/reader035/viewer/2022071605/6141d73d2035ff3bc762490d/html5/thumbnails/64.jpg)
Deep Program Understanding
Cambridge, UK
Learning from Human
Aspects of Code
Reasoning over
Rich Structures
Towards Learned Program
Analyses with Machine Learning
miltos1
https://miltos.allamanis.com