Convolution Neural Network คืออะไร

PradyaSin
2 min readAug 16, 2019

--

Convolutional Neural Network (CNN) คือ การวิเคราะห์รูปภาพที่มนุษย์มองเห็น โดยจะแบ่งรูปภาพออกเป็นพื้นที่ย่อยๆ เป็น Pixel แต่ละอันเพื่อทำการวิเคราะห์ Metric ของรูปภาพ โดยถ้าเป็นรูปภาพสีขาวดำ จะเป็น Metric 2x2 แต่ถ้าเป็นภาพสีจะเป็น Metric 3x3

Convolutional Neural Network Architecture
Source:
https://adventuresinmachinelearning.com

ตัวอย่างวิธีการแบ่งรูปภาพออกเป็น Metric

Source: Data Science SWU

ขั้นตอนการทำ CNN มี 4 ขั้นตอน
Step 1: Convolution
Step 2: Max Pooling
Step 3: Flattening
Step 4: Full Connection

  1. Convolution : การทำการคูณเมทริกซ์ ระหว่าง Input Image กับ Feature Detector ทำให้ได้ Feature Map เช่น Application ปรับแต่งรูป

เมื่อทำการคูณเมทริกซ์ทั้งหมดแล้วจะได้ Feature Map จำนวนมากโดยจะเรียกทั้งหมดว่า Convolutional Layer

หลังจากได้ Convolutional Layer ก็ทำการ Rectifier โดยทำ ReLu Layer

2. Max Pooling : คือ ตัวกรอกที่ใช้ในการเลือกค่าที่มากที่สุดในบริเวณเมทริกซ์เดียวกัน

ระบบจะทำการเลือกค่าที่มากที่สุดของแต่ละเมทริกซ์เพื่อให้ได้ Pooled Feature Map

3. Flattening เป็นการทำ Pooling Feature Map ที่ได้ทำเป็นคอลัมน์เดียวกัน เพื่อความสะดวกในการวิเคราะห์ข้อมูล

4. Full Connection คือ การนำ Flattening ที่ได้มาเข้าสู่โมเดล Deep Learning

ทำการใส่ค่า Y เพื่อใช้ในการ Predict เช่น Y = ‘Dog’ แล้วข้อมูลที่ใส่ลงไปเป็น Dog กี่เปอร์เซ็นต์

ผลลัพธ์ออกมาเป็น Dog 95%

Summary Convolutional Neural Network

Source : Data Science , SWU

--

--