مجله هوش مصنوعی

آخرین اخبار و تکنولوژی های هوش مصنوعی را در اینجا بخوانید.

مجله هوش مصنوعی

آخرین اخبار و تکنولوژی های هوش مصنوعی را در اینجا بخوانید.

هوش مصنوعی در کسب و کار ؛ فرصت‌ها و چالش‌ها


بررسی چالش‌ها و فرصت های هوش مصنوعی در کسب و کار را با چند سوال آغاز می‌کنیم:

• کسب و کارها برای اجرای هوش مصنوعی با چه فرصت‌ها و چالش‌هایی روبرو هستند؟
• آیا از بکارگیری فناوری‌های هوش مصنوعی در کسب و کار خودتان تردید دارید؟
• هوش مصنوعی چه تاثیری روی رشد و سودآوری کسب و کار شما گذاشته است؟امروزه حتی انسان‌های عادی نیز به درک قابلیت‌های هوش مصنوعی رغبت نشان می‌دهند. دلیل چنین تمایلی را می‌توان در این امر جستجو کرد که هوش مصنوعی تمامی جنبه‌های زندگی ما را تحت‌الشعاع قرار داده است. ظاهراً این فناوری توانسته اشتیاق و تردید را به طور همزمان در انسان‌ها برانگیزد. البته معیارهای مختلفی در آن دخیل است! حال بیایید آمار و حقایق مربوط به هوش مصنوعی را بررسی کنیم:• فناوری هوش مصنوعی می‌تواند بهره‌وری کسب و کار را تا ۴۰ درصد افزایش دهد (منبع: Accenture).
• تعداد استارت‌آپ‌های هوش مصنوعی از سال ۲۰۰۰ به میزان چهارده برابر افزایش یافته است (Forbes).
• هوش مصنوعی باعث خواهد شد ۱۶ درصد از مشاغل در آمریکا توسط ماشین‌ها انجام شود (Forrester).
• ۱۵ درصد کسب‌ و کارها از هوش مصنوعی استفاده می‌کنند. ۳۱ درصد از کسب و کارها اعلام کرده‌اند که بکارگیری هوش مصنوعی تا ۱۲ ماه آینده در دستور کارشان قرار دارد (Adobe).کاملاً مبرهن است که هوش مصنوعی فقط به آزمایشگاه‌های نوآوری محدود نمی‌شود. این فناوری به دلیل قابلیت بالایی که در متحول ساختنِ کسب و کارها دارد، تحسین همگان را برانگیخته است. با این حال، کسب و کارها پیش از آنکه از ظرفیت‌های واقعی این فناوری در کسب و کارهایشان بهره گیرند، باید خود را آماده رویارویی با چند چالش نمایند.

 

بکارگیری هوش مصنوعی در کسب و کار با چالش‌های بسیاری همراه است.

۱. محاسبه یا رایانش چندان پیشرفته نیست!

روش‌های یادگیری عمیق و یادگیری ماشین در نگاه اول از فواید بسیاری برخوردارند، اما برای اینکه سرعت عمل بالایی داشته باشد، باید یک سری محاسبات را پشت سر بگذارند. کاملاً مشهود است که این روش‌های هوش مصنوعی به قدرت پردازش قابل ملاحظه‌ای نیاز دارند. هوش مصنوعی برای چندین سال در محافل علمی و تخصصی مورد بحث و بررسی قرار گرفته است. همواره محققان و کارشناسان این مسئله را به پیش کشیده‌اند که کماکان قدرت لازم برای اجرای این قبیل از روش‌های هوش مصنوعی در دسترس نیست. رایانش ابری و سیستم‌های پردازش موازی در کوتاه‌مدت این امیدواری را در دل همگان ایجاد کرده‌اند که اجرای روش‌های مصنوعی سرانجام می‌تواند با موفقیت همراه باشد؛ اما با افزایش حجم داده‌ها و ایجاد الگوریتم‌های فوق‌العاده پیچیده توسط روش‌های یادگیری عمیق، نمی‌توان فقط به رایانش ابری دل بست.

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

۲. حمایت مردمیِ ناچیز

موارد استفاده از هوش مصنوعی در بازار اندک است. به عبارت دیگر، سازمان‌های انگشت‌شماری به سرمایه‌گذاری در توسعه محصولات هوش مصنوعی ابراز علاقه کرده‌اند. افزون بر این، سایر کسب و کارها نمی‌توانند این واقعیت را بپذیرند که جهان با سرعت قابل ملاحظه‌ای به سوی ماشینی شدن پیش می‌رود و نباید از این قافله عقب ماند. عده بسیار اندکی می‌دانند که ماشین‌ها چگونه فکر کرده و خودشان اقدام به یادگیری می‌کنند. در همین راستا، می‌توان پلتفرم‌ها و ابزارهایی را به کار بست که زمینه را برای انجام کارهای هوش مصنوعی در قالب خدمات فراهم می‌کنند. سازمان‌ها به جای اینکه همه کارها را از صفر شروع کنند، می‌توانند از راه‌حل‌های آماده استفاده کنند.

۳. اعتمادسازی

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

۴. تفکر یک‌بعدی

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

۵. قابلیت اثبات

سازمان‌هایی که محصولات هوش مصنوعی را در دستور کارشان قرار داده‌اند، نمی‌توانند به روشنی درباره چشم‌اندازها و دستاوردهایشان به کمک روش‌های هوش مصنوعی سخن بگویند. افراد کماکان درباره چگونگی اتخاذ تصمیم توسط این فناوری با دیدۀ تردید می‌نگرند؛ این مسئله در اذهان عمومی هست که آیا تصمیمات هوش مصنوعی همگی بی‌عیب و نقص است یا خیر. سازمان‌ها در حال حاضر با آغوش باز به استقبال پیش‌بینی‌های هوش مصنوعی نمی‌روند و جانب احتیاط را در این خصوص رعایت می‌کنند. سازمان‌ها با اِثبات این قضیه مشکل دارند که فرایند تصمیم‌گیری سیستم‌های هوش مصنوعی بی هیچ عیب و نقصی پیش می‌رود. باید هوش مصنوعی قابل تبیین، قابل اثبات و شفاف باشد. سازمان‌ها باید آن دسته از سیستم‌های هوش مصنوعی را به کار گیرند که قابل تبیین باشد.

۶. امنیت و حریم خصوصی داده‌ها

سیستم‌های هوش مصنوعی عمدتاً به حجم قابل ملاحظه‌ای داده برای یادگیری و اتخاذ تصمیم‌های هوشمندانه نیاز دارند. سیستم‌های یادگیری ماشین به داده وابسته‌اند؛ داده نیز غالبا! ماهیت حساس و فردی دارد. این سیستم‌ها از روی داده اقدام به یادگیری کرده و خود را ارتقاء می‌بخشند. به دلیل این نوع یادگیری سیستماتیک، این سیستم‌های یادگیری ماشین در معرض سرقت هویت و نقض داده قرار می‌گیرند. اتحادیه اروپا قانونی تحت عنوان «قانون عمومی محافظت از اطلاعات» تصویب کرده تا از محافظت کامل از داده‌های فردی اطمینان حاصل کند. این اقدام بلافاصله پس از افزایش آگاهی افراد درباره طیف فزایندۀ تصمیمات ماشین به انجام رسید. علاوه بر این، روش منحصربفردی موسوم به یادگیری فدراسیونی وجود دارد که سعی در مختل کردن پارادایم هوش مصنوعی دارد. یادگیری فدراسیونی دانشمندان داده را ترغیب می‌کند تا سیستم‌های هوش مصنوعی را بدون تحت تاثیر قرار دادنِ امنیت داده کاربران بسازند.

۷. سوگیری الگوریتم

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

۸. امنیت داده

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

فرصت‌ های هوش مصنوعی در حوزه کسب و کار

بکارگیری سیستم‌های هوش مصنوعی در حوزه کسب و کار با ریسک‌ها و چالش‌های بسیاری همراه است. اما مثل دو روی متفاوت سکه، هوش مصنوعی می‌تواند فرصت‌های متعددی برای کسب و کارها به ارمغان آورَد. به لطف فرصت‌هایی که هوش مصنوعی پدید آورده، توسعه‌دهندگان کاربلد هندی در بسیاری از کسب و کارها استخدام می‌شوند تا نرم‌افزارهای هوش مصنوعی اختصاصی‌شان را ایجاد کنند. بگذارید تک‌تک این موارد را بررسی کنیم.

۱. هوش مصنوعی در بازاریابی

همه کسب و کارهای کوچک رویایِ کاهش بودجه بازاریابی و تمرکز بر روی راهبردهای کارآمدِ بازاریابی را در سر می‌پرورانند. علاوه بر این، شرکت‌ها راغب هستند بدانند کدام فعالیت‌های بازاریابی بیشترین سودآوری را به همراه دارد. اما تجزیه و تحلیل داده‌ها در میان همه کانال‌های رسانه‌ای کار دشواری است و زمان بسیاری را می‌طلبد. اینجاست که هوش مصنوعی به ارائه راه‌حل‌های بازاریابی می‌پردازد! پلتفرم‌های هوش مصنوعی از قبیل Acquisio نقش بسیار مهمی در مدیریت عملیات بازاریابی دارند؛ به ویژه در کانال‌های گوناگونی نظیر Google Adwords، فیس‌بوک و Bing.

۲. استفاده از روش‌های هوش مصنوعی برای ردیابی رقبا

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

۳. بررسی سریع کلان داده‌ها

اصلاً جای تعجب نیست که مالکان کسب و کارهای کوچک تمایل بالایی به استفاده از حجم قابل ملاحظه‌ای از اطلاعات آنلاین و آفلاین دارند. این اطلاعات به کسب و کارها کمک می‌کنند تا تصمیم‌های مهمی در راستای رشد و توسعه خود اتخاذ نمایند. مهم‌ترین نکته در خصوص بکارگیری ابزارهای هوش مصنوعی در حوزه کسب و کار این است که آنها در تمامی فرایندهای داده‌سازی قابلیت کاربرد دارند و می‌توانند به بینش‌هایی ختم شوند که عملاً به کار می‌آیند. ابزارهای کسب و کار هوش مصنوعی مثل Monkey Learn به یکپارچه‌سازی و تحلیل داده‌ها در کانال‌های گوناگون پرداخته و باعث صرفه‌جویی در زمان می‌شوند.

۴. راه‌حل‌های حمایت از مشتری بر پایه هوش مصنوعی

سیستم‌های چت خودکار این فرصت را در اختیار کسب و کارهای کوچک قرار می‌دهند تا فعالیت‌های خدمت‌رسانی به مشتریان را زیر نظر گرفته و منابع لازم برای تعاملات دشوار مشتری را در خود توسعه دهند. آن دسته از ابزارهای خدمت‌رسانی به مشتریان که بر پایه سیستم‌های هوش مصنوعی قرار دارند (مثلDigitalGenius یا ChattyPeople)، فرایند پاسخگویی به پرسش‌های مشتریان و طبقه‌بندی بلیط‌ها یا پیام‌رسانی مستقیم به بخش مربوطه را تسهیل می‌کنند. بکارگیری هوش مصنوعی در بخش حمایت از مشتریان باعث صرفه‌جویی در زمان می‌شود.

۵. هوش مصنوعی در حوزه «مدیریت روابط مشتریان»

چه احساسی به شما دست می‌دهد اگر بتوانید در مدیریت روابط خود با مشتریان گام مهم و رو به جلویی بردارید و بینش مفیدی درباره چگونگی تعامل با مشتریان فعلی و آتی کسب کنید؟ آن دسته از پلتفرم‌های CRM که از هوش مصنوعی بهره می‌برند، قابلیت تحلیل داده دارند. این پلتفرم‌ها بر اساس داده‌های مشتریان و فرایندهای کسب و کار منحصربفرد شرکت به پیش‌بینی و حتی توصیه می‌پردازند.

{“type”:”block”,”srcIndex”:1,”srcClientId”:”da42a25a-25da-44bb-a5c7-df86f727b6b9″,”srcRootClientId”:””}

نتیجه‌گیری

در این مقاله فهمیدیم که گویا سرانجام نوبت هوش مصنوعی فرا رسیده، اما هنوز جا برای پیشرفت وجود دارد. شرکت‌ها و سازمان‌های مختلف به طور غیریکنواخت از هوش مصنوعی استفاده می‌کنند. علاوه بر این، مقاله حاضر به بررسی فرصت‌ها و چالش‌هایی پرداخت که اجرای هوش مصنوعی به همراه دارد. حال، امیدواریم به دید روشنی در خصوص توسعه هوش مصنوعی در شرکت خود دست یافته باشید. موفق باشید!

منبع: hooshio.com

کوبرنتیس چیست؟


نسخه‌های متعددی از «کوبرنتیس» پیش‌پیکربندی شده وجود دارد که از جمله مهم‌ترینِ آنها می‌توان به «Minikube» و «Microk8s» اشاره کرد. مقاله حاضر بر آن است تا فرایند نصب و راه‌اندازی را از ابتدا توضیح دهد و جزئیات بیشتری را در اختیار خوانندگان قرار دهد. کوبرنتیس یکپارچه نیست و اجزای متعددی کنار هم کار می‌کنند تا به هدف مورد نظر برسند. بسیاری از جنبه‌های آن تا حدی به جادو شبیه است. در این مقاله به بررسی این جنبه‌ها خواهیم پرداخت.

برای اینکه گام به گام در این مقاله پیش برویم، ضروری است به VM توجه داشته باشید. این مورد در بخش‌های بعدی بیشتر توضیح داده خواهد شد. باید اطلاعات پیشرفته‌ای هم در خصوص لینوکس، خط فرمان لینوکس و شبکه داشته باشید. همچنین توصیه می‌کنیم بسیار صبور باشید. در آغاز کار، می‌خواهیم جزئیات یک VM را با Ubuntu 18.04، دو vCPU، حافظه ۴G و ۵۰ گیگ هارد توضیح دهیم. ما از KVM استفاده میکنیم. مراحل زیر را برای راه‌اندازیِ آن در هاستِ اصلی طی کردیم:ماشین مجازیِ ما «kubel» نام دارد. تغییراتی که در این ماشین ایجاد کردیم، به این صورت است: RAM به ۴۰۹۶، اندازه دیسک به ۵۰ و Vcpu به ۲ تغییر پیدا کرد. باید از نصبِ سرور OpenSSH اطمینان حاصل کنید. با پایان این کار و برخورداری از آدرس IP، می‌توانید آن را به فایل /etc/hosts  اضافه کنید تا با نام خودش به آن دسترسی داشته باشید. اگر می‌خواهید اطلاعات بیشتری درباره KVM و چگونگی نصب آن بدست آورید، می‌توانید به این مقاله مراجعه کنید: «Playing with VMs and Kubernetes».

در این مقاله به هاستی که KVM رو آن نصب شده است میزبان اصلی نامیده میشود و هاستی که از آن جهت توسعه برنامه استفاده میشود (که میتوان یک لپ تاپ یا PC باشد) رایانه محلی نامیده میشود. اگر از ماشین مجازی ابری استفاده می‌کنید، میزبان اصلی نخواهید داشت. در چنین مواردی باید بدانید چه اقدامی در پانل کنترل ابری یا خط فرمانِ رایانه محلی لازم است تا به صورت یک میزبان اصلی عمل کند (مثل فرمان gloud در پلتفرم ابری گوگل). اولین چیزی که به آن نیاز است، فرمان‌های kubeadm/kubectl/kubelet  است. جهت راهنمای نصب از official installation (نصب رسمی) استفاده می‌کنیم اما برای Ubuntu 18.04 VM. برای اینکه ماشین مجازی خود را برای نصب آماده کنید، در ابتدا باید از خاموش بودنِ سوآپ (swap) مطمئن شوید.

 

۱

۲

۳

۴

۵

۶

۷

ls / # make sure your swapfile is called swapfile

 

sudo swapoff -v /swapfile

 

sudo vi /etc/fstab # remove the line for the swapfile

 

sudo rm /swapfile

اگر می‌خواهید بیش از یک گره بسازید، باید مطمئن شوید که ماشین‌های مجازی‌تان با آدرس‌های منحصربفرد MAC و محصول UUID ساخته شده‌اند. KVM این کار را برای شما انجام میدهد. احتمالاً اکثر ماشین‌های مجازی منحصربفرد خواهند بود، مگر اینکه ماشین مجازی فعلی را کلون کنید. در اقدام بعدی، باید پل‌ها و overlyها را با افزودن چند خط به فایل /etc/modules-load.d/modules.conf  فعال کنید.

 

۱

۲

overlay

br_netfilter

چند خط دیگر به فایل /etc/sysctl.conf  اضافه کنید:

 

۱

۲

۳

۴

# added for kubernetes bridge

net.bridge.bridge-nf-call-ip6tables = ۱

net.ipv4.ip_forward = ۱

net.bridge.bridge-nf-call-iptables = ۱

سپس، ماشین مجازی‌تان را مجدداً بوت کنید. باید این ماشین مجازی جدید هیچ قاعده iptables نداشته باشد. برای بررسی این موضوع می‌توانید از فرمان sudo iptables -L  استفاده کنید.

 

۱

۲

۳

۴

Chain INPUT (policy ACCEPT)

target     prot opt source               destinationChain FORWARD (policy ACCEPT)

target     prot opt source               destinationChain OUTPUT (policy ACCEPT)

target     prot opt source               destination

اگر قدری دلهره دارید، می‌توانید پورت‌ها را فقط به موارد لیست‌شده در «نصب رسمی» محدود کنید، اما این کار مثل پا گذاشتن روی مین است. چون کوبرنتیس یک سیستم هماهنگی کانتینر است، به سیستم کانتینری احتیاج داریم که بتواند کار هماهنگی و مدیریت را به خوبی انجام دهد. می‌توانید از چند سیستم کانتینر استفاده کنید، اما در مقاله حاضر از containerd استفاده می‌شود. برای نصب آن در Ubuntu 18.04 اجرای دو خط زیر کافی است:

 

۱

۲

sudo apt-get update

sudo apt-get install containerd

باید نتیجۀ زیر به دست آید:

 

۱

/var/run/containerd/containerd.sock.

حالا می‌توانید kubeadm/kubectl/kubelet را نصب کنید:

 

۱

۲

۳

۴

۵

۶

۷

۸

۹

۱۰

۱۱

۱۲

۱۳

۱۴

۱۵

sudo apt-get update && sudo apt-get install -y apt-transport-https curl gnupg2

 

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

 

cat <

 

deb https://apt.kubernetes.io/ kubernetes-xenial main

 

EOF

 

sudo apt-get update

 

sudo apt-get install -y kubelet kubeadm kubectl

 

sudo apt-mark hold kubelet kubeadm kubectl

بسته kubeadm به عنوان API اصلی در کوبرنتیس استفاده می‌شود. بسته kubectl  یک رابط خط-فرمان در API کوبرنتیس است. بسته kubelet  با سیستم مدیریت کانتینر پیوند می‌خورَد تا پادها به اجرا درآیند. اکنون فرصت را غنیمت می‌شماریم تا نگاهی به واژه‌ها و اصطلاحات تخصصی در این بخش بپردازیم. کل مجموعه در کوبرنتیس «cluster» یا خوشه نام دارد. هر خوشه می‌تواند یک یا چند گره داشته باشد. دو نوع گره با نام‌های «control-plane» و «worker» وجود دارد. فقط باید یک گره «control-plane» وجود داشته باشد. )البته می‌توانید از چند «control-plane» در سیستم HA استفاده کنید.( این گره «control-plane» همان چیزی است که در مقاله حاضر به بررسی‌اش می‌پردازیم. اگر گره‌های «worker» را بعدها اضافه کنیم، همه این مراحل باید تکرار شود. برای اینکه ببینیم آیا kubeadm  به constrained  که پیشتر نصب کردیم دسترسی دارد یا خیر، می‌توانیم sudo kubeadm config images pull  را اجرا کنیم. این بخش قدری نیاز به اندیشه دارد. کوبرنتیس به رابط شبکه کانتینر یا CNI نیاز دارد تا همه پادها بتوانند با یکدیگر ارتباط داشته باشند. اما برای اینکه خوشه را راه‌اندازی کنیم، باید اطلاعاتی درباره چگونگیِ استفادۀ آن از CNI داشته باشیم. بنابراین، باید سرانجام یک CNI انتخاب کنیم تا کار با آن ادامه پیدا کند چرا که CNIهای مختلفی وجود دارد. ما Flannel انتخاب می‌کنیم. به صورت پیش فرض Flannel از CIDR های ۱۰.۲۴۴.۰.۰/۱۶ استفاده می‌کند بنابراین از فرمان init استفاده کنیم. بیایید این فرایند را با هم امتحان کنیم و ببینیم چه نتیجه‌ای به دست می‌آید.

 

 

 

sudo kubeadm init --pod-network-cidr=۱۰.۲۴۴.۰.۰/۱۶

بله، کار با موفقیت به انجام رسید، اما  باید چند مرحله دیگر در خصوص یکی از گره‌ها طی کنیم. چند مرحله نیز در پایان فرمان init  وجود دارد که اهمیت زیادی دارد. اگر می‌خواهید گره‌های «worker» را در بخش‌های بعد ایجاد کنید، مطمئن شوید که فرمان join را کپی کرده باشید تا بعد به آن مراجعه کنید. توکنی که فهرست‌بندی شد، تنها ۲۴ ساعت دوام می‌آورد. پس اگر می‌خواهید گره تازه‌ای بعد از آن بسازید، باید توکن جدیدی با فرمان kubeadm token create  درست کنید.
حالا بیایید پیکربندی را در جایی قابل دسترس برای استفادۀ kubectl قرار دهیم.

 

۱

۲

۳

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config

این کار موجب ایجاد فایل پیکربندیِ پیش‌فرض خواهد شد که kubectl از آن استفاده می‌کند. سپس نیاز به اجرای kubectl config view  داریم. خروجیِ حاصل از فرمان init این پیام را به ما می‌دهد که باید CNIرا به کار ببریم. در پایانِ این کار، به پیکربندی مورد نیاز در GitHub دسترسی خواهیم داشت. اکنون نوبت به بکارگیری آن رسیده است:

kubectl apply -f

حالا ببینید که آیا این امکان وجود دارد همه چیز را با kubectl get all --all-namespaces  اجرا کنید یا خیر. باید فهرستی از مظنون‌های احتمالی درست کنید. فایل پیکربندی را به میزبان اصلی کپی کنید. در این صورت می‌توانید به خوشه جدیدتان دسترسی پیدا کنید. ما آن را در فایل ~/.kube/kube1config  کپی کرده و متغیر KUBECONFIG  را به کار خواهیم بست تا نیازی به ادغام با فایل‌های پیکربندیِ موجود نباشد. اکنون، اجرایِ kubectl get all --all-namespaces  در میزبان اصلی باید فهرست یکسانی را حاصل آورد. حالا می‌خواهیم همه مراحل ذکر شده در این مقاله را تا kubeadm init  تکرار کنیم. پس از پایان این کار، ماشین مجازی جدیدی تحت عنوان «kube2» ایجاد شده و به نصب contianerd, kubeadm, kubectl  می‌پردازیم. به جای استفاده از فرمان kubeadm init ، از فرمان kubeadm join  که در kubeadm init ذخیره کردیم، استفاده می‌کنیم. حالا بیایید ببینیم چه نتیجه‌ای حاصل آمد:

 

۱

۲

۳

NAME STATUS ROLES AGE VERSION

kube1 Ready master ۷۳m v1.۱۸.۱

kube2 Ready ۶۵s v1.۱۸.۱

منبع: hooshio.com


استفاده از یادگیری ماشین در موبایل


تحولات یادگیری ماشین در مویایل کمک بزرگی به توسعه‌دهندگان نرم‌ افزارهای موبایل کرده است. این فناوری زمینه را برای تقویت نرم‌ افزار های موبایل فراهم کرده و تجربه بهتری به کاربران داده است. توصیه‌های دقیق بر اساس موقعیت مکانی و شناسایی بیماری‌های گیاهی از جمله دستاوردهای مهم این فناوری برشمرده می‌شود. پیشرفت سریع یادگیری ماشین در موبایل باعث شده تا تدابیر لازم برای رفع برخی از مسائل رایج در این حوزه اندیشیده شود؛ مسائلی که یادگیری ماشین کلاسیک در حل آنها عاجز مانده است. نرم ‌افزارهای موبایل درر آینده نیازمندِ سرعت پردازش بالا و تاخیر کمتر هستند.

شاید این پرسش به ذهن‌تان خطور کند که چرا نرم ‌افزارهای موبایل AI-first قادر به استنتاج در فضای ابر نیستند. چنین روش متمرکزی قادر نیست سرعت پردازش بالایی را برای تجربه نرم‌افزاری راحت با فناوری یادگیری ماشین ارائه کند. داده‌ها باید در این مرکز داده‌ای متمرکز پردازش شده و سپس به دستگاه مورد نظر ارسال شوند. این فرایند به زمان و هزینه نیاز دارد و نمی‌توان به راحتی حریم خصوصی داده‌ها را تضمین کرد. حال که مزایای عمده یادگیری ماشین در موبایل ذکر شد، بیایید به صورت جامع این موضوع را بررسی کنیم که چرا باید در انتظار انقلابی بزرگ در یادگیری ماشین در دستگاه‌های هوشمند باشیم.

لزوماً نیازی نیست کارشناس یادگیری ماشین باشید تا قابلیت‌های آن را رمزگشایی کنید. این تخصص را به عهده ما بگذارید. به راحتی اقدام به ساخت نرم‌افزارهایی کنید که قابلیت دیدن، شنیدن، حس کردن و فکر کردن با حساب رایگان Fritz AI داشته باشند.

تاخیر کمتر

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

همان‌طور که پیشتر اشاره شد، رایانش ابری می‌تواند با کُندی همراه باشد. به این منظور، توسعه‌دهندگان ترجیح می‌دهند تاخیر را به صفر برسانند زیرا تنها در این صورت است که ویژگی‌های یادگیری ماشین به شکل بهینه در نرم ‌افزارهای موبایل عمل می‌کنند. یادگیری ماشین در موبایل و دیگر دستگاه‌های هوشمند می‌تواند با تکیه بر قابلیت‌های داده‌پردازی‌اش، زمینه را برای تاخیرِ نزدیک به صفر مهیا کند.

تولیدکنندگان گوشی‌های هوشمند و بازیگران بزرگ در حوزه فناوری به این موضوع واقف‌اند. شرکت اپل با توسعه تراشه‌های پیشرفته‌تری برای گوشی‌های هوشمند، یکی از پیشروان اصلی این حوزه به حساب می‌آید. این شرکت برای حصول اهداف خود از سیستم Bionic استفاده کرده است؛ این سیستم از یک موتور عصبی یکپارچه بهره می‌برد که امکان اجرای مسقیم و بسیار سریع شبکه‌های عصبی در وسیله‌های هوشمند را فراهم می‌کند. اپل تمرکز ویژه‌ای هم به پلتفرم یادگیری ماشین Core ML دارد. این پلتفرم می‌تواند توجه عده کثیری از توسعه‌دهندگان نرم‌ افزارهای موبایل را به خود جلب کند. تنسورفلو (TensorFlow Lite) نیز هم‌اکنون قابلیت پشتیبانی از GPU را دارد.

گوگل نیز به نوبه خود سعی دارد ویژگی‌هایِ از پیش بارگذاری شده را به پلتفرم یادگیری ماشین خود یعنی ML Kit اضافه کند. توسعه‌دهندگان نرم ‌افزارهای موبایل می‌توانند از این فناوری‌ها برای توسعه آن دسته از نرم‌افزارهایی استفاده کنند که قابلیت پردازش داده‌ با سرعت خارق‌العاده دارند. در این صورت، تاخیر از بین رفته و خطاها کاهش می‌یابند. ترکیب دقت و تجربه بی‌نظیر برای کاربران نکته بسیار مهمی است که توسعه‌دهندگان باید در هنگام ساخت نرم‌افزارهای مبتنی بر یادگیری ماشین به آن توجه داشته باشند. در همین راستا، توسعه‌دهندگان باید توجه ویژه‌ای به یادگیری ماشین در دستگاه‌های هوشمند داشته باشند.

سطح بالای امنیت و حریم خصوصی

یکی دیگر از مزایای عمدۀ رایانش مرزی که امکان درک آن در حال حاضر وجود ندارد، چگونگی عملکرد آن در افزایش سطح امنیت و حریم خصوصی کاربرانش است. تضمینِ امنیت و حریم خصوصی داده‌های نرم‌افزار یکی از بخش‌های اساسی در فعالیت حرفه‌ایِ توسعه‌دهندگان نرم‌افزار برشمرده می‌شود؛ به ویژه با توجه به قانون سخت‌گیرانۀ «مقررات عمومی حفاظت از داده‌ها (GDPR)». این قوانین جدیدِ مربوط به حریم خصوصی قطعاً می‌تواند بر فعالیت‌های توسعه نرم‌افزارهای موبایل تاثیر بگذارد. از آنجا که نیازی نیست داده‌ها برای پردازش به سرور یا ابر ارسال شوند، متخلفان فضای مجازی فرصت اندکی برای سوء استفاده از کاربران آسیب‌پذیر در حین انتقال داده دارند از این رو، حریم داده‌ها حفظ می‌شود. پس این توسعه‌دهندگان نرم ‌افزارهای موبایل این امکان را دارند تا مقررات عمومی حفاظت از داده‌ها را به سادگی در زمینه امنیت داده پیاده‌سازی کنند.

راه‌حل‌های مربوط به یادگیری ماشین در وسیله‌های هوشمند رویکردی تحت عنوان تمرکززدایی پیشنهاد می‌دهند. این رویکرد تا حد زیادی به روش کارکرد بلاک‌چین شباهت دارد. به عبارت دیگر، هکرها نمی‌توانند به راحتی شبکه‌ای به‌هم پیوسته از وسیله‌های پنهان را با حملات DDoS مورد تخاصم قرار داده و به آن نفوذ کنند. این فناوری می‌تواند در زمینه ساخت پهپادها و اجرای قوانین نیز نقش مفید موثری ایفا کند. تراشه‌های گوشی‌ هوشمند اپل که در بالا اشاره شد نیز به افزایش امنیت و حریم خصوصی کاربران کمک شایانی می‌کنند و حتی بنیه اصلی Face ID را تشکیل می‌دهند. این ویژگی آیفون مبتنی بر شبکه عصبی است و داده‌ها را با توجه به شکل صورت کاربران گردآوری می‌کند. بنابراین، یک روش شناسایی امن و دقیق به شمار می‌آید. این فناوری به همراه سخت‌افزارهای آتی مبتنی بر هوش مصنوعی باعث خواهند شد تجربه راحت و امنی برای کاربران گوشی‌های هوشمند ارائه گردد. همچنین، توسعه‌دهندگان نرم‌افزارهای موبایل لایه رمزگذاری بیشتری برای حفاظت از داده‌های کاربران در اختیار خواهند داشت.

از بررسی موارد رایج استفاده گرفته تا چالش‌های فنیِ تبدیل مدل و غیره؛ Fritz AI Newsletter همه مسائل و اطلاعات مربوط به یادگیری ماشین در موبایل را پوشش می‌دهد.

لازم نیست به اینترنت وصل شوید.

فارغ از مسائل مربوط به تاخیر، ارسال داده به ابر مستلزم این است که همواره به اینترنت وصل شوید. اغلب اوقات کاربران در بخش‌های پیشرفته‎ترِ جهان به راحتی کارشان را به پیش می‌برند و در دسترسی به اینترنت هیچ مشکلی ندارند. اما آن دسته از مناطقی که دسترسی کمتری به اینترنت دارند، باید چه کار کنند؟ با برخورداری از یادگیری ماشین در وسیله‌های هوشمند، شبکه‌های عصبی در گوشی‌های موبایل در دسترس قرار خواهد گرفت. بنابراین، صرف‌نظر از میزان دسترسی به اینترنت، توسعه‌دهندگان قادر خواهند بود در هر وسیله و در هر زمانی این فناوری را به کار گیرند.

نکته مهم‌تر این است که کاربران برای اتصال به نرم‌افزارهایشان نیازی به اینترنت نخواهند داشت. بهداشت و درمان از جمله صنایعی است که می‌تواند بیشترین نفع را از یادگیری ماشین در موبایل ببرد؛ زیرا توسعه‌دهندگان قادر به ساخت ابزارهای پزشکی کارآمدی هستند که می‌توانند علائم حیاتی بدن را بررسی کنند. توسعه‌دهندگان می‌توانند زمینه را برای جراحی رباتیک از راه دور نیز فراهم کنند، بدون اینکه نیازی به اتصال اینترنتی باشد. حتی دانش‌آموزان و دانشجویان نیز می‌توانند در مکان‌هایی که امکان اتصال به اینترنت وجود ندارد، به مواد درسی‌شان دسترسی پیدا کنند و عملاً حضور مجازی در کلاس داشته باشند. توسعه‌دهندگان قادر به ساخت نرم‌افزارهایی خواهند بود که کاربران سراسر دنیا از مزایای آنها بهره‌مند شوند؛ بدون اینکه سطح دسترسی به اینترنت دردساز شود. با توجه به اینکه گوشی‌های هوشمند به سطح بالایی از پیشرفت رسیده‌اند، حتی در صورتی که امکان دسترسی به اینترنت وجود نداشته باشد، کاربران در هنگام استفاده از نرم‌افزارشان به صورت آفلاین با تاخیر روبرو نخواهند شد.

کاهش هزینه

یادگیری ماشین در موبایل می‌تواند از میزان هزینه‌ها بکاهد چرا که مجبور نخواهید بود برای اجرای این راه‌حل‌ها به اپراتورهای خارجی پول پرداخت کنید. آن طور که در بخش‌های پیشین ذکر شد، اجرای این راه‌حل‌ها مستلزم دسترسی به اینترنت یا ابر نیست. تراشه‌های مختص هوش مصنوعی و GPU گران‌ترین سرویس‌های ابر هستند. به لطف واحدهای پردازش عصبی (NPU) بسیار پیچیده‌ای که امروزه در گوشی‌های هوشمند تعبیه شده است، اجرای مدل در وسیله‌های هوشمند بدین معناست که نیازی به پرداخت هزینه به این دسته‌ها ندارید. اجتناب از کابوس داده‌پردازی میان موبایل و ابر می‌تواند تا حد زیادی از هزینه‌ها بکاهد؛ بالاخص برای کسب‌وکارهایی که راه‌حل‌های یادیگری ماشین را برای حل مسائل خود مورد استفاده قرار می‌دهند.


نتیجه‌گیری
جای تردید نیست که ابر (Cloud) نعمت بزرگی برای داده و محاسبات در دهه ۲۰۱۰ میلادی بوده است، اما صنعت فناوری با سرعت تصاعدی در حال پیشرفت است. یادگیری ماشین در موبایل نیز به زودی به استانداردی در نرم‌افزارهای موبایل و توسعه IoT تبدیل خواهد شد. بی‌تردید به لطف کاهش مدت تاخیر، امنیت بالا، قابلیت استفادۀ آفلاین و کاهش هزینه، توسعه‌دهندگان نرم‌افزار به آینده این فناوری خیلی امیدوار هستند. اگر علاقمند به کسب اطلاعات بیشتر درباره یادگیری ماشین در موبایل، چگونگی کارکرد و اهمیت ان در فضای توسعه موبایل هستید، می‌توانید به منابع زیر مراجعه کنید:

• Matthijs Holleman’s blog Machine, Think!
• Awesome Mobile Machine Learning:
• Artificial Intelligence at the Edge (video)
• Heartbeat

منبع: hooshio.com