استنتاج کجا اجرا شود: دروازه، کنترلر یا ابر؟
«لبه یا ابر» پرسش نخست اشتباهی است. روشی عملی برای جانمایی مدل بر پایه شش قید که پیش از انتخاب هر سختافزاری پاسخ را تعیین میکنند، و خطاهایی که از بهینهسازی قید نادرست پدید میآید.

هر پروژهای که مدلی را نزدیک تجهیزات مینشاند، دیر یا زود بر سر محل اجرای مدل بحث میکند و این بحث معمولا از جای نادرستی آغاز میشود. «لبه یا ابر» پرسشی سختافزاری است که پیش از توافق بر سر کارکرد مدل مطرح شده است. مسیر بهتر، عبور از یک فهرست کوتاه از قیدهاست، چون در بیشتر سامانهها یکی از آنها تعیینکننده است و بقیه فقط دنبالهرو.
قید نخست بودجه تاخیر است، آن هم به صورت یک عدد نه یک حس کلی. اگر تصمیم باید حلقه کنترلی را ببندد، در مقیاس میلیثانیه کار میکنید و مدل باید روی کنترلر یا کنارش بنشیند، چون یک رفتوبرگشت شبکه تمام بودجه را خرج کرده است. اگر تصمیم هشداری تولید میکند که انسانی آن را میخواند، ثانیه در اختیار دارید و تقریبا هر جانماییای کار میکند. شمار قابلتوجهی از پروژهها حالت اول را فرض میگیرند و وقتی از آنها خواسته میشود عدد را بنویسند، درمییابند که در حالت دوم هستند.
قید دوم پهنای باند است و مشخصا هزینه جابهجایی سیگنال خام. حسگر ارتعاش با نرخ نمونهبرداری چند کیلوهرتز، یا دوربینی که ویدیوی پیوسته تولید میکند، دادهای به مراتب بیشتر از نتیجهای که از آن گرفته میشود میسازد. اجرای استنتاج در همان جایی که داده زاده میشود و ارسال صرف نتیجه، اغلب تصمیمی درباره پهنای باند است که لباس تاخیر پوشیده. صادق بودن در این نامگذاری ارزش دارد، چون این دو قید به دو طراحی متفاوت اشاره میکنند: مسئله پهنای باند را میتوان با تجمیع و خلاصهسازی روی یک دروازه حل کرد، اما مسئله تاخیر را نمیتوان.
قید سوم این است که وقتی پیوند ارتباطی قطع میشود چه اتفاقی میافتد. ایستگاه پمپاژ دورافتاده، کشتی، معدن، پست برق روستایی: اینها اتصال را به شکل روتین از دست میدهند، نه به شکل حادثه. اگر سایت باید در طول قطعی همچنان تصمیم بگیرد، مدل به صورت محلی اجرا میشود و تنها پرسش باقیمانده نحوه بهروزرسانی آن است. اگر سایت میتواند بیخطر داده را در صف نگه دارد و منتظر بماند، استنتاج ابری از پرخطر بودن درمیآید و به گزینهای راحت بدل میشود.
قید چهارم خود مدل است، در دو بعد. اندازه تعیین میکند چه سختافزاری میتواند نگهش دارد و آهنگ بهروزرسانی تعیین میکند استقرار محلی چه بار عملیاتیای میسازد. یک دستهبند کوچک که سالی دو بار تغییر میکند، چیز راحتی برای اجرا روی دروازه است. مدلی بزرگ که ماهانه بازآموزی میشود و روی چهارصد سایت مستقر است، مسئله مدیریت ناوگان است و بیش از آنچه استنتاج صرفهجویی میکند انرژی میبرد. انتخاب لبه برای مدلی که هفتگی تغییر میکند یعنی تصمیم به ساخت یک سامانه توزیع نرمافزار، و این باید انتخابی آگاهانه باشد نه کشفی پس از واقعه.
قید پنجم مقرراتی و قراردادی است. برخی دادهها نمیتوانند از یک سایت، یک کشور یا شبکه یک مشتری خارج شوند و هیچ ظرافت معماریای بر آن چیره نمیشود. این قید دودویی است و ارزش دارد زود روشن شود، چون گزینهها را حذف میکند نه اینکه میانشان توازن برقرار کند.
قید ششم که بیشتر از همه نادیده گرفته میشود این است که چه کسی نگهداریاش میکند. مدلی که روی دروازهای در کارخانه نشسته را کسانی نگهداری میکنند که کار روزانهشان سرپا نگه داشتن کارخانه است و آستانه تحملشان برای دستگاهی که مدام توجه میخواهد پایین و بحق است. استنتاج ابری نگهداری را جایی متمرکز میکند که از پیش مهندسانی داشبوردها را میپایند. اگر طرح استقرار لبه شما نام کسی را که متوجه توقف گزارشدهی یک دستگاه میشود مشخص نکرده، آن طرح نیست.
وقتی این قیدها را به جانماییهای واقعی اعمال کنیم، نتیجه نسبتا تمیز از آب درمیآید. استنتاج روی کنترلر یا ماژول کنار آن برای کنترل حلقهبسته و کارکردهای مجاور ایمنی مناسب است، با مدلهای کوچک، بهروزرسانی نادر و تحمل سختافزار محدود. استنتاج روی دروازه صنعتی برای میانه بزرگ ماجرا مناسب است: تجمیع چند ماشین، پایش وضعیت، بازرسی کیفیت و تشخیص ناهنجاری روی جریانهایی که ارسال کاملشان گران است. سختافزار دروازههای تازه این کار را از گذشته آسانتر کرده و اکنون دستگاههایی هست که در کنار ترجمه پروتکل معمولی، مدلهای استنتاج فشرده، اتصال دوقلوی دیجیتال و کانتینرهای تحلیلی را در یک جعبه مقاوم به محیط سخت اجرا میکنند. استنتاج ابری برای هر جایی مناسب است که تصمیم فوری نیست، داده از پیش جاری است و مدل از آموزش و سرویسدهی متمرکز سود میبرد: مقایسه در سطح ناوگان، پیشبینی و هر چیزی که باید چندین سایت را همزمان ببیند.
بیشتر سامانههای واقعی در نهایت تقسیمشدهاند و این نتیجه درست است نه یک سازش. الگوی مفید آن است که تشخیص در لبه و تفسیر در مرکز اجرا شود: دروازه تصمیم میگیرد که چیزی غیرعادی است و پنجره کوتاهی از سیگنال خام را میفرستد، و سامانه مرکزی تصمیم میگیرد آن چیز غیرعادی چه بوده و آیا جای دیگری هم دیده شده است. این الگو پهنای باند را پایین، تصمیم محلی را سریع و مدل گرانقیمت را در یک جا نگه میدارد که بتوان بهبودش داد.
حالت شکستی که باید مراقبش بود، بهینهسازی قیدی است که اصلا قید فعال نبوده. تیمی استقرار لبه پیچیدهای میسازد تا پنجاه میلیثانیه روی هشداری صرفهجویی کند که انسانی بیست دقیقه بعد آن را میخواند، و بهای آن را هر ماه در نگهداری دستگاه میپردازد. شش قید را بنویسید، کنار هرکدام یک عدد بگذارید، و جانمایی معمولا خودش را انتخاب میکند.