Deep Neural Networks: A Hands on Challenge

Slides:



Advertisements
Similar presentations
Linux, it's not Windows A short introduction to the sub-department's computer systems Gareth Thomas.
Advertisements

How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Installing and running COMSOL on a Windows HPCS2008(R2) cluster
CGI programming Using Apache. Concepts Browser prepares parameter list List is attached to name of program to run on server "submit" button sends string.
HPCC Mid-Morning Break Interactive High Performance Computing Dirk Colbry, Ph.D. Research Specialist Institute for Cyber Enabled Discovery.
Reproducible Environment for Scientific Applications (Lab session) Tak-Lon (Stephen) Wu.
Remote Accessing Your Home Computer Using VNC and a Dynamic DNS Name.
STRATEGIES INVOLVED IN REMOTE COMPUTATION
An Introduction to Designing and Executing Workflows with Taverna Aleksandra Pawlik University of Manchester materials by Dr Katy Wolstencroft and Dr Aleksandra.
Customized cloud platform for computing on your terms !
WORK ON CLUSTER HYBRILIT E. Aleksandrov 1, D. Belyakov 1, M. Matveev 1, M. Vala 1,2 1 Joint Institute for nuclear research, LIT, Russia 2 Institute for.
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Tutorial 1: Getting Started with Adobe Dreamweaver CS4.
WRF Domain Wizard A tool for the WRF Preprocessing System Jeff Smith Paula McCaslin July 17, 2008.
Python: An Introduction
VNC Greg Fankhanel Jessica Nunn Jennifer Romero. What is it? Stands for Virtual Network Computing It is remote control software which allows you to view.
Leveraging ArcGIS Online Elevation and Hydrology Services
Introduction to the Visual Studio.NET IDE (LAB 1 )
Remote Controller & Presenter Make education more efficiently
Cap 333 Network Administration. Grades  20 marks distributed on  Assignments / Project Activities Individual Pairs  1 or 2 tutorial quizzes.
Memory & Storage Architecture Seoul National University PuTTY Usage Hyeon-gyu School of Computer Science and Engineering.
Creating and running an application.
Unix Machine In Computer Science for Teaching Cliff Zou Spring 2015.
Using the Weizmann Cluster Nov Overview Weizmann Cluster Connection Basics Getting a Desktop View Working on cluster machines GPU For many more.
Sponsored by the National Science Foundation Today’s Exercise.
1 Getting Started with C++ Part 2 Linux. 2 Getting Started on Linux Now we will look at Linux. See how to copy files between Windows and Linux Compile.
Practical Kinetics Exercise 0: Getting Started Objectives: 1.Install Python and IPython Notebook 2.print “Hello World!”
ASP.NET WEB Applications. ASP.NET  Web application framework developed by Microsoft  Build dynamic data driven web applications and web services  Subset.
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
SSH. 2 SSH – Secure Shell SSH is a cryptographic protocol – Implemented in software originally for remote login applications – One most popular software.
CACI Proprietary Information | Date 1 PD² SR13 Client Upgrade Name: Semarria Rosemond Title: Systems Analyst, Lead Date: December 8, 2011.
PuTTY Introduction to Web Programming Kirkwood Continuing Education by Fred McClurg © Copyright 2016, All Rights Reserved ssh client.
Virtual Network Computing Sangmi Lee Oct,25,2000 Florida State University.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Advanced Computing Facility Introduction
How to Get Started With Python
Virtual Network Computing
Progress Apama Fundamentals
Architecture Review 10/11/2004
TensorFlow The Deep Learning Library You Should Be Using.
VisIt Project Overview
IBM Predictive Analytics Virtual Users’ Group Meeting March 30, 2016
TensorFlow– A system for large-scale machine learning
Deep Learning Software: TensorFlow
Simulation Production System
Open OnDemand: Open Source General Purpose HPC Portal
Administration Tools Cluster.exe is a command line tool that you can use for scripting or remote administration through slow WAN links. Cluadmin.exe is.
z/Ware 2.0 Technical Overview
CSE 333 – Section 4 HW3, MVC, GTK+.
PYTHON: AN INTRODUCTION
MVC and other n-tier Architectures
DATA MINING Python.
Dnn: A hands on Challenge session 2:
Bomgar Remote support software
Week 1 Gates Introduction to Information Technology cosc 010 Week 1 Gates
File Transfer Olivia Irving and Cameron Foss
Prepared by Kimberly Sayre and Jinbo Bi
Telnet/SSH Connecting to Hosts Internet Technology.
Network Visualization
Brief Intro to Python for Statistics
Getting Started: Amazon AWS Account Creation
EMSE 6574 – Programming for Analytics: Python 101 – Python Enviornments Joel Klein.
Segurança e auditoria de sistemas
Radoslaw Jedynak, PhD Poland, Technical University of Radom
How to Improve Releasing Efficiency via i18N/L10n Test Automation.
Remote Computing Services Cloud connection Distributed system
Enol Fernandez & Giuseppe La Rocca EGI Foundation
Installations for Course
Installations for Course
DIBBs Brown Dog Tutorial Setup
Presentation transcript:

Deep Neural Networks: A Hands on Challenge Course goals Meeting times and structure Slack: https://dnn-challenge.slack.com Data handling Infrastructure Python, Pandas, Tensorflow, Compute cluster TAs: Hadar Gorodissky: gorohadar@gmail.com Niv Haim: nivhaa@gmail.com

Neural networks Network computation: Objective function (L2): X1 H1,1 H2,1 X2 X3 H1,2 H2,2 Y X4 H1,3 H2,3 X5 Network computation: Objective function (L2): Node computation (g: activation function):

Course topics Data statistics Data preprocessing & feature generation Neural network optimization Hyper parameters (activation functions, dropout, learning rate, etc.) Optimization methods Data augmentation Network architecture Batch normalization Layer normalization Stochastic deep networks Regularization Deep & wide networks Auto encoders Ensembles

The challenge Predict future change in glucose levels using Personal features Previous glucose data Events (meals, sleep, exercise)

DataFrames ConnectionToUser.df GlucoseValues.df Personal parameters BloodTests.df BacterialSpecies.df Measurements.df Events TestFoods.df Exercises.df Meals.df Sleep.df

ConnectionToUser

Glucose Values

Glucose Values

Blood Tests

Measurements

Bacterial Species

TestFoods

Exercises

Sleep

Meals

Features Personal parameters Lags Dimensionality reduction (auto encoding, PCA) Lags Avg / Min / Max / Sum over features

Technical Review Python (Anaconda, PyCharm) Jupyter Pandas Tensorflow

Python We’ll work with Python 3 Download&Install Anaconda “leading open data science platform powered by Python” (c) Includes all major scientific packages, jupyter, ipython, pandas, etc. (download page) IDE: I recommend PyCharm

Jupyter Pandas walkthrough “The Jupyter Notebook is a web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text.” (c) “pandas library - providing high-performance, easy-to-use data structures and data analysis tools for the Python” (c) Short Walkthrough Gazillions of tutorials online: 1, 2, 3

Jupyter from your folder Start Jupyter from your folder: Make a shortcut file in your folder (or copy jupyter-notebook shortcut from start menu) Change Target to: jupyter notebook Change Start-in to current folder (ref here)

Tensorflow Represents computations as graphs Nodes = operations Sum, multiplication, relu, etc. Executes graphs - Sessions translates the graph definition into executable operations Interactive session Represents data as tensors Variables maintain state across executions of the graph e.g. Weights Feeds Placeholder - input

Given Code Vanilla net Predictor test script (test+val 1 and test+val 2)

Weizmann Cluster – General Flow Connect to a workstation - Putty get a GUI using VNC Connect to a cluster machine via the workstation Do some work ☺ For many more details, please visit: http://math96-lx/

Step 1 – workstation Lunch Putty - a windows SSH client (standart port : 22) Host: math05-lx or 13,14,15 In terminal window enter user name and password

Step 2 : VNC server Remote connection to a desktop Install UltraVNC or TurboVNC on windows machine Start in the terminal vncserver >vncserver >vncserver –geometry <1280>x<1024> Get a port number

Step 2 : VNC server Run VNC from windows machine Plug in : math03-lx:number Closing a VNC viewer will not end your session! >vncserver –kill :N (terminal)

Step 3 – connect to cluster Open a terminal The machines on the cluster are split into different queues request a cluster machine from one of the queues >ssh -X mcluster03 >qlogin -q all2.q

Step 4 – Do some work Set environment setenv LD_LIBRARY_PATH /usr/local/cuda/lib64:/usr/local/lib:/usr/local/lib64:/usr/local/cudnn-v5/lib64 setenv PYTHONPATH “/usr/wisdom/python3_ext:/usr/wisdom/python3" setenv PATH /usr/wisdom/python3/bin:$PATH setenv CUDA_HOME /usr/local/cuda/lib64 setenv DISPLAY math<NUMBER>-lx:<PORT> unsetenv http_proxy ** We changes the bold line at March 6, 2017 – make sure to use this line instead of the old one. .

Step 4 – Do some work Start Jupyter >/usr/bin/firefox & >jupyter notebook make sure firefox is installed (if not - ask Amir Gonen) useful - copy commands from pc - vncconfig

Slack Use it Help each other

Home work Tutorials : tensorflow, pandas,.. Connect to cluster : open jupyter, import tensorflow, run the vanilla net Convince yourselves that the data is correct - play with it