Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
[GDG DevFest Seoul 2018] Browsing Modern Tensor...
Search
Joongi Kim
November 10, 2018
Programming
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
[GDG DevFest Seoul 2018] Browsing Modern TensorFlow
Joongi Kim
November 10, 2018
More Decks by Joongi Kim
See All by Joongi Kim
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
130
[Python Korea] PyCon US 2026 후기 공유회
achimnol
0
56
[PyCon US 2026 Packaging Summit LT] More Variant, More Diversity for AI Accelerators
achimnol
0
64
[PyCon US 2026 Packaging Summit LT] Sharing malware scanning results of PyPI from multiple providers
achimnol
0
76
[PyCon KR 2025] AI 시대를 위한 Python 패키징
achimnol
0
57
[PyCon US 2025 Lightning Talk] My 10 Years with PyCon KR
achimnol
0
45
[PyCon KR 2024] 엔터프라이즈 공급을 위한 파이썬 엔지니어링
achimnol
0
73
[PyCon KR 2024] 파이콘과 나의 10년 돌아보기
achimnol
0
56
[PyCon APAC 2023] Improving Debuggability of Complex Asyncio Applications
achimnol
0
280
Other Decks in Programming
See All in Programming
Webの地図
yosuke_furukawa
PRO
6
4.8k
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
530
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
570
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
3k
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
360
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
130
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.1k
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
440
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
580
wkhtmltopdfの次どうするか問題2026
willnet
2
1.8k
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.4k
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
270
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
How Software Deployment tools have changed in the past 20 years
geshan
2
34k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Side Projects
sachag
456
43k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
410
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
370
Exploring anti-patterns in Rails
aemeredith
4
520
First, design no harm
axbom
PRO
2
1.3k
How to Talk to Developers About Accessibility
jct
2
560
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Transcript
+PPOHJ ,JN -BCMVQ*OD !BDIJNOPM +FPOHLZV4IJO -BCMVQ*OD !JOVSFZFT ,PSFB #SPXTJOH .PEFSO5FOTPS'MPX
None
None
None
None
None
None
None
#FGPSF5FOTPS'MPX § 삲퍟 칺푷핞 헏 싳얺삫 홂핺퐢픚 § $BGGF
§ 펾묺핞슲픒 퓒 핊짦쇪 옪믆앦짛 짷쩣 헪뫃 § 컲헣핊 엶 뻞 슪 § 5IFBOP _ § 칺푷핞 슪 1ZUIPO픊옪 핟컿쇪 컲헣 § ,FSBT _ § .FUBGSBNFXPSL ˊ ˑ엖핒풚픦 엖핒풚˒ § 4VQQPSUFE CBDLFOET § 5IFBOP EFGBVMU 5FOTPS'MPX _ .9/FU _ $/5, _ § FUD § 1BEEMF $IBJOFS %-+ ˘
5FOTPS'MPX § 삲퍟 믾몒킃 핟펓픒 퓒 폲콚큲 엖핒풚 짝 않핂쯚얺읺
§ (PPHMF펞컪 맪짪몮 뫃맪 뼒 풢 _ § 힣 § 1ZUIPO"1* MJLF5IFBOP § 핂 +BWB $ 슿뫊 맧픎 펆펂픦 OBUJWFCJOEJOH 헪뫃 § 솧핟 몋 § -JOVY NBD04 § /7*%*"(16T 1BTDBM핂캏 ".%(16T 'JKJ핂캏
5FOTPS'MPX팒쫂믾 § 훊푢 몒 뼒 풢 믾훎 § DPNNJUTTJODF%FD
§ DPOUSJCVUPST § QVMMSFRVFTUT § GPSLT 믊 맪풢 § #PPUTUSBQ쫂삲 잜픚 § 5FOTPS'MPX 뫎엶 (JU)VC 헎핳콚 § 핺 캏 § $PNQMFUF.-NPEFMQSPUPUZQJOH § %JTUSJCVUFEUSBJOJOH § $16(16516.PCJMFTVQQPSU § 5FOTPS'MPX4FSWJOH § 쫂삲 퀺풂 옮 컪찒큲 묺 § 9-"DPNQJMFS _ § 삲퍟 멭 짾 몋 짝 컿쁳 캏 헪뫃 § ,FSBT "1*4VQQPSU _ § 몮쿦훎 옪믆앦짛 "1* ,FSBT § &BHFS&YFDVUJPO _ § *OUFSBDUJWFNPEF § 칺푷핞 슪읊 펾칾믆앦많 팒삚 킲헪 1ZUIPO 슪옪 믗 § 5FOTPS'MPX%BUBTFUT _ § 섾핂 콚큲읊 삲욶믾 퓒 핂않핆 헪뫃
2016 2017 ⏤ TensorFlow Serving ⏤ Keras API ⏤ Eager
Execution ⏤ TensorFlow Lite ⏤ XLA ⏤ OpenCL w/ OpenCompute ⏤ Distributed TensorFlow ⏤ Multi GPU support ⏤ Mobile TensorFlow ⏤ TensorFlow Datasets ⏤ SKLearn (contrib) ⏤ TensorFlow Slim ⏤ SyntaxNet ⏤ DRAGNN ⏤ TFLearn (contrib) ⏤ TensorFlow TimeSeries 2018 ⏤ TensorFlow Hub ⏤ Swift for TensorFlow ⏤ TensorFlow Models ⏤ ROCm TensorFlow (Test) 5FOTPS'MPX펻칺 ⏤ TensorRT integration
5FOTPS'MPX솧핟 짷킫 § $16 § .VMUJQSPDFTTPS § "79CBTFEBDDFMFSBUJPO § (16QBSUJODIJQ
§ 0QFO.1 § (16 § $6%" /7JEJB ➜ DV%// § 0QFO"- ".% ➜ $PNQVUF$11 § 516 TU _ SE HFO § "4*$GPSNBUSJYDBMDVMBUJPO § *OIPVTFEFWFMPQNFOUCZ(PPHMF
5FOTPS'MPX 솧핟 짷킫 § 1ZUIPOCVUOPU1ZUIPO § 1ZUIPO핂 믾쫆 "1* 펆펂
§ 펂쁢 $ 옪 핟컿 (16 많콛픒 퓒 DV%// 푷 § 몒칾 믆앦 $PNQVUBUJPO(SBQI § 칺푷핞 슪쁢 칺킲 슪많 팒삖않 몒칾 믆앦 캫컿픒 퓒 컲헣핊 춞 § 켆켦 믆앦읊 캫컿 믆멑픒 $ 펂옪 킲 § 싢쩒밓핂 펂엲풎
5FOTPS'MPX믊 많쇪 훊푢 믾쁳슲 § 5FOTPS'MPX&TUJNBUPST W뼒 풢 § )JHIMFWFM"1*GPSVTJOH
NPEFMJOHXFMMLOPXOFTUJNBUPST § 5FOTPS'MPX4FSWJOH 쪒솒 옪헫 § 5FOTPS'MPX,FSBTDPNQBUJCMF"1* W뼒 풢 § 5FOTPS'MPX%BUBTFUT W뼒 풢 § 5FOTPS'MPXFBHFSFYFDVUJPO W<뼒 풢> 콚맪 W<뼒 풢> 헣킫핺 § 5FOTPS'MPXKT W뼒 풢 § 4XJGUMBOHVBHFGPS5FOTPS'MPX W<뼒 풢> 콚맪 뼒 헣킫핺 § 5FOTPS'MPX)VC 뫃맪 쩮 § 5FOTPS35 JOUFHSBUJPO § 'BTUFSUSBJOJOHPO/7*%*"(16T
TensorFlow Serving § 옮 컪찒큲 엖핒풚 § 뻚 § Servables
§ Loaders § Managers § 훊푢 믾쁳 § Model building § Model versioning § Model saving / loading § Online inference support with RPC
Keras-compatible API for TensorFlow § Keras ( https://keras.io ) §
High-level API — Focus on user experience § “Deep learning accessible to everyone” § 펻칺 § 2017뼒 2풢 짪 § TensorFlow 1.2펞컪 contributor 힎옪 § TensorFlow 1.4쭎 헣킫 힎옪 킇멷 § 힣 § “Simplified workflow for TensorFlow users, more powerful features to Keras users” § 샎쭎쭒픦 Keras 슪많 믆샎옪 (keras. ̔ tf.keras.) § TensorFlow 슪퐎 Keras 슪읊 컬펂컪 칺푷 많쁳 § tf.keras. 쁢 2.0쭎 팒폖 UG많 쇮 폖헣
&BHFSFYFDVUJPO § 뼒 풢 핊 짪 뼒 풢 핊 헣킫핺
§ 5FOTPS'MPX 펾칾핞슲픒 슪많 킲쇮 쌚 흗킪 많 § 맏 펾칾핞슲픎 짢옪 킲쇪 쿦읊 짦 § 헪뫃 § /VN1Z퐎 퓮칺 쿦 펾칾 슪 핟컿 많쁳 § 핞솧 짆쭒 짝 (16 많콛 힎풞 § 믾몒킃 킲v맪짪픒 퓒 퓮펾 앹 § 핳헞 § 1ZUIPO싢쩒밓 솒묺 칺푷 많쁳 § 찮읆 폲윦 쫂몮 § 헪펂묺혾 믆샎옪 헏푷 § 1ZUIPO섾핂묺혾 푷
믆앦컪 뼒펞쁢 펂썲 쪎많
8IBUDPNFTJO 5FOTPS'MPX%BUB 5FOTPS'MPX)VC 5FOTPS'MPXKT .-,JU
5FOTPS'MPX%BUB 찮읂몮 퓮펾젾 칺푷핂 읺 핓엳 핂않핆 ,PSFB %FSFL.VSSFZ !NSSZ
&5-GPS5FOTPS'MPX Transform Extract Load 추출 변환 로드
files = tf.data.Dataset.list_files(file_pattern) dataset = tf.data.TFRecordDataset(files) dataset = dataset.shuffle(10000) dataset
= dataset.repeat(NUM_EPOCHS) dataset = dataset.map(lambda x: tf.parse_single_example(x, features)) dataset = dataset.batch(BATCH_SIZE) iterator = dataset.make_one_shot_iterator() features = iterator.get_next() E T L
files = tf.data.Dataset.list_files(file_pattern) dataset = tf.data.TFRecordDataset(files) dataset = dataset.shuffle(10000) dataset
= dataset.repeat(NUM_EPOCHS) dataset = dataset.map(lambda x: tf.parse_single_example(x, features)) dataset = dataset.batch(BATCH_SIZE) iterator = dataset.make_one_shot_iterator() features = iterator.get_next()
files = tf.data.Dataset.list_files(file_pattern) dataset = tf.data.TFRecordDataset(files, num_parallel_reads=32) dataset = dataset.shuffle(10000)
dataset = dataset.repeat(NUM_EPOCHS) dataset = dataset.map(lambda x: tf.parse_single_example(x, features)) dataset = dataset.batch(BATCH_SIZE) iterator = dataset.make_one_shot_iterator() features = iterator.get_next()
files = tf.data.Dataset.list_files(file_pattern) dataset = tf.data.TFRecordDataset(files, num_parallel_reads=32) dataset = dataset.apply(
tf.contrib.data.shuffle_and_repeat(10000, NUM_EPOCHS)) dataset = dataset.apply( tf.contrib.data.map_and_batch(lambda x: ..., BATCH_SIZE)) iterator = dataset.make_one_shot_iterator() features = iterator.get_next()
files = tf.data.Dataset.list_files(file_pattern) dataset = tf.data.TFRecordDataset(files, num_parallel_reads=32) dataset = dataset.apply(
tf.contrib.data.shuffle_and_repeat(10000, NUM_EPOCHS)) dataset = dataset.apply( tf.contrib.data.map_and_batch(lambda x: ..., BATCH_SIZE)) dataset = dataset.apply(tf.contrib.data.prefetch_to_device("/gpu:0")) iterator = dataset.make_one_shot_iterator() features = iterator.get_next()
files = tf.data.Dataset.list_files(file_pattern) dataset = tf.data.TFRecordDataset(files, num_parallel_reads=32) dataset = dataset.apply(
tf.contrib.data.shuffle_and_repeat(10000, NUM_EPOCHS)) dataset = dataset.apply( tf.contrib.data.map_and_batch(lambda x: ..., BATCH_SIZE)) dataset = dataset.apply(tf.contrib.data.prefetch_to_device("/gpu:0")) iterator = dataset.make_one_shot_iterator() features = iterator.get_next() Check out Brennan’s talk to learn more! https://www.youtube.com/watch?v=SxOsJPaxHME
5')VC 엶쇪 슪 뫃퓮읊 퓒 젆킮얺삫 쯚 ,PSFB +FSFNJBI)BSNTFO "OESFX(BTQBSPWJD
5FOTPS'MPX)VC.-뫃퓮 Repositories
5FOTPS'MPX)VC.-뫃퓮 TensorFlow Hub
젆킮얺삫픦 푢콚 섾핂 팚몮읺흦 헒줆힎킫 펾칾
젆킮얺삫 뫃퓮 Module TensorFlow Hub Model
졶슖픎 짆읺 엶쇪 많훟 짝 믆앦읊 샂몮 핖픚
졶슖픎 혾많쁳몮 핺칺푷 많쁳몮 핺엶핂 많쁳
tensorflow.org/hub
# Download and use NASNet feature vector module. module =
hub.Module( "https://tfhub.dev/google/imagenet/nasnet_large/feature_vector/1") features = module(my_images) logits = tf.layers.dense(features, NUM_CLASSES) probabilities = tf.nn.softmax(logits) 62,000+ GPU 시간! 젆킮얺삫 뫃퓮*NBHF/FU
# Download and use NASNet feature vector module. module =
hub.Module( "https://tfhub.dev/google/imagenet/nasnet_large/feature_vector/1", trainable=True, tags={“train”}) features = module(my_images) logits = tf.layers.dense(features, NUM_CLASSES) probabilities = tf.nn.softmax(logits)
# Use pre-trained universal sentence encoder to build text vector
column. review = hub.text_embedding_column( "review", "https://tfhub.dev/google/universal-sentence-encoder/1") features = { "review": np.array(["an arugula masterpiece", "inedible shoe leather", ...]) } labels = np.array([[1], [0], ...]) input_fn = tf.estimator.input.numpy_input_fn(features, labels, shuffle=True) estimator = tf.estimator.DNNClassifier(hidden_units, [review]) estimator.train(input_fn, max_steps=100) 젆킮얺삫 뫃퓮6OJWFSTBM4FOUFODF&ODPEFS
# Use pre-trained universal sentence encoder to build text vector
column. review = hub.text_embedding_column( "review", "https://tfhub.dev/google/universal-sentence-encoder/1", trainable=True) features = { "review": np.array(["an arugula masterpiece", "inedible shoe leather", ...]) } labels = np.array([[1], [0], ...]) input_fn = tf.estimator.input.numpy_input_fn(features, labels, shuffle=True) estimator = tf.estimator.DNNClassifier(hidden_units, [review]) estimator.train(input_fn, max_steps=100) 젆킮얺삫 뫃퓮6OJWFSTBM4FOUFODF&ODPEFS
# Use pre-trained universal sentence encoder to build text vector
column. review = hub.text_embedding_column( "review", "https://tfhub.dev/google/universal-sentence-encoder/1") features = { "review": np.array(["an arugula masterpiece", "inedible shoe leather", ...]) } labels = np.array([[1], [0], ...]) input_fn = tf.estimator.input.numpy_input_fn(features, labels, shuffle=True) estimator = tf.estimator.DNNClassifier(hidden_units, [review]) estimator.train(input_fn, max_steps=100) 젆킮얺삫 뫃퓮6OJWFSTBM4FOUFODF&ODPEFS
5FOTPS'MPXKT 쯚않푾헎 엖쩶펞컪픦 펞힎 싢짢핂큲 젆킮얺삫 ,PSFB
쯚않푾헎 믾몒킃 § 쩖먾옪풎핂 펔쁢 젆킮얺삫 § 젆킮얺삫픒 퓒 핺욚
몒칾 섾핂 팚몮읺흦 § 9-"삲퍟 몋펞컪픦 짢핂뻖읺 엖쩶 헏 힎풞 § 옪큲 앹 몋핂 핖픒밚 § +BWB 퓇쯚않푾헎 § 믊픦 퓇쯚않푾헎 짪헒슲 § 8FC(- § 삲퍟 (16믾믾슲펞 샎픟쁢 핊쇪 옪믆앦짛 몋 § 8FC"TTFNCMZ § 짢핂뻖읺 엖쩶 헏 § 졶슮 훊푢 쯚않푾헎펞 핺
5FOTPS'MPXKT § 뼒 풢 핊 뫃맪 § %FFQMFBSOKT ̔ 5FOTPS'MPXKT
§ 1ZUIPO 쩒헒뫊 퓮칺 "1* 헪뫃 § 훊푢 믾쁳 § 쯚않푾헎펞컪 옮 펾칾 § 믾홂 5' 졶셆픒 5'KT 졶셆옪 쪎 § pip install tensorflowjs § OPEFKT 믾짦 TDBMJOH
.-,JU 'JSFCBTF퐎 쇪 젆킮얺삫 4%, ,PSFB
ONNX (Open Neural Network Exchange) Microsoft / Facebook (Sep. 2017)
Caffe 2 + PyTorch (Facebook), CNTK (Microsoft) MLMODEL (Code ML model, Machine Learning Model) Apple (Aug. 2017) Caffe, Keras, scikit-learn, LIBSVM (Open Source) Provides Core ML converter / specification
None
None
None
.-,JU픎 J04 짝 팖슪옪핂슪 4%, 믾쫆 "1*슲 짝 재 졶셆
힎풞 믾믾펞컪 짢옪 킲 짝 묺믎 않푾슪 "*옮 "1* 'JSFCBTF퐎픦 맣
None
None
큲 핆킫 핂짆힎 않쩶잏 짢슪 큲 펊뭂 핆킫 앪슪잖 핆킫
믾쫆 "1*슲 킲푷헏픊옪 튾핂쁢 맒삶 "1*
재 졶셆 힎풞 솧헏 졶셆 삲풂옪슪 'JSFCBTF믾짦픦 "# 큲 졶셆
쪎 짝 팣 킪 폖헣 큲 졶셆픒 맒삶멚 칺푷믾
'JSFCBTF콢펞컪 .- ,JU 칺푷
None
8IBUXJMMDPNFJO 5FOTPS'MPX "OENPSF
5FOTPS'MPX ,FSBT퐎픦 픒 틺 읺 맪짪 줆쩣 ,PSFB
5FOTPS'MPX § 뼒 풢 핊 옪슪쟃 뫃맪 § 맪짪
칺푷 퍟펞컪픦 칺푷컿 맪컮핂 졷 § 맪짪 픦컿 맪컮 § &BHFS 졶슪많 믾쫆 줆쩣핂 쇶 믾홂 슪읊 퓒 쪎 솒묺 힎풞 § 뻲핒큲핂큲픦 핊뫎컿 퓮힎 § tf.contrib 많 펔펂힞 § 훊푢 슪슲픎 tf. 퓒옪 슲펂퐎컪 킺 슪옪 뫎읺 § 믆 짤픦 슪슲픎 젢핆 슪펞컪 헪먾 § "1* 샎샎헏 헣읺 § 삲퍟 슪슲픒 짩팒슲핂젾 솧핊 믾쁳픒 쁢 펺얺 "1*많 홂핺 § 빦틷잚 빶믾몮 졶숞 헪먾 § 펆헪 § 폺 팖펞˘
믆읺몮˘ § 5FOTPS'MPXKT OPEFKT 5FOTPS'MPX 1ZUIPO § 삶잞 싢짢핂큲펞컪쁢 +BWB4DSJQU옪
핂푷 § 컪쩒옪 뻦밆 쌚쁢 OPEFKT 믾짦픦 컪쩒읊 몋퓮펺 5FOTPS'MPX컪쩒펞 푢 § .-,JU 'JSF#BTF § 큲잖펞컪쁢 .-,JU 믾짦픊옪 5FOTPS'MPXMJUF졶셆 킲 § 푢펞 싾않 컪쩒칺핂슪 펾칾 짝 졶셆 펓섾핂읊 'JSF#BTF읊 킲
폖 짝 핂큖슲 § 6OJUZ*OUFHSBUJPOGPS3-FOWJSPONFOU § 맣킃픒 퓒 킪쥺엖핂켦
몋픊옪 6OJUZ 칺푷 믾쁳 § 옪쫕 짝 킇푷 싢짢핂큲슿픦 엶 몋 § 폶않핆 멚핒 뺂픦 "* 몋 슿 § 1Z5PSDI퐎픦 훊솒뭚 몋햏 § 뿒많뿒많 섢 많 § 칺푷컿 졶셆 맪짪펞 멆읺쁢 킪맒 § 핳컿 졶짢핊컪쩒맒 § 폖캏 펾묺쭒퍊펞컪쁢 1Z5PSDI 픟푷맪짪 쭒퍊펞컪쁢 5FOTPS'MPX
8IBUXJMMDPNFJO 5FOTPS'MPX "OENPSF˘ 8IBUDPNFTJO 5FOTPS'MPX%BUB 5FOTPS'MPX)VC 5FOTPS'MPXKT .-,JU #SJFGJOUSPEVDUJPOPG5FOTPS'MPX
,PSFB 맞칺삖삲
2" ,PSFB