تشخیص کلیدواژه (KWS) برای پیاده سازی تعامل با کاربر مبتنی بر صدا مهم است، نیاز به پاسخ در زمان واقعی بر روی دستگاه های هوشمند و دقت بالا برای اطمینان از یک تجربه کاربری خوب است. اخیرا، معماری شبکه های عصبی KWS تبدیل شده است انتخاب محبوب، چرا که با سنتی الگوریتمهای پردازش گفتار در مقایسه دقت شبکه عصبی بهتر است.
شناسایی خط لوله شبکه عصبی
با توجه به حفظ، همیشه در، KWS اعمال بودجه قدرت بسیار محدود است. اگر چه برنامه های کاربردی KWS همچنین می توانید در یک DSP با عملکرد بالا اختصاص داده شده و یا پردازنده اجرا می شود، اما بیشتر مناسب است برای اجرا بر روی میکروکنترلر آرم Cortex-M می تواند کمک برای به حداقل رساندن هزینه ها، آرم Cortex-M میکروکنترلرها اغلب چیزهایی لبه برای پردازش کارهای دیگر.
با این حال، به استقرار در یک میکروکنترلر استفاده از شبکه عصبی مبتنی بر Cortex-M-از KWS، ما با چالش های زیر مواجه است: 1. فضای حافظه محدود معمولی از سیستم های Cortex-M فراهم می کند تا چند صد کیلوبایت از حافظه موجود این بدان معنی است. ، کل مدل شبکه عصبی، از جمله ورودی / خروجی، وزن و فعال سازی، باید در این محدوده کمی از حافظه از منابع محاسباتی محدود با توجه به KWS برای حفظ همیشه در، زمان واقعی مورد نیاز است که هر عصب محدود به کار گیرند. 2. تعداد کل عملیات شبکه است که استدلال زیر اعمال می شود به یک معماری شبکه های عصبی KWS استنتاج معمولی: • عمق شبکه های عصبی (DNN) DNN پیشخور استاندارد شبکه عصبی، به پشته پر از لایه های متصل از لایه فعال و غیر خطی • حجم. محصول شبکه عصبی (سی ان ان) بر اساس یکی از نقص اصلی این KWS DNN برای ارتباط محلی صدا، زمان همبستگی دامنه، مدل همبستگی فرکانس غیر ممکن است. سی ان ان می توانید در حوزه زمان و فرکانس ورودی ویژگی های دامنه به عنوان پردازش تصویر، و انجام عملیات پیچیدگی 2D در بالا، در جهت پیدا کردن این رابطه. • شبکه عصبی راجعه توالی (RNN) RNN در بسیاری از کارهای مدل سازی در حال نشان دادن بسیار عالی انرژی، به ویژه در تشخیص گفتار، زبان مدل سازی و ترجمه. RNN نه تنها قادر به پیدا کردن رابطه زمانی بین سیگنال ورودی، همچنین می توانید مکانیسم گلوئی، به تصرف خود در طول رابطه بستگی دارد استفاده کنید. • پیچیدگی شبکه عصبی راجعه ( CRNN) یک شبکه عصبی کانولوشن چرخه سی ان ان هیبریدی است و RNN را می توان در رابطه زمانی / مکانی محلی یافت. CRNN شروع لایه مدل پیچیدگی، به دنبال RNN، کدکردن سیگنال، و به دنبال یک لایه متراکم به طور کامل متصل. • عمق جدا پیچیدگی شبکه عصبی (DS-سی ان ان) به تازگی، عمق شبکه های عصبی کانولوشن جدا است به عنوان جایگزین موثر برای عملیات پیچیدگی 3D استاندارد توصیه می شود، شده است و معماری شبکه جمع و جور برای بینایی کامپیوتر استفاده شده است. DS-سی ان ان اولین استفاده فیلتر مستقل 2D، ورودی از هر یک از ویژگی در ادامه محاسبه کانال پیچیدگی، و سپس با استفاده پیچیدگی نقطه عاقلانه (به عنوان مثال 1x1-)، خروجی بعد عمق ترکیب های 2D استاندارد و پیچیدگی 3D به 1D پس از آن تجزیه می شود و محاسبه تعداد پارامترهای کاهش می یابد، به طوری که عمیق تر و گسترده تر معماری ممکن است، حتی در میکروکنترلر برای اجرای منابع دستگاه محدود شده است. اجرا کردن بر روی پردازنده های Cortex-M با هنگامی که به رسمیت شناختن کلمه، استفاده از حافظه و زمان اجرای دو عامل بسیار مهم در طراحی و بهینه سازی شبکه های عصبی برای این منظور، شما باید به حساب این دو عامل محدود کردن شبکه های عصبی از سه گروه زیر نشان داده شده برای کوچک هستند ، متوسط و سیستم های Cortex-M بزرگ، پیکربندی یک سیستم معمولی مبتنی بر Cortex-M.
برای تنظیم مدل، بنابراین به عنوان به بیش از محدودیت های حافظه و میکروکنترلر محاسبات نیست، جستجو باید بیش از پارامترهای انجام شود. جدول زیر نشان می دهد که معماری شبکه های عصبی و پارامترهای مربوطه باید بیش از بهینه شده است.
نخست، انجام استخراج ویژگی جستجوی جامع و مدل شبکه عصبی بیش از حد پارامترها، و پس از آن انجام انتخاب دستی برای محدود کردن فضای جستجو، هر دو بارها و بارها اجرا شده است. شکل زیر خلاصه در دسترس برای هر معماری شبکه های عصبی برای مدل عملکرد مطلوب و حافظه مربوطه الزامات و محاسبات. معماری DS-CNN دارای بالاترین سطح دقت و نیاز به حافظه و محاسبات بسیار پایین است.
برنامه های کاربردی KWS هسته Cortex-M7 مستقر در هیئت مدیره توسعه STM32F746G-دیسکو (به عنوان زیر نشان داده شده) بر اساس، حاوی 8 وزن مدل DNN و 8 فعال سازی، KWS 10 بار در ثانیه در طول عملیات استدلال اعدام پستها در طول استدلال است. ( از جمله کپی کردن حافظه، MFCCs استخراج، انجام DNN) حدود 12 میلی ثانیه طول می کشد به منظور صرفه جویی در قدرت، اجازه می دهد باقی مانده از میکروکنترلر در حال انتظار برای یک وقفه (WFI) حالت. کل برنامه KWS با استفاده از حدود 70 کیلوبایت حافظه، از جمله از حدود 66 KB حدود 1 کیلو بایت برای فعال سازی، حدود 2 کیلوبایت برای ویژگی های صوتی I / O و MFCC.
به طور خلاصه، بازوی پردازنده Cortex-M می توانید دقت بالا در برنامه های کاربردی تشخیص کلمه کلیدی رسیدن، در حالی که حافظه و نیازهای محاسباتی برای محدود کردن تنظیم معماری شبکه معماری DS-سی ان ان فراهم می کند بالاترین دقت، حافظه و محاسباتی منابع مورد نیاز نیز هستند بسیار پایین تر. کد، تعریف مدل و مدل قبل از آموزش را می توان از github.com/ARM-software دست آمده است. جدید سایت توسعه دهنده یادگیری ماشینی ما فراهم می کند منابع کتابخانه یک مرحله، اطلاعات محصول دقیق و آموزش برای کمک به مقابله با دستگاه لبه شبکه چالش در این وبلاگ با آن مواجه شده کاغذ سفید یادگیری 'لبه شبکه: به رسمیت شناختن کلمه کلیدی در میکروکنترلر. (سلام لبه: لکه بینی کلمه کلیدی در میکروکنترلرها)، کاغذ سفید در اصل در وب سایت کتابخانه دانشگاه کرنل برای دانلود بازوی منتشر شد. یک کپی از کاغذ سفید، لطفا لینک زیر را کلیک کنید. https://community.arm.com/cfs-file/__key/telligent-evolution-components-attachments/01-2142-00-00-00-01-34-26/Arm_5F00_KeywordSpotting_5F00_Whitepaper. پی دی اف