Gap filling of eddy fluxes with artificial neural networks

Slides:



Advertisements
Similar presentations
NEURAL NETWORKS Backpropagation Algorithm
Advertisements

Learning in Neural and Belief Networks - Feed Forward Neural Network 2001 년 3 월 28 일 안순길.
1 Machine Learning: Lecture 4 Artificial Neural Networks (Based on Chapter 4 of Mitchell T.., Machine Learning, 1997)
Ch. Eick: More on Machine Learning & Neural Networks Different Forms of Learning: –Learning agent receives feedback with respect to its actions (e.g. using.
Artificial Intelligence 13. Multi-Layer ANNs Course V231 Department of Computing Imperial College © Simon Colton.
For Wednesday Read chapter 19, sections 1-3 No homework.
Tuomas Sandholm Carnegie Mellon University Computer Science Department
CS 4700: Foundations of Artificial Intelligence
Kostas Kontogiannis E&CE
Artificial Neural Networks
Uncertainty in eddy covariance datasets Dario Papale, Markus Reichstein, Antje Moffat, Ankur Desai, many others..
Machine Learning Neural Networks
Neural Networks Basic concepts ArchitectureOperation.
Prénom Nom Document Analysis: Artificial Neural Networks Prof. Rolf Ingold, University of Fribourg Master course, spring semester 2008.
Connectionist models. Connectionist Models Motivated by Brain rather than Mind –A large number of very simple processing elements –A large number of weighted.
Chapter 5 NEURAL NETWORKS
Biological neuron artificial neuron.
Prénom Nom Document Analysis: Artificial Neural Networks Prof. Rolf Ingold, University of Fribourg Master course, spring semester 2008.
-Artificial Neural Network- Chapter 5 Back Propagation Network
MACHINE LEARNING 12. Multilayer Perceptrons. Neural Networks Lecture Notes for E Alpaydın 2004 Introduction to Machine Learning © The MIT Press (V1.1)
October 28, 2010Neural Networks Lecture 13: Adaptive Networks 1 Adaptive Networks As you know, there is no equation that would tell you the ideal number.
CS 484 – Artificial Intelligence
Raw data Hz HH data submitted for synthesis Flux calculation, raw data filtering Additional filtering for footprint or instrument malfunctioning.
Classification Part 3: Artificial Neural Networks
Integrating Neural Network and Genetic Algorithm to Solve Function Approximation Combined with Optimization Problem Term presentation for CSC7333 Machine.
IE 585 Introduction to Neural Networks. 2 Modeling Continuum Unarticulated Wisdom Articulated Qualitative Models Theoretic (First Principles) Models Empirical.
Artificial Neural Networks An Overview and Analysis.
Chapter 9 Neural Network.
Neural Networks AI – Week 23 Sub-symbolic AI Multi-Layer Neural Networks Lee McCluskey, room 3/10
Chapter 11 – Neural Networks COMP 540 4/17/2007 Derek Singer.
11 CSE 4705 Artificial Intelligence Jinbo Bi Department of Computer Science & Engineering
Appendix B: An Example of Back-propagation algorithm
Introduction to Artificial Neural Network Models Angshuman Saha Image Source: ww.physiol.ucl.ac.uk/fedwards/ ca1%20neuron.jpg.
Machine Learning Dr. Shazzad Hosain Department of EECS North South Universtiy
Neural Networks - Berrin Yanıkoğlu1 Applications and Examples From Mitchell Chp. 4.
Artificial Intelligence Methods Neural Networks Lecture 4 Rakesh K. Bissoondeeal Rakesh K. Bissoondeeal.
Artificial Intelligence Techniques Multilayer Perceptrons.
Artificial Neural Networks An Introduction. What is a Neural Network? A human Brain A porpoise brain The brain in a living creature A computer program.
Applying Neural Networks Michael J. Watts
Artificial Neural Networks Bruno Angeles McGill University – Schulich School of Music MUMT-621 Fall 2009.
Linear Classification with Perceptrons
Neural Networks and Backpropagation Sebastian Thrun , Fall 2000.
Introduction to Neural Networks. Biological neural activity –Each neuron has a body, an axon, and many dendrites Can be in one of the two states: firing.
CS621 : Artificial Intelligence
Neural Networks - lecture 51 Multi-layer neural networks  Motivation  Choosing the architecture  Functioning. FORWARD algorithm  Neural networks as.
Neural Networks Presented by M. Abbasi Course lecturer: Dr.Tohidkhah.
Neural Networks Teacher: Elena Marchiori R4.47 Assistant: Kees Jong S2.22
Image Source: ww.physiol.ucl.ac.uk/fedwards/ ca1%20neuron.jpg
Artificial Neural Network
Neural Networks Vladimir Pleskonjić 3188/ /20 Vladimir Pleskonjić General Feedforward neural networks Inputs are numeric features Outputs are in.
Bab 5 Classification: Alternative Techniques Part 4 Artificial Neural Networks Based Classifer.
Machine Learning Artificial Neural Networks MPλ ∀ Stergiou Theodoros 1.
Chapter 11 – Neural Nets © Galit Shmueli and Peter Bruce 2010 Data Mining for Business Intelligence Shmueli, Patel & Bruce.
Data Mining: Concepts and Techniques1 Prediction Prediction vs. classification Classification predicts categorical class label Prediction predicts continuous-valued.
Neural Networks - Berrin Yanıkoğlu1 MLP & Backpropagation Issues.
Learning with Neural Networks Artificial Intelligence CMSC February 19, 2002.
Combining Models Foundations of Algorithms and Machine Learning (CS60020), IIT KGP, 2017: Indrajit Bhattacharya.
Machine Learning Supervised Learning Classification and Regression
Artificial Neural Networks
Applying Neural Networks
One-layer neural networks Approximation problems
Generalization ..
Prof. Carolina Ruiz Department of Computer Science
Artificial Intelligence Methods
Artificial Neural Network & Backpropagation Algorithm
network of simple neuron-like computing elements
Ch4: Backpropagation (BP)
CS621: Artificial Intelligence Lecture 22-23: Sigmoid neuron, Backpropagation (Lecture 20 and 21 taken by Anup on Graphical Models) Pushpak Bhattacharyya.
Ch4: Backpropagation (BP)
Prof. Carolina Ruiz Department of Computer Science
Presentation transcript:

Gap filling of eddy fluxes with artificial neural networks Dario Papale, Antje Moffat, Markus Reichstein

Artificial Neural Networks - ANNs What is an ANN It is a network of many simple processors ("units"), each possibly having a small amount of local memory. The units are connected by communication channels ("connections") which usually carry numeric (as opposed to symbolic) data, encoded by any of various means. The units operate only on their local data and on the inputs they receive via the connections. Input dataset Output Input layer Hidden layer Output layer = unit = connection

Σ The unit or node Transfer functions ni = previous layer nodes nn w1 w2 wn x1 x2 wn xn w2 x2 w1 x1 xn Σ g a y 1 b ni = previous layer nodes xi = input to the unit wi = connection weigh g = transfer function y = output from the unit

Multilayer Feed-forward Back propagation ANN (BPN) BPN are a class of ANN with these characteristics: They are able to model also complex relationships The ANN training is supervised The nodes are organized in layers The information flow is unidirectional from the input layer to the output layer There are not connections between nodes of the same layer The error in the output estimate is retro-propagated from the output layer to the input layer

Multilayer Feed-forward Back propagation ANN (BPN) It has been demonstrated that a BPN with one hidden layer and sigmoid transfer functions is able to approximate any kind of continuous function with any degree of accuracy if there are a sufficient number of hidden nodes in the hidden layer (Bishop 1995, Hagan et al. 1996, Rzempoluck 1998) Mat_dem

BPN: how it works The ANN is trained using a dataset of examples with input and correct output. For each example the ANN-output is compared with the correct-output and the error is minimized modifying the connection weighs Once the ANN has been trained, the connections’ weighs are fixed and it is possible to use the Network with only the input data To avoid overfitting, the dataset used in the ANN training is split in 3 subsets: Training set Test set Validation set Epochs Error p

How to back propagate the error? There are different training algorithms available. The simplest but also most used is based on the gradient descent technique. Considering the connection between node k and node j : wkj Ekj a b

Artificial Neural Networks training Input and Output database Used to assess the connection weights Used to evaluate the errors Validation set Training set Test set Input dataset Output Input layer Hidden layer Output layer = node or unit = connection Used to evaluate the trained ANN Trained ANN

There are a lot of tools available, often available for free, simple and funny to use There are also toolboxes or codes that it is possible to integrate in your software (I’m using the Matlab toolbox) However, like for all the methods, you can use it or use it correctly (or in a better way…), and this make the difference in the performances… So let’s look more in depth some characteristics of the ANNs…

ANNs are quite robust in the application if input are wrong or noisy, but they are sensible to wrong data during the training process. The dataset used to train the ANN must be with high quality in both, input and output ANN training is based on an iterative process and you will not obtain two times the same result from the same network trained with the same data ANNs are very good in interpolation but bad in extrapolation… Generally, the common questions when you start to use ANNs are: Which variables should I use as input? How many examples do I need? How many of these examples do I have to put in the three sets? Which ANN architecture should I use?

Which variables should I use as input? Site dependent and different between night and day. Ideally Radiation, Temperature, VPD and Soil Water Content for daytime, no Radiation but Soil temperature or Precipitation in the night.

How many examples do I need? As much as possible…. But the ANNs are not good in extrapolation so it is important to cover the domain UNIFORMLY. Year split in 28 sections (13 days) Daytime and Nighttime separately, both split in three sections 84 periods per year Same number of example from each period in the training set Extracted randomly Test set = 50% of the training set, Valid. set the rest of data

Each network trained 10 times starting from different initial weights Which ANN architecture should I use? The simplest with the best performances. It is important to train different ANNs with different architectures 4, 5, 6, 7, 8, 4+3 hidden nodes Best performance based on observed vs modeled regression (Validation set) and on MAE and RMSE Each network trained 10 times starting from different initial weights If two ANNs have the same performances (+/- 1%) the simplest is selected

But everything starts with the random extraction of the dataset… Bootstrapping would be very interesting but too slow… More extractions are better than nothing… Training, Test and Validation sets are randomly extracted 7 times For each dataset all the process is repeated At the and there will be 7 ANNs selected as “best” The worst is removed and the other 6 applied The final value used to fill each gap is the mean of the 6 results

2 7 6 10 2 x 7 x 6 x 10 = 840 Dataset split in daytime and nightime Network trained! (for one storage!!) Input variables selected Yearly dataset split in 84 periods Same number of example extracted randomly from each period Preprocessing (scale between 0 and 1, chose generalization method between early stopping and regulation) 6 different ANNs are trained Each ANN is trained 10 times 6 best networks applied If gaps in the input variables -> gapfilled with MDS If gaps impossible to fill -> MDS then MDV….. Average of the 6 results for each gap Qflags added + std of the 6 ANN output

Next steps to improve gapfilling the method Method: ANN Training data from three years: 97, 98 and 99. Applied with input data from 2001