SlideShare a Scribd company logo
Introduction to Python
& TensorFlow
DSW Camp & Jam
December 3rd, 2016
Bayu Aldi Yansyah
Data Scientist @ Sale Stock
https://careers.salestock.io
- Understand the basic of Python
- Able to write and execute Python program
- Understand what is TensorFlow and how to use it
Our Goals
Overview
- You understand the basic of programming (What is variable, data types
etc)
I assume …
Overview
1. Introduction to Python
- Why learn Python?
- Python basic
- Python data types
- Comparison operators
- Control Flow
- Function
- Class
- Module
Outline
Overview
2. Introduction to Tensorflow
- What is TensorFlow?
- Programming model
- Use case: Forward propagation of hidden layers
in Feed-forward Neural Networks model
Outline
Overview
1.
PYTHON
INTRODUCTION
- Python is:
1. A programming language created by Guido Van Rossum in
1991 and emphasizes productivity and code readability.
2. A general purpose language that is easy and intuitive.
3. A multi purpose language, it brings people with different
backgrounds together.
- In Python, everything is an Object.
1.1.
WHY LEARN PYTHON?
MOTIVATION
- Easy to learn and intuitive.
- One of the most popular programming languages on Github.
- One of the best languages for data science. The important factor is the
Python community.
- Python is used by a bunch of cool companies like Google, Dropbox etc.
- It works very well with C and C++. For example: Sale Stock’s
fastText.py is written in Python and C++, this python package is
used/starred by folks from Baidu, Comcast, Facebook, Alibaba, and
Github. https://github.com/salestock/fastText.py
2.
BASIC
WRITE & EXECUTE “HELLO WORLD” PROGRAM
print “Hello word”
hello.py
% python hello.py
Hello world
Terminal
2.1.
BASIC
SYNTAX: INDENTATION
is_new = True
if is_new:
print "Is new!”
else:
print "Uh, it's old stuff"
indentation.py
% python indentation.py
Is new!
Terminal
Run:
2.1.
BASIC
SYNTAX: COMMENT
# Commented line is not executed
# print "Hello"
print "Hai"
"""
also this
print "hai hai"
"""
comment.py
% python comment.py
Hai
Terminal
Run:
2.2.
BASIC
READ-EVAL-PRINT LOOP
% python
Python 2.7.10 (default, Jul 30 2016, 18:31:42) [GCC 4.2.1 Compatible
Apple LLVM 8.0.0 (clang-800.0.34)] on darwinType "help", "copyright",
"credits" or "license" for more information.
>>> print "hello”
hello
>>> 2 + 5
7
>>> "hello".upper()
'HELLO’
>>> 3 in [1, 2, 3]
True
>>>
Terminal
3.
DATA TYPES
INTRODUCTION
We will cover 6 data types in Python and their common
operations:
1. Numeric
2. Sequences
3. Sets
4. Dictionaries
5. Boolean
3.1.
NUMERIC
INTRODUCTION
- There are 4 basic numeric types: Integer, Float, Long Integer and
Complex
- Common operations: Addition, Difference, Product, Quotient and
modulo
- Type conversion is required for some operation
3.1.
NUMERIC
4 TYPES
# Integer
>>> 10
10
# Float
>>> 0.5
0.5
# Complex
>>> 10 + 5J
(10+5j)
# Long integer
>>> 10L
10L
PYTHON REPL
3.1.
NUMERIC
OPERATORS
# Addition
>>> 10 + 6
16
# Difference
>>> 100 – 90
10
# Product
>>> 0.5 * 60
30.0
# Quotient
>>> 22.0/7.0
3.142857142857143
PYTHON REPL
3.1.
NUMERIC
OPERATORS (CONTINUED)
# Modulo
>>> 4 % 3
1
PYTHON REPL
Type conversion:
- int(x) : x to integer
- float(x): x to float
- long(x) : x to long integer
3.1.
NUMERIC
TYPE CONVERSIONS
# Without conversion
>>> 12/100
0
# Convert to float first
>>> float(12)/100
0.12 PYTHON REPL
3.2.
SEQUENCES
INTRODUCTION
- To store multiple values in an organized and efficient fashion.
- There are three kinds of sequences in Python:
1. Strings
2. Lists
3. Tuples
3.2.1.
SEQUENCES
STRINGS: INTRO
- Define new string by simply by enclosing characters in single or double
quotes.
- Slice: A[0] = ‘H’
- Range Slice: A[1:3] = ‘el’
A[a:b] is all of A[i] where a <= i < b
- Common operations are concatenation, repetition, membership
checking and formatting.
A H e l l o
index 0 1 2 3 4
3.2.1.
SEQUENCES
STRINGS: DEFINE A NEW STRING
# Single line
company_name = 'Sale Stock’
# Multiline
description = ''’
Sale Stock Pte, Ltd is a fast-growing multinational
tech start up company that is currently specialising
in mobile-commerce.
''’
mission = ('Giving access to affordable,'
' high-quality clothes to everyone’
‘ who needs it.')
string.py
3.2.1.
SEQUENCES
STRINGS: OPERATORS
# Concatenation
>>> 'Hello ' + 'There'
'Hello There’
# Repetition
>>> 'hello' * 3
'hellohellohello’
# Slice
>>> 'hello'[0]
'h’
# Range Slice
>>> 'hello'[0:2]
'he’
PYTHON REPL
# Membership checking
>>> 'h' in 'hello’
True
>>> ‘h' not in 'hello’
False
# Formatting
>>> 'Hello, %s' % 'DSW!’
'Hello, DSW!’
>>> 'My number is %d' % 11
’My number is 11’
>>> 'pi = %f' % (22.0/7.0)
‘pi = 3.142857'
3.2.1.
SEQUENCES
STRINGS: OPERATORS (CONTINUED)
PYTHON REPL
3.2.2.
SEQUENCES
LISTS: INTRO
- Each element of a list is assigned an index number. The index starts
from zero.
- Slice: B[0] = 12
- Range Slice: B[1:3] = [3,4]
B[a:b] is all of B[i] where a <= i < b
B 12 3 4 5 15
index 0 1 2 3 4
3.2.2.
SEQUENCES
LISTS: DEFINE NEW LIST
# Define a list of number
>>> numbers = [1, 4, 12, 1]
>>> numbers
[1, 4, 12, 1]
# Define a list of string
>>> words = ['hey', 'there', '!']
>>> words
['hey', 'there', '!’]
PYTHON REPL
3.2.2.
SEQUENCES
LISTS: SLICING
# Slicing
>>> words[0]
'hey’
>>> words[0:]
['hey', 'there', '!']
>>> words[2:]
['!']
>>> numbers[3]
1
>>> numbers[:3]
[1, 4, 12]
PYTHON REPL
3.2.2.
SEQUENCES
LISTS: OPERATORS
# Concatenation
>>> [1, 2, 3] + [4, 5, 6]
[1, 2, 3, 4, 5, 6]
# Membership checking
>>> 1 in [1, 2, 3]
True
>>> 1 not in [1, 2, 3]
False
# Repetition
>>> ['Repeat'] * 3
['Repeat', 'Repeat', 'Repeat’]
PYTHON REPL
3.2.2.
SEQUENCES
LISTS: INSERT, DELETE & UPDATE
>>> scores = [0.1, 0.4, 0.5]
# Insert new element
>>> scores.append(0.2)
>>> scores
[0.1, 0.4, 0.5, 0.2]
# Delete element
>>> scores.pop(0)
0.1
>>> scores
[0.4, 0.5, 0.2]
PYTHON REPL
3.2.2.
SEQUENCES
LISTS: INSERT, DELETE & UPDATE (CONTINUED)
>>> scores
[0.4, 0.5, 0.2]
# Update element
>>> scores[0] = 0.6
>>> scores
[0.6, 0.5, 0.2]
PYTHON REPL
3.2.3.
SEQUENCES
TUPLES: INTRO
- Tuples are similar to lists, except they are immutable.
- You can’t add, change, or remove elements of a tuple
3.2.3.
SEQUENCES
TUPLES: DEFINE NEW TUPLE
# Define a tuple
>>> tuple1 = (1, 2, 3)
>>> tuple1
(1, 2, 3)
>>> tuple2 = 1, 2, 3
>>> tuple2
(1, 2, 3)
PYTHON REPL
3.2.3.
SEQUENCES
TUPLES: SLICING
# Slicing
>>> tuple1[0]
1
>>> tuple1[1]
2
>>> tuple1[0:2]
(1, 2)
PYTHON REPL
3.2.3.
SEQUENCES
TUPLES: OPERATORS
# Concatenation
>>> (1, 2, 3) + (4, 5, 6)
(1, 2, 3, 4, 5, 6)
# Membership checking
>>> 1 in (1, 2, 3)
True
>>> 1 not in (1, 2, 3)
False
# Repetition
>>> ('Re', 'peat') * 3
('Re', 'peat', 'Re', 'peat', 'Re', 'peat')
PYTHON REPL
3.3.
SETS
INTRODUCTION
- Just like lists except that Sets are unordered and the value is unique.
- We can’t do slice and range slice operation on Sets.
- Sets performs faster for element insertion, deletion, and membership
checking than lists and tuples.
- Sets support mathematical set operations such as testing for subsets
and finding the union or intersection of two sets.
3.3.
SETS
DEFINE NEW SET
# Define a set of number
>>> numbers = set([1, 4, 12, 1])
>>> numbers
set([1, 4, 12])
# Define a set of string
>>> words = set(['hey', 'there', '!'])
>>> words
set(['hey', 'there', '!’])
PYTHON REPL
3.3.
SETS
OPERATORS
# Define set a and b
>>> a = set([1, 2, 3])
>>> b = set([1, 4, 5])
# Perform union
>>> a.union(b)
set([1, 2, 3, 4, 5])
# Perform Intersection
>>> a.intersection(b)
set([1])
# Perform Difference
>>> a.difference(b)
set([2, 3])
PYTHON REPL
3.3.
SETS
INSERT & DELETE
>>> scores = set([0.1, 0.4, 0.5])
# Insert new element
>>> scores.add(0.2)
>>> scores
set([0.5, 0.2, 0.4, 0.1])
# Delete element
>>> scores.remove(0.5)
>>> scores
set([0.2, 0.4, 0.1])
PYTHON REPL
3.4.
DICTIONARIES
INTRODUCTION
- Dictionaries is a associative array. Collection of (key, value) pairs where
the key is unique and only map to one value.
- We can add, change, and remove value from a dictionary by their key.
3.4.
DICTIONARIES
DEFINE NEW DICTIONARY
# Define an empty dictionary
>>> empty_dict = {}
# Define a dictionary
>>> data = {‘name’: ‘DSW’, ‘type’: ‘camp’}
>>> data
{'type': 'camp', 'name': 'DSW'}
# Access value by key
>>> data['name']
'DSW'
PYTHON REPL
3.4.
DICTIONARIES
INSERT, UPDATE & DELETE
>>> d = {'name': 'D', 'order': 4}
# Insert new key-value pairs
>>> d['last_order'] = 6
>>> d
{'last_order': 6, 'name': 'D', 'order': 4}
# Update the value
>>> d['name'] = 'D D’
>>> d
{'last_order': 6, 'name': 'D D', 'order': 4}
PYTHON REPL
3.4.
DICTIONARIES
INSERT, UPDATE & DELETE (CONTINUED)
# Delete the key and value
>>> del d['order']
>>> d
{'last_order': 6, 'name': 'D D'}
PYTHON REPL
3.5.
BOOLEAN
INTRODUCTION
- Represent the truth value.
- Values that considered as False: None, False, zero of any numeric type,
any empty sequences and any empty dictionaries.
4.
COMPARISON OPERATORS
INTRODUCTION
- Operator that compare two or more objects.
- The result of this operator is boolean value.
- There are 3 basic comparison operators:
- Logical Comparison
- Identity Comparison
- Arithmetic Comparison
.
4.1.
COMPARISON OPERATORS
LOGICAL
# Define the boolean value
>>> a = True; b = False
# Logical and
>>> a and a
True
>>> a and b
False
# Logical or
>>> a or b
True
>>> b or b
False
PYTHON REPL
4.1.
COMPARISON OPERATORS
LOGICAL (CONTINUED)
# Compound
>>> ((a and a) or b)
True
>>> ((a and b) and a)
False
# Negation
>>> not a
False
PYTHON REPL
4.2.
COMPARISON OPERATORS
IDENTITY
>>> a = 1
# Identity
>>> a is 1
True
# Non-Identity
>>> a is ‘1’
False
PYTHON REPL
4.3.
COMPARISON OPERATORS
ARITHMETIC
>>> 1 < 2
True
>>> 1 >= 5
False
>>> 1 == 1
True
>>> 1 != 2
True
PYTHON REPL
5.
CONTROL FLOW
INTRODUCTION
- Just like any other programming language, Python also have a basic
control flow such as if-else, for loop and while loop.
- Unlike any other programming language, we can create an easy-to-
understand control flow in python without hasle. Thanks to the nice
syntax.
- We can use break to stop the for-loop or while-loop.
5.1.
CONTROL FLOW
IF-ELSE
is_exists = True
if is_exists:
print 'Exists: true’
else:
print 'Exists: false'
if_else.py
5.1.
CONTROL FLOW
IF-ELSE (CONTINUED)
% python if_else.py
Exists: true
TERMINAL
5.2.
CONTROL FLOW
FOR-LOOP
# Basic
for i in xrange(2):
print 'index:', I
# Iterate on sequences
scores = [0.2, 0.5]
for score in scores:
print 'score:', score
for_loop.py
5.2.
CONTROL FLOW
FOR-LOOP (CONTINUED)
# Iterate on dictionaries
data = {'name': 'DSW', 'type': 'camp'}
for key in data:
value = data[key]
print key, ':', value
for_loop.py
5.2.
CONTROL FLOW
FOR-LOOP (CONTINUED)
% python for_loop.py
index: 0
index: 1
score: 0.2
score: 0.5
type : camp
name : DSW
TERMINAL
5.3.
CONTROL FLOW
WHILE-LOOP
- Just like for-loop that do iteration, but while-loop is accept boolean value
as their condition instead of iterator.
- If condition is false, the loop is stopped
5.3.
CONTROL FLOW
WHILE-LOOP (CONTINUED)
# Stop the loop if i>=10
i = 0
while i < 10:
print 'i:', i
i += 1
while_loop.py
5.3.
CONTROL FLOW
WHILE-LOOP (CONTINUED)
% python while_loop.py
i: 0
i: 1
i: 2
i: 3
i: 4
i: 5
i: 6
i: 7
i: 8
i: 9
TERMINAL
6.
FUNCTION
INTRODUCTION
- Function in Python is defined using the following syntax:
def function_name(arg1, optional_arg=default_value):
# do some operation here
# Or return some value
6.
FUNCTION
EXAMPLE
# Define a sum function
def sum(a, b):
return a + b
# Use the function
print sum(12, 12)
sum.py
6.
FUNCTION
EXAMPLE
# Define a sum function
def sum(a, b):
return a + b
# Use the function
print sum(12, 12)
sum.py
6.
FUNCTION
EXAMPLE OUTPUT
% python sum.py
24
TERMINAL
7.
CLASS
INTRODUCTION
- We can use Class to encapsulate object and their logic.
- Class can be defined using the following syntax:
class ClassName:
def __init__(self, arg1, arg2):
# Set property
self.property_name= arg1
# Define a method or function that read or
# update the property
def method_name(self, arg…):
# Define here
7.
CLASS
EXAMPLE
class Book:
def __init__(self, title):
self.name = title
self.is_borrowed = False
def borrow(self):
self.is_borrowed = True
book.py
7.
CLASS
EXAMPLE (CONTINUED)
if __name__ == '__main__':
b = Book('Hunger games')
print 'Book title:', b.title
print 'Book status: borrowed=’, b.is_borrowed
# We change the state of the object
print 'Borrow the book.'
b.borrow()
print 'Book title:', b.title
print 'Book status: borrowed=', b.is_borrowed
book.py
7.
CLASS
EXAMPLE OUTPUT
% python book.py
Book title: Hunger games
Book status: borrowed= False
Borrow the book.
Book title: Hunger games
Book status: borrowed= True
TERMINAL
8.
MODULE
INTRODUCTION
- Python module is just a file.
- We can use module to group all related variable, constant, function and
class in one file.
- This allow us to do a modular programming.
- Recall our book.py on previous section, we will use that as an example.
8.
MODULE
EXAMPLE
# Import Book class from module book.py
from book import Book
if __name__ == '__main__':
books = []
for i in xrange(10):
title = 'Book #%s' % i
book = Book(title)
books.append(book)
# Show list of available books
for b in books:
print 'Book title:', b.title
store.py
8.
MODULE
EXAMPLE OUTPUT
% python store.py
Book title: Book #0
Book title: Book #1
Book title: Book #2
Book title: Book #3
Book title: Book #4
Book title: Book #5
Book title: Book #6
Book title: Book #7
Book title: Book #8
Book title: Book #9
store.py
Introduction
9.
TENSORFLOW
INTRODUCTION
- TensorFlow is an interface for expressing machine learning algorithms,
and an implementation for executing such algorithms.
- TensorFlow is available as Python package.
- Allows team of data scientist to express the ideas in shared
understanding concept.
10.
TENSORFLOW
PROGRAMMING MODEL
- TensorFlow express a numeric computation as a graph.
- Graph nodes are operations which have any number of inputs and
outputs.
- Graph edges are tensors which flow between nodes.
10.
TENSORFLOW
PROGRAMMING MODEL
- Suppose we have a Neural networks with the following hidden layer:
- We can represent this as a the computation graph:
𝑓𝜃
𝑙
𝑖
= tanh(𝑊 𝑙𝑇
𝑥𝑖 + 𝑏 𝑙
)
𝑊 𝑙𝑇
𝑥𝑖
Matrix
Multiplication
Addition
tanh
𝑏 𝑙
11.
TENSORFLOW
IMPLEMENTATION IN TENSORFLOW
import numpy as np
import tensorflow as tf
# Initialize required variables
x_i = np.random.random(size=(32, 256))
# Create the computation graph
b = tf.Variable(tf.zeros((100,)))
W = tf.Variable(tf.random_uniform(shape=(256, 100), minval=-1,
maxval=1))
x = tf.placeholder(tf.float32, (None, 256))
h_i = tf.tanh(tf.matmul(x, W) + b)
forward_prop.py
11.
TENSORFLOW
IMPLEMENTATION IN TENSORFLOW
# Run the computation graph within new session
sess = tf.Session()
sess.run(tf.global_variables_initializer())
# Fetch h_i and feed x_i
sess.run(h_i, {x: x_i})
forward_prop.py
bay@artificialintelligence.id
Notes available here: https://github.com/pyk/talks

More Related Content

PDF
Learn 90% of Python in 90 Minutes
PDF
Matlab and Python: Basic Operations
PDF
Python and sysadmin I
PPTX
Python programing
ODP
Programming Under Linux In Python
PPTX
Learn python in 20 minutes
PPTX
Basics of Python programming (part 2)
PDF
Python于Web 2.0网站的应用 - QCon Beijing 2010
Learn 90% of Python in 90 Minutes
Matlab and Python: Basic Operations
Python and sysadmin I
Python programing
Programming Under Linux In Python
Learn python in 20 minutes
Basics of Python programming (part 2)
Python于Web 2.0网站的应用 - QCon Beijing 2010

What's hot (20)

PDF
Python fundamentals - basic | WeiYuan
PDF
Functions in python
ODP
Python quickstart for programmers: Python Kung Fu
PPTX
Learn python - for beginners - part-2
PDF
Advanced Python, Part 2
PPTX
Python 101++: Let's Get Down to Business!
PPTX
Introduction to the basics of Python programming (part 3)
PDF
PPTX
PDF
Introduction to advanced python
ODP
An Intro to Python in 30 minutes
PDF
Python for Linux System Administration
PDF
Introduction to python
PDF
Begin with Python
PDF
Python Tutorial
PPT
python.ppt
PPTX
Python Workshop - Learn Python the Hard Way
PPTX
FUNCTIONS IN PYTHON. CBSE +2 COMPUTER SCIENCE
PDF
Python Functions (PyAtl Beginners Night)
PPTX
Python language data types
Python fundamentals - basic | WeiYuan
Functions in python
Python quickstart for programmers: Python Kung Fu
Learn python - for beginners - part-2
Advanced Python, Part 2
Python 101++: Let's Get Down to Business!
Introduction to the basics of Python programming (part 3)
Introduction to advanced python
An Intro to Python in 30 minutes
Python for Linux System Administration
Introduction to python
Begin with Python
Python Tutorial
python.ppt
Python Workshop - Learn Python the Hard Way
FUNCTIONS IN PYTHON. CBSE +2 COMPUTER SCIENCE
Python Functions (PyAtl Beginners Night)
Python language data types
Ad

Viewers also liked (20)

PPTX
Intent Classifier with Facebook fastText
PDF
Clustering Semantically Similar Words
PPTX
Pertemuan 1 - AI Indonesia Academy Surabaya Batch #1
PDF
TensorFlow White Paperを読む
PDF
JFokus 2011 - Google Cloud for Java Developers: Platform and Monetization
PDF
Adventures in Azure Machine Learning from NE Bytes
PDF
Beautiful handwritten letters
PDF
Azure Machine Learning using R
PDF
AI&BigData Lab. Маргарита Остапчук "Алгоритмы в Azure Machine Learning и где ...
PPTX
Integrating Azure Machine Learning and Predictive Analytics with SharePoint O...
PDF
Using Windows Azure Machine Learning as a service with R #rstats
PPTX
Using Azure Machine Learning to Detect Patterns in Data from Devices
PDF
AINOW活用事例(という名のゴマすり)
PDF
2017-01-08-scaling tribalknowledge
PDF
Textrank algorithm
PPTX
Kerajinan keras
PDF
Tokyo Azure Meetup #6 - Azure Machine Learning with Microsoft Dynamics
PDF
Drawing word2vec
PDF
Gentlest Introduction to Tensorflow - Part 2
Intent Classifier with Facebook fastText
Clustering Semantically Similar Words
Pertemuan 1 - AI Indonesia Academy Surabaya Batch #1
TensorFlow White Paperを読む
JFokus 2011 - Google Cloud for Java Developers: Platform and Monetization
Adventures in Azure Machine Learning from NE Bytes
Beautiful handwritten letters
Azure Machine Learning using R
AI&BigData Lab. Маргарита Остапчук "Алгоритмы в Azure Machine Learning и где ...
Integrating Azure Machine Learning and Predictive Analytics with SharePoint O...
Using Windows Azure Machine Learning as a service with R #rstats
Using Azure Machine Learning to Detect Patterns in Data from Devices
AINOW活用事例(という名のゴマすり)
2017-01-08-scaling tribalknowledge
Textrank algorithm
Kerajinan keras
Tokyo Azure Meetup #6 - Azure Machine Learning with Microsoft Dynamics
Drawing word2vec
Gentlest Introduction to Tensorflow - Part 2
Ad

Similar to Introduction to Python and TensorFlow (20)

PDF
python.pdf
PPT
Python basics to advanced in on ppt is available
PDF
Python Part 1
PPTX
Python operator, data types.pptx
PDF
Python3 cheatsheet
PDF
Python_ 3 CheatSheet
PDF
Python Cheat Sheet
PPTX
python_module_........................................
PDF
Introduction to python cheat sheet for all
PPT
Python course in_mumbai
PPT
Python course in_mumbai
PPTX
Python Session - 3
PDF
Data Handling_XI- All details for cbse board grade 11
PDF
PDF
Mementopython3 english
PDF
Mementopython3 english
PPT
ComandosDePython_ComponentesBasicosImpl.ppt
PPTX
Intro Python Data Structures.pptx Intro Python Data Structures.pptx
PPTX
Python Datatypes by SujithKumar
PDF
Python 101 1
python.pdf
Python basics to advanced in on ppt is available
Python Part 1
Python operator, data types.pptx
Python3 cheatsheet
Python_ 3 CheatSheet
Python Cheat Sheet
python_module_........................................
Introduction to python cheat sheet for all
Python course in_mumbai
Python course in_mumbai
Python Session - 3
Data Handling_XI- All details for cbse board grade 11
Mementopython3 english
Mementopython3 english
ComandosDePython_ComponentesBasicosImpl.ppt
Intro Python Data Structures.pptx Intro Python Data Structures.pptx
Python Datatypes by SujithKumar
Python 101 1

More from Bayu Aldi Yansyah (6)

PDF
Panduan Memulai Karir di Data Science (Binus University)
PDF
Penerapan Machine Learning di Industri
PDF
PyTorch for Deep Learning Practitioners
PDF
Asynchronous Python at Kumparan
PDF
Panduan untuk Memulai Karir di Data Science
PPTX
Pertemuan 2 & 3: A.I. Indonesia Academy Surabaya Batch #1
Panduan Memulai Karir di Data Science (Binus University)
Penerapan Machine Learning di Industri
PyTorch for Deep Learning Practitioners
Asynchronous Python at Kumparan
Panduan untuk Memulai Karir di Data Science
Pertemuan 2 & 3: A.I. Indonesia Academy Surabaya Batch #1

Recently uploaded (20)

PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
medical staffing services at VALiNTRY
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Digital Strategies for Manufacturing Companies
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Transform Your Business with a Software ERP System
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PTS Company Brochure 2025 (1).pdf.......
medical staffing services at VALiNTRY
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
VVF-Customer-Presentation2025-Ver1.9.pptx
Operating system designcfffgfgggggggvggggggggg
Digital Strategies for Manufacturing Companies
Navsoft: AI-Powered Business Solutions & Custom Software Development
Transform Your Business with a Software ERP System
CHAPTER 2 - PM Management and IT Context
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Design an Analysis of Algorithms II-SECS-1021-03
wealthsignaloriginal-com-DS-text-... (1).pdf
Understanding Forklifts - TECH EHS Solution
Odoo POS Development Services by CandidRoot Solutions
Softaken Excel to vCard Converter Software.pdf
How to Migrate SBCGlobal Email to Yahoo Easily

Introduction to Python and TensorFlow

  • 1. Introduction to Python & TensorFlow DSW Camp & Jam December 3rd, 2016 Bayu Aldi Yansyah Data Scientist @ Sale Stock https://careers.salestock.io
  • 2. - Understand the basic of Python - Able to write and execute Python program - Understand what is TensorFlow and how to use it Our Goals Overview
  • 3. - You understand the basic of programming (What is variable, data types etc) I assume … Overview
  • 4. 1. Introduction to Python - Why learn Python? - Python basic - Python data types - Comparison operators - Control Flow - Function - Class - Module Outline Overview
  • 5. 2. Introduction to Tensorflow - What is TensorFlow? - Programming model - Use case: Forward propagation of hidden layers in Feed-forward Neural Networks model Outline Overview
  • 6. 1. PYTHON INTRODUCTION - Python is: 1. A programming language created by Guido Van Rossum in 1991 and emphasizes productivity and code readability. 2. A general purpose language that is easy and intuitive. 3. A multi purpose language, it brings people with different backgrounds together. - In Python, everything is an Object.
  • 7. 1.1. WHY LEARN PYTHON? MOTIVATION - Easy to learn and intuitive. - One of the most popular programming languages on Github. - One of the best languages for data science. The important factor is the Python community. - Python is used by a bunch of cool companies like Google, Dropbox etc. - It works very well with C and C++. For example: Sale Stock’s fastText.py is written in Python and C++, this python package is used/starred by folks from Baidu, Comcast, Facebook, Alibaba, and Github. https://github.com/salestock/fastText.py
  • 8. 2. BASIC WRITE & EXECUTE “HELLO WORLD” PROGRAM print “Hello word” hello.py % python hello.py Hello world Terminal
  • 9. 2.1. BASIC SYNTAX: INDENTATION is_new = True if is_new: print "Is new!” else: print "Uh, it's old stuff" indentation.py % python indentation.py Is new! Terminal
  • 10. Run: 2.1. BASIC SYNTAX: COMMENT # Commented line is not executed # print "Hello" print "Hai" """ also this print "hai hai" """ comment.py % python comment.py Hai Terminal
  • 11. Run: 2.2. BASIC READ-EVAL-PRINT LOOP % python Python 2.7.10 (default, Jul 30 2016, 18:31:42) [GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwinType "help", "copyright", "credits" or "license" for more information. >>> print "hello” hello >>> 2 + 5 7 >>> "hello".upper() 'HELLO’ >>> 3 in [1, 2, 3] True >>> Terminal
  • 12. 3. DATA TYPES INTRODUCTION We will cover 6 data types in Python and their common operations: 1. Numeric 2. Sequences 3. Sets 4. Dictionaries 5. Boolean
  • 13. 3.1. NUMERIC INTRODUCTION - There are 4 basic numeric types: Integer, Float, Long Integer and Complex - Common operations: Addition, Difference, Product, Quotient and modulo - Type conversion is required for some operation
  • 14. 3.1. NUMERIC 4 TYPES # Integer >>> 10 10 # Float >>> 0.5 0.5 # Complex >>> 10 + 5J (10+5j) # Long integer >>> 10L 10L PYTHON REPL
  • 15. 3.1. NUMERIC OPERATORS # Addition >>> 10 + 6 16 # Difference >>> 100 – 90 10 # Product >>> 0.5 * 60 30.0 # Quotient >>> 22.0/7.0 3.142857142857143 PYTHON REPL
  • 17. Type conversion: - int(x) : x to integer - float(x): x to float - long(x) : x to long integer 3.1. NUMERIC TYPE CONVERSIONS # Without conversion >>> 12/100 0 # Convert to float first >>> float(12)/100 0.12 PYTHON REPL
  • 18. 3.2. SEQUENCES INTRODUCTION - To store multiple values in an organized and efficient fashion. - There are three kinds of sequences in Python: 1. Strings 2. Lists 3. Tuples
  • 19. 3.2.1. SEQUENCES STRINGS: INTRO - Define new string by simply by enclosing characters in single or double quotes. - Slice: A[0] = ‘H’ - Range Slice: A[1:3] = ‘el’ A[a:b] is all of A[i] where a <= i < b - Common operations are concatenation, repetition, membership checking and formatting. A H e l l o index 0 1 2 3 4
  • 20. 3.2.1. SEQUENCES STRINGS: DEFINE A NEW STRING # Single line company_name = 'Sale Stock’ # Multiline description = ''’ Sale Stock Pte, Ltd is a fast-growing multinational tech start up company that is currently specialising in mobile-commerce. ''’ mission = ('Giving access to affordable,' ' high-quality clothes to everyone’ ‘ who needs it.') string.py
  • 21. 3.2.1. SEQUENCES STRINGS: OPERATORS # Concatenation >>> 'Hello ' + 'There' 'Hello There’ # Repetition >>> 'hello' * 3 'hellohellohello’ # Slice >>> 'hello'[0] 'h’ # Range Slice >>> 'hello'[0:2] 'he’ PYTHON REPL
  • 22. # Membership checking >>> 'h' in 'hello’ True >>> ‘h' not in 'hello’ False # Formatting >>> 'Hello, %s' % 'DSW!’ 'Hello, DSW!’ >>> 'My number is %d' % 11 ’My number is 11’ >>> 'pi = %f' % (22.0/7.0) ‘pi = 3.142857' 3.2.1. SEQUENCES STRINGS: OPERATORS (CONTINUED) PYTHON REPL
  • 23. 3.2.2. SEQUENCES LISTS: INTRO - Each element of a list is assigned an index number. The index starts from zero. - Slice: B[0] = 12 - Range Slice: B[1:3] = [3,4] B[a:b] is all of B[i] where a <= i < b B 12 3 4 5 15 index 0 1 2 3 4
  • 24. 3.2.2. SEQUENCES LISTS: DEFINE NEW LIST # Define a list of number >>> numbers = [1, 4, 12, 1] >>> numbers [1, 4, 12, 1] # Define a list of string >>> words = ['hey', 'there', '!'] >>> words ['hey', 'there', '!’] PYTHON REPL
  • 25. 3.2.2. SEQUENCES LISTS: SLICING # Slicing >>> words[0] 'hey’ >>> words[0:] ['hey', 'there', '!'] >>> words[2:] ['!'] >>> numbers[3] 1 >>> numbers[:3] [1, 4, 12] PYTHON REPL
  • 26. 3.2.2. SEQUENCES LISTS: OPERATORS # Concatenation >>> [1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] # Membership checking >>> 1 in [1, 2, 3] True >>> 1 not in [1, 2, 3] False # Repetition >>> ['Repeat'] * 3 ['Repeat', 'Repeat', 'Repeat’] PYTHON REPL
  • 27. 3.2.2. SEQUENCES LISTS: INSERT, DELETE & UPDATE >>> scores = [0.1, 0.4, 0.5] # Insert new element >>> scores.append(0.2) >>> scores [0.1, 0.4, 0.5, 0.2] # Delete element >>> scores.pop(0) 0.1 >>> scores [0.4, 0.5, 0.2] PYTHON REPL
  • 28. 3.2.2. SEQUENCES LISTS: INSERT, DELETE & UPDATE (CONTINUED) >>> scores [0.4, 0.5, 0.2] # Update element >>> scores[0] = 0.6 >>> scores [0.6, 0.5, 0.2] PYTHON REPL
  • 29. 3.2.3. SEQUENCES TUPLES: INTRO - Tuples are similar to lists, except they are immutable. - You can’t add, change, or remove elements of a tuple
  • 30. 3.2.3. SEQUENCES TUPLES: DEFINE NEW TUPLE # Define a tuple >>> tuple1 = (1, 2, 3) >>> tuple1 (1, 2, 3) >>> tuple2 = 1, 2, 3 >>> tuple2 (1, 2, 3) PYTHON REPL
  • 31. 3.2.3. SEQUENCES TUPLES: SLICING # Slicing >>> tuple1[0] 1 >>> tuple1[1] 2 >>> tuple1[0:2] (1, 2) PYTHON REPL
  • 32. 3.2.3. SEQUENCES TUPLES: OPERATORS # Concatenation >>> (1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) # Membership checking >>> 1 in (1, 2, 3) True >>> 1 not in (1, 2, 3) False # Repetition >>> ('Re', 'peat') * 3 ('Re', 'peat', 'Re', 'peat', 'Re', 'peat') PYTHON REPL
  • 33. 3.3. SETS INTRODUCTION - Just like lists except that Sets are unordered and the value is unique. - We can’t do slice and range slice operation on Sets. - Sets performs faster for element insertion, deletion, and membership checking than lists and tuples. - Sets support mathematical set operations such as testing for subsets and finding the union or intersection of two sets.
  • 34. 3.3. SETS DEFINE NEW SET # Define a set of number >>> numbers = set([1, 4, 12, 1]) >>> numbers set([1, 4, 12]) # Define a set of string >>> words = set(['hey', 'there', '!']) >>> words set(['hey', 'there', '!’]) PYTHON REPL
  • 35. 3.3. SETS OPERATORS # Define set a and b >>> a = set([1, 2, 3]) >>> b = set([1, 4, 5]) # Perform union >>> a.union(b) set([1, 2, 3, 4, 5]) # Perform Intersection >>> a.intersection(b) set([1]) # Perform Difference >>> a.difference(b) set([2, 3]) PYTHON REPL
  • 36. 3.3. SETS INSERT & DELETE >>> scores = set([0.1, 0.4, 0.5]) # Insert new element >>> scores.add(0.2) >>> scores set([0.5, 0.2, 0.4, 0.1]) # Delete element >>> scores.remove(0.5) >>> scores set([0.2, 0.4, 0.1]) PYTHON REPL
  • 37. 3.4. DICTIONARIES INTRODUCTION - Dictionaries is a associative array. Collection of (key, value) pairs where the key is unique and only map to one value. - We can add, change, and remove value from a dictionary by their key.
  • 38. 3.4. DICTIONARIES DEFINE NEW DICTIONARY # Define an empty dictionary >>> empty_dict = {} # Define a dictionary >>> data = {‘name’: ‘DSW’, ‘type’: ‘camp’} >>> data {'type': 'camp', 'name': 'DSW'} # Access value by key >>> data['name'] 'DSW' PYTHON REPL
  • 39. 3.4. DICTIONARIES INSERT, UPDATE & DELETE >>> d = {'name': 'D', 'order': 4} # Insert new key-value pairs >>> d['last_order'] = 6 >>> d {'last_order': 6, 'name': 'D', 'order': 4} # Update the value >>> d['name'] = 'D D’ >>> d {'last_order': 6, 'name': 'D D', 'order': 4} PYTHON REPL
  • 40. 3.4. DICTIONARIES INSERT, UPDATE & DELETE (CONTINUED) # Delete the key and value >>> del d['order'] >>> d {'last_order': 6, 'name': 'D D'} PYTHON REPL
  • 41. 3.5. BOOLEAN INTRODUCTION - Represent the truth value. - Values that considered as False: None, False, zero of any numeric type, any empty sequences and any empty dictionaries.
  • 42. 4. COMPARISON OPERATORS INTRODUCTION - Operator that compare two or more objects. - The result of this operator is boolean value. - There are 3 basic comparison operators: - Logical Comparison - Identity Comparison - Arithmetic Comparison .
  • 43. 4.1. COMPARISON OPERATORS LOGICAL # Define the boolean value >>> a = True; b = False # Logical and >>> a and a True >>> a and b False # Logical or >>> a or b True >>> b or b False PYTHON REPL
  • 44. 4.1. COMPARISON OPERATORS LOGICAL (CONTINUED) # Compound >>> ((a and a) or b) True >>> ((a and b) and a) False # Negation >>> not a False PYTHON REPL
  • 45. 4.2. COMPARISON OPERATORS IDENTITY >>> a = 1 # Identity >>> a is 1 True # Non-Identity >>> a is ‘1’ False PYTHON REPL
  • 46. 4.3. COMPARISON OPERATORS ARITHMETIC >>> 1 < 2 True >>> 1 >= 5 False >>> 1 == 1 True >>> 1 != 2 True PYTHON REPL
  • 47. 5. CONTROL FLOW INTRODUCTION - Just like any other programming language, Python also have a basic control flow such as if-else, for loop and while loop. - Unlike any other programming language, we can create an easy-to- understand control flow in python without hasle. Thanks to the nice syntax. - We can use break to stop the for-loop or while-loop.
  • 48. 5.1. CONTROL FLOW IF-ELSE is_exists = True if is_exists: print 'Exists: true’ else: print 'Exists: false' if_else.py
  • 49. 5.1. CONTROL FLOW IF-ELSE (CONTINUED) % python if_else.py Exists: true TERMINAL
  • 50. 5.2. CONTROL FLOW FOR-LOOP # Basic for i in xrange(2): print 'index:', I # Iterate on sequences scores = [0.2, 0.5] for score in scores: print 'score:', score for_loop.py
  • 51. 5.2. CONTROL FLOW FOR-LOOP (CONTINUED) # Iterate on dictionaries data = {'name': 'DSW', 'type': 'camp'} for key in data: value = data[key] print key, ':', value for_loop.py
  • 52. 5.2. CONTROL FLOW FOR-LOOP (CONTINUED) % python for_loop.py index: 0 index: 1 score: 0.2 score: 0.5 type : camp name : DSW TERMINAL
  • 53. 5.3. CONTROL FLOW WHILE-LOOP - Just like for-loop that do iteration, but while-loop is accept boolean value as their condition instead of iterator. - If condition is false, the loop is stopped
  • 54. 5.3. CONTROL FLOW WHILE-LOOP (CONTINUED) # Stop the loop if i>=10 i = 0 while i < 10: print 'i:', i i += 1 while_loop.py
  • 55. 5.3. CONTROL FLOW WHILE-LOOP (CONTINUED) % python while_loop.py i: 0 i: 1 i: 2 i: 3 i: 4 i: 5 i: 6 i: 7 i: 8 i: 9 TERMINAL
  • 56. 6. FUNCTION INTRODUCTION - Function in Python is defined using the following syntax: def function_name(arg1, optional_arg=default_value): # do some operation here # Or return some value
  • 57. 6. FUNCTION EXAMPLE # Define a sum function def sum(a, b): return a + b # Use the function print sum(12, 12) sum.py
  • 58. 6. FUNCTION EXAMPLE # Define a sum function def sum(a, b): return a + b # Use the function print sum(12, 12) sum.py
  • 60. 7. CLASS INTRODUCTION - We can use Class to encapsulate object and their logic. - Class can be defined using the following syntax: class ClassName: def __init__(self, arg1, arg2): # Set property self.property_name= arg1 # Define a method or function that read or # update the property def method_name(self, arg…): # Define here
  • 61. 7. CLASS EXAMPLE class Book: def __init__(self, title): self.name = title self.is_borrowed = False def borrow(self): self.is_borrowed = True book.py
  • 62. 7. CLASS EXAMPLE (CONTINUED) if __name__ == '__main__': b = Book('Hunger games') print 'Book title:', b.title print 'Book status: borrowed=’, b.is_borrowed # We change the state of the object print 'Borrow the book.' b.borrow() print 'Book title:', b.title print 'Book status: borrowed=', b.is_borrowed book.py
  • 63. 7. CLASS EXAMPLE OUTPUT % python book.py Book title: Hunger games Book status: borrowed= False Borrow the book. Book title: Hunger games Book status: borrowed= True TERMINAL
  • 64. 8. MODULE INTRODUCTION - Python module is just a file. - We can use module to group all related variable, constant, function and class in one file. - This allow us to do a modular programming. - Recall our book.py on previous section, we will use that as an example.
  • 65. 8. MODULE EXAMPLE # Import Book class from module book.py from book import Book if __name__ == '__main__': books = [] for i in xrange(10): title = 'Book #%s' % i book = Book(title) books.append(book) # Show list of available books for b in books: print 'Book title:', b.title store.py
  • 66. 8. MODULE EXAMPLE OUTPUT % python store.py Book title: Book #0 Book title: Book #1 Book title: Book #2 Book title: Book #3 Book title: Book #4 Book title: Book #5 Book title: Book #6 Book title: Book #7 Book title: Book #8 Book title: Book #9 store.py
  • 68. 9. TENSORFLOW INTRODUCTION - TensorFlow is an interface for expressing machine learning algorithms, and an implementation for executing such algorithms. - TensorFlow is available as Python package. - Allows team of data scientist to express the ideas in shared understanding concept.
  • 69. 10. TENSORFLOW PROGRAMMING MODEL - TensorFlow express a numeric computation as a graph. - Graph nodes are operations which have any number of inputs and outputs. - Graph edges are tensors which flow between nodes.
  • 70. 10. TENSORFLOW PROGRAMMING MODEL - Suppose we have a Neural networks with the following hidden layer: - We can represent this as a the computation graph: 𝑓𝜃 𝑙 𝑖 = tanh(𝑊 𝑙𝑇 𝑥𝑖 + 𝑏 𝑙 ) 𝑊 𝑙𝑇 𝑥𝑖 Matrix Multiplication Addition tanh 𝑏 𝑙
  • 71. 11. TENSORFLOW IMPLEMENTATION IN TENSORFLOW import numpy as np import tensorflow as tf # Initialize required variables x_i = np.random.random(size=(32, 256)) # Create the computation graph b = tf.Variable(tf.zeros((100,))) W = tf.Variable(tf.random_uniform(shape=(256, 100), minval=-1, maxval=1)) x = tf.placeholder(tf.float32, (None, 256)) h_i = tf.tanh(tf.matmul(x, W) + b) forward_prop.py
  • 72. 11. TENSORFLOW IMPLEMENTATION IN TENSORFLOW # Run the computation graph within new session sess = tf.Session() sess.run(tf.global_variables_initializer()) # Fetch h_i and feed x_i sess.run(h_i, {x: x_i}) forward_prop.py
  • 73. [email protected] Notes available here: https://github.com/pyk/talks

Editor's Notes

  • #2: Oke, Tujuan kita adalah yang pertama: kita mengerti bagaimana cara melakukan pengelompokan kata berdasarkan kesamaan semantiknya Kemudian tujuan kita yang kedua adalah, kita paham penerapan deep learning untuk natural language understanding. Jadi itu tujuan kita. Tentunya kita untuk bisa paham dan menerapkannya, kita akan ada sesi hands-on -- Apakah kita fokus ke teori aja? lihat dulu deh nanti.
  • #3: Oke, Tujuan kita adalah yang pertama: kita mengerti bagaimana cara melakukan pengelompokan kata berdasarkan kesamaan semantiknya Kemudian tujuan kita yang kedua adalah, kita paham penerapan deep learning untuk natural language understanding. Jadi itu tujuan kita. Tentunya kita untuk bisa paham dan menerapkannya, kita akan ada sesi hands-on -- Apakah kita fokus ke teori aja? lihat dulu deh nanti.
  • #4: itu tadi tujuan kita di sesi ini, Di sesi ini saya mengansumsikan
  • #5: itu tadi tujuan kita di sesi ini, Di sesi ini saya mengansumsikan
  • #6: itu tadi tujuan kita di sesi ini, Di sesi ini saya mengansumsikan
  • #14: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #15: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #16: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #17: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #18: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #19: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #20: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #21: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #22: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #23: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #24: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #25: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #26: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #27: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #28: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #29: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #30: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #31: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #32: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #33: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #34: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #35: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #36: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #37: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #38: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #39: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #40: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #41: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #42: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #43: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #44: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #45: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #46: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #47: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #48: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #49: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #50: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #51: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #52: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #53: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #54: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #55: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #56: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #57: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #58: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #59: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #60: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #61: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #62: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #63: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #64: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #65: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #66: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #67: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #68: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #69: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #70: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #71: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #72: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas
  • #73: Ini nanti di brief, lalu di tunjukkan outputnya # Berarti setup terminal dulu sebelum presentasi, make sure kelihatan jelas