convolution
Főnév
convolution (tsz. convolutions)
Convolution (magyarul: konvolúció) egy matematikai művelet, amely két függvényt egyesít oly módon, hogy egy harmadik függvényt hoz létre. Ez a művelet leírja, hogyan hat az egyik függvény a másikra – tipikusan idő vagy térbeli eltolásokon keresztül. A konvolúció kulcsfogalom a jel- és képfeldolgozásban, valamint a mélytanulásban (deep learning).
🧠 1. Konvolúció alapfogalma
Folytonos esetben:
Diszkrét esetben (pl. képeknél):
📦 2. Intuitív jelentése
A konvolúció során egyik függvényt „végigcsúsztatjuk” a másikon, és minden pozíciónál összeszorozzuk a megfelelő értékeket, majd összeadjuk az eredményeket. Ez egy „súlyozott átlagoló” folyamatként is felfogható.
🖼️ 3. Konvolúció képeken (2D)
Kép konvolúcióját egy „kernel” (szűrőmátrix) segítségével végezzük:
- : eredeti kép
- : kernel (pl. 3×3 szűrő)
- : új kép (konvolúciós kimenet)
Példa: élszűrő kernel (Sobel)
[-1 0 1] [-2 0 2] [-1 0 1]
Ez a szűrő az éleket emeli ki a képen.
🧠 4. Konvolúció a mélytanulásban (CNN)
A Convolutional Neural Network (CNN) architektúra a konvolúciót alkalmazza képek elemzésére.
Fő lépések:
- Kép × kernel → konvolúciós térképek (feature map)
- Aktivációs függvény (pl. ReLU)
- Pooling (pl. max pooling): méretcsökkentés
- Több réteg – egyre absztraktabb jellemzők
Előnyei:
- Kevesebb paraméter mint teljes kapcsolású hálóban
- Fordítási invariancia: a képek pozíciófüggetlen jellemzőit tanulja meg
- Hatékony jellemzőkinyerés
🧰 5. Alkalmazások
| Terület | Példa konvolúciós használatra |
|---|---|
| Képfeldolgozás | Élsimítás, éldetektálás, élesítés |
| Hangfeldolgozás | Zajszűrés, visszhangmodellezés |
| Jelfeldolgozás | Aluláteresztő és sávszűrők |
| Gépi tanulás | Objektumfelismerés, arcfelismerés |
| Természetes nyelvfeldolgozás | Szövegfeldolgozás karakter vagy szószinten |
| Fizikai szimulációk | Impulzusválasz, rendszerdinamikák modellezése |
🔁 6. Konvolúció vs korreláció
Gyakran összekeverik, de:
| Tulajdonság | Konvolúció | Korreláció |
|---|---|---|
| Kernel tükrözése | Igen | Nem |
| Formális definíció | ||
| CNN-ben mit használnak valójában? | Korreláció – de “konvolúciónak” nevezik |
📏 7. Példa Pythonban (képkonvolúció – OpenCV + NumPy)
import cv2
import numpy as np
image = cv2.imread("image.jpg", 0) # szürkeárnyalatos
kernel = np.array([[1, 0, -1],
[1, 0, -1],
[1, 0, -1]]) # éldetektálás (Sobel)
output = cv2.filter2D(image, -1, kernel)
cv2.imshow("Result", output)
cv2.waitKey(0)
cv2.destroyAllWindows()
🧾 8. Összegzés
A konvolúció egy olyan kulcsfontosságú művelet, amely:
- mintákat és jellemzőket emel ki képekből, jelekből,
- a mélytanulás egyik alapja (CNN),
- számos területen alkalmazzák: képfeldolgozás, hanganalízis, orvosi képalkotás, automatizált járművek, stb.
A konvolúció hatékony, lokalizált, súlyozott elemzést tesz lehetővé bármilyen térbeli vagy időbeli adatstruktúrában.
- convolution - Szótár.net (en-hu)
- convolution - Sztaki (en-hu)
- convolution - Merriam–Webster
- convolution - Cambridge
- convolution - WordNet
- convolution - Яндекс (en-ru)
- convolution - Google (en-hu)
- convolution - Wikidata
- convolution - Wikipédia (angol)