SlideShare a Scribd company logo
1 of 14
Download to read offline
20161216
Works in github, etc
(except code for DRL of Montezuma‘s Revenge. See other slide for that)
Takayoshi Iitsuka
(Staff Service Engineering, Hitachi Ltd OB)
20161216
20161216
Analysis of the intermediate layer of VAE (1)
 Usually intermediate layer of VAE (Variational Auto Encorder) is
visualized by 2D figure like following (MNIST example).
 But, generally, the dimension of intermediate layer is much higher.
High dimensional analysis of the structure of intermediate layer
looks like important.
https://github.com/Itsukara/vae-hidden-layer
20161216
Analysis of the intermediate layer of VAE (2)
 By experiment, it turned out that only 11 dimensons are active in
intermediate layer even though the dimension of intermediate layer is 30.
(experiment code does not inlude terms for sparseness)
https://github.com/Itsukara/vae-hidden-layer
20161216
Analysis of the intermediate layer of VAE (3)
 Approximated the ditribution of each numeric
character images by 30D sphere. => 10.7% error
https://github.com/Itsukara/vae-hidden-layer
20161216
Analysis of the intermediate layer of VAE (4)
 Approximated the ditribution by mulivariate normal
distribution (spheroid) => 4.8% error (much better!)
https://github.com/Itsukara/vae-hidden-layer
20161216
Analysis of the structure of MNIST data set
 Assumtion: Simple stucture of the intermediate layer of VAE
comes from simpleness of the structure of MNIST data set.
 Result: CONFIRMED Assumption!
784 (=28 * 28) dimensional space of MNIST data set has rather
simple structure that can be approximated by 10 spheriods.
https://github.com/Itsukara/vae-hidden-layer
In this analysis, 50,000 images
have been used.
In previous analysis, 10,000
images have been used and
another analysis by 50,000
images become 5.8% error.
So, original structures in 784D
space have almost same
compactness as in 30D
structure in intermediate layer
of VAE. This result looks like
natural because VAE is
unsupervised learning and no
additional information.
20161216
Scripts to fully utilize GCP preemptible VM
 Backgroud: GCP (Google Cloud Platform) preemptible VM is very
cheap (costs 1/3), but it may stop any time.
=> Some control is mandatory.
 Published scripts in github fully utilize GCP preemptible VM
for people who try my A3C+OHL code.
 Effect: The scripts enable the full use of IT resource.
It can use 4VPU x 8 VM with free trial condition (2 month , $300).
https://github.com/Itsukara/async_deep_reinforce/tree/master/gcp-preemptible-VM-instaces
4VPU
4VPU
4VPU
4VPU
4VPU
4VPU
4VPU
4VPU
1VPU
GCP preemptible VMs
(2 months, $300 free trial)
AWS VM
(1 year free trial)
Periodically, watch VMs and re-start
stopped VMs (once per 1 min.), create
web page summarizing the status of
training (once per 5 min.)
20161216
K-means classification of MNIST dataset
 In Do2dl research group, we read the book on AI and there was a
explanation of k-means classificaition method. I said that it might be
interesting to apply k-means method to MNIST dataset.
 Because nobody other than me have a time, I wrote the code for that
and uploaded it to github.
 Actually, there was a chapter written on much sophisticated
classification method EM-algorithm in following pages.
 I compared both results. When starting with random images, k-means
was better (50% correct) than EM-algorithm (less than 50% correct).
 When starting with images created from center of 20 images of each
number, EM-algorithm become better (71.5%) than k-means (60.5%)
https://github.com/Itsukara/ml4se
20161216
Tools for Renaming titles in BD-recorder
 Backgroud: My BD-recorder has a web interface to rename titles in it.
But it takes time to rename many titles.
 Developed tools to rename titles in BD-recorder using renaming rules.
Renaming rule replace strings/regexp in titles to another string.
https://github.com/Itsukara/diga-rename
1. Determine new titles by setting
renaming rules
(renaming rules are automatically saved and
reused again)
2. Automatically rename titles in BD-recorder
using web interface of BD-recorder
20161216
Executable version of Python Tutorial
 After I learned python using Python tutorial, I felt that it might be
convinient if I could execute examples in tutorial directly.
 So, I extracted the examples in tutorial as python scripts and
published them on github 1 week after I started learning of python.
 They can be edited and executed directly.
 They output example code and thier execution result (including error)
 https://github.com/Itsukara/Python-Tutorial-Scripts
 After that, I learned juypyter notebook. So, I coverted entire tuturial to
jupyter notebook and published it on github 1 week after.
 https://github.com/Itsukara/Python-Tutorial-Ipython
https://github.com/Itsukara/Python-Tutorial-Scripts
https://github.com/Itsukara/Python-Tutorial-Ipython
20161216
Program template for scraping with NodeJS and Selenium
 I developed a tool to download content of an internet school
(dotinstall.com) to enable offline study, and published it on github and
informed on my twitter.
 I got claim from dotinstall.com. So, I deleted it immediately.
 But I think that the general program framework for scraping is usefull
for many people and is not illegal. So, I published program template of
scraping with NodeJS and Seleinum on github.
https://github.com/Itsukara/Selenium-Scraping-Template
20161216
Pico-os of MicroPython
 I got ESP8266 (very cheap microprocessor with WIFI, i.e. less than
$5), on which MicroPython was embedded (The presenter of
introductory semintor of Python gave 2 ESP8266 to audience).
 Unfortunately, the method the presenter wrote MicroPython to
EEPROM of ESP 8266 was not complete (I clould not write any file to
filesystem on EEPROM).
 So, I build an environment to write to EEPROM by myself and re-
wrote MicroPython to ESP8266.
 I measured the performance of MicroPython on EEPROM too.
(Roughly 1/1000 of Intel CPU. Memory size is also roughly 1/1000)
 To make experiment on MicroPython easy, I wrote very very small
interface library to use MicroPython on ESP8266. I named it “Pico-os“
and uploaded it to github.
 I wrote the article in blog and twitter too.
https://github.com/Itsukara/MicroPython-pos
20161216
1000 times speedup of re-calculation in big EXCEL sheet
 There was a very big EXCEL sheet containing over 120,000 lines.
 Re-culculation of the sheet took several hours.
 They re-calcalate the sheet 13 times every month and it needs
human intervention in the middle of re-calculation.
 I investgated the expressions in cells and found that repeated use of
COUNTA and VLOOKUP with perfect match mode look like the
cause. (Both founctions need O(n) time when they search n lines)
 I reduced the use of COUNTA as onece and used VLOOKUP with
approximate mode (The latter needs only O(log(n)) time. Actually
more complex expression is needed)
 By these alternation, the time of re-cauclation become few seconds.
(More than 1,000 times speedup)
20161216
Thank you for listening.

More Related Content

What's hot

Introduction to Quantum Computing with Qiskit
Introduction to Quantum Computing with QiskitIntroduction to Quantum Computing with Qiskit
Introduction to Quantum Computing with QiskitSakibul Islam Sazzad
 
Introduction to IPython & Notebook
Introduction to IPython & NotebookIntroduction to IPython & Notebook
Introduction to IPython & NotebookAreski Belaid
 
A quick overview of why to use and how to set up iPython notebooks for research
A quick overview of why to use and how to set up iPython notebooks for researchA quick overview of why to use and how to set up iPython notebooks for research
A quick overview of why to use and how to set up iPython notebooks for researchAdam Pah
 
Garbage collection
Garbage collectionGarbage collection
Garbage collectionSomya Bagai
 
IPython: A Modern Vision of Interactive Computing (PyData SV 2013)
IPython: A Modern Vision of Interactive Computing (PyData SV 2013)IPython: A Modern Vision of Interactive Computing (PyData SV 2013)
IPython: A Modern Vision of Interactive Computing (PyData SV 2013)PyData
 
Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015Boey Pak Cheong
 
java.util.concurrent for Distributed Coordination, Riga DevDays 2019
java.util.concurrent for Distributed Coordination, Riga DevDays 2019java.util.concurrent for Distributed Coordination, Riga DevDays 2019
java.util.concurrent for Distributed Coordination, Riga DevDays 2019Ensar Basri Kahveci
 

What's hot (8)

Introduction to Quantum Computing with Qiskit
Introduction to Quantum Computing with QiskitIntroduction to Quantum Computing with Qiskit
Introduction to Quantum Computing with Qiskit
 
Introduction to IPython & Notebook
Introduction to IPython & NotebookIntroduction to IPython & Notebook
Introduction to IPython & Notebook
 
Multicore
MulticoreMulticore
Multicore
 
A quick overview of why to use and how to set up iPython notebooks for research
A quick overview of why to use and how to set up iPython notebooks for researchA quick overview of why to use and how to set up iPython notebooks for research
A quick overview of why to use and how to set up iPython notebooks for research
 
Garbage collection
Garbage collectionGarbage collection
Garbage collection
 
IPython: A Modern Vision of Interactive Computing (PyData SV 2013)
IPython: A Modern Vision of Interactive Computing (PyData SV 2013)IPython: A Modern Vision of Interactive Computing (PyData SV 2013)
IPython: A Modern Vision of Interactive Computing (PyData SV 2013)
 
Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015
 
java.util.concurrent for Distributed Coordination, Riga DevDays 2019
java.util.concurrent for Distributed Coordination, Riga DevDays 2019java.util.concurrent for Distributed Coordination, Riga DevDays 2019
java.util.concurrent for Distributed Coordination, Riga DevDays 2019
 

Viewers also liked

大富豪に対する機械学習の適用 + α
大富豪に対する機械学習の適用 + α大富豪に対する機械学習の適用 + α
大富豪に対する機械学習の適用 + αKatsuki Ohto
 
A3Cという強化学習アルゴリズムで遊んでみた話
A3Cという強化学習アルゴリズムで遊んでみた話A3Cという強化学習アルゴリズムで遊んでみた話
A3Cという強化学習アルゴリズムで遊んでみた話mooopan
 
Pythonで体験する深層学習 5章
Pythonで体験する深層学習 5章Pythonで体験する深層学習 5章
Pythonで体験する深層学習 5章孝好 飯塚
 
DRL challenge on Montezuma's Revenge
DRL challenge on Montezuma's RevengeDRL challenge on Montezuma's Revenge
DRL challenge on Montezuma's Revenge孝好 飯塚
 
最近のDQN
最近のDQN最近のDQN
最近のDQNmooopan
 
論文紹介 : Unifying count based exploration and intrinsic motivation
論文紹介 : Unifying count based exploration and intrinsic motivation論文紹介 : Unifying count based exploration and intrinsic motivation
論文紹介 : Unifying count based exploration and intrinsic motivationKatsuki Ohto
 
Safe and Efficient Off-Policy Reinforcement Learning
Safe and Efficient Off-Policy Reinforcement LearningSafe and Efficient Off-Policy Reinforcement Learning
Safe and Efficient Off-Policy Reinforcement Learningmooopan
 
Introduction of "TrailBlazer" algorithm
Introduction of "TrailBlazer" algorithmIntroduction of "TrailBlazer" algorithm
Introduction of "TrailBlazer" algorithmKatsuki Ohto
 
強化学習による 「Montezuma's Revenge」への挑戦
強化学習による 「Montezuma's Revenge」への挑戦強化学習による 「Montezuma's Revenge」への挑戦
強化学習による 「Montezuma's Revenge」への挑戦孝好 飯塚
 
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”Katsuki Ohto
 
Learning Continuous Control Policies by Stochastic Value Gradients
Learning Continuous Control Policies by Stochastic Value GradientsLearning Continuous Control Policies by Stochastic Value Gradients
Learning Continuous Control Policies by Stochastic Value Gradientsmooopan
 
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)徹 上野山
 
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話Ryota Kamoshida
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual TalksYuya Unno
 
Knowlegde hub introduction presentation
Knowlegde hub introduction presentationKnowlegde hub introduction presentation
Knowlegde hub introduction presentationcrtomlinson
 
Moving computation to the data (1)
Moving computation to the data (1)Moving computation to the data (1)
Moving computation to the data (1)Kazunori Sato
 
ChainerRLの紹介
ChainerRLの紹介ChainerRLの紹介
ChainerRLの紹介mooopan
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことJiro Nishitoba
 

Viewers also liked (20)

大富豪に対する機械学習の適用 + α
大富豪に対する機械学習の適用 + α大富豪に対する機械学習の適用 + α
大富豪に対する機械学習の適用 + α
 
A3Cという強化学習アルゴリズムで遊んでみた話
A3Cという強化学習アルゴリズムで遊んでみた話A3Cという強化学習アルゴリズムで遊んでみた話
A3Cという強化学習アルゴリズムで遊んでみた話
 
Pythonで体験する深層学習 5章
Pythonで体験する深層学習 5章Pythonで体験する深層学習 5章
Pythonで体験する深層学習 5章
 
DRL challenge on Montezuma's Revenge
DRL challenge on Montezuma's RevengeDRL challenge on Montezuma's Revenge
DRL challenge on Montezuma's Revenge
 
最近のDQN
最近のDQN最近のDQN
最近のDQN
 
論文紹介 : Unifying count based exploration and intrinsic motivation
論文紹介 : Unifying count based exploration and intrinsic motivation論文紹介 : Unifying count based exploration and intrinsic motivation
論文紹介 : Unifying count based exploration and intrinsic motivation
 
Safe and Efficient Off-Policy Reinforcement Learning
Safe and Efficient Off-Policy Reinforcement LearningSafe and Efficient Off-Policy Reinforcement Learning
Safe and Efficient Off-Policy Reinforcement Learning
 
Introduction of "TrailBlazer" algorithm
Introduction of "TrailBlazer" algorithmIntroduction of "TrailBlazer" algorithm
Introduction of "TrailBlazer" algorithm
 
強化学習による 「Montezuma's Revenge」への挑戦
強化学習による 「Montezuma's Revenge」への挑戦強化学習による 「Montezuma's Revenge」への挑戦
強化学習による 「Montezuma's Revenge」への挑戦
 
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
 
Learning Continuous Control Policies by Stochastic Value Gradients
Learning Continuous Control Policies by Stochastic Value GradientsLearning Continuous Control Policies by Stochastic Value Gradients
Learning Continuous Control Policies by Stochastic Value Gradients
 
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った 機械学習ことはじめ (GDG京都 機械学習勉強会)
 
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
 
Knowlegde hub introduction presentation
Knowlegde hub introduction presentationKnowlegde hub introduction presentation
Knowlegde hub introduction presentation
 
Panel Discussion@Aizu hackathon
Panel Discussion@Aizu hackathonPanel Discussion@Aizu hackathon
Panel Discussion@Aizu hackathon
 
Moving computation to the data (1)
Moving computation to the data (1)Moving computation to the data (1)
Moving computation to the data (1)
 
ChainerRLの紹介
ChainerRLの紹介ChainerRLの紹介
ChainerRLの紹介
 
8254 презентация
8254 презентация8254 презентация
8254 презентация
 
ChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なことChainerでDeep Learningを試す為に必要なこと
ChainerでDeep Learningを試す為に必要なこと
 

Similar to My works in gitub, etc.

JDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go Wrong
JDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go WrongJDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go Wrong
JDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go WrongPROIDEA
 
Intro - End to end ML with Kubeflow @ SignalConf 2018
Intro - End to end ML with Kubeflow @ SignalConf 2018Intro - End to end ML with Kubeflow @ SignalConf 2018
Intro - End to end ML with Kubeflow @ SignalConf 2018Holden Karau
 
Introduction to Groovy Monkey
Introduction to Groovy MonkeyIntroduction to Groovy Monkey
Introduction to Groovy Monkeyjervin
 
Migraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesMigraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesdrupalindia
 
SciPipe - A light-weight workflow library inspired by flow-based programming
SciPipe - A light-weight workflow library inspired by flow-based programmingSciPipe - A light-weight workflow library inspired by flow-based programming
SciPipe - A light-weight workflow library inspired by flow-based programmingSamuel Lampa
 
PySpark on Kubernetes @ Python Barcelona March Meetup
PySpark on Kubernetes @ Python Barcelona March MeetupPySpark on Kubernetes @ Python Barcelona March Meetup
PySpark on Kubernetes @ Python Barcelona March MeetupHolden Karau
 
Euro python2011 High Performance Python
Euro python2011 High Performance PythonEuro python2011 High Performance Python
Euro python2011 High Performance PythonIan Ozsvald
 
SpringOne Platform recap 정윤진
SpringOne Platform recap 정윤진SpringOne Platform recap 정윤진
SpringOne Platform recap 정윤진VMware Tanzu Korea
 
Virtual Bash! A Lunchtime Introduction to Kafka
Virtual Bash! A Lunchtime Introduction to KafkaVirtual Bash! A Lunchtime Introduction to Kafka
Virtual Bash! A Lunchtime Introduction to KafkaJason Bell
 
Golang Performance : microbenchmarks, profilers, and a war story
Golang Performance : microbenchmarks, profilers, and a war storyGolang Performance : microbenchmarks, profilers, and a war story
Golang Performance : microbenchmarks, profilers, and a war storyAerospike
 
Js engine performance
Js engine performanceJs engine performance
Js engine performancepaullfc
 
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)Christian Catalan
 
UniRx - Reactive Extensions for Unity(EN)
UniRx - Reactive Extensions for Unity(EN)UniRx - Reactive Extensions for Unity(EN)
UniRx - Reactive Extensions for Unity(EN)Yoshifumi Kawai
 
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...Flink Forward
 
FireWorks overview
FireWorks overviewFireWorks overview
FireWorks overviewAnubhav Jain
 
Profiling & Testing with Spark
Profiling & Testing with SparkProfiling & Testing with Spark
Profiling & Testing with SparkRoger Rafanell Mas
 

Similar to My works in gitub, etc. (20)

JDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go Wrong
JDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go WrongJDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go Wrong
JDD 2016 - Grzegorz Rozniecki - Java 8 What Could Possibly Go Wrong
 
Intro - End to end ML with Kubeflow @ SignalConf 2018
Intro - End to end ML with Kubeflow @ SignalConf 2018Intro - End to end ML with Kubeflow @ SignalConf 2018
Intro - End to end ML with Kubeflow @ SignalConf 2018
 
Introduction to Groovy Monkey
Introduction to Groovy MonkeyIntroduction to Groovy Monkey
Introduction to Groovy Monkey
 
Elasticwulf Pycon Talk
Elasticwulf Pycon TalkElasticwulf Pycon Talk
Elasticwulf Pycon Talk
 
Java multi thread programming on cmp system
Java multi thread programming on cmp systemJava multi thread programming on cmp system
Java multi thread programming on cmp system
 
Migraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sitesMigraine Drupal - syncing your staging and live sites
Migraine Drupal - syncing your staging and live sites
 
Concurrency and parallel in .net
Concurrency and parallel in .netConcurrency and parallel in .net
Concurrency and parallel in .net
 
SciPipe - A light-weight workflow library inspired by flow-based programming
SciPipe - A light-weight workflow library inspired by flow-based programmingSciPipe - A light-weight workflow library inspired by flow-based programming
SciPipe - A light-weight workflow library inspired by flow-based programming
 
PySpark on Kubernetes @ Python Barcelona March Meetup
PySpark on Kubernetes @ Python Barcelona March MeetupPySpark on Kubernetes @ Python Barcelona March Meetup
PySpark on Kubernetes @ Python Barcelona March Meetup
 
Euro python2011 High Performance Python
Euro python2011 High Performance PythonEuro python2011 High Performance Python
Euro python2011 High Performance Python
 
SpringOne Platform recap 정윤진
SpringOne Platform recap 정윤진SpringOne Platform recap 정윤진
SpringOne Platform recap 정윤진
 
Virtual Bash! A Lunchtime Introduction to Kafka
Virtual Bash! A Lunchtime Introduction to KafkaVirtual Bash! A Lunchtime Introduction to Kafka
Virtual Bash! A Lunchtime Introduction to Kafka
 
Golang Performance : microbenchmarks, profilers, and a war story
Golang Performance : microbenchmarks, profilers, and a war storyGolang Performance : microbenchmarks, profilers, and a war story
Golang Performance : microbenchmarks, profilers, and a war story
 
Js engine performance
Js engine performanceJs engine performance
Js engine performance
 
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)
Testing Vue Apps with Cypress.io (STLJS Meetup April 2018)
 
UniRx - Reactive Extensions for Unity(EN)
UniRx - Reactive Extensions for Unity(EN)UniRx - Reactive Extensions for Unity(EN)
UniRx - Reactive Extensions for Unity(EN)
 
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...Flink Forward SF 2017: Malo Deniélou -  No shard left behind: Dynamic work re...
Flink Forward SF 2017: Malo Deniélou - No shard left behind: Dynamic work re...
 
FireWorks overview
FireWorks overviewFireWorks overview
FireWorks overview
 
Kube cfg-mgmt
Kube cfg-mgmtKube cfg-mgmt
Kube cfg-mgmt
 
Profiling & Testing with Spark
Profiling & Testing with SparkProfiling & Testing with Spark
Profiling & Testing with Spark
 

Recently uploaded

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

My works in gitub, etc.

  • 1. 20161216 Works in github, etc (except code for DRL of Montezuma‘s Revenge. See other slide for that) Takayoshi Iitsuka (Staff Service Engineering, Hitachi Ltd OB) 20161216
  • 2. 20161216 Analysis of the intermediate layer of VAE (1)  Usually intermediate layer of VAE (Variational Auto Encorder) is visualized by 2D figure like following (MNIST example).  But, generally, the dimension of intermediate layer is much higher. High dimensional analysis of the structure of intermediate layer looks like important. https://github.com/Itsukara/vae-hidden-layer
  • 3. 20161216 Analysis of the intermediate layer of VAE (2)  By experiment, it turned out that only 11 dimensons are active in intermediate layer even though the dimension of intermediate layer is 30. (experiment code does not inlude terms for sparseness) https://github.com/Itsukara/vae-hidden-layer
  • 4. 20161216 Analysis of the intermediate layer of VAE (3)  Approximated the ditribution of each numeric character images by 30D sphere. => 10.7% error https://github.com/Itsukara/vae-hidden-layer
  • 5. 20161216 Analysis of the intermediate layer of VAE (4)  Approximated the ditribution by mulivariate normal distribution (spheroid) => 4.8% error (much better!) https://github.com/Itsukara/vae-hidden-layer
  • 6. 20161216 Analysis of the structure of MNIST data set  Assumtion: Simple stucture of the intermediate layer of VAE comes from simpleness of the structure of MNIST data set.  Result: CONFIRMED Assumption! 784 (=28 * 28) dimensional space of MNIST data set has rather simple structure that can be approximated by 10 spheriods. https://github.com/Itsukara/vae-hidden-layer In this analysis, 50,000 images have been used. In previous analysis, 10,000 images have been used and another analysis by 50,000 images become 5.8% error. So, original structures in 784D space have almost same compactness as in 30D structure in intermediate layer of VAE. This result looks like natural because VAE is unsupervised learning and no additional information.
  • 7. 20161216 Scripts to fully utilize GCP preemptible VM  Backgroud: GCP (Google Cloud Platform) preemptible VM is very cheap (costs 1/3), but it may stop any time. => Some control is mandatory.  Published scripts in github fully utilize GCP preemptible VM for people who try my A3C+OHL code.  Effect: The scripts enable the full use of IT resource. It can use 4VPU x 8 VM with free trial condition (2 month , $300). https://github.com/Itsukara/async_deep_reinforce/tree/master/gcp-preemptible-VM-instaces 4VPU 4VPU 4VPU 4VPU 4VPU 4VPU 4VPU 4VPU 1VPU GCP preemptible VMs (2 months, $300 free trial) AWS VM (1 year free trial) Periodically, watch VMs and re-start stopped VMs (once per 1 min.), create web page summarizing the status of training (once per 5 min.)
  • 8. 20161216 K-means classification of MNIST dataset  In Do2dl research group, we read the book on AI and there was a explanation of k-means classificaition method. I said that it might be interesting to apply k-means method to MNIST dataset.  Because nobody other than me have a time, I wrote the code for that and uploaded it to github.  Actually, there was a chapter written on much sophisticated classification method EM-algorithm in following pages.  I compared both results. When starting with random images, k-means was better (50% correct) than EM-algorithm (less than 50% correct).  When starting with images created from center of 20 images of each number, EM-algorithm become better (71.5%) than k-means (60.5%) https://github.com/Itsukara/ml4se
  • 9. 20161216 Tools for Renaming titles in BD-recorder  Backgroud: My BD-recorder has a web interface to rename titles in it. But it takes time to rename many titles.  Developed tools to rename titles in BD-recorder using renaming rules. Renaming rule replace strings/regexp in titles to another string. https://github.com/Itsukara/diga-rename 1. Determine new titles by setting renaming rules (renaming rules are automatically saved and reused again) 2. Automatically rename titles in BD-recorder using web interface of BD-recorder
  • 10. 20161216 Executable version of Python Tutorial  After I learned python using Python tutorial, I felt that it might be convinient if I could execute examples in tutorial directly.  So, I extracted the examples in tutorial as python scripts and published them on github 1 week after I started learning of python.  They can be edited and executed directly.  They output example code and thier execution result (including error)  https://github.com/Itsukara/Python-Tutorial-Scripts  After that, I learned juypyter notebook. So, I coverted entire tuturial to jupyter notebook and published it on github 1 week after.  https://github.com/Itsukara/Python-Tutorial-Ipython https://github.com/Itsukara/Python-Tutorial-Scripts https://github.com/Itsukara/Python-Tutorial-Ipython
  • 11. 20161216 Program template for scraping with NodeJS and Selenium  I developed a tool to download content of an internet school (dotinstall.com) to enable offline study, and published it on github and informed on my twitter.  I got claim from dotinstall.com. So, I deleted it immediately.  But I think that the general program framework for scraping is usefull for many people and is not illegal. So, I published program template of scraping with NodeJS and Seleinum on github. https://github.com/Itsukara/Selenium-Scraping-Template
  • 12. 20161216 Pico-os of MicroPython  I got ESP8266 (very cheap microprocessor with WIFI, i.e. less than $5), on which MicroPython was embedded (The presenter of introductory semintor of Python gave 2 ESP8266 to audience).  Unfortunately, the method the presenter wrote MicroPython to EEPROM of ESP 8266 was not complete (I clould not write any file to filesystem on EEPROM).  So, I build an environment to write to EEPROM by myself and re- wrote MicroPython to ESP8266.  I measured the performance of MicroPython on EEPROM too. (Roughly 1/1000 of Intel CPU. Memory size is also roughly 1/1000)  To make experiment on MicroPython easy, I wrote very very small interface library to use MicroPython on ESP8266. I named it “Pico-os“ and uploaded it to github.  I wrote the article in blog and twitter too. https://github.com/Itsukara/MicroPython-pos
  • 13. 20161216 1000 times speedup of re-calculation in big EXCEL sheet  There was a very big EXCEL sheet containing over 120,000 lines.  Re-culculation of the sheet took several hours.  They re-calcalate the sheet 13 times every month and it needs human intervention in the middle of re-calculation.  I investgated the expressions in cells and found that repeated use of COUNTA and VLOOKUP with perfect match mode look like the cause. (Both founctions need O(n) time when they search n lines)  I reduced the use of COUNTA as onece and used VLOOKUP with approximate mode (The latter needs only O(log(n)) time. Actually more complex expression is needed)  By these alternation, the time of re-cauclation become few seconds. (More than 1,000 times speedup)