More Related Content Similar to 07 classification 3 neural network (9) 07 classification 3 neural network2. Basic Concepts of Neural Networks
โครงข่ายประสาท (NN) หรือ โครงข่ายประสาทเทียม (artificial neural network
(ANN))
เทคโนโลยีคอมพิวเตอร์ที่ซึ่งทำกำรสร้ำงคอมพิวเตอร์ที่สำมำรถปฏิบัติงำนเหมือน
สมองมนุษย์โดยเครื่องจักรมีกำรประมวลผลคล้ำยกับหน่วยควำมจำที่เก็บไว้ในสมอง
และสำมำรถทำงำนร่วมกับสำรสนเทศที่ไม่ชัดเจน
2
3. Basic Concepts of Neural Networks
การประมวลผลเชิงประสาท (Neural computing)
กำรออกแบบคอมพิวเตอร์เชิงอำศัยประสบกำรณ์เพื่อสร้ำงคอมพิวเตอร์แบบ
อัจฉริยะที่ทำงำนโดยใช้แบบจำลองตำมฟังก์ชันของสมองมนุษย์
Perceptron
โครงสร้ำงของโครงข่ำยประสำทแบบที่ไม่มีชั้นแฝงเร้น (hidden layer)
3
4. Basic Concepts of Neural Networks
โครงข่ำยประสำทเทียมและของมนุษย์ (Biological and artificial neural networks)
นิวรอน (Neurons)
เซลล์ (หน่วยประมวลผล (processing elements)) ของ biological หรือ artificial
neural network
นิวเคลียส (Nucleus)
ส่วนประมวลผลกลำงของนิวรอน
เดรนไดน์ (Dendrite)
ส่วนของ biological neuron ที่รับอินพุตเข้ำสู่เซลล์
4
5. Basic Concepts of Neural Networks
แอ็กซอน (Axon)
จุดต่อด้ำนออก(i.e., terminal) จำก biological neuron
ไซแนพส์ (Synapse)
กำรเชื่อมต่อ (ที่ซึ่งมีกำรให้ค่ำน้ำหนัก (weights)) ระหว่ำงส่วนประมวลผลต่ำง ๆ
ในโครงข่ำยประสำท
5
8. Basic Concepts of Neural Networks
องค์ประกอบของ ANN
โทโพโลจี (Topology)
ประเภทของนิวรอนต่ำง ๆ ที่ถุกจัดระเบียบในโครงข่ำยประสำทหนึ่ง ๆ
การแพร่กลับ (Back propagation)
อัลกอริธึมของกำรเรียนรู้ที่เป็นที่รู้จักกันดีในกำรคำนวณเชิงประสำท กำรเรียนรู้ถูก
กระทำโดยกำรเปรียบเทียบเอำต์พุตที่คำนวณได้กับเอำต์พุตที่ต้องกำร (ซึ่งรู้มำแล้ว
จำกอดีต)
8
10. Artificial Neural Network
โครงข่ำยประสำทเทียม หรือ เครือข่ำยประสำทเทียม(Artificial Neural Network : ANN)”
หมำยถึง คอมพิวเตอร์ที่สำมำรถเลียนแบบกำรทำงำนของสมองมนุษย์ได้ ด้วยกำรประมวลผล
ข้อมูลสำรสนเทศ และองค์ควำมรู้ได้ในครำวละมำกๆ เป็นรวมกลุ่มแบบขนำนของหน่วย
ประมวลผลย่อยๆ ซึ่งกำรเชื่อมต่อในโครงสร้ำงทำให้เกิดควำมรู้ ประสบกำรณ์ ควำมฉลำดของ
ข่ำยงำน
10
11. Artificial Neural Network
โครงสร้ำงของสมองมนุษย์ vs คอมพิวเตอร์
เซลล์ประสาทส่งสัญญาณ
ได้ในอัตราสูงสุดประมาณ
1000 ครั้ง/วินาที
ขึ้นอยู่กับความเร็วของ
คอมพิวเตอร์
ในปัจจุบัน
ความเร็ว
การคานวณ
เลขคณิต
สมองคน
การจดจาและแยก
แยะรูปภาพ, เสียง สมองคน คอมพิวเตอร์
คอมพิวเตอร์
11
12. Artificial Neural Network
Cell body (soma)
Dendrite
Nucleus
ภาพเซลล์ประสาท (Neuron)
Axon
Myelin sheath
Synapse
จำกกำรเรียนรู้นี้ไปใช้ในกำรวิเครำะห์
ตีควำมหรือควำมหมำยของข้อมูลที่อยู่ใน
ลักษณะคล้ำยกัน ซึ่งวิธีกำรดังกล่ำวจะ
เป็นกำรเลียนแบบวิธีกำรทำงำนของสมอง
มนุษย์ใน 2 ลักษณะดังนี้
1. ควำมรู้ ประสบกำรณ์ หรือควำมฉลำด
นั้นเกิดจำกกระบวนกำรเรียนรู้ (learning
process)
2. ควำมรู้ถูกเก็บที่ กำรเชื่อมต่อระหว่ำง
เซลล์ประสำท หรือ นิวรอน (neurons)
และ จุดประสำนประสำท (synapses)
เรียกว่ำ synaptic weights
12
14. Artificial Neural Network
ข้อดี
ทนทำนต่อชุดข้อมูลสอนที่มีค่ำผิดพลำด
มักจะให้ควำมแม่นยำในกำรทำนำยสูง
ให้ผลลัพธ์เป็นเวกเตอร์คุณลักษณะค่ำจริง หรือค่ำไม่ต่อเนื่อง
ใช้ได้ดีกับปัญหำกำรรู้จำเสียง (voice) ลำยมือ (handwriting) หรือ รูปภำพ (image)
ข้อด้อย
ใช้เวลำสอนหรือเรียนรู้นำน
ผลลัพธ์หรือค่ำน้ำหนักของตัวแปรฟังก์ชันที่ได้จำกกำรเรียนรู้ค่อนข้ำงเข้ำใจยำก
14
15. ประเภทของการเรียนรู้แบบโครงข่ายประสาทเทียม
กำรเรียนแบบมีกำรสอน (Supervised Learning)
เป็นกำรเรียนแบบที่มีกำรตรวจคำตอบเพื่อให้วงจรข่ำยปรับตัว ชุดข้อมูลที่ใช้สอน
วงจรข่ำยจะมีคำตอบไว้คอยตรวจดูว่ำวงจรข่ำยให้คำตอบที่ถูกหรือไม่ ถ้ำตอบไม่ถูก วงจร
ข่ำยก็จะปรับตัวเองเพื่อให้ได้คำตอบที่ดีขึ้น (เปรียบเทียบกับคน เหมือนกับกำรสอนนักเรียน
โดยมีครูผุ้สอนคอยแนะนำ)
กำรเรียนแบบไม่มีกำรสอน (Unsupervised Learning)
เป็นกำรเรียนแบบไม่มีผู้แนะนำ ไม่มีกำรตรวจคำตอบว่ำถูกหรือผิด วงจรข่ำยจะ
จัดเรียงโครงสร้ำงด้วยตัวเองตำมลักษณะของข้อมูล ผลลัพธ์ที่ได้ วงจรข่ำยจะสำมำรถจัด
หมวดหมู่ ของข้อมูลได้ (เปรียบเทียบกับคน เช่นกำรที่เรำสำมำรถแยกแยะพันธุ์พืช พันธุ์
สัตว์ตำมลักษณะรูปร่ำงของมันได้เองโดยไม่มีใครสอน)
15
17. สถาปัตยกรรมของโครงข่ายประสาทเทียม
2. โครงข่ายการส่งข้อมูลแบบย้อนกลับ (Feedback Network)
เป็นสถำปัตยกรรมที่กำหนดให้กำรส่งข้อมูลจำกข้อมูลในชั้นข้อมูลขำเข้ำ (Input Layer) เข้ำมำ
ภำยในชั้นซ่อน (Hidden Layer) และส่งไปยังข้อมูลขำออก (Output Layer) จะมีทิศทำงในกำร
ไหลของข้อมูลไปในทิศทำงเดียวกัน ข้อมูลที่ประมวลผลในวงจรข่ำยจะถูกส่งไปในทิศทำงเดียว
จำก Input ส่งต่อมำเรื่อย ๆ จนถึง Output โดยมีกำรย้อนกลับของข้อมูล เพื่อให้กำรจำแนกนั้นมี
ประสิทธิภำพมำกขึ้นนั้นเอง
Input nodes Output nodes
17
19. A Single Layer Perceptron Network
เพอร์เซปตรอน เป็นโครงข่ำยประสำทเทียมแบบง่ำยมีหน่วยเดียว ที่จำลองลักษณะของเซลล์
ประสำท (neuron) ของมนุษย์
ถือเป็นหน่วยย่อยที่สุดของข่ำยงำนประสำทเทียม ซึ่งทำหน้ำที่รับอินพุตเป็นเวกเตอร์จำนวนจริงเข้ำ
มำแล้วคำนวณหำผลรวมเชิงเส้น (linear combination)
Input node (x1, x2, x3)
ค่าน้าหนักของอินพุต (wi1, wi2, wi3)
ฟังก์ชันกระตุ้น
(Activate Function)
wi1
wi2
wi3
mi
S yi
x1
x2
x3
19
20. A Single Layer Perceptron Network
จำนวนอินพุตขึ้นอยู่กับจำนวนแอตทริบิวท์ของ input data
ฟังก์ชันกระตุ้น (Activation function) ขึ้นอยู่กับลักษณะข้อมูลของ Output เช่น
ถ้ำ output ที่ต้องกำรเป็น “ใช่” หรือ “ไม่ใช่” เรำจะต้องใช้Threshold Function
ถ้ำ output เป็นค่ำตัวเลขที่ต่อเนื่อง เรำต้องใช้continuous function เช่น Sigmoid function
Tx
Tx
xf
if0
if1
)(
xน
e
xf
1
1
)(
20
22. การทางานของวงจร A Single Layer Perceptron Network
สมมุติว่ำมีวงจรข่ำย perceptron ที่มี 2 input nodes และมี activation function เป็น threshold function
มีผลลัพธ์แบบ binary output คือ 0 และ 1
0if0
0if1
2211
2211
xwxw
xwxw
y
y = 0
x1
x2
+
++
-
-y = 1
ถ้า (x1,x2) อยู่เหนือเส้นตรง L จะได้y = 1
ถ้า (x1,x2) อยู่ใต้เส้นตรง L จะได้y = 0
เส้นตรง L = 02211 xwxw
y
w1
w2
x1
x2
^
22
23. การเรียนรู้ A Single Layer Perceptron Learning
1. ป้อน Input เข้ำ Network
2. คำนวณหำค่ำ Network Output
3. คำนวณค่ำ Error
4. ปรับค่ำ Weight ทุกค่ำ
5. กลับไปทำข้อ 1 ใหม่จนกว่ำ Error จะต่ำลงจนยอมรับได้
yxx outputDesired),(Input 21
)(ˆ 2211 xwxwfy
yy ˆ
oldnewwww oldnew ,
t
สูตรกำรปรับค่ำ weight
ii xyyw )ˆ(
)ˆ( yy rateLearning
23
25. ตัวอย่างการเรียนรู้
n x1 x2 y y^ Err W1
New
w1 W2
New
w2 Q
New
0 0.5 2.5 1
1 0 0 0 0 0 0.5 0 2.5 0 1
2 0 1 0 1 -1 0.5 0 2.3 -0.2 1.2
3 1 0 0 0 0 0.5 0 2.3 0 1.2
4 1 1 1 1 0 0.5 0 2.3 0 1.2
5 0 0 0 0 0 0.5 0 2.3 0 1.2
6 0 1 0 1 -1 0.5 0 2.1 -0.2 1.4
7 1 0 0 0 0 0.5 0 2.1 0 1.4
8 1 1 1 1 0 0.5 0 2.1 0 1.4
9 0 0 0 0 0 0.5 0 2.1 0 1.4
10 0 1 0 1 -1 0.5 0 1.9 -0.2 1.6
… … … … … … … … … … …
)(ˆ 2211 xwxwfy
yy ˆ
ii xyyw )ˆ(
)ˆ( yy
new old
new old
w w w
25
26. กราฟผลลัพธ์จากการเรียนรู้
-0.2 0 0.2 0.4 0.6 0.8 1 1.2
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
ปรับครั้งที่ 4
ปรับครั้งที่ 8
ปรับครั้งที่ 12
ปรับครั้งที่ 16
เริ่มต้น
เส้นตรงที่สำมำรถแบ่งกลุ่มได้
(linearly separate function)
(1,1)(1,0)
(0,0) (0,1)
26
28. Higher Dimension Feature space
ในกรณีที่มี input คือ x1, x2,…, xn
ดังนั้น output ของ Perceptron คือ
0if0
0if1
2211
2211
xwxwxw
xwxwxw
y
NN
NN
28
29. Higher Dimension Feature space
0332211 xwxwxw
Class B
Decision planeX1
X3
X2
Class A
สมกำรนี้เป็นสมกำรของระนำบ 3 มิติ
29
30. การประมาณค่าฟังก์ชัน
ผลลัพธ์อยู่ในรูปกำรประมำณค่ำฟังก์ชัน
สำมำรถใช้ a single layer perceptron ประมำณค่ำ function นี้
humidity Rain temperature
0 0 0.0
0 1 2.0
1 0 1.0
1 1 3.0
x1 x2 y = x1 +2x2
y
w1
w2
x1
x2
^
โดยมี output ในรูป
2211ˆ xwxwy
- เรำต้องกำรปรับ w1และ w2 ที่ทำให้ y ใกล้เคียงกับ y มำกที่สุด^
(ในกรณีนี้ activationfunction คือ identity
function f(x)= x )
30
32. การปรับค่าน้าหนักในการประมาณค่าฟังก์ชัน
0 0.5 1 1.5 2
1
1.2
1.4
1.6
1.8
2
2.2
2.4
2.6
2.8
3
w2
w1
Mean square error e2 as a function of w1 and w2
จุดต่ำสุดอยู่ที่ (1,2)
ซึ่งให้ค่ำMSE = 0
เรำจะต้องปรับ w1และ w2 ให้เข้ำสู่จุดต่ำสุดใน error surface
32
33. การปรับค่าน้าหนักในการประมาณค่าฟังก์ชัน
0 0.5 1 1.5 2
1
1.2
1.4
1.6
1.8
2
2.2
2.4
2.6
2.8
3
w2
w1
ลักษณะกำรปรับ w1และ w2 ให้เข้ำสู่จุดต่ำสุดใน error surface
จุดเริ่มต้นของ
(w1,w2)
ปรับครั้งที่ 1
ปรับครั้งที่ 2
ปรับครั้งที่ 3
ปรับครั้งที่ k
เป้าหมาย
33
34. Gradient Descent Method
เรำต้องกำรจะปรับ w1และ w2 ให้เข้ำสู่จุดต่ำสุดใน error surface โดยกำรเอียงลงไปหำคำตอบ
ของพื้นที่ที่เรำต้องกำรมำกที่สุด
หลักกำรเดินลงเขำไปในทิศทำงที่พื้นเอียงลงมำก
ที่สุดเรียกว่ำ Gradient Descent Method
1. คำนวณหำ gradient ของพื้นผิว (error surface)
ในตำแหน่งที่เรำยืนอยู่(ตำแหน่ง (w1,w2) ใน
ปัจจุบัน) gradient ที่ได้จะชี้ไปในทิศทำงที่ชัน
ที่สุด (ทิศขึ้นเขำ)
2. เดินไปในทิศทำงตรงข้ำมกับ gradient ที่
คำนวณได้ในระยะทำงสั้น (กำรปรับค่ำ w1,w2)
3. ไปทำขั้นตอนที่ 1 ใหม่จนกว่ำจะถึงจุดต่ำสุด
34
35. ข้อเสียของ Gradient Descent Method
Local minimum
Global minimum
วิธีกำร gradient descent method อำจจะทำให้เรำติดอยู่
ที่ local minima ซึ่งยังไม่ใช้จุดที่ต่ำสุดจริง ๆ
35
36. การประมาณค่าฟังก์ชันเมื่อมี higher dimension
)(ˆ
1
N
j
jj xwfy
w1
y
x4
w2
w4
w3
x1
x2
x3
Network output คำนวณได้จำก
Square error e2 คำนวณได้จำก
2
1
22
))((
ˆ
j
N
j
j xwfy
yy
Slope e2 เทียบกับ wj คำนวณได้จำก
jj
N
j
jj
N
j
j
j
N
j
j
jj
xxwfxwfy
xwfy
ww
))())((2
))((
11
2
1
2
36
37. การประมาณค่าฟังก์ชันเมื่อมี higher dimension
Slope e2 เทียบกับ q คำนวณได้จำก
))())((
))())((
11
11
j
N
j
jj
N
j
j
jj
N
j
jj
N
j
jj
xwfxwfy
xxwfxwfyw
))())((2
11
2
j
N
j
jj
N
j
j xwfxwfy
a, a > 0, เรียกว่ำLearning rate
ดังนั้นเราจะได้
oldnew
j
old
j
new
j www
สมกำรกำรปรับ weight จะเป็น
37
38. ทาไมถึงการปรับค่า weight ทีละน้อย
0 0.5 1 1.5 2
1
1.2
1.4
1.6
1.8
2
2.2
2.4
2.6
2.8
3
w2
w1
จุดเริ่มต้นของ
(w1,w2)
ปรับครั้งที่ 1
ปรับครั้งที่ 2
ปรับครั้งที่ 3
ปรับครั้งที่ k
กำรปรับ weight ถ้ำปรับโดยใช้
learning rate ค่ำมำก ๆ จะทำให้
network ปรับตัวเข้ำสู่จุดต่ำสุดได้ช้ำ
หรืออำจไม่ได้เลย (unstable)
เป้าหมาย
38
39. ทาไมถึงการปรับค่า weight ทีละน้อย
0 0.5 1 1.5 2
1
1.2
1.4
1.6
1.8
2
2.2
2.4
2.6
2.8
3
w2
w1
เป้าหมาย
จุดเริ่มต้นของ
(w1,w2)
ปรับครั้งที่ 1
ปรับครั้งที่ 2
ปรับครั้งที่ 3
ปรับครั้งที่ k
กำรปรับ weight ทีละน้อยจะทำให้
network ปรับตัวเข้ำสู่จุดต่ำสุดได้ดีและ
ช่วยลดเรื่องกำรไม่เสถียร unstable ได้
39
40. ข้อจากัดของ A Single Layer Perceptron
Concept หรือ Function ที่สำมำรถเรียนได้โดยเพอร์เซปตรอนเดี่ยว จะต้องเป็นฟังก์ชันแยกเชิง
เส้นได้(linearly separate function) ถ้ำเป็นฟังก์ชันแยกเชิงเส้นไม่ได้(linearly nonseparable)
กำรฝึกวงจรข่ำยโดยกำรปรับค่ำ weight อำศัยหลักกำรของ gradient descent method เพื่อที่จะลด
ค่ำควำมผิดพลำดให้ต่ำที่สุด
Gradient descent method มีจุดอ่อนคือวิธีกำรนี้อำจจะทำให้วงจรข่ำยติดอยู่ที่ local minima ของ
error surface ได้
40
41. เครื่องมือที่ใช้งานประยุกต์เกี่ยวกับโครงข่ายประสาทเทียม
MathLab มีฟังก์ชันพร้อมกำรใช้งำนสำหรับกำรทดลองทำงำนวิจัย
NeuroXL Predictor http://www.neuroxl.com/financial_forecasting_software.htm
เป็นซอฟต์แวร์ที่พัฒนำขึ้นโดยใช้เทคโนโลยีโครงข่ำยประสำทเสมือน ร่วมกับกระดำษคำนวณ
อิเล็กทรอนิกส์ของโปรแกรม Microsoft Excel เพื่อเป็นเครื่องมือในกำรวิเครำะห์และพยำกรณ์
ในเรื่องต่ำง ๆ ทำงด้ำนธุรกิจ เช่น ตลำดหุ้นใช้ในกำรพยำกรณ์หุ้นและกำรลงทุนได้ ใช้ในกำร
พยำกรณ์ทำงด้ำนกำรตลำดเช่น พยำกรณ์ยอดขำยได้ใช้สนับสนุนกำรวำงแผนทำงกำรเงินได้ใช้
พยำกรณ์ทำงด้ำนเศรษฐศำสตร์ได้คำดกำรณ์อัตรำแลกเปลี่ยนเงินตรำต่ำงประเทศได้
41
46. HW#7
46
What is Neural Networks?
Please example the biological and artificial neural
networks?
Please explain how many components of artificial
neural networks?
Please explain the advantage and disadvantage of
artificial neural networks?
How many types of artificial neural networks
learning?
Please explain the architectures of artificial neural
networks?
47. HW#7
47
Please calculation for learning by the backpropagation algorithm.
The figure shows a multilayer feed-forward neural network. Let the
learning rate be 0.9. The initial weight and bias values of the network
are given in the table, along with the first training tuple X=(1,0,1),
with class label of 1. Please calculate net input and output, error at
the each node and weight and bias updating.
48. LAB 7
48
Use weka program to construct a neural network
classification from the given file.
csvColorExample.arff
eurodata.arff