An introduction to PyTorch & Autograd

Video thumbnail (Frame 0) Video thumbnail (Frame 4895) Video thumbnail (Frame 5610) Video thumbnail (Frame 9640) Video thumbnail (Frame 12513) Video thumbnail (Frame 14479) Video thumbnail (Frame 26108) Video thumbnail (Frame 31124) Video thumbnail (Frame 33196) Video thumbnail (Frame 34169) Video thumbnail (Frame 35672) Video thumbnail (Frame 47244)
Video in TIB AV-Portal: An introduction to PyTorch & Autograd

Formal Metadata

An introduction to PyTorch & Autograd
Title of Series
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license.
Release Date

Content Metadata

Subject Area
An introduction to PyTorch & Autograd [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 2] [Rimini, Italy] PyTorch is an optimized tensor library for Deep Learning, and is a recent newcomer to the growing list of GPU programming frameworks available in Python. Like other frameworks it offers efficient tensor representations and is agnostic to the underlying hardware. However, unlike other frameworks it allows you to create ""define-by-run"" neural networks resulting in dynamic computation graphs, where every single iteration can be different---opening up a whole new world of possibilities. Central to all neural networks in PyTorch is the Autograd package, which performs Algorithmic Differentiation on the defined model and generates the required gradients at each iteration. In this talk I will present a gentle introduction to the PyTorch library and overview its main features using some simple examples, paying particular attention to the mechanics of the Autograd package. Keywords: GPU Processing, Algorithmic Differentiation, Deep Learning, Linear algebra
Point (geometry) Dataflow Flock (web browser) Differential (mechanical device) Standard Model Multiplication sign 40 (number) Source code Virtual machine Coroutine Solid geometry Graph coloring Order of magnitude Number Neuroinformatik Array data structure Propagator Different (Kate Ryan album) Torsionstensor Operator (mathematics) Matrix (mathematics) Software framework Mathematical optimization Physical system Module (mathematics) Addition Algorithm Stapeldatei Constraint (mathematics) Gradient Plastikkarte Variable (mathematics) Tensor Arithmetic mean Digital photography Film editing Befehlsprozessor Linearization Self-organization
Group action Beta function Code Standard Model Gradient Multiplication sign Coroutine Set (mathematics) Parameter (computer programming) Food energy Computer programming Dimensional analysis Tensor Different (Kate Ryan album) Software framework Graphics processing unit Automatic differentiation Block (periodic table) Linear regression Building Keyboard shortcut Gradient Parameter (computer programming) Bit Variable (mathematics) Flow separation Type theory Computer configuration Cost curve Software framework Quicksort Block (periodic table) Quantum chromodynamics Spacetime Point (geometry) Dataflow Algorithm Connectivity (graph theory) Field (computer science) Product (business) Wave packet Twitter Torsionstensor Graph (mathematics) Touch typing Mathematical optimization Module (mathematics) Operations research Graph (mathematics) Surface Cellular automaton Projective plane Standard Model Component-based software engineering Film editing Pointer (computer programming) Software Network topology Fuzzy logic Mathematical optimization Library (computing)
Point (geometry) Statistics Group action Overhead (computing) State of matter Standard Model Graph (mathematics) Multiplication sign 1 (number) Set (mathematics) Hypercube Computer programming Pie chart Attribute grammar Tensor Bit rate Semiconductor memory Atomic number Different (Kate Ryan album) Bridging (networking) Operator (mathematics) Torsionstensor Matrix (mathematics) Software framework Data structure Abstraction Binary multiplier Fundamental theorem of algebra Operations research Stapeldatei Multiplication Graph (mathematics) Information Electronic mailing list Volume (thermodynamics) Term (mathematics) Tensor Type theory Word Uniform resource locator Process (computing) Network topology Right angle Object (grammar) Resultant
Complete graph Context awareness Differential calculus Graph (mathematics) Workstation <Musikinstrument> Shape (magazine) Variable (mathematics) Inference Medical imaging Sign (mathematics) Lattice (group) Different (Kate Ryan album) Website Descriptive statistics Social class Automatic differentiation Trigonometry Programming paradigm Vektoranalysis Differential (mechanical device) View (database) Gradient Sound effect Maxima and minima Tensor Category of being Wave Process (computing) Quicksort Glass float Spacetime Point (geometry) Slide rule Sine Wrapper (data mining) Connectivity (graph theory) Calculation Letterpress printing Maxima and minima Backpropagation-Algorithmus Event horizon Rule of inference Number Product (business) Frequency Chain Propagator Term (mathematics) Torsionstensor Data structure Nichtlineares Gleichungssystem Chain rule Form (programming) Overhead (computing) Dot product Standard deviation Graph (mathematics) Content (media) Computer network Basis <Mathematik> Extreme programming Line (geometry) Word Spring (hydrology) Software Finite difference Personal digital assistant Function (mathematics) Social class Family Library (computing) Vektoranalysis Standard Model Euler angles Gradient Direction (geometry) Multiplication sign Set (mathematics) Insertion loss Parameter (computer programming) Mereology Derivation (linguistics) Mathematics Tensor Machine learning Bit rate Scalar field Flag Circle Data conversion Graphics processing unit Price index Variable (mathematics) Tangent Type theory Curvature Cost curve output Right angle Asynchronous Transfer Mode Asynchronous Transfer Mode Functional (mathematics) Virtual machine Revision control Force Operator (mathematics) Touch typing Software testing Dilution (equation) Reverse engineering Mathematical optimization Condition number Module (mathematics) Addition Forcing (mathematics) Projective plane Standard Model Scalar field Calculation Bellman equation Speech synthesis
Point (geometry) Sine Functional (mathematics) Code Gradient Correspondence (mathematics) Set (mathematics) Similarity (geometry) Mereology Quadratic equation Derivation (linguistics) Different (Kate Ryan album) Electronic visual display Nichtlineares Gleichungssystem Implementation Extension (kinesiology) Form (programming) Social class Standard deviation Quadratic function Inheritance (object-oriented programming) Gradient Basis <Mathematik> Instance (computer science) Demoscene Type theory Film editing Well-formed formula Function (mathematics) Network topology Quadratic equation Quicksort Table (information)
Complete graph Group action Linear regression Graph (mathematics) Source code Bit rate Variable (mathematics) Medical imaging Different (Kate Ryan album) Social class Dissipation Quantum chromodynamics Machine learning Programming paradigm Gradient Parameter (computer programming) Message passing Spacetime Point (geometry) Branch (computer science) Student's t-test Backpropagation-Algorithmus Arithmetic mean Bridging (networking) Graph (mathematics) Bilinear map Contrast (vision) Alpha (investment) Form (programming) Stapeldatei Matching (graph theory) Information Expert system Computer network Line (geometry) Wave packet Shape (magazine) Symbol table Loop (music) Error message Software Personal digital assistant Function (mathematics) Network topology Iteration Mathematical optimization Matrix (mathematics) Window Gradient descent Beta function INTEGRAL Standard Model Gradient Plotter Multiplication sign Direction (geometry) 1 (number) Set (mathematics) Insertion loss Correlation and dependence Parameter (computer programming) Mathematics Tensor Scalar field Square number Intercept theorem Point cloud Algorithm Linear regression Point (geometry) Range (statistics) Variable (mathematics) Connected space Type theory Data model Vector space Quadratic equation Cost curve Bridging (networking) Right angle Alpha (investment) Quantum chromodynamics Functional (mathematics) Line (geometry) Distance Tangent Wave packet Revision control Programmschleife Reduction of order Integer Gradient descent Loop (music) Mathematical optimization Linear map Domain name Module (mathematics) Noise (electronics) Quadratic function Forcing (mathematics) Graph (mathematics) Standard Model Mathematical analysis Stochastic Contrast (vision) Point cloud Object (grammar) Square number
Multiplication sign
thank you thank you and so on color Brady Minnesota gauche play torture nanorods and just so that the mean and card him a data scientist at some no in Dublin as Islandora online fashion retailer and most member of the play on Holland Organizing Committee and we'll have our conference in October this year of interest income the doubling and on a most wanted her so platform such as a quick overview of talk about today and so just go back a quick background on matrix computations and deep learning the source of and an organ a point charge tensors in variables and we talk about photographs solid rod is actually a module within play torch and I'll discuss gradients and back propagation that's the and of day give a simple worlds example of to have to use to the framework to simple linear regression and and and I will illustrate differences between the defined by Ron a framework which is what point charges and define and run framework and I'll do that that at the end OK so just a quick background and so before learning and uh jeep use and frameworks Ran-GTP use and obviously all computation was based constraint the CPU's and sources whose would've been using it and would be and stuff like we would still use stuff like blast which basically view and simple matrix computation teens and uh they pack which would give you routines for solving linear systems stuff like bashed then and and and and and points and abusing employer from familiar with number like and so the star these tools are all based around uh forming and computations on CPU and hands yeah so who do gossip or 12 No . supports say Monte multidimensional arrays and arrays and but at the time the wasn't so great support for like tensor operations deflect Dutch and so was deep learning from you've heard batch and a basic models here are quite large and you need to paradigm for compare computing and the models and updating the gradients solid stuff and so people started GPU use stuff steel and that these enable deeper learning and and so that they see here we use tensors and their number frameworks that propanol tend to flow and channel as well as the torch will talk about them and but yes so where we do the connotation GPU flock faster an order of magnitude faster the and so the center number 2 frameworks sentence flow channel and and alerting the the frameworks offer is in addition to like to your competition on the GPU and would have a supporter features for and cut gradients and exa Bollegala at different differentiation and that's important for machine learning algorithms because you have to calculate gradients to feed into the optimization algorithm and and forties tools to
do that by hand Swedes and paper cut grading surface update rule and or and now . tools that will do for you just from the cost function OK so the great the all this stuff is the point at the center of this and all those 2 frameworks I mentioned have bindings for point and I'm spores new kid block is no . torch and all workbench so quite torch
yeah so suppose the forcing dimension the point torches and torched cell has been around long time it's framework and so a lot of great work within that community to and that's been going to build and lower builds torch and fuzzy point sort of points around us and they still share a common C library SelectBatch and you talk still its own separation projects yeah so pointers question new framework editing beta release was in January and expose a key difference we employ torture and other frameworks is and that's a defined by Ron framework and posed fine and run animals cost start later on but to me and 1 of the reasons why the reason I like by torches looks more like a programming as you know and what fields need be more platonic and so I feel was frameworks you kind of feel that's a bit of set of going on before you choose to do your training and just find and biting groupoid tortures just feels of my search so the main components there and by torture module and of those to builds a train networks and that's what the earnings and so these nor networks come from very compared with many different layers of many different types of modules and there's an and play torch space user the cutting edge of like research so that sports all that stuff and noting that PY churches has all the rats with uh has a nice and support for automatic indentation talk a bit of touch and then once you have your gradually sort your gradients from your from your energy you can then use that data and model parameters were deep learning network or whatever or a regression using optimization routines and in the framework of so I'm going to give you examples here and some code examples so diversion of quite torsion this these examples of 4 is a 0 . 1 . 1 2 and minus running on a point in the tree . 5 that so just give a kind of this quick overview of the status of the products and so this is uh tree starts in the sky on Twitter and it's basically shows 2 aggregates selectively on different variables for definition of deep learning and libraries and by torches and fit the fish there it's quite good so this is quite young project the from your is at the top the sense flow you have Google and because you find out what Bush still even after a few months and still very very well action Fitzwater at all
so and the 1st talk about tensors can have a simple example and so just be clear and saw talk about matrix locations deflect passion and you would not use native uh plate and this to do matrix publications of the state action and you can model matrix using a list of lists which you would much intimate that way because what you can do and what's very inefficient and so this is you know can contain arbitary items of object types and so a lot of overhead on the kind of memory handling of batch and that you would want to avoid when you're doing the computational jobs so everyone you're always gonna use a different framework or a model so you might use employer and so the way attentive models of sorry uh . 4 times well as user tensors and so the sensors can be initialized as this year would like lists and watched underlying kind memory later uh there's more say C programming right word of the individual atoms or was just yet you that's the foundation these and and the stats data structures and so used to looking at no employ an inch of your uh your your tensor and here you can perform anything to put the right information sorry operations and extract many different types of information so determines the size of the tensor and I'll see you can add so you can add in place another the place so there's some simple example where a set of a tensor ones and Adam had to attend to the ones that do it in place at all so pie-charts supports in place and operations and they are and identified by an underscore the and that name and so there are
no yes so I mention employer and so you may have been a situation where you have your data already heard transform whatever it using employed and we want to get out into the user and point torch tensors and a simple layered investors so that supports like and on bridge and so here I have an volumes currently in Mumbai rate defined and and I can multiply each and body of previous and most tensor graded by just specifying the snow employ methods on the tensor and simple starch you looked result and it's basically and on right so that's handy so it's very easy to and include employed and the reason for the torch the you can also build your way around so we have an we want to and multiplying a matrix multiply and 2 tensors and we set Z which is normally rate and then using torch from employing encroach tensor and then you know you could result so the tree to butchery by multiple attribute who gives you 2 by 2 matrix and because run shorts the base you get a torch that . short answer that so that's all have the stuff that's of local stuff but expect from framework yeah order operations you can
do is encourage you can change the shapes of them and neural tensors and of the expected and modernizing by torches you can be very explicit about where the competition and happens and so on you mention the GPU spring and most Uriah complication being explicitly and say that uh sitting set of Europe variable 3 tensor and then you can specify that should be and on the GPU and likewise can say would like to move out to CPU so stressed this is and you know where things are being moved to and if the curvature copies and stuff like that was just my speech just like that and that's my sister so in order important component of than point charges of variables so variables and the ported from holographic package and basically variable and is 10 wraparounds the tensors and sort of the the variable gives you is close to specify completion graph and handle comes the back propagation and machine learning and dating you're from model parameters and told and as you do well as well so if you mention gradients and so forth and machine learning in deep learning it's important and to to his she'll have lower value has been calculated and so that suggests like a died fuse directives of the basic graph or some sort completion graph and as they see what the variables so the variable will keep a history of how values being and and calculated and and this gives you the structure of the graph structure and and was misuse Craig touch so that's useful when it comes to end to AD and and it's also you so that's a nice feature yeah this was that still allow it to that so take the backpropagation of gradients and so you see sports and stuff so yeah just methods on a mention that so all of the slides on a topic here and they're all it in the context of machine learning to learning step and whatever model and you don't need any this backpropagation gradient still so and so use the variables with you and the way to a specified that you need a great and stuff and you just want run inference time at test time is to assess the volatile flag on your variable so you to do something to that of the production with the model so here's I'm just a simple example of a variable and sold support from other grants and you can see that's initialize with a tensor and just 2 simple tenses here actually and modernizing together get Z and Energis Amoco which to do and that is that part of the addition of so as a said grades keep history so there's an additional property on the variable that variable because it's an autograph variable and that's called created this 1 here and that basically tells you the last operation was performed to actually have to calculate the result and in this case shows you it's in addition and then I can take that out onto the some operational the contents of the tensor and the sign that the US due to say in public the credit for s and you can see and was of last operations song thank so this using this crater on and so attractive property so that's interesting things so we're 2 criteria that that gives you a reference and 2 additional where you can actually chased references and and construct a graph for yourself and some simple and causal of function here basically the prints notion and different operations on the data when it's the data and and bypassing the as the creator and you can see the operations that can be employed to this and so as this here and and in addition science and dashed force operations are constant and so on and them as it shows that you actually display the data there and so that's that's nice feature so you imagine for big and deep learning networks and you could check or you could Croatia graph like this more fun to graph saying that was a torsion point of the torch library what and also keeps a version so each time the variable X is the effects and Michigan's and it may increments this version number and that's used in machinery of the of that selects the most features of of OK so this talk quickly but utterance the the yes so rats and vise class of functions that implement the automatic differenciation of scalar-valued functions so scalar value function so you usually talking about cost functions loss functions and so the passenger usually scalar-valued so that's what and its holiday there and I am an just a quick note that type of AD that's implemented in all the brother reversed modes and all of the different stations OK so this undergrad and module is actually so this course is coming to torch without actually which means barred by in order apply to model a project called rat so it's gone from point into the lower no full circle back into and point and the true torch and so the defined uh defined by Rome and paradigms a spoiler deployed to changes in the framework of and also on the manual and the talks were quite fortunate mentioned at St indentation word for a grants is pretty quick this description yeah and so and implements the back propagation and Joey change of the lattices is basically and change at answers to variables in this very very simple thing to do what OK so we're gonna talk about propagation on a popular art automatic differenciation was quickly schools and calculus for differential calculus and as con illustration why we need to do this so the differential calculus OK so you may or not may not remember from school or college and space you have a function and so this equation here is calculated derivative from 1st principles but basically you have a function they have a point X and you'd like to know and you would like to know the gradient the tangent at that point OK so for the grains condition so dilute acetate original function and form different cultures and you get a derivative and then using the and the initial x and push and using the new director which is also function you just by supplied and function and whatever value that comes out last basic tells you what the gradient is basically the slope of this line so we're really talking about points on the court's functions function and uh calculating gradient for about basis slope of the line and then we use this the culture gradients to indicate something of value to us and in terms of and machine learning and optimization this allows us to attend following extreme of function so basically and maximum points and minimum points and the way we do that is by looking at the gradients for functions and that's going use different kinds of so back propagation
and gets a back-propagation because we're talk about their networks and multilayer networks it's difficult to and calculate the derivatives although such networks and so there's not related to the ushers things will probably knowledge it sent back propagation and so that will calculation of the gradients of your model parameters with respect to the loss function and then will push back gradients and true the network and an inevitable stage or change the model parameters to make it a better solution so that their attitude and the rule that use tax achieve this is the chain rule standard rule in different stations and and back-propagation basically iteratively applies that to all the different layers and and that's how this pushes ratings back to the network and how they can be then used the 2 parameters so what about this this process goes back propagation so we're talking about the other talking back propagation and it's simple and simply implemented using as a backward method on our variables so the stuff that we've been doing the variables and that so now for and cuddly introduce something back prop so just as a simple example our kind and just to convince yourself that's differenciation is actually happening when you run it back prop some very very simple example here and so the derivative of sine functions a cost function and I'll just illustrates our Trenton's myself dashed and back-propagation lecture give me way expect describes OK so the self a simple and x variable which is basically 1 period of sine waves so from 0 to 2 and 2 . endemic out like the sign of that and signal variable and using distorts lessons and function and then the up obstacles and much more so than the future of uh of all of the variables is you have an additional grad property which event will echo ocean and actual gradients for . variable if they were coordinated and at this point have not been conflated and so consulting Bush at this point I calculate gradients place and calling the backwards and method and and at that point it will cut the grade for it so this will basic calculation th dx and so the next time we look at the graph that will see that the greatest there and so forth so it it was a just look at the coach converts to much to make it easier to read and for the 2 inputs which is 0 to 2 . have a look at what is and in the catch 0 1 0 minus 1 0 and that's basically assigned Dan by looking at the gradient of the grout property and do the same and we can see the change right and 1 0 minus 1 0 1 so that's basically cost and so we've convinces has no dots is performed in a country degrades for and images do not reject were we compare practical cost so suspiration and uh the convinces other works hands and we're happy with knowledge and just not a simple example but
you know sort of forced and so have all this work and so basically deep in the code of points tortuous the scene and signed function is actually in this instance of this assigned class and which basically inheritance compared from a function which is imported from all around and so if you can see 2 methods here we can see the is assigned function and for in the forwards and uh methods we cannot see backwards OK and look here closely we see that basically just on the part it just calls cost which is correct and you and you know in advance that uh the derivative of sine is cosine basis thus we do so here if you look the cut before in notice standard tables for different functions and derivatives we basically do about the same thing in why torture and and the incentive to most classes or some the backward method that identifies that specifies the and gradient form because your gradient and yet if you actually want to an extent . torch will then this is the part that you see you know so class and function and its and created class worries have your 4 credits and then you define degraded function by the yeah so just another
simple example just wanted and display attendant so we have a quadratic function here and I do something similar for a crater and x variable to linear space and and note that corresponds trees here and then a basic set of the toward the equation for the quadratic equations and when he looked interesting looking national and the gradient for 1 points within our based there on a set that up and then finally online body and called the type of function and using the greatest of all that and so the main thing we're
interested in is interested in is and the value of the gradient at that point of of identified matches and can play this and so I know that the value here should be ones for a given one's tree was discretization and and from the isn't this information the cuddly gradient so and is now gonna plot passion and and student just a plot to original quadratic function and and the great advantage and so you can see that this just confirms again and you know what we expect you have a point minus 1 is a reduction on a quadratic function and we have a nice attention very can see the plush which OK so just and finish off with a simple example to mention soldiers on top of linear regression to integration is basically a cloud of data points and you're gonna try your best to fit a line to go to the cloud of data points yet so you fit line the
day that you try to minimize distance between the line and all the points on the coastal so the market is quite simple and and to linear relationship and so y equals that of experts and they there was a sorry alpha is waiting in these images that X is called and unbearable unwise and variable and so this model is actually implemented so they employ torture vectors with this itself and that's and and and module that is the moderated C over types of models well a continent somewhere else source of Dutch and that's a model for this and this is what our data looks like and so I created this form and then of course the created noise noise examples of interest lies the and to and patents trees you can see interceptors tree yeah OK so you just quickly and which we so we've been talking models and disgraceful need auditing that learn and perform GNU cost function will discuss fashion and we also need to identify stressful and learning algorithm for the data model parameters so cost function uses pretty standards and and mean square and so the value of the cost function will be 0 when you your predicted values and here um the actual values are exactly the same and that's what you want and we also defined optimization algorithm and here we use classic making sense very common and so that's where we use a gradient so we we have here and the gradient of a cost function is MSE and with respect to model parameters and those gradients are used window and modernization of remorse Custer gradients out of so is afforded step after you complete your gradients started OK so the cold and so so this is how I set up my data my x and y is basically a cloud of points the saw and the figure and and basically we set up a linear regression model to this has a set of model in and play torch some into an issue will specify different layers of our our modules that you need in our case it's a simple example 1 there so in here and then in the forward pass you would describe how these different layers are combined and for us against for example we imagine for electing to deep learning networks in this class of GEP very very big and a lot of there's a lot of different directions we being have the forwards and that is specified and then finally just instantiate Dutch and because you're only interested in 1 dimensional the version of the specified for then in model I have so I mentioned we need cross-functional said we use MSE and specified out here and analysis best quality to discuss grading descent and the learning rage just centered optimizer and here we have a trained the space at the current point so and before we do any training next inspects the model parameters to the values are and so there's a on the model to reserve and that's called named parameters and that's basically generator of different and founders seriously is a waste which is RL alpha I can see why this is our beta so these values are random initialised and then after training they've changed and and thus and then we'll have a line for the for the so this domain training loop and for fought action train a model and so this late point torched because its training within loops and so forces despite stature and force that is to 0 the gradients on the model parameters and so the great insect accumulation them more than just continued accumulation 2nd step is the step is to take your model take your imports and then I take a push to this basically running the model on push then from Europe the courts that and think bread and then to the labels using the criterion and that this will give you a loss so this loss scalar and so you look at convergence plots in gene earning dissipates we're plotting the single value and and using this loss because a variable we can then uh essentially simply like backpropagation to batch and work on backward so once a gradient and then update the model parameters using optimizer and you do that by calling step on myself so you can see here would in the loop is a lot of things going on stopped this sorry the steps are very explicit and and this is uh defined on tight and paradigm just keep that in mind so if it's a training and have a look at our model parameters and then we can see that there's been a change in our model parameters were not a feature of the model is the connection to spec under different layers and so just preprints integer there's of our model just simply regression and then I plot line so here we can see these lines if it's pretty well to the original data and say there's our model has no plans for that the so I mentioned that and in the loop . chauffeur qui torture and fine balloon animals can quickly compared exact same problem to channel which is a motor and you can find so here and channel we importantto set of the insulated please example the set exon Lloyd and data and it deviates in the way that calculates gradients with a set of symbolic and variables and lots of your model and you use short variable something model variables and then define a model and to create an instance of such as quick all and it's September 2 . 4 chapter so that your cost function than if cut their gradients you can see this is done very way and specify the updates and then you have this step for you take all the stuff and and you basically compile and uh dis of information into an appointment and functions Dan fun thing to do is just to form a training you can see that cultural mores and affordable and ample here we can see that very sparse it's a space here 1 and suck contrast very much with and we apply torture them and so there's no opportunity here to kind of make changes within you're learning loop and so there's no kind of dynamic and the possibility introduce dynamic behavior whereas in and play torch would in indirect iteration of 2 branches you can make changes within each in iteration so here channel basic rights stood at completion graph and for training and that pi torched users and at each iteration so just to finish up and so it's quite torture and unemployed bridges tenses as the would and also schools the graphs and variables and talk a great in some of our object in a simple example and I the agenda of just illustrate the difference being defined by loan and foreign and loan so that's me finished the most of any time for questions which by thank you very much for what's great great
so I think that we do not have time for questions from the exactly the right time thank you and I think you're much and again thank the speaker again thank