SlideShare a Scribd company logo
1 of 145
Download to read offline
A brief introduction to
Machine Learning
https://ihower.tw
RubyConf China 2017
我是谁
• 张⽂文钿 a.k.a. ihower
• https://ihower.tw
• Ruby on Rails 实战圣经 作者
• 全栈营研究员
• Ruby Developer user since 2006
• 过去两年年业余关注机器学习技术
A brief introduction to Machine Learning
Agenda
• 什什么是机器学习
• 搭建机器学习系统
• 什什么是深度学习
• 如何在 Rails 项⽬目中使⽤用机器学习
1. 什什么是机器学习
要解决什什么问题?
	•	 如何判断是不是垃圾邮件?

	•	 如何预测⼴广告点击率?

	•	 如何分类客户评论的情绪?

	•	 如何推荐客户想买的东⻄西?

	•	 如何辨识语⾳音?

	•	 如何辨识图片?
机器学习
	•	让电脑⾃自⼰己去学,⽽而不⽤用明确的写条件判断程序

	•	所谓学习,就是学怎么分类下判断

	•	如何学?需要透过历史数据和机器学习算法,让电脑学出
⼀一个模型,透过这个模型来进⾏行行预测和辨识。
机器学习的基本过程
训练数据
Training Data
机器学习算法
Algorithm
机器学习模型
Model
训练数据
Training Data
机器学习算法
Algorithm
机器学习模型
Model
新的数据
预测结果
先从回答Yes/No开始
Binary Classification
历史数据
年年紀 性別 資產 ⾏行行業 … 會不會買
21 M 120 … 會
50 F 800 … 不會
41 F 400 … 會
35 M 300 … 會
36 M 500 … 不會
28 M 60 … 不會
55 F 950 … 會
转换成训练数据
X1

(Feature 1)
X2

(Feature 2)
Y

(Label 答案)
21 120 1
50 800 -1
41 400 1
35 300 1
36 500 -1
28 60 -1
55 950 1
感知器(Perceptron)
例例如,在⼆二维(两个 features )的情况:
拿第⼀一个数据来看,希望预测的结果是 1
如果是 d 维(d个 features )的情况:
怎么求权重 w ?

假设只有两个 feature,就会是个⼆二维问题可以做图⽰示意
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
怎么求权重 w ?

假设只有两个 feature,就会是个⼆二维问题可以做图⽰示意
Perceptron Learning
Algorithm (PLA)
	•	先假设 w = 0,然后依序走访所有分错的点 X_n

	•	让 让下⼀一个 w 朝分错的点偏移

	•	最后的 w 就是解
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Pocket PLA
	•	不⼀一定线性可分

	•	改成随机找⼀一个错误的点

	•	在有限的次数内,找最好的w
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
机器学习的种类
机器学习的种类
	•	监督式学习 (Supervised Learning)

	•	半监督式学习 (Semi-supervised Learning)

	•	非监督式学习 (Unsupervised Learning)

	•	强化学习 (Reinforcement Learning)
监督式学习
数据中有答案(label) 让算法可以学习
	•	 分类 (Classification)

	 •	 ⼆二元分类

	 •	 多元分类

	•	 回归 (Regression) 数值

	 •	 价格

	 •	 下雨机率
半监督式学习
资料中有些有答案(label) 让算法可以学习
	•	例例如照片分类,有些照片有 label,有些没有
非監督式學習
数据中没答案,需要算法⾃自⼰己找出数据中隐藏的结构或规则
	 •	分群(Clustering)

	 •	K-means 算法

	 •	异常值侦测

	 •	深度学习 ⽣生成对抗⽹网络(GAN)

	 •	⽤用于模仿图片、视频等
Credit: https://en.wikipedia.org/wiki/Cluster_analysis
强化学习
	•	透过外在的讯号不断改进算法

	•	不容易易直接⽰示范答案(y),但可以透过环境的
反应得知结果好或不好

	•	例例如:训练⼩小狗坐下
https://en.wikipedia.org/wiki/Reinforcement_learning
常⻅见的监督式学习算法
• Linear Regression 、Linear Classifier

• Logistic Regression

• Decision Tree、Random forest

• Naive Bayes classifiers

• Support Vector Machine (SVM)

• Artificial Neural Network (ANN)
线性回归(Linear Regression)
	•	 优化均⽅方误差 

	•	 有公式解

	•	 但数据量量⼤大时,会改⽤用 Gradient
Descent 梯度下降法
Gradient Descent
已知 f(w) 如何找出最⼩小值 w ?
Image Credit: edX BerkeleyX: CS190.1x Scalable Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
http://lukaszkujawa.github.io//gradient-descent.html
# https://github.com/daugaard/linear-regression
# gem install ruby_linear_regression
require 'ruby_linear_regression'
x_data = [ [1,1], [2,2], [3,3], [4,4] ]
y_data = [ 1,2,3,4 ]
linear_regression = RubyLinearRegression.new
linear_regression.load_training_data(x_data, y_data)
linear_regression.train_gradient_descent(0.0005, 1000, true)
prediction_x = [5, 5]
prediction_y = linear_regression.predict(prediction_x)
puts prediction_y
Nonlinear Transformation
非线性变换
• 	例例如⼆二次⽅方变换,把





扩展成
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
Logistic Regression
	•	输出 0~1 的值

	•	⽤用于机率预测、⻛风险、可能性,⼜又叫 "soft" binary
classification
# gem install liblinear-ruby
# https://github.com/kei500/liblinear-ruby
# https://www.practicalai.io/implementing-classification-using-
logistic-regression-in-ruby/
require 'liblinear'
model = Liblinear.train(
{ solver_type: Liblinear::L2R_LR }, # L2-regularized logistic
[-1, -1, 1, 1], # labels
[[-2, -2], [-1, -1], [1, 1], [2, 2]], # training data
)
puts Liblinear.predict(model, [0.5, 0.5])
Binary 推⼴广到 Mutilclass
	•	OVA (One-Versus-All) 或叫做 One-vs-Rest (OvR) 

	 •	有多少类别就各做⼀一次 binary classification

	 •	选分类机率最⼤大的
Decision Tree
	•	决策树、分类树

	•	由上⽽而下在每⼀一步选择⼀一个最
好的属性(feature)来分裂决策
树

	•	優點:有很好的解释性
http://www.r2d3.us/visual-intro-
to-machine-learning-part-1/
# https://github.com/igrigorik/decisiontree
# gem install decisiontree
# gem install graphr
require 'decisiontree'
attributes = ['Age', 'Education', 'Income', 'Marital Status']
training = [
['36-55', 'Masters', 'High', 'Single', 1],
['18-35', 'High School', 'Low', 'Single', 0],
['< 18', 'High School', 'Low', 'Married', 1]
]
dec_tree = DecisionTree::ID3Tree.new(attributes, training,
1, :discrete)
dec_tree.train
test = ['< 18', 'High School', 'Low', 'Single', 0]
decision = dec_tree.predict(test)
puts "Predicted: #{decision} ... True decision: #{test.last}";
dec_tree.graph("discrete")
⽀支持向量量機 SVM

(Support Vector Machine)
	•	如何让分类器更更能抵抗杂讯?找⼀一条最胖(margin)的线

	•	离边界最近的点就决定线 (这些点就叫做 support
vector candidate),其他点不影响结果
	•	优点:精确度好、但计算很花时间,不适合巨量量数据
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
# gem install rb-libsvm
# https://www.practicalai.io/implementing-classification-using-a-svm-
in-ruby/
require 'libsvm'
# This library is namespaced.
problem = Libsvm::Problem.new
parameter = Libsvm::SvmParameter.new
parameter.cache_size = 1 # in megabytes
parameter.eps = 0.001
parameter.c = 10
examples = [ [1,0,1], [-1,0,-1] ].map {|ary|
Libsvm::Node.features(ary) }
labels = [1, -1]
problem.set_examples(labels, examples)
model = Libsvm::Model.train(problem, parameter)
pred = model.predict(Libsvm::Node.features(1, 1, 1))
puts "Example [1, 1, 1] - Predicted #{pred}"
awesome-ruby
• https://github.com/arbox/machine-learning-with-ruby
FAQ
	•	机器学习什什么都可以学吗? 

	•	⼀一定要⼤大量量数据吗?

	•	机器预测的结果就⼀一定准吗?
2.搭建机器学习系统
重点是算法吗?
在实际的应⽤用场景中,
还有很多⿇麻烦事.....
•	 数据如何收集?

	•	 会不会有缺漏或错误? 数据需要清理理

	•	 Features 如何决定? 把所有 Features 全部丢进算法可以吗?

	 •	 计算需要数字,可是很多数据是字符串串啊

	 •	 原始数据怎么处理理?例例如图片、影像、声⾳音

	 •	 有的 feature 数字很⼤大、有的 feature 数字很⼩小怎么办?

	•	 如何挑选和评估模型? 

	•	 如何整合进应⽤用中?

	•	 数据量量超级⼤大怎么办?
算法只是全部流程中的⼀一部分
其实这是⼀一场数据科学实验
机器学习的完整流程
	•	 数据收集、撷取

	•	 数据探索 (Exploratory data analysis)、视觉化

	•	 数据清理理、预处理理

	•	 数据切分 (Train data, Test data)

	•	 选择算法、建立模型、评估模型

	•	 整合进应⽤用程序 (或进⾏行行发表)
数据撷取、收集
	•	爬⾍虫 (HTML)

	•	结构化的数据

	 •	数据库

	•	非结构化的数据

	 •	图片、声⾳音、⽂文字
预处理理
	•	 缺失值处理理: 删除或补全
	•	 标准化数值 

	 •	 让平均是0、标准差是 1

	 •	 让不同 features 的数值能够公平,消除数量量级的影响

	•	 类别 (categorical) 资料编码 

	 •	 有顺序的,可⽤用数字

	 •	 没顺序的,⽤用 one-hot encoding
One-Hot-Encoding
	•	 例例如 { “IE”, “Chrome”, “Safari” } 三个分类

	•	 转成三种 features

	 •	 “IE” => [ 1 0 0 ]

	 •	 “Chrome” => [ 0 1 0 ]

	 •	 “Safari” => [ 0 0 1 ]

	•	 如果维度太多,可以考虑进⼀一步做 Feature Hashing
Feature Extraction (特征萃取)
	•	 将数据中有利利于分类的特征撷取出来,	可能需要将数据视觉化,帮助
我们理理解数据进⾏行行挑选

	•	 需要 Domain Knowledge,引入額外特徵

	 •	 已知⽤用⼾戶 Geolocation,增加該地點的⼈人⼝口統計數據(平均收入、⼈人
⼝口密度等等) 

•	家庭⽤用電隨著溫度升⾼高,因此預測⽤用電量量時,應該把溫度加入特徵

	•	 原始数据若若是非数字的,需要想办法撷取出数字特征

	 •	 例例如:图片/声⾳音/⾃自然语⾔言⽂文字
Bag of Words (词袋模型)
(1) John likes to watch movies. Mary likes movies too.
(2) John also likes to watch football games.
[1, 2, 1, 1, 2, 0, 0, 0, 1, 1]
[1, 1, 1, 1, 0, 1, 1, 1, 0, 0]
[
"John",
"likes",
"to",
"watch",
"movies",
"also",
"football",
"games",
"Mary",
"too"
]
https://zh.wikipedia.org/zh-cn/词袋模型
Feature 越多越好?
模型越厉害越好?
让算法做到 100% 准确?
Overfitting 过拟合现象
Image Credit: edX BerkeleyX: CS190.1x Scalable Machine Learning
Overfitting 过拟合现象
Credit: 林林軒⽥田老師 http://www.csie.ntu.edu.tw/~htlin/mooc/ 機器學習課程
考虑的越复杂,结果却
越不准!
⽣生活中的例例⼦子
	•	饮食,⼈人类喜欢吃脂肪、糖、盐

	•	运动,⻄西洋剑和跆拳道,电⼦子计分

	•	激励机制 KPI,例例如猎⼈人头公司的 KPI 如果⽤用安排⾯面试次
数....
⼈人的思考也是⼀一样
Overfitting 怎么解?
•	当 features 太多,或模型太厉害的时候
	•	Overfitting 怎么解

	 •	减少 features,挑选真正有⽤用的

	 •	减少模型复杂度,例例如增加 regularization 正则化、剪枝、
Early Stop…etc 在计算过程中去惩罚复杂模型
Underfitting 怎么解?
•	当 Training dataset 和 Validation dataset 准确率都不⾼高时
	•	增加 features、增加⾼高次⽅方变项

	•	模型不够复杂,换更更厉害的算法

	•	数据太少,想办法增加数据
数据切分和模型评估
如何得知⽬目前是⽋欠拟合还是过拟合?需要仪表板
	•	 切分 Training Dataset 和 Testing Dataset,通常约 7:3

•	 当 Training dataset 跟 Validation dataset 准确率都不好 =>
Underfitting
•	 当 Training dataset 准确率提⾼高,但是 Validation dataset 准确率
却下降时 => Overfitting
	•	 如何挑选和评估模型? 

	 •	 需要换不同 model 进⾏行行实验
	 •	 如果⽤用 Gradient Descent 梯度下降法:需要调整超参数
更更像是在做科学实验....
	•	不知道哪⼀一个算法比较好

	•	需要不断实验和比较结果

	•	如果每个算法的⽤用法都不⼀一致,就会很⿇麻烦
现成的 Ruby ML ⼯工具
	•	⽤用法都不同

	•	缺乏 预处理理功能

	•	缺乏 Cross-Validation 功能

	•	缺乏维护....

	•	很像是 Toy Project…
Sorry…
Ruby 没办法做个流程
⽬目前主流是 Python 和 R 语⾔言
😵
A brief introduction to Machine Learning
Python ⼯工具介紹
• Scikit-learn: Python 的 Machine Learning 框架

• Pandas: 提供 Data frames 數據分析

• Matplotlib 視覺化⼯工具

• Jupyter notebook 實驗簿

• PySpark ⼤大數據處理理
Scikit-learn
• Scikit-learn 提供⼀一致的數據格式

• 提供各種機器學習和預處理理算法,可以在相同的介⾯面下進
⾏行行快速實驗

• 已是⾏行行業標準
http://scikit-learn.org/stable/tutorial/machine_learning_map/index.html
Jupyter notebook
Demo
A brief introduction to Machine Learning
A brief introduction to Machine Learning
鳶尾花根據花萼、花瓣長寬
判斷三種品種
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
3. 深度学习
近來來最夯的機器學習算法
Credit: http://www.cnblogs.com/gpcuster/archive/2008/06/03/1213008.html
⼈人⼯工神经⽹网络
Credit: 李宏毅 深度學習課程
Neuron
Credit: 李宏毅 深度學習課程
Credit: 李宏毅 深度學習課程
權重w怎麼算?
https://zh.wikipedia.org/wiki/反向传播算法
MNIST 数据集:⼿手写数字辨识
	•	28*28=784 pixel

	•	假設有⼀一層 Hidden layer 有 100
個 Neuron

	•	784*100+100*10 = 

约八万个权重值

	•	学习过程要很久,但是预测很快
http://yann.lecun.com/exdb/mnist/
# https://github.com/tangledpath/ruby-fann
require 'ruby-fann'
train = RubyFann::TrainData.new(:inputs=>[[0.3, 0.4, 0.5], [0.1,
0.2, 0.3]], :desired_outputs=>[[0.7], [0.8]])
fann = RubyFann::Standard.new(:num_inputs=>3, :hidden_neurons=>[2,
8, 4, 3, 4], :num_outputs=>1)
fann.train_on_data(train, 1000, 10, 0.1) # 1000 max_epochs, 10
errors between reports and 0.1 desired MSE (mean-squared-error)
puts fann.run([0.3, 0.2, 0.4])
http://playground.tensorflow.org
A brief introduction to Machine Learning
Credit: 李宏毅 深度學習課程
深度学习特点
	•	直接处理理原始数据,不需要⼈人⼯工撷取 feature:可以处理理图片、
声⾳音、⾃自然语⾔言

	•	以前不⾏行行做是因为算⼒力力不够强⼤大、数据量量不够多,⽆无法处理理深
层⽹网络
•	优点:可以处理理很⾼高度复杂的问题,例例如影像和声⾳音辨识

	•	缺点:1. 训练难度较⾼高,模型太复杂不容易易控制 2. 解释性差,
只知道模型好不好,很难解释为什什么
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
卷积神经⽹网络
• Convolutional Neural Network (CNN)

• ANN 做圖片辨識做不好,計算量量太⼤大

• CNN 針對圖片的特性做調整

• Convolution Layer

• Max pooling
Credit: 李宏毅 深度學習課程
https://www.ted.com/talks/
fei_fei_li_how_we_re_teaching_computers_to_understand_
http://www.image-net.org
Credit: 了了解⼈人⼯工智慧的第⼀一本書 松尾豐
全球視覺辨識⼤大賽
深度学习⼯工具
• Google 的 Tensorflow

• Facebook 的 Caffe

• 微軟的 CNTK

• MXNet (Amazon官⽅方推薦)

• PyTorch

• Theano
硬件战场
• Nvidia GPU (CUDA 架構)

• Google TPU

• Intel Movidius

• Apple “Neural Engine” chip (iPhone X)
Keras
• https://keras.io

• 	⼀一个⾼高阶的 API,底层可以跑 TensorFlow、CNTK 或
Theano
model = Sequential()
model.add(Dense(512, input_shape=(784,)))
model.add(Activation('relu'))
model.add(Dropout(0.2))
model.add(Dense(512))
model.add(Activation('relu'))
model.add(Dropout(0.2))
model.add(Dense(10))
model.add(Activation('softmax'))
model.summary()
model.compile(loss='categorical_crossentropy',
optimizer=RMSprop(),
metrics=['accuracy'])
history = model.fit(X_train, Y_train,
batch_size=batch_size, nb_epoch=nb_epoch,
verbose=1, validation_data=(X_test, Y_test))
score = model.evaluate(X_test, Y_test, verbose=0)
print('Test score:', score[0])
print('Test accuracy:', score[1])
A brief introduction to Machine Learning
4. 如何整合进 Rails
训练部分
	•	继续⽤用 Ruby (are you serious?)

	•	⽤用 Python 或 R ⽅方案

	•	⼤大数据:⽤用 Apache Spark
预测部分
• 汇出 model 参数,⽤用 Ruby 实作预测
• But…. How about feature engineering part?
• 调⽤用 Python 程序
• Web API ⽅方案: ⽤用 flask
• RPC ⽅方案 grpc
• pycall 直接調⽤用 python function
• 第三⽅方 API (GCP,AWS,Azure)
Apple Core ML
https://developer.apple.com/documentation/coreml
Cloud Solution
• Amazon Web Service

• Google Cloud Platform

• Microsoft Azure
A brief introduction to Machine Learning
Google Cloud
	•	 ⽤用⾃自⼰己的资料做训练

	 •	 Cloud Machine Learning Engine

	•	 Machine Learning as API ⽤用现成的模型

	 •	 Cloud Vision

	 •	 Cloud Speech

	 •	 Cloud Natural Language

	 •	 Cloud Translation API

	 •	 Cloud Video Intelligence
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
A brief introduction to Machine Learning
# gem install google-cloud-vision
# export GOOGLE_CLOUD_PROJECT=“<project-id>“
# export GOOGLE_CLOUD_KEYFILE=“<json-key-file>“
require "google/cloud/vision"
vision = Google::Cloud::Vision.new
image = vision.image "demo-image.jpg"
puts image.labels
https://cloud.google.com/vision/
A brief introduction to Machine Learning
A brief introduction to Machine Learning
What’s next?
⼀一些想法
	•	数据科学家(Data Scientist) v.s. 数据⼯工程师(Data Engineer)

	•	不⼀一定要成为数据科学家才能利利⽤用机器学习

	•	A.I. is a feature,we will just use it as a gem

	•	⼯工程师及早参与,最后才能成功进入产品,⽽而不是只是数据
科学报告
如何学机器学习
	•	Top-down 或 bottom-up 学习法?

	•	机器学习开发者的现代化路路径:不需要从统计学微积分
开始 

http://www.csdn.net/article/2015-08-27/2825551

https://machinelearningmastery.com/dont-implement-
machine-learning-algorithms/ 

	 •	Coursera 的机器学习课程则偏理理论
参考资料
• 台灣⼤大學 林林軒⽥田 / 機器學習基⽯石、機器學習技術

http://www.csie.ntu.edu.tw/~htlin/mooc/

• 台灣⼤大學 李宏毅 / ⼀一天搞懂深度學習 

https://www.slideshare.net/tw_dsconf/ss-62245351

• edX BerkeleyX: CS190.1x Scalable Machine Learning

• SciRuby Machine Learning Current Status and Future

https://speakerdeck.com/mrkn/sciruby-machine-learning-current-status-and-future

• 李俊良 / Feature Engineering in Machine Learning 

https://www.slideshare.net/tw_dsconf/feature-engineering-in-machine-learning

• Python Machine Learning, Packt Publishing

• Data Science from Scratch, O’Reilly

More Related Content

What's hot

Building Data Quality pipelines with Apache Spark and Delta Lake
Building Data Quality pipelines with Apache Spark and Delta LakeBuilding Data Quality pipelines with Apache Spark and Delta Lake
Building Data Quality pipelines with Apache Spark and Delta LakeDatabricks
 
Crisp dm
Crisp dmCrisp dm
Crisp dmakbkck
 
Bitquery GraphQL for Analytics on ClickHouse
Bitquery GraphQL for Analytics on ClickHouseBitquery GraphQL for Analytics on ClickHouse
Bitquery GraphQL for Analytics on ClickHouseAltinity Ltd
 
개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 intro개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 introSeongyun Byeon
 
Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...Simplilearn
 
Upgrade to MySQL 8.0!
Upgrade to MySQL 8.0!Upgrade to MySQL 8.0!
Upgrade to MySQL 8.0!Ted Wennmark
 
Introduction to Database Log Analysis
Introduction to Database Log AnalysisIntroduction to Database Log Analysis
Introduction to Database Log AnalysisAnton Chuvakin
 
AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍
AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍
AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍Amazon Web Services Korea
 
글쓰는 개발자 모임, 글또
글쓰는 개발자 모임, 글또글쓰는 개발자 모임, 글또
글쓰는 개발자 모임, 글또Seongyun Byeon
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1Federico Campoli
 
로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법Jeongsang Baek
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해Terry Cho
 
ELK Stack - Kibana操作實務
ELK Stack - Kibana操作實務ELK Stack - Kibana操作實務
ELK Stack - Kibana操作實務Kedy Chang
 
CRISP-DM: a data science project methodology
CRISP-DM: a data science project methodologyCRISP-DM: a data science project methodology
CRISP-DM: a data science project methodologySergey Shelpuk
 
What makes it worth becoming a Data Engineer?
What makes it worth becoming a Data Engineer?What makes it worth becoming a Data Engineer?
What makes it worth becoming a Data Engineer?Hadi Fadlallah
 
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...Databricks
 
Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...
Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...
Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...SindhuVasireddy1
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유Hyojun Jeon
 
The "Big Data" Ecosystem at LinkedIn
The "Big Data" Ecosystem at LinkedInThe "Big Data" Ecosystem at LinkedIn
The "Big Data" Ecosystem at LinkedInSam Shah
 

What's hot (20)

Building Data Quality pipelines with Apache Spark and Delta Lake
Building Data Quality pipelines with Apache Spark and Delta LakeBuilding Data Quality pipelines with Apache Spark and Delta Lake
Building Data Quality pipelines with Apache Spark and Delta Lake
 
Crisp dm
Crisp dmCrisp dm
Crisp dm
 
Elasticsearch 簡介
Elasticsearch 簡介Elasticsearch 簡介
Elasticsearch 簡介
 
Bitquery GraphQL for Analytics on ClickHouse
Bitquery GraphQL for Analytics on ClickHouseBitquery GraphQL for Analytics on ClickHouse
Bitquery GraphQL for Analytics on ClickHouse
 
개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 intro개발자를 위한 (블로그) 글쓰기 intro
개발자를 위한 (블로그) 글쓰기 intro
 
Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...Data Science With Python | Python For Data Science | Python Data Science Cour...
Data Science With Python | Python For Data Science | Python Data Science Cour...
 
Upgrade to MySQL 8.0!
Upgrade to MySQL 8.0!Upgrade to MySQL 8.0!
Upgrade to MySQL 8.0!
 
Introduction to Database Log Analysis
Introduction to Database Log AnalysisIntroduction to Database Log Analysis
Introduction to Database Log Analysis
 
AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍
AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍
AWS Quicksight에서의 비즈니스 인텔리전스 - 김기완 :: 2015 리인벤트 리캡 게이밍
 
글쓰는 개발자 모임, 글또
글쓰는 개발자 모임, 글또글쓰는 개발자 모임, 글또
글쓰는 개발자 모임, 글또
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1
 
로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법로그 기깔나게 잘 디자인하는 법
로그 기깔나게 잘 디자인하는 법
 
Micro Service Architecture의 이해
Micro Service Architecture의 이해Micro Service Architecture의 이해
Micro Service Architecture의 이해
 
ELK Stack - Kibana操作實務
ELK Stack - Kibana操作實務ELK Stack - Kibana操作實務
ELK Stack - Kibana操作實務
 
CRISP-DM: a data science project methodology
CRISP-DM: a data science project methodologyCRISP-DM: a data science project methodology
CRISP-DM: a data science project methodology
 
What makes it worth becoming a Data Engineer?
What makes it worth becoming a Data Engineer?What makes it worth becoming a Data Engineer?
What makes it worth becoming a Data Engineer?
 
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
 
Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...
Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...
Designing Data-Intensive Applications_ The Big Ideas Behind Reliable, Scalabl...
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
 
The "Big Data" Ecosystem at LinkedIn
The "Big Data" Ecosystem at LinkedInThe "Big Data" Ecosystem at LinkedIn
The "Big Data" Ecosystem at LinkedIn
 

Viewers also liked

淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2Wen-Tien Chang
 
紅寶石鐵道漫遊指南
紅寶石鐵道漫遊指南紅寶石鐵道漫遊指南
紅寶石鐵道漫遊指南Juanito Fatas
 
關於測試,我說的其實是......
關於測試,我說的其實是......關於測試,我說的其實是......
關於測試,我說的其實是......hugo lu
 
測試是什麼
測試是什麼測試是什麼
測試是什麼Yvonne Yu
 
twMvc#30 | 技術人員與業務團隊的無礙的溝通法則
twMvc#30 | 技術人員與業務團隊的無礙的溝通法則twMvc#30 | 技術人員與業務團隊的無礙的溝通法則
twMvc#30 | 技術人員與業務團隊的無礙的溝通法則twMVC
 
敏捷軟體開發方法與 Scrum 簡介
敏捷軟體開發方法與 Scrum 簡介敏捷軟體開發方法與 Scrum 簡介
敏捷軟體開發方法與 Scrum 簡介曦 徐
 

Viewers also liked (6)

淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2
 
紅寶石鐵道漫遊指南
紅寶石鐵道漫遊指南紅寶石鐵道漫遊指南
紅寶石鐵道漫遊指南
 
關於測試,我說的其實是......
關於測試,我說的其實是......關於測試,我說的其實是......
關於測試,我說的其實是......
 
測試是什麼
測試是什麼測試是什麼
測試是什麼
 
twMvc#30 | 技術人員與業務團隊的無礙的溝通法則
twMvc#30 | 技術人員與業務團隊的無礙的溝通法則twMvc#30 | 技術人員與業務團隊的無礙的溝通法則
twMvc#30 | 技術人員與業務團隊的無礙的溝通法則
 
敏捷軟體開發方法與 Scrum 簡介
敏捷軟體開發方法與 Scrum 簡介敏捷軟體開發方法與 Scrum 簡介
敏捷軟體開發方法與 Scrum 簡介
 

Similar to A brief introduction to Machine Learning

Data Analyse Black Horse - ClickHouse
Data Analyse Black Horse - ClickHouseData Analyse Black Horse - ClickHouse
Data Analyse Black Horse - ClickHouseJack Gao
 
我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術Li Hsuan Hung
 
Introduction to big data
Introduction to big dataIntroduction to big data
Introduction to big data邦宇 叶
 
Top100summit前端的云时代支付宝前端平台架构 王保平
Top100summit前端的云时代支付宝前端平台架构  王保平Top100summit前端的云时代支付宝前端平台架构  王保平
Top100summit前端的云时代支付宝前端平台架构 王保平drewz lin
 
改善Programmer生活的sql技能
改善Programmer生活的sql技能改善Programmer生活的sql技能
改善Programmer生活的sql技能Rack Lin
 
Ruby 的快与慢
Ruby 的快与慢Ruby 的快与慢
Ruby 的快与慢vincent253
 
Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛Wen-Tien Chang
 
1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计RolfZhang
 
深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做SAS TW
 
合久必分,分久必合
合久必分,分久必合合久必分,分久必合
合久必分,分久必合Qiangning Hong
 
淘宝双11双12案例分享
淘宝双11双12案例分享淘宝双11双12案例分享
淘宝双11双12案例分享vanadies10
 
美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New翀 刘
 
網站規劃
網站規劃網站規劃
網站規劃jiannrong
 
⼤語⾔模型 LLM 應⽤開發入⾨
⼤語⾔模型 LLM 應⽤開發入⾨⼤語⾔模型 LLM 應⽤開發入⾨
⼤語⾔模型 LLM 應⽤開發入⾨Wen-Tien Chang
 
Calliplus 開發經驗分享
Calliplus 開發經驗分享Calliplus 開發經驗分享
Calliplus 開發經驗分享Daniel Kao
 
Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016Kirk Chen
 
Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...
Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...
Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...Souyi Yang
 
构建可维护的Javascript 小米网
构建可维护的Javascript 小米网构建可维护的Javascript 小米网
构建可维护的Javascript 小米网yang alex
 
2020 11-27 Taiwan DDD Conference
2020 11-27 Taiwan DDD Conference2020 11-27 Taiwan DDD Conference
2020 11-27 Taiwan DDD ConferenceGuan-Rong Huang
 
新浪云计算公开课第一期:Let’s run @ sae(丛磊)
新浪云计算公开课第一期:Let’s run @ sae(丛磊)新浪云计算公开课第一期:Let’s run @ sae(丛磊)
新浪云计算公开课第一期:Let’s run @ sae(丛磊)锐 张
 

Similar to A brief introduction to Machine Learning (20)

Data Analyse Black Horse - ClickHouse
Data Analyse Black Horse - ClickHouseData Analyse Black Horse - ClickHouse
Data Analyse Black Horse - ClickHouse
 
我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術
 
Introduction to big data
Introduction to big dataIntroduction to big data
Introduction to big data
 
Top100summit前端的云时代支付宝前端平台架构 王保平
Top100summit前端的云时代支付宝前端平台架构  王保平Top100summit前端的云时代支付宝前端平台架构  王保平
Top100summit前端的云时代支付宝前端平台架构 王保平
 
改善Programmer生活的sql技能
改善Programmer生活的sql技能改善Programmer生活的sql技能
改善Programmer生活的sql技能
 
Ruby 的快与慢
Ruby 的快与慢Ruby 的快与慢
Ruby 的快与慢
 
Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛
 
1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计1到100000000 - 分布式大型网站的架构设计
1到100000000 - 分布式大型网站的架构设计
 
深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做深度學習(Deep learning)概論- 使用 SAS EM 實做
深度學習(Deep learning)概論- 使用 SAS EM 實做
 
合久必分,分久必合
合久必分,分久必合合久必分,分久必合
合久必分,分久必合
 
淘宝双11双12案例分享
淘宝双11双12案例分享淘宝双11双12案例分享
淘宝双11双12案例分享
 
美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New
 
網站規劃
網站規劃網站規劃
網站規劃
 
⼤語⾔模型 LLM 應⽤開發入⾨
⼤語⾔模型 LLM 應⽤開發入⾨⼤語⾔模型 LLM 應⽤開發入⾨
⼤語⾔模型 LLM 應⽤開發入⾨
 
Calliplus 開發經驗分享
Calliplus 開發經驗分享Calliplus 開發經驗分享
Calliplus 開發經驗分享
 
Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016Open source的devops工具箱 公開版@coscup2016
Open source的devops工具箱 公開版@coscup2016
 
Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...
Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...
Drupal 是好的生財工具嗎?網站標案經驗分享 台灣i運動資訊平台(Drupal as a Cash Cow for Prodution House? ...
 
构建可维护的Javascript 小米网
构建可维护的Javascript 小米网构建可维护的Javascript 小米网
构建可维护的Javascript 小米网
 
2020 11-27 Taiwan DDD Conference
2020 11-27 Taiwan DDD Conference2020 11-27 Taiwan DDD Conference
2020 11-27 Taiwan DDD Conference
 
新浪云计算公开课第一期:Let’s run @ sae(丛磊)
新浪云计算公开课第一期:Let’s run @ sae(丛磊)新浪云计算公开课第一期:Let’s run @ sae(丛磊)
新浪云计算公开课第一期:Let’s run @ sae(丛磊)
 

More from Wen-Tien Chang

RSpec on Rails Tutorial
RSpec on Rails TutorialRSpec on Rails Tutorial
RSpec on Rails TutorialWen-Tien Chang
 
ALPHAhackathon: How to collaborate
ALPHAhackathon: How to collaborateALPHAhackathon: How to collaborate
ALPHAhackathon: How to collaborateWen-Tien Chang
 
Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀Wen-Tien Chang
 
Exception Handling: Designing Robust Software in Ruby (with presentation note)
Exception Handling: Designing Robust Software in Ruby (with presentation note)Exception Handling: Designing Robust Software in Ruby (with presentation note)
Exception Handling: Designing Robust Software in Ruby (with presentation note)Wen-Tien Chang
 
Exception Handling: Designing Robust Software in Ruby
Exception Handling: Designing Robust Software in RubyException Handling: Designing Robust Software in Ruby
Exception Handling: Designing Robust Software in RubyWen-Tien Chang
 
從 Classes 到 Objects: 那些 OOP 教我的事
從 Classes 到 Objects: 那些 OOP 教我的事從 Classes 到 Objects: 那些 OOP 教我的事
從 Classes 到 Objects: 那些 OOP 教我的事Wen-Tien Chang
 
Yet another introduction to Git - from the bottom up
Yet another introduction to Git - from the bottom upYet another introduction to Git - from the bottom up
Yet another introduction to Git - from the bottom upWen-Tien Chang
 
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩Wen-Tien Chang
 
Ruby 程式語言綜覽簡介
Ruby 程式語言綜覽簡介Ruby 程式語言綜覽簡介
Ruby 程式語言綜覽簡介Wen-Tien Chang
 
A brief introduction to SPDY - 邁向 HTTP/2.0
A brief introduction to SPDY - 邁向 HTTP/2.0A brief introduction to SPDY - 邁向 HTTP/2.0
A brief introduction to SPDY - 邁向 HTTP/2.0Wen-Tien Chang
 
RubyConf Taiwan 2012 Opening & Closing
RubyConf Taiwan 2012 Opening & ClosingRubyConf Taiwan 2012 Opening & Closing
RubyConf Taiwan 2012 Opening & ClosingWen-Tien Chang
 
從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup
從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup
從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean StartupWen-Tien Chang
 
那些 Functional Programming 教我的事
那些 Functional Programming 教我的事那些 Functional Programming 教我的事
那些 Functional Programming 教我的事Wen-Tien Chang
 
RubyConf Taiwan 2011 Opening & Closing
RubyConf Taiwan 2011 Opening & ClosingRubyConf Taiwan 2011 Opening & Closing
RubyConf Taiwan 2011 Opening & ClosingWen-Tien Chang
 
BDD style Unit Testing
BDD style Unit TestingBDD style Unit Testing
BDD style Unit TestingWen-Tien Chang
 
RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試Wen-Tien Chang
 
Service-Oriented Design and Implement with Rails3
Service-Oriented Design and Implement with Rails3Service-Oriented Design and Implement with Rails3
Service-Oriented Design and Implement with Rails3Wen-Tien Chang
 

More from Wen-Tien Chang (20)

RSpec on Rails Tutorial
RSpec on Rails TutorialRSpec on Rails Tutorial
RSpec on Rails Tutorial
 
RSpec & TDD Tutorial
RSpec & TDD TutorialRSpec & TDD Tutorial
RSpec & TDD Tutorial
 
ALPHAhackathon: How to collaborate
ALPHAhackathon: How to collaborateALPHAhackathon: How to collaborate
ALPHAhackathon: How to collaborate
 
Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀Git 版本控制系統 -- 從微觀到宏觀
Git 版本控制系統 -- 從微觀到宏觀
 
Exception Handling: Designing Robust Software in Ruby (with presentation note)
Exception Handling: Designing Robust Software in Ruby (with presentation note)Exception Handling: Designing Robust Software in Ruby (with presentation note)
Exception Handling: Designing Robust Software in Ruby (with presentation note)
 
Exception Handling: Designing Robust Software in Ruby
Exception Handling: Designing Robust Software in RubyException Handling: Designing Robust Software in Ruby
Exception Handling: Designing Robust Software in Ruby
 
從 Classes 到 Objects: 那些 OOP 教我的事
從 Classes 到 Objects: 那些 OOP 教我的事從 Classes 到 Objects: 那些 OOP 教我的事
從 Classes 到 Objects: 那些 OOP 教我的事
 
Yet another introduction to Git - from the bottom up
Yet another introduction to Git - from the bottom upYet another introduction to Git - from the bottom up
Yet another introduction to Git - from the bottom up
 
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
 
Ruby 程式語言綜覽簡介
Ruby 程式語言綜覽簡介Ruby 程式語言綜覽簡介
Ruby 程式語言綜覽簡介
 
A brief introduction to SPDY - 邁向 HTTP/2.0
A brief introduction to SPDY - 邁向 HTTP/2.0A brief introduction to SPDY - 邁向 HTTP/2.0
A brief introduction to SPDY - 邁向 HTTP/2.0
 
RubyConf Taiwan 2012 Opening & Closing
RubyConf Taiwan 2012 Opening & ClosingRubyConf Taiwan 2012 Opening & Closing
RubyConf Taiwan 2012 Opening & Closing
 
從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup
從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup
從 Scrum 到 Kanban: 為什麼 Scrum 不適合 Lean Startup
 
Git Tutorial 教學
Git Tutorial 教學Git Tutorial 教學
Git Tutorial 教學
 
那些 Functional Programming 教我的事
那些 Functional Programming 教我的事那些 Functional Programming 教我的事
那些 Functional Programming 教我的事
 
RubyConf Taiwan 2011 Opening & Closing
RubyConf Taiwan 2011 Opening & ClosingRubyConf Taiwan 2011 Opening & Closing
RubyConf Taiwan 2011 Opening & Closing
 
BDD style Unit Testing
BDD style Unit TestingBDD style Unit Testing
BDD style Unit Testing
 
RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試RSpec 讓你愛上寫測試
RSpec 讓你愛上寫測試
 
Git and Github
Git and GithubGit and Github
Git and Github
 
Service-Oriented Design and Implement with Rails3
Service-Oriented Design and Implement with Rails3Service-Oriented Design and Implement with Rails3
Service-Oriented Design and Implement with Rails3
 

A brief introduction to Machine Learning