شبکه عصبی کانولوشنی یک بعدی (1D Convolutional Neural Network)، در ریاضیات (Mathematics)
انواع شبکه های عصبی (Neural Networks) را در آموزش زیر شرح دادیم :
شبکه عصبی کانولوشنی یک بعدی (1D Convolutional Neural Network) :
شبکه عصبی کانولوشنی یک بعدی (1D CNN) نوعی CNN است که در آن فیلترها فقط در یک بعد حرکت می کنند. این شبکه برای پردازش داده های توالی (sequence data) مانند سیگنال ها، سری های زمانی، و متن ها (به عنوان دنباله ای از embedding کلمات) طراحی شده است. در 1D CNN، هر فیلتر یک بردار یک بعدی است که روی توالی ورودی می لغزد.
عملیات کانولوشن یک بعدی برای یک فیلتر
\[ k \]با اندازه
\[ l \]روی توالی
\[ x \]:
\[ y_i = \sum_{j=0}^{l-1} k_j \cdot x_{i+j} + b \]که
\[ y_i \]خروجی در موقعیت
\[ i \]است.
1D CNNها معمولا شامل چندین لایه کانولوشن + فعال سازی + pooling (حداکثر یا میانگین) هستند. در انتها ممکن است از لایه های Global Max Pooling یا Flatten + Dense برای طبقه بندی استفاده شود. همچنین می توان از dilated convolution برای افزایش میدان دید بدون افزایش پارامترها استفاده کرد.
کاربردها: تشخیص رویداد در سیگنال های ECG (نوار قلب)، طبقه بندی فعالیت های انسانی از روی داده های شتاب سنج، تشخیص احساسات از گفتار، مدل سازی زبان (به عنوان جایگزین سریع تر برای RNN). در متن، با استفاده از embedding کلمات و 1D CNN، می توان ویژگی های n-gram را استخراج کرد.
مزایا نسبت به RNN: قابلیت موازی سازی کامل، یادگیری ویژگی های محلی، عدم مشکل محو شدن گرادیان. معایب: محدودیت در یادگیری وابستگی های طولانی بدون استفاده از لایه های عمیق یا dilated convolution.
1D CNNها در بسیاری از مسائل سری های زمانی به دلیل سرعت و کارایی، انتخاب اول هستند.