ds modeling
まず結論
畳み込み(Convolution)とは、画像の周囲のピクセル値を使って新しいピクセル値を計算する処理で、画像フィルタ処理の基本となる計算方法です。
DS検定では 画像のフィルタ処理が「畳み込み」という計算で実現されている という理解が問われることがあります。
直感的な説明
画像のフィルタ処理は 「周りのピクセルを見て値を決める処理」です。
例えば次のようなイメージです。
あるピクセルの値を決めるとき
周りのピクセル □ □ □ □ ■ □ □ □ □
中央のピクセル(■)の値を
周囲の値を平均する
特定の重みをかける
といった計算で決めます。
この 「周囲の値を使って新しい値を計算する処理」 が畳み込みです。
この計算を画像全体に繰り返すことで
ノイズ除去
エッジ検出
ぼかし処理
などの画像フィルタが実現できます。
定義・仕組み
畳み込みとは
小さな計算用の行列(フィルタ・カーネル)を画像の上でスライドさせながら計算する処理
です。
処理の流れは次の通りです。
① 小さな行列(フィルタ)を用意する
例
1 1 1 1 1 1 1 1 1
② 画像の一部分と重ねる
③ 対応する値を掛け合わせて合計する
④ その結果を新しいピクセル値にする
⑤ フィルタを1ピクセルずらして繰り返す
このようにして 画像全体を処理していきます。
フィルタによって処理内容が変わる
使うフィルタによって 処理の意味が変わります。
例
ぼかしフィルタ
→ 周囲を平均して滑らかにする
エッジ検出フィルタ
→ 輪郭を強調する
つまり
フィルタ(カーネル)=画像処理のルール
になります。
どんな場面で使う?
畳み込みは 画像処理やAIの画像認識で非常によく使われます。
画像フィルタ処理
例えば
ノイズ除去
ぼかし
シャープ化
エッジ検出
といった処理の多くは 畳み込みで実装されています。
CNN(畳み込みニューラルネットワーク)
画像認識AIでは CNN(Convolutional Neural Network)
というモデルがよく使われます。
CNNでは
畳み込み
プーリング
全結合
といった処理を通して 画像の特徴を抽出します。
つまり畳み込みは
画像AIの基礎となる計算
です。
よくある誤解・混同
誤解①
畳み込み=画像をぼかす処理
これは誤解です。
ぼかし処理は 畳み込みの一つの使い方にすぎません。
畳み込みは
ぼかし
エッジ検出
シャープ化
など様々な処理に使われます。
誤解②
フィルタ処理と畳み込みは別物
実際には
多くの画像フィルタ処理は畳み込みで実装されます。
つまり
フィルタ処理 ↓ 計算方法 ↓ 畳み込み
という関係です。
DS検定のひっかけ
DS検定では次のような理解が問われます。
選択肢で
「畳み込みはCNNだけで使われる」
と書かれていたら 誤りです。
畳み込みは
画像フィルタ処理
画像解析
CNN
など幅広く使われます。
まとめ(試験直前用)
畳み込みは 周囲のピクセルを使って新しい値を計算する処理
小さな行列(フィルタ・カーネル)を画像にスライドさせて計算する
画像フィルタ処理の多くは畳み込みで実装される
CNN(画像AI)の基本技術でもある
DS検定では フィルタ処理の計算方法=畳み込み という関係を理解しているかが問われます。
対応スキル項目(AI利活用スキルシート)
スキルカテゴリ名 AIの技術理解
サブカテゴリ名 画像・音声処理
★ 画像・動画・音声などのデータに対する基本的な処理方法を理解している
🔗 関連記事
- 中間層で使用される活性化関数とは?(ReLU・シグモイド・ソフトマックスの違い)【DS検定】
- アノテーションとは?(AI学習データを作る重要な作業)【DS検定】
- Aprioriアルゴリズムとは?(アソシエーション分析の基本手法)【DS検定】
- アソシエーション分析とは?購買データの関係性を見つける分析【DS検定】
- 共起頻度・支持度・信頼度・リフト値の違いとは?【DS検定】