Convolutional Neural Network (CNN) нь дүрс таних даалгавруудад өргөн хэрэглэгддэг гүнзгий суралцах загварын нэг төрөл юм. Энэ нь харааны өгөгдлийг үр дүнтэй боловсруулж, дүн шинжилгээ хийхэд тусгайлан зориулагдсан бөгөөд үүнийг компьютерийн харааны програмуудад хүчирхэг хэрэгсэл болгодог. Энэ хариултанд бид CNN-ийн гол бүрэлдэхүүн хэсгүүд болон тэдгээрийн дүрсийг таних үүрэг даалгаврын талаар ярилцах болно.
1. Convolutional Layers: Convolutional Layers нь CNN-ийн барилгын материал юм. Эдгээр нь зураглал үүсгэхийн тулд оролтын зурагтай нийлсэн суралцаж болох шүүлтүүр эсвэл цөмүүдээс бүрддэг. Шүүлтүүр бүр зураг дээрх ирмэг, булан, бүтэц гэх мэт тодорхой хэв маяг, онцлогийг илрүүлдэг. Хувиргах үйлдэл нь шүүлтүүрийг зураг дээр гулсуулж, шүүлтүүрийн жин ба холбогдох зургийн нөхөөсийн хооронд цэгийн бүтээгдэхүүнийг тооцоолох явдал юм. Энэ үйл явц нь зураг дээрх байршил бүрийн хувьд давтагдаж, өөр өөр функц байгаа эсэхийг тодруулсан функцийн газрын зургийг үүсгэдэг.
Жишээ: Хэвтээ ирмэгийг илрүүлдэг 3×3 шүүлтүүрийг авч үзье. Оруулсан зурагтай хослуулсан тохиолдолд энэ нь зургийн хэвтээ ирмэгийг онцолсон онцлог газрын зургийг гаргах болно.
2. Pooling Layers: Pooling layers нь эргэлтийн давхаргуудын үүсгэсэн онцлогийн газрын зургийг багасгахад ашиглагддаг. Тэд хамгийн чухал мэдээллийг хадгалахын зэрэгцээ газрын зургийн орон зайн хэмжээг багасгадаг. Хамгийн түгээмэл хэрэглэгддэг нэгдэх үйл ажиллагаа бол нэгтгэх цонхны доторх хамгийн их утгыг сонгох max pooling юм. Энэ нь сүлжээний тооцооллын нарийн төвөгтэй байдлыг багасгахад тусалдаг ба оролтын дүрс дэх орон зайн жижиг өөрчлөлтүүдэд илүү бат бөх болгодог.
Жишээ нь: Онцлогийн газрын зураг дээр 2×2 нэгтгэх цонхоор хамгийн их нэгтгэлийг ашиглах нь давхцаагүй 2×2 бүс бүрт хамгийн их утгыг сонгож, орон зайн хэмжээсийг хоёр дахин үр дүнтэйгээр багасгах болно.
3. Идэвхжүүлэх функцууд: Идэвхжүүлэх функцууд нь CNN-д шугаман бус байдлыг нэвтрүүлж, нарийн төвөгтэй хэв маягийг сурч, таамаглал гаргах боломжийг олгодог. CNN-д хамгийн түгээмэл хэрэглэгддэг идэвхжүүлэх функц бол Rectified Linear Unit (ReLU) бөгөөд гаралтыг хамгийн их тэг болон оролтоор тооцдог. ReLU нь энгийн бөгөөд алга болох градиентийн асуудлыг арилгах чадвартай тул илүүд үздэг.
Жишээ нь: Хэрэв нейроны гаралт сөрөг байвал ReLU үүнийг тэг болгож, нейроныг үр дүнтэй унтраадаг. Хэрэв гаралт эерэг байвал ReLU үүнийг өөрчлөхгүй.
4. Бүрэн холбогдсон давхаргууд: Бүрэн холбогдсон давхаргууд нь олборлосон шинж чанарууд дээр үндэслэн эцсийн таамаглалыг гаргах үүрэгтэй. Тэд өмнөх давхаргуудаас хавтгайрсан онцлог газрын зургийг авч, бүрэн холбогдсон мэдрэлийн эсүүдээр дамжуулдаг. Бүрэн холбогдсон давхарга дахь нейрон бүр нь өмнөх давхаргын нейрон бүртэй холбогдож, шинж чанаруудын хоорондын нарийн төвөгтэй харилцааг сурч, үнэн зөв таамаглал гаргах боломжийг олгодог.
Жишээ: Зураг таних даалгаварт бүрэн холбогдсон давхарга нь "муур", "нохой", "машин" гэх мэт өөр өөр ангилалд хамаарах нейронуудтай байж болно. Бүрэн холбогдсон давхаргын гаралтыг анги тус бүрт хамаарах оролтын зургийн магадлал гэж ойлгож болно.
5. Алдагдлын функц: Алдагдлын функц нь таамагласан гаралт болон газрын үнэний шошго хоорондын зөрүүг хэмждэг. Энэ нь CNN тухайн даалгаварыг хэр сайн гүйцэтгэж байгааг тоон үзүүлэлтээр харуулж, сургалтын явцад загварын параметрүүдийг шинэчлэх дохио өгдөг. Алдагдлын функцийг сонгох нь хоёртын ангилалд зориулсан хоёртын кросс энтропи эсвэл олон ангиллын ангилалд зориулсан категорик кросс энтропи гэх мэт дүрсийг таних тусгай даалгавараас хамаарна.
Жишээ: Хоёртын ангиллын даалгаварт хоёртын кросс-энтропийн алдагдал нь эерэг ангийн таамагласан магадлалыг жинхэнэ шошготой (0 эсвэл 1) харьцуулж, тэдгээрийн хоорондын их зөрүүг шийтгэдэг.
Convolutional Neural Network (CNN) нь convolutional layers, pooling layers, идэвхжүүлэх функцууд, бүрэн холбогдсон давхаргууд болон алдагдал функцээс бүрдэнэ. Гүйлгээний давхаргууд нь оролтын зургаас утга учиртай шинж чанаруудыг гаргаж авдаг бол нэгтгэх давхаргууд нь функцийн газрын зургийг багасгадаг. Идэвхжүүлэх функцууд нь шугаман бус байдлыг нэвтрүүлж, бүрэн холбогдсон давхаргууд нь эцсийн таамаглалыг гаргадаг. Алдагдлын функц нь урьдчилан таамагласан үр дүн болон газрын үнэний шошго хоорондын зөрүүг хэмжиж, сургалтын үйл явцыг удирдан чиглүүлдэг.
Сүүлийн үеийн бусад асуулт, хариулт TensorFlow дахь хувьслын мэдрэлийн сүлжээ:
- TensorFlow ашиглан CNN-ийг хэрхэн сургаж, оновчтой болгох вэ, түүний гүйцэтгэлийг үнэлэх нийтлэг үнэлгээний хэмжүүрүүд юу вэ?
- CNN-д бүрэн холбогдсон давхаргууд ямар үүрэг гүйцэтгэдэг вэ, тэдгээрийг TensorFlow-д хэрхэн хэрэгжүүлдэг вэ?
- CNN-д эвхэгддэг давхаргууд болон нэгтгэх давхаргын зорилго, үйл ажиллагааг тайлбарла.
- TensorFlow-ийг CNN-ийг зургийн ангилалд хэрхэн ашиглах вэ?
- Зурган дээрх нарийн төвөгтэй хэв маягийг сурч, танихын тулд CNN-д эргэлт, нэгтгэлийг хэрхэн нэгтгэдэг вэ?
- Далд давхаргууд болон бүрэн холбогдсон давхаргын үүрэг зэрэг CNN-ийн бүтцийг тайлбарлана уу.
- Цуглуулга нь CNN-ийн онцлог газрын зургийг хэрхэн хялбаршуулдаг вэ, хамгийн их нэгтгэх зорилго нь юу вэ?
- CNN-ийн эргэлтийн үйл явц, тэдгээр нь зураг дээрх хэв маяг, онцлогийг тодорхойлоход хэрхэн тусалдаг болохыг тайлбарла.
- Convolutional Neural Network (CNN)-ийн үндсэн бүрэлдэхүүн хэсгүүд юу вэ, тэдгээр нь дүрсийг танихад хэрхэн хувь нэмэр оруулдаг вэ?