رایانه شما بسیار کثیف تر از آن است که به نظر می رسد

رایانه شما بسیار کثیف تر از آن است که به نظر می رسد

تمیز کردن آن ممکن است به عملکرد بهتر آن کمک کند-و برای بوت شدن سالم

عکس: Natthawat/Getty Images

اگر در سال گذشته تنها با شریک زندگی خود از خانه کار کرده باشید ، ممکن است احساس تنهایی کنید. هم اتاقی های خود ، یا لعنتی خود شما به عنوان یک شرکت. اما شما آنطور که ممکن است احساس کنید تنها نیستید. در واقع ، شما میلیون ها همکار دارید-و آنها در حال حاضر در اطراف…

کار می کنند

روز جانباز: تجلیل از زنانی که برای پیروزی در جنگ جهانی برنامه های کامپیوتری نوشتند

روز جانباز: تجلیل از زنانی که برای پیروزی در جنگ جهانی برنامه های کامپیوتری نوشتند

نوشته ملیسا پیرس و ماریان منقبی

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

رایانه ها ، همانطور که می شناسیم ، در اواخر دهه 1930/اوایل دهه 1940 ایجاد شدند تا معادلات پیچیده ریاضی را سریعتر انجام دهند. در طول سال های جنگ ، ارتش این رایانه ها را برای آزمایش و محاسبه مسیر سلاح های موشکی توسعه یافته جدید و همچنین رمزگشایی پیام های محرمانه دشمن ساخته و استفاده کرد.

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

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

چون قبلاً چنین کاری انجام نشده بود ، آنها - همکاران زن آنها که با ارتش ایالات متحده کار می کردند (ENIAC 6) - مجبور بودند اولین برنامه های کامپیوتری جهان را طراحی ، بداهه پردازی و اشکال زدایی کنند. در پروژه ما ، "متولد با کنجکاوی: داستان گریس هاپر" و رایانه ها ، داستانهای زنان نظامی نه تنها برای عموم مردم بلکه برای خود صنعت فناوری از بین رفته است. بسیاری از کارگزاران جوان وقتی می فهمند که ماراتن برنامه نویسی 24 ساعته خود را اختراع نکرده است. سعی کنید دشمنان خود را در جنگ جهانی دوم محاسبه کنید.

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

ملیسا پیرس تهیه کننده و کارگردان "متولد با کنجکاوی" و جایزه است برنده مستند "زندگی در بتا دائمی". او همچنین شیکاگو زنان توسعه دهندگان (CWD) را تأسیس کرد ، یک سازمان غیر انتفاعی که به زنان کد نویسی می آموزد. شما می توانید از "متولد با کنجکاوی" در اینجا حمایت کنید.

ماریان منقبی تهیه کننده ، فیلمنامه نویس و محقق "متولد با کنجکاوی" است. پیش از این ، او در نقش های مختلف در حین کار بر روی تولیدات فیلم/تلویزیون/مجموعه های وب خدمت کرده است. او همچنین مدتی را به عنوان بازاریاب دیجیتال کار کرده است.

عکس از ملیسا پیرس گرفته شده است. درباره گریس بیشتر بدانیدهاپر و «متولد کنجکاوی» در اینجا.

فیلترهای Snapchat: چگونه دید رایانه چهره شما را تشخیص می دهد

فیلترهای Snapchat: چگونه دید رایانه چهره شما را تشخیص می دهد

علم پشت تشخیص چهره شخصی

در آن لحظات خستگی هنگامی که با فیلترهای Snapchat بازی می کنید - زبان خود را بیرون بیاورید ، ویژگی های خود را غش کنید و نحوه تناسب تاج گل را بیاموزید. دقیقاً روی سر خود هستید - مطمئناً لحظه ای را گذرانده اید که از لحاظ فنی فکر می کنید چه خبر است - چگونه Snapchat موفق می شود چهره شما را با انیمیشن ها مطابقت دهد؟

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

فناوری

این فناوری از راه اندازی اوکراینی به دست آمده Looksery ، برنامه ای است که به کاربران اجازه می دهد ویژگی های صورت خود را هنگام چت تصویری و عکس ها تغییر دهند. Snapchat این استارتاپ تغییر چهره مبتنی بر اودسا را ​​در سپتامبر 2015 به قیمت 150 میلیون دلار خریداری کرد. طبق گزارشات ، این بزرگترین کسب فناوری در تاریخ اوکراین است.

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

نحوه عملکرد فیلترهای Snapchat

Looksery معتقد است مهندسی آنها محرمانه است ، اما هر کس می تواند به اختراعات خود به صورت آنلاین دسترسی پیدا کند. ناحیه خاصی از Computer Vision که فیلترهای Snapchat از آن استفاده می کنند پردازش تصویر نامیده می شود. پردازش تصویر عبارت است از تبدیل یک تصویر با انجام عملیات ریاضی بر روی هر پیکسل روی تصویر ارائه شده.

1 - تشخیص چهره:

اولین مرحله به این صورت عمل می کند: با توجه به ورودی تصویر یا قاب ویدئویی ، تمام چهره های موجود انسان را بیابید و کادر محدود کننده آنها را (یعنی مستطیل به شکل: X ، Y ، عرض و ارتفاع) مختص کنید.

تشخیص چهره از زمان حل مشکل در اوایل دهه 2000 اما با چالش هایی از جمله تشخیص چهره های ریز ، جزئی و غیر پیشانی روبرو است. پرکاربردترین تکنیک ترکیبی از هیستوگرام گرادیانهای جهت دار (به اختصار HOG) و ماشین بردار پشتیبان (SVM) است که با توجه به کیفیت خوب تصویر نسبتهای متوسط ​​نسبتاً خوبی را بدست می آورد اما این روش قادر به تشخیص زمان واقعی در حداقل در CPU.

اینجاست نحوه عملکرد آشکارساز HOG/SVM:

با توجه به تصویر ورودی ، نمای هرمی آن تصویر را که هرمی از نسخه کوچک شده چندگانه تصویر اصلی است محاسبه کنید. برای هر ورودی روی هرم ، از روش پنجره کشویی استفاده می شود. مفهوم پنجره کشویی بسیار ساده است. با حلقه زدن بر روی یک تصویر با اندازه گام ثابت ، تصاویر کوچک معمولاً وصله می کننداندازه 64 * 128 پیکسل در مقیاس های مختلف استخراج می شود. برای هر وصله ، الگوریتم تصمیم می گیرد که آیا دارای صورت است یا نه. HOG برای پنجره فعلی محاسبه می شود و به طبقه بندی SVM (خطی یا غیر) منتقل می شود تا تصمیم گیری انجام شود (یعنی صورت یا نه). هنگامی که با هرم انجام می شود ، معمولاً یک عملیات سرکوب غیر حداکثر (به اختصار NMS) به منظور دور انداختن مستطیل های انباشته انجام می شود. در اینجا می توانید اطلاعات بیشتری در مورد ترکیب HOG/SVM بخوانید.

2 - نشانه های صورت:

این مرحله بعدی در مرحله تجزیه و تحلیل ما است و به شرح زیر عمل می کند: برای هر صورت تشخیص داده شده ، مختصات ناحیه محلی را برای هر عضو یا ویژگی صورت آن صورت نمایش دهید. این شامل چشم ها ، استخوان ، لب ها ، بینی ، دهان ، ... مختصات معمولاً به شکل نقاط (X ، Y) است. یعنی تصویر بریده با صورت مورد نظر) ، اما اجرای آن برای برنامه نویس بسیار دشوار است مگر اینکه از تکنیک های نه چندان سریع یادگیری ماشین مانند آموزش و اجرای طبقه بندی استفاده شود.

می توانید در مورد استخراج نشانه های صورت در اینجا یا این PDF بیشتر بدانید: یک میلی ثانیه تراز صورت با مجموعه درختان رگرسیون در برخی موارد و بدیهی مفید ، تشخیص چهره و استخراج نشانه ها در یک عملیات واحد ترکیب می شوند.

3 - پردازش تصویر

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

مدل شکل فعال یک مدل صورت است که توسط علامت گذاری دستی مرزهای ویژگی های صورت در صدها تا هزاران تصویر آموزش داده شده است. از طریق یادگیری ماشین ، یک "چهره متوسط" ایجاد می شود و این را با تصویری که ارائه می شود هماهنگ می کند. این چهره متوسط ​​، البته دقیقاً با چهره کاربر مطابقت ندارد (همه ما چهره های متنوعی داریم) ، بنابراین پس از تناسب صورت ، پیکسل هایی در اطراف لبه "متوسط ​​چهره" مورد بررسی قرار می گیرند تا تفاوت در سایه زنی جستجو شود. به دلیل آموزش الگوریتم (فرایند یادگیری ماشین) ، دارای اسکلت اساسی در مورد ظاهر برخی از ویژگی های صورت است ، بنابراین به دنبال الگوی مشابه در تصویر داده شده است. حتی اگر برخی از تغییرات اولیه اشتباه باشند ، با در نظر گرفتن موقعیت سایر نقاطی که آن را ثابت کرده است ، الگوریتم خطاهایی را که مرتکب شده است تصور می کند که در آن فکر می کرد جنبه های خاصی از صورت شما وجود دارد. سپس مدل یک مش تنظیم می کند و یک مدل سه بعدی ایجاد می کند که می تواند با صورت شما تغییر حالت دهد.

این کل فرایند تشخیص چهره/ویژگی هنگامی انجام می شود که درست قبل از انتخاب فیلتر خود آن شبکه سفید را مشاهده کنید. سپس فیلترها با افزایش آنها یا افزودن چیزی در بالای آنها ، قسمت های خاصی از صورت ارائه شده را مخدوش می کند.

از فیلترها تا تعویض صورت

نسخه به روز شده Snapchat چند ماه قبل دارای قابلیت تعویض صورت با a بوددوست ، چه در زمان واقعی و چه با دسترسی به برخی از چهره های گالری خود. توجه کنید که چگونه صورت ها قابل مشاهده هستند ، این موقعیتی است که مدل آماری در آن قرار دارد. این به Snapchat کمک می کند تا شما و دوستانتان را سریع تر تراز کرده و ویژگی ها را عوض کند.

پس از قرار دادن همه ویژگی های خود ، برنامه مش ای در امتداد صورت شما ایجاد می کند که به هر نقطه فریم به فریم می چسبد. این مش اکنون می تواند همانطور که Snapchat احساس می کند ، ویرایش و اصلاح شود.

برخی از لنزها یا از شما می خواهند ابروهای خود را بالا بیاورید و یا با باز کردن دهان خود کارهای بیشتری انجام می دهند. فکر کردن درباره این نیز بسیار ساده است ، اما الزام به الگوریتم های بیشتری نیاز است.

قسمت داخلی دهان نسبتاً تیره است. بنابراین این باعث باز شدن دهان می شود. هنگامی که متوجه می شوید کاربر ابروهای خود را بالا برده است ، تغییرات ابرو نسبت به سایر ویژگی های صورت در نظر گرفته می شود.

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

نتیجه گیری

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

منابع:

- نحوه عملکرد فیلترهای Snapchat (Technobyte)

- نحوه عملکرد فیلتر Snapchat - پشت صحنه (TechHundred)

- نحوه عملکرد فیلترهای Snapchat (Vox)

درک سیستم عصبی شبکه رایانه اینترنتی ، نورونها و علائم ICP Utility

درک سیستم عصبی شبکه رایانه اینترنتی ، نورونها و علائم ICP Utility

توضیح و خرابی فنی سیستم عصبی شبکه ، مغز غیر متمرکز که بلاک چین رایانه اینترنتی را کنترل می کند.

< img src = "https://cdn-images-1.medium.com/max/426/1*_RTGrb3VUFCqZoWrzOqvRw.jpeg">

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

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

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

این اولین بار در تاریخ است هنگامی که یک زیرساخت غیر متمرکز با هدف رقابت با زیرساخت های متمرکز اختصاصی که توسط سازمان های تجاری با رهبران و هیئت مدیره اداره می شود ، خود هدایت می شود.

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

نورون ها نیز توسط شرکت کنندگان برای ارائه پیشنهادات جدید استفاده می شوند. پس از ارسال ، پیشنهادات یا تصویب یا رد می شوند ، که بسته به نحوه رأی گیری کل نورون ها ، تقریباً بلافاصله یا پس از تأخیر رخ می دهد. هر پیشنهاد نمونه ای از یک "نوع پیشنهاد" خاص است که تعیین می کند که چه اطلاعاتی را شامل می شود. برای هر نوع پیشنهادی ، NNS عملکرد سیستم مربوطه را حفظ می کند ، که هر زمان پیشنهادی از این نوع تصویب شود ، از آن استفاده می کند. هنگامی که یک پیشنهاد توسط NNS تصویب می شود ، با جمع آوری اطلاعات از محتوای پیشنهاد برای پر کردن پارامترها ، عملکرد سیستم مربوطه را فرا می خواند. هر نوع پیشنهاد به یک "موضوع پیشنهاد" خاص ، مانند "#NodeAdmin" یا "#NetworkEconomics" تعلق دارد ، که جزئیات نحوه پردازش آن را تعیین می کند. برای جلوگیری از اسپم کاربران (نورون ها) به NNS با پیشنهادات ، هزینه در صورت رد پیشنهاد ، از نورونی که پیشنهاد ارائه کرده است استفاده می شود.

NNS با مشاهده نحوه انتشار نورونها توسط نورون ها تصمیم می گیرد که آیا پیشنهادات را پذیرفته یا رد کند. هرکسی می تواند با قفل کردن توازن توکن کاربردی رایانه اینترنتی (ICP) که در دفتر کل NNS نگهداری می شود ، یک نورون ایجاد کند. هنگامی که یک کاربر یک نورون ایجاد می کند ، تعادل قفل شده ICP تنها با پرداخت ("تخریب") نورون باز می شود. کاربران به ایجاد نورون ها انگیزه می دهند زیرا وقتی به پیشنهادات رای می دهند پاداش دریافت می کنند. پاداش ها به شکل ICP تازه ایجاد شده ای هستند که توسط NNS ایجاد می شوند. مقدار پاداش ICP که به یک نورون پرداخت می شود از عواملی مانند اندازه تعادل قفل شده ، حداقل دوره قفل باقی مانده ("تاخیر حل شدن") ، "سن" نورون ، نسبت آرای احتمالی که در آن شرکت کرده است ، ناشی می شود. و مجموع فعالیت های رأی گیری در همه سلول های عصبی ، از آنجا که مجموع پاداش های پرداخت شده محدود است و باید بین رای دهندگان تقسیم شود. این تعیین می کند که اگر در حالت "حل شدن" قرار گیرد ، مدت زمان لازم برای حل شدن چقدر است. هنگامی که یک نورون در حالت "حل شدن" قرار می گیرد ، تاخیر حل شدن آن با گذشت زمان کاهش می یابد ، مانند تایمر آشپزخانه ، تا زمانی که به صفر برسد ، پس از آن صاحب آن می تواند آخرین اقدام را برای باز کردن تعادل ICP انجام دهد. تاخیر در انحلال انگیزه اقتصادی برای صاحبان نورون ایجاد می کند تا با توجه به حداکثر رساندن ارزش موجودی ICP قفل شده خود در آینده رای دهند. ICP پروکسی برای موفقیت شبکه در بلند مدت است ، بدون نوسان کوتاه مدت ، اینایجاد انگیزه اقتصادی برای رأی دادن به نفع شبکه. دارندگان نورون می توانند تاخیرهای حل شدن آزاد را حداکثر تا حداکثر هشت سال تاخیر پیکربندی کنند ، اما نمی توانند تاخیر انحلال را غیر از گذشت زمان طبیعی کاهش دهند. NNS پاداش های بیشتری در رای گیری می دهد و تاخیر انحلال را بیشتر می کند ، و کاربران را تشویق می کند تا وارد بازی شوند که در آن یک انگیزه اقتصادی برای رای دادن با توجه به یک چشم انداز بلند مدت ایجاد شده است. به صورت دستی به هر پیشنهادی که به NNS ارسال می شود رأی گیری کنید. اولا ، حجم زیادی از پیشنهادات ممکن است به NNS ارسال شود ، اغلب در مواقع ناخوشایند ، و مالکان ممکن است در دسترس نباشند یا زمان لازم برای ارزیابی هر یک را نداشته باشند. ثانیاً ، صاحبان نورون ممکن است از تخصص لازم برای ارزیابی پیشنهادات خود برخوردار نباشند. NNS از شکلی از دموکراسی مایع برای مقابله با این چالش ها استفاده می کند. برای هر موضوع پیشنهادی ، می توان یک نورون را به گونه ای پیکربندی کرد که با پیروی از آرای گروهی از سلول های عصبی ، به طور خودکار رای دهد ، درصورتی که اکثریت پیروان به تصویب رأی دهند ، و درصورتی که تصویب اکثریت غیرممکن شود ، رای رد دهد. همچنین ممکن است یک قانون همه جانبه پیروی شود تا در مورد پیشنهاداتی با موضوعاتی که هیچ قانون پیگیری برای آنها تعریف نشده است ، به طور خودکار یک نورون رای دهد. فرض بر این است که صاحبان نورون ها به دلیل تعادل قفل شده موجودی ICP خود ، نحوه عملکرد نورون های خود را در جهت منافع شبکه ، که منافع اقتصادی خود آنها را نیز دنبال می کند ، مدیریت خواهند کرد.

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

پیشنهادات

قالب < /h4>

هر پیشنهادی که به NNS ارسال می شود دارای زمینه های زیر است:

خلاصه: متنی که شرح مختصری از پیشنهاد را ارائه می دهد ، حداکثر با استفاده از 280 بایت تشکیل شده است. URL: آدرس وب محتوای اضافی مورد نیاز برای ارزیابی پیشنهاد ، با استفاده از HTTPS مشخص شده است. به عنوان مثال ، آدرس ممکن است محتوایی را توصیف کند که از اختصاص DCID (شناسه مرکز داده) به مرکز داده جدید پشتیبانی می کند. پیشنهاد دهنده: شناسه نورونی که پیشنهاد را ارائه کرده است. هنگامی که پیشنهاد ارائه می شود ، "شارژ" در مانده آن قرار می گیرددر صورت رد شدن بنابراین موجودی باید آنقدر بزرگ باشد که هزینه (همه) رد (ها) را بپردازد. ما به یک نورون احتیاج داریم که 6 ماه delay تأخیر در انحلال داشته باشد و این امر در مورد ارائه پیشنهادات نیز صدق می کند. نوع پیشنهاد: نوع پیشنهاد. این به چه موضوعی تعلق دارد (به عنوان مثال ، #NodeAdmin) ، عملکرد سیستم که در صورت پذیرش پیشنهاد ، پردازش می کند و نوع و ساختار پارامترهایی که به آن تابع منتقل می شود. پارامترها: پارامترهایی که به عملکرد سیستم منتقل می شوند و در صورت تصویب پیشنهاد ، فراخوانی می شوند ، که بر اساس نوع آن تعیین می شود. هنگامی که یک پیشنهاد ارسال می شود ، NNS پارامترها را بررسی می کند.

NNS به هر پیشنهادی که دریافت می کند یک هویت منحصر به فرد اختصاص می دهد.

NNS به هر پیشنهادی که ارائه می کند ، یک هویت منحصر به فرد اختصاص می دهد. دریافت می کند.

موضوعات

موضوع یک پیشنهاد ، که از نوع آن استنباط می شود ، نحوه پردازش آن را تعیین می کند. به عنوان مثال ، NNS ممکن است رای دهندگان را ملزم کند که از موافقت بیشتری برخوردار باشند یا سعی کنند پیشنهادات را سریعتر در مورد برخی موضوعات پردازش کنند. همچنین ، نورون ها از نورون های دیگر به صورت موضوعی پیروی می کنند. موضوعات اولیه شامل موارد زیر است: رأی های مربوط به این موضوع در تاریخ رأی گیری نورون گنجانده نشده است. برای پیشنهادات در این زمینه ، فقط پیروان نورون در مورد موضوعی که پیشنهادات مربوط به آن هستند مجاز به رای دادن هستند. از آنجا که مجموعه رای دهندگان واجد شرایط پیشنهادات در این زمینه محدود است ، پیشنهادات مربوط به این موضوع دارای دوره رای دهی کوتاهتر از حد معمول است. #ExchangeRate: همه پیشنهادات اطلاعاتی را در زمان واقعی در مورد ارزش بازار ارائه می دهند. ICP ، که توسط صندوق بین المللی پول (IMF) Drawing Right (SDR) اندازه گیری شده است ، که به NNS اجازه می دهد ICP را به چرخه (که محاسبه قدرت می کند) با سرعتی که هزینه دنیای واقعی آنها ثابت است ، تبدیل کند. از آنجا که پیشنهادات در مورد این موضوع بسیار مکرر است ، دوره رای گیری آنها کوتاهتر است و رای گیری در مورد این موضوع در سابقه رأی گیری سلول عصبی گنجانده نمی شود. ، تعیین پاداشهایی که باید به اپراتورهای گره پرداخت شود. #Guvernance: همه پیشنهاداتی که حکمرانی را اداره می کنند - به عنوان مثال ، حرکات و پیکربندی پارامترهای خاص. #NodeAdmin: همه پیشنهادات که به نحوی ماشین های گره را اداره می کند ، از جمله ارتقاء یا پیکربندی سیستم عامل ، ارتقاء یا پیکربندی چارچوب ماشین مجازی و ارتقاء یا پیکربندی نرم افزار ماکت گره. - به عنوان مثال ، اعطا و لغو DCID (هویت مرکز داده) یا NPID (شناسه ارائه دهنده گره). و حذف گره های زیر شبکه و تقسیم زیر شبکه ها. #NetworkCanisterManagement: نصب و ارتقاء قوطی های "system" متعلق به شبکه - به عنوان مثال ، ارتقاء NNS. #KYC: پیشنهادات که اطلاعات KYC را برای اهداف نظارتی به روز می کند - به عنوان مثال ، در طول توزیع اولیه پیدایش ICP به شکل نورون ها. #NodeProviderRewards: موضوع برایپیشنهادهایی برای ارائه پاداش به ارائه دهندگان گره.

انواع

انواع پیشنهادات اولیه عبارتند از:

مدیریت نورون (#مدیریت نورون ، رای گیری محدود) این نوع پیشنهاد یک عملکرد اصلی را بر روی یک نورون هدف مشخص می خواند. فقط پیروان نورون هدف می توانند به این پیشنهادات رای دهند ، که به طور م controlثری کنترل نورون مورد نظر را برای پیروان فراهم می کند. این می تواند وسیله ای مناسب و بسیار امن برای تیمی از افراد برای مدیریت یک نورون مهم فراهم کند. به عنوان مثال ، یک نورون ممکن است تعادل زیادی داشته باشد ، یا متعلق به سازمانی با شهرت بالا باشد و به گونه ای منتشر شود که بسیاری از نورون های دیگر بتوانند رای خود را دنبال کنند. در هر دو مورد ، مدیریت ایمن کلید خصوصی اصلی می تواند مشکل ساز باشد. (یا یک نسخه واحد نگهداری می شود ، که بسیار ناامن است و کنترل یک گروه را در اختیار دارد ، یا گروهی از افراد باید مسئولیت را تقسیم کنند - به عنوان مثال ، از رمزنگاری آستانه ، که پیچیده و زمان بر است). برای حل این مشکل با استفاده از این نوع پیشنهاد ، می توان نورون مهم را پیکربندی کرد تا از نورون های کنترل شده توسط تک تک اعضای یک تیم پیروی کند. در حال حاضر آنها می توانند پیشنهادهایی را برای وادار کردن نورون مهم به انجام اقدامات ارائه دهند ، که در صورت پذیرش و در صورت اکثریت اکثریت آنها به تصویب پذیرفته می شود. (ارائه چنین پیشنهادی برای جلوگیری از حملات انکار سرویس هزینه ناچیزی را در بر می گیرد.) تقریباً هر فرمانی بر روی نورون مورد نظر قابل اجرا است ، از جمله دستوراتی که قوانین زیر را تغییر می دهد و به مجموعه اعضای تیم اجازه می دهد تا پویا باشند. تنها مرحله نهایی حل شدن نورون به محض رسیدن تاخیر حل شدن به صفر ، با استفاده از این نوع پیشنهاد قابل انجام نیست ، زیرا این امر باعث می شود کنترل/"مالکیت" بر مانده های قفل شده منتقل شود. (تنها استثناء این قاعده در مورد سازمانهای غیر انتفاعی صدق می کند ، که ممکن است مجاز باشند نورونهای خود را بدون استفاده از کلید خصوصی اولیه حل کنند.) برای جلوگیری از تصادف یک نورون تحت کنترل مخرب کلید خصوصی مدیر کلید خصوصی می تواند از بین برود تا نورون فقط توسط پیروانش کنترل شود ، اگرچه این امر باعث می شود که متعاقباً تعادل باز نشود. ManageNetworkEconomics (#NetworkEconomics) این یک نوع پیشنهاد واحد است که می تواند یک یا چند پارامتر اقتصادی را به روز کند: —— رد هزینه: مبلغ ICP که پیشنهاد دهنده رد شده به حساب می آید - برای جلوگیری از اسپم شدن پیشنهادات بی ارزش. —— حداقل سهام نورون: حداقل تعداد ICP مورد نیاز برای ایجاد نورون را تعیین کنید. هنگام افزایش تأخیر در حل شدن یا تغییر حالت نورون از حل شدن به پیری ، باید به همین محدودیت احترام گذاشت. —— هزینه مدیریت نورون: هزینه ICP برای هر پیشنهاد مدیریت نورون. در اینجا NNS از طرف یک نورون خاص کار می کند و هزینه کمی برای جلوگیری از استفاده بیش از حد از این ویژگی (به عنوان مثال ، اسپم) اعمال می شود. —— حداقل نرخ ICP/SDR: برای جلوگیری از اشتباه ، محدودیت پایینی برای نرخ ICP/SDR وجود دارد که توسط پیشنهادات اقتصادی شبکه مدیریت می شود. ——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————— delay delay delay:: delay delay delay delay delay. —— حداکثر پاداشهای ارائه دهنده گره: حداکثر پاداشهایی که در یک رویداد توزیع (پیشنهاد) به ارائه دهندگان گره توزیع می شود. --هزینه معامله:هزینه معامله که باید برای هر معامله دفتری پرداخت شود. —— حداکثر تعداد پیشنهادهایی که باید در هر موضوع نگهداری شود: حداکثر تعداد پیشنهادی که باید در هر موضوع نگهداری شود. هنگامی که تعداد کل پیشنهادات برای یک موضوع معین بیشتر از این تعداد باشد ، قدیمی ترین پیشنهادهایی که به حالت "نهایی" رسیده اند ممکن است برای صرفه جویی در فضا حذف شوند. حرکت (#دولت) حرکت یک متن است که می تواند پذیرفته یا رد شود. هنگام تصویب یک حرکت کد اجرا نمی شود. یک حرکت تصویب شده باید استراتژی آینده اکوسیستم رایانه اینترنتی را هدایت کند. تأیید پیدایش KYC (#KYC) هنگامی که نورونهای جدیدی در پیدایش ایجاد می شوند ، GenesisKYC = false دارند. این کارها را محدود می کند که می توانند انجام دهند. به طور خاص ، آنها نمی توانند سلولهای عصبی جدیدی ایجاد کنند و هنگامی که تاخیر حل آنها صفر شود ، نمی توان آنها را پرداخت کرد و موجودی آنها به حسابهای جدید باز شد. این پیشنهاد GenesisKYC = برای دسته های اصلی صادق است. (یادداشت ویژه: رویداد پیدایش تمام ICP را به شکل نورونها پرداخت می کند ، که اصول آنها باید KYCed باشد. در نتیجه ، همه نورونهای ایجاد شده پس از پیدایش دارای GenesisKYC = true هستند زیرا آنها باید از موازنه هایی که قبلاً KYCed گرفته شده اند گرفته شده باشند.) AddOrRemoveNodeProvider (#مدیریت شرکت کننده) اختصاص یک هویت به ارائه دهنده گره (یا لغو آن) ، ارتباط اطلاعات کلیدی در مورد شخص حقوقی مرتبط که باید راهی برای شناسایی منحصر به فرد آن ارائه دهد. RewardNodeProvider (#NodeProviderRewards) پیشنهاد دادن پاداش ICP به ارائه دهنده گره Gen-1 برای ارائه گره های Gen-1 به IC. SetDefaultFollowees (#Governance) لیستی از دنبال کنندگان را که یک نورون تازه ایجاد شده باید داشته باشد ، مشخص کنید.

در زیر لیستی از انواع پیشنهاداتی است که سایر کپسول های NNS را فرا می خواند:

CreateSubnet (#SubnetManagement) مجموعه خاصی از گره ها را که معمولاً از مراکز داده و اپراتورها به گونه ای تهیه شده اند که استقلال آنها را تضمین می کند ، در یک زیر شبکه غیرمتمرکز جدید ترکیب کنید. اجرای این به روزرسانی خارجی ابتدا نمونه جدیدی از پروتکل تولید کلید توزیع شده را آغاز می کند. رونوشت آن پروتکل در یک ردیف زیر شبکه جدید در رجیستری ، همراه با اطلاعات پیکربندی اولیه زیر شبکه ، از جایی که گره های تشکیل دهنده زیر شبکه آن را انتخاب می کنند ، نوشته می شود. AddNodeToSubnet (#SubnetManagement) یک گره جدید به یک زیر شبکه اضافه کنید. گره را نمی توان در حال حاضر به یک زیر شبکه اختصاص داد. اجرای این پیشنهاد یک رکورد زیر شبکه موجود را برای افزودن یک گره تغییر می دهد. از دیدگاه NNS ، این به روز رسانی یک به روز رسانی ساده برای پرونده زیر شبکه در رجیستری است. InstallNetworkCanister (#NetworkCanisterManagement) پیشنهادی برای افزودن یک قوطی جدید برای نصب و اجرا در زیر شبکه NNS. Canister ریشه ، که همه Canisters های NNS را به جز خود کنترل می کند ، این نوع پیشنهاد را مدیریت می کند. فراخوان همچنین انتظار دارد که ماژول Wasm نصب شود. UpgradeNetworkCanister (#NetworkCanisterManagement) پیشنهادی برای ارتقاء قوطی موجود در زیر شبکه NNS. این نوع پیشنهاد توسط Canister ریشه اجرا می شود. علاوه بر ارتقاء ماژول Wasm در قوطی هدف ، این پیشنهاد همچنین می تواند اطلاعات مجوز و تخصیص ها را تنظیم کند. BlessReplicaVersion (#NodeAdmin) پیشنهادی برای برکت نسخه جدید که می توان نسخه های تکراری آن را ارتقا داد. پیشنهاد یک نسخه کپی (که با هش تصویر نصب مشخص شده است) در رجیستری ثبت می کند. علاوه بر ایجاد رکورد برای آن نسخه ،پیشنهاد همچنین آن نسخه را به لیست "نسخه های مبارک" که می تواند روی زیر شبکه نصب شود ، اضافه می کند. این پیشنهاد به خودی خود هیچ گونه ارتقاء ایجاد نمی کند. (در آینده ، در هر زمان فقط یک نسخه مبارک از نرم افزار ماکت وجود خواهد داشت.) RecoverSubnet (#SubnetManagement) CUP بازیابی زیر شبکه را به روز کنید (برای بازیابی زیر شبکه های متوقف شده استفاده می شود). گره هایی که برای زیر شبکه خود CUP بازیابی پیدا می کنند ، آن CUP را از رجیستری بارگیری می کنند و ماکت را از آن CUP راه اندازی مجدد می کنند. UpdateSubnetConfig (#SubnetManagement) پیکربندی زیر شبکه را به روز کنید. این پیشنهاد رکورد زیر شبکه را در رجیستری به روز می کند ، هنگامی که گره های زیر شبکه هنگام ارجاع به نسخه رجیستری مربوطه تغییرات را دریافت می کنند. پیکربندی زیر شبکه شامل پارامترهای پروتکل است که باید در زیر شبکه (به عنوان مثال ، اندازه پیام ها) سازگار باشد. AssignNPID (#ParticipantManagement) یک هویت به اپراتور گره اختصاص دهید که اطلاعات کلیدی مربوط به مالکیت آن ، حوزه قضایی که در آن قرار دارد و سایر اطلاعات را مرتبط کند. عملگر گره به عنوان یک رکورد در رجیستری ذخیره می شود. این شامل مقدار اضافی گره برای آن عملگر گره است ، یعنی تعداد گره هایی که اپراتور گره هنوز می تواند به IC اضافه کند. وقتی یک گره اضافی توسط اپراتور گره اضافه می شود ، مقدار باقی مانده کاهش می یابد. RootUpgrade (#NetworkCanisterManagement) پیشنهادی برای ارتقاء Canister ریشه در زیر شبکه NNS. این پیشنهاد توسط قوطی Lifeline ، که قوطی ریشه را کنترل می کند ، پردازش می شود. پیشنهاد ماژول Wasm و همچنین تنظیمات مجوز را به روز می کند. SetICPSDR (#ExchangeRate) NNS را در مورد ارزش بازار 1 ICP که توسط SDR IMF اندازه گیری شده است آموزش دهید. این تنظیم بر قیمت چرخه ها تأثیر می گذارد (زیرا ارزش چرخه ها باید نسبت به SDR های IMF ثابت باشد). ارتقاء SubnetToReplicaVersion (#SubnetManagement) نسخه ماکت اجرا شده در یک زیر شبکه مشخص را به روز کنید. این پیشنهاد نسخه تکراری را که در زیر شبکه مشخص استفاده می شود تغییر می دهد. نسخه باید در لیست نسخه های کپی مبارک موجود باشد. ارتقا زمانی انجام می شود که زیر شبکه CUP معمولی بعدی را ایجاد می کند. ClearProvisionalWhitelist (#NetworkEconomics) لیست سفید موقت را پاک می کند ، که به اصول ذکر شده اجازه می دهد تا قوطی هایی با چرخه ایجاد کنند. این مکانیزم فقط برای بوت استرپ و آزمایش مورد نیاز است و باید بعداً غیرفعال شود. RemoveNodeFromSubnet (#SubnetManagement) یک گره را از زیر شبکه حذف کنید. سپس برای تغییر مکان در دسترس قرار می گیرد. اجرای این پیشنهاد یک رکورد زیر شبکه را برای حذف یک گره تغییر می دهد. از منظر NNS ، این به روز رسانی یک به روز رسانی ساده برای پرونده زیر شبکه در رجیستری است. SetAuthorizedSubnetworks (#Governance) چرخه های تولید قوطی را اطلاع می دهد که یک مدیر خاص مجاز به استفاده از شبکه های فرعی خاص (از لیست) است. همچنین می تواند برای تنظیم لیست "پیش فرض" زیر شبکه هایی که مدیران بدون مجوز خاص مجاز به استفاده از آنها هستند استفاده شود. SetFirewallConfig (#SubnetManagement) تغییر پیکربندی فایروال در رجیستری (پیکربندی گره های مرزی که شبکه های بلاک چین زیر شبکه با آن ارتباط برقرار می کنند) UpdateNodeOperatorConfig (#NodeAdmin) کمک هزینه Node Operator را در رجیستری تغییر دهید. StopOrStartNNSCanister (#NetworkCanisterManagement) توقف یا راه اندازی یک قوطی NNS.

نشانه های ICP

ICP نشانه های ابزار بومی هستند که سه نقش کلیدی را در شبکه ایفا می کنند:

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

شناسه حساب (بایت) یک ارزش منحصر به فرد که از هویت "اصلی" که حساب را "کنترل" می کند ، نشأت می گیرد. در حال حاضر ، اصلی باید یا باشد: (1) مالک یک جفت کلید عمومی ، یا (2) یک قرارداد هوشمند Canister که بخشی از NNS است. شناسه های حساب با درهم آمیختن جداکننده دامنه ، شناسه اصلی و زیر حساب (یا صفر در صورت عدم ارائه حساب اضافی) مشتق می شوند. ICP) مقدار ICP اختصاص داده شده به اصلی حساب.

وقتی مدیر کلید عمومی یا قوطی است ، آنها می توانند عملیات زیر را به یک حساب اعمال کنند:

ارسال بخشی از موجودی ICP را به حساب دیگری ارسال کنید. اگر تمام ICP به حساب دیگری ارسال شود ، حساب ارسال کننده دیگر وجود ندارد (یعنی از دفتر کل حذف می شود). اطلاع هنگامی که مقصد وجوه ارسال شده ، حساب یک قوطی NNS است (به عنوان مثال ، حساب قوطی فرمانداری) ، فرستنده می تواند از دفتر کل بخواهد تا انتقال دریافتی را به قوطی گیرنده اطلاع دهد. سپس قوطی گیرنده می تواند به این اعلان عمل کند. دو مثال که در آن از این توانایی استفاده می شود ، ایجاد نورون و تازه کردن سهم نورون است. اینها در زیر به تفصیل شرح داده شده است.

عملیات هایی که نیاز به تعامل بین دفتر کل و سیستم حکمرانی (نورون ها) دارند:

ایجاد نورون هنگامی که مدیر دارنده کلید عمومی است ، ممکن است بخشی از تعادل خود را درون یک نورون جدید قفل کند. از نظر فنی ، ایجاد نورون در دو مرحله انجام می شود. ابتدا ICP را به حساب سیستم مدیریت (که مربوط به یک نورون جدید است منتقل کنید - جزئیات انجمن در اینجا حذف شده است). سپس فرمان انتقال را از طریق ورودی که حسابداری نورون داخلی آن را به روز می کند ، اطلاع دهید. اگر کل موجودی در یک نورون جدید قفل شود ، حساب از بین می رود (یعنی از دفتر کل حذف می شود). برای انتقال این ICP به یک حساب متفاوت ، مانند بازگشت به حساب اصلی ، جایی که می توان آنها را مجدداً مانند یک موجودی معمولی کنترل کرد ، نورون مرتبط باید کاملاً حل شده و پرداخت (تخریب) شود. نورون جدید کهایجاد شده است توسط کلید خصوصی اصلی که آن را ایجاد کرده است کنترل می شود. تازه کردن سهام سهم یک نورون ممکن است با انتقال به آدرس/حساب آن در دفتر کل و اطلاع رسانی به فرمانداری از انتقال ورودی افزایش یابد. تجدید قراضه ، بلوغ و سن تعیین شده عصب را تغییر می دهد. به عنوان مثال ، اگر سهام دو برابر شود ، سررسید و سن نصف می شود ، بنابراین تخم ریزی همان مقدار را به همراه خواهد داشت و پاداش سن همان قبلی خواهد بود (به صورت مطلق).

نورون

یک نورون تعادل ICP را قفل می کند و صاحب آن را قادر می سازد تا در اداره شبکه مشارکت داشته باشد و از طریق آن پاداش دریافت کند.

ویژگی

نورون ها دارای ویژگی های زیر هستند:

هویت (uint64) هویت کلی جسم نورون. هنگامی که یک نورون پیکربندی می شود تا از نورون دیگری پیروی کند ، این مقدار مورد استفاده است. این یک مقدار تصادفی 64 بیتی است که در ایجاد نورون انتخاب شده است. حساب (بایت ، خصوصی) حساب دفتری که موجودی ICP قفل شده در آن قرار دارد. کنترل کننده (شناسه اصلی ، خصوصی) اصلی که در واقع نورون را کنترل می کند. مدیر باید یک جفت کلید عمومی را شناسایی کند ، که به عنوان "کلید اصلی" عمل می کند ، به طوری که کلید مخفی مربوطه باید بسیار ایمن نگه داشته شود. اصلی ممکن است بسیاری از نورون ها را کنترل کند. کلیدهای داغ (لیست شناسه اصلی ، خصوصی) کلیدهایی که می توان برای انجام اقدامات با امتیازات محدود ، مانند رای گیری ، بدون افشای کلید مخفی مربوط به اصلی استفاده کرد (به عنوان مثال ، می تواند یک کلید WebAuthn باشد). CreatedAt (timestamp) هنگامی که نورون ایجاد شد. AgingSince (timestamp) مهر زمانی مربوط به زمانی که این نورون شروع به پیری کرده است. این یا زمان ایجاد یا آخرین باری است که در آن حل شدن نورون متوقف شده است. وقتی نورون در حال حل شدن است این مقدار بی معنی است ، زیرا یک نورون محلول همیشه دارای سن صفر است. DissolveState در هر زمان ، حداکثر یکی از WhenDissolved و DissolveDelay مشخص شده است. ——WhenDissolved (زمان بندی) هنگامی که زمان سنج حل کننده در حال کار است ، این نشانگر زمان را در چند ثانیه از دوران یونیکس ذخیره می کند ، در این هنگام نورون حل می شود. در هر زمان که نورون در حال حل شدن است ، صاحب نورون ممکن است محلول را متوقف کند ، در این صورت DissolveDelay به موارد زیر اختصاص داده می شود: WhenDissolved منهای زمان زمانی که اقدام انجام می شود. —— انحلال تاخیر (مدت زمان) هنگامی که زمان سنج حل کننده متوقف می شود ، این زمان ذخیره زمان شروع به کار با زمان ذخیره را ذخیره می کند. حداکثر می تواند هشت سال باشد. در هر زمانی که در این حالت هستید ، صاحب نورون ممکن است (دوباره) شروع به انحلال کند ، در این صورت WhenDissolved زمانی که عمل انجام می شود به علاوه DissolveDelay به timestamp اختصاص می یابد. بلوغ (تعداد مثبت - درصد) بلوغ یک سلول عصبی ، که توانایی آن را برای ایجاد یک نورون جدید و تعادل قفل شده مربوط به ICP تازه ایجاد شده تعیین می کند که انتظار می رود برابر با این مقدار در درصد از سهم نورون تخمگذار باشد. هنگامی که نورون های جدید ایجاد می شوند ، بلوغ آنها صفر است. وقتی نورون ها رای می دهند ، با گذشت زمان NNS بلوغ خود را افزایش می دهد تا به آنها پاداش دهد. روابط را دنبال کنید (نقشه برداری از موضوع به لیست دنبال کنندگان ، خصوصی) یک نورون را می توان طوری پیکربندی کرد که به طور خودکار با پیروی از سایر نورون ها به صورت موضوعی ، رأی دهد. برای هر مبحث معتبری می توان لیستی از افراد دنبال کننده را مشخص کرد ونورون از رای اکثریت پیروان در مورد پیشنهادی با نوع مربوط به آن موضوع پیروی می کند. اگر یک موضوع تهی مشخص شده باشد ، این به عنوان یک نکته مهم عمل می کند که نورون را قادر می سازد در مواردی که قانونی مشخص نشده است از رای پیروان پیروی کند. آرای اخیر (عمومی) رکورد آرای اخیر حفظ می شود. این می تواند راهنمای کسانی باشد که مایلند ارزیابی کنند که آیا از یک نورون پیروی می کنند یا نحوه پیروی از رای دهندگانشان. NotForProfit (بولی) این که آیا این نورون "برای سود نیست" ، با رای دادن قابل حل است.

ویژگی های زیر را می توان محاسبه کرد:

سن (ثانیه) | محاسبه شده از AgingSince و زمان کنونی دوره زمانی که از زمان ایجاد نورون یا آخرین حل شدن متوقف شده است می گذرد. از نظر مفهومی ، هر زمان که یک نورون شروع به حل شدن می کند ، سن آن به صفر تنظیم می شود و در حین حل شدن صفر باقی می ماند. اگر نورون در حال انحلال خاموش شده باشد ، زمان فعلی برای محاسبه سن به تاریخ م creationثر ایجاد نورون تبدیل می شود. حالت (قفل شده یا حل شده یا حل شده است) | محاسبه شده از DissolveState و زمان فعلی —— قفل شده است: در این حالت ، نورون با یک DissolveDelay خاص قفل می شود. با گذشت زمان سن افزایش می یابد و اگر DissolveDelay حداقل شش ماه باشد می تواند رای دهد. می توان از روش start_dissolving برای انتقال نورون به حالت DISSOLVING نام برد. روش افزایش_حلول_تأخیر می تواند برای افزایش تاخیر در حل شدن بدون تأثیر بر وضعیت یا سن نورون استفاده شود. —— حل شدن: در این حالت ، تاخیر در حل شدن م neurثر نورون با گذشت زمان کاهش می یابد. در حین حل شدن ، سن نورون صفر در نظر گرفته می شود. در نهایت به حالت DISSOLVED می رسد. می توان از روش stop_dissolving برای انتقال نورون به حالت LOCKED استفاده کرد و نورون دوباره شروع به پیری می کند. می توان از روش افزایش_حلول_درد برای افزایش تاخیر حل استفاده کرد ، اما این کار زمان سنج را متوقف نمی کند و بر سن نورون تأثیر نمی گذارد. —— حل شده: در حالت حل شده ، می توان سهم نورون را با استفاده از روش توزیع پرداخت کرد. نمی تواند رای بدهد زیرا تاخیر انحلال آن صفر در نظر گرفته می شود. اگر روش افزایش_حلول_درد در این حالت نامیده شود ، نورون با تاخیر حل مشخص قفل شده و دوباره شروع به پیری می کند. دارندگان نورون انگیزه ای دارند که نورون ها را برای مدت طولانی در حالت حل شده نگه ندارند: اگر دارندگان می خواهند توکن های خود را مایع کنند ، سهام نورون را پس انداز می کنند و اگر می خواهند پاداش رای گیری کسب کنند ، تاخیر انحلال را افزایش می دهند. اگر این انگیزه ها ناکافی باشند ، NNS ممکن است تصمیم بگیرد محدودیت های بیشتری را بر روی نورونهای حل شده اعمال کند. ControlByProposals (boolean) | درست است اگر نورون دارای یک لیست خالی از دنبال کنندگان در مبحث #مدیریت نورون باشد اگر یک نورون پیروان را در موضوع ManageNeuron مشخص کند ، می توان آن را با پیشنهاداتی از نوع ManageNeuron (#NeuronManagement) مدیریت کرد ، که ممکن است فقط توسط پیروان خود نورون به آن رای داده شود. این پایه ای برای مدیریت نورون های بسیار حساس به امنیت است ، زیرا به آنها اجازه می دهد بدون کلیدهای گرم یا کلید مخفی نگهداری شوند.از اصلی ، که می تواند در سردخانه نگهداری شود یا حتی از بین برود (تا زمانی که تراز مربوطه ICP هرگز قفل نشده باشد). به عنوان مثال ، بنیاد DFINITY یا انجمن رایانه های اینترنتی ممکن است آدرس نورون های خاصی را که برای رأی گیری مطابق خواسته آنها ساخته می شود ، اعلام کند تا دیگران بتوانند نورون های خود را برای پیگیری آنها پیکربندی کرده و از تخصص و تلاش خود در حکومتداری استفاده کنند. یکی از مشکلات چنین شیوه هایی این است که آنها خطر این را دارند که کلیدهای مخفی مورد استفاده در مدیریت نورونهای عمومی به خطر بیفتد و به هکرها این امکان را بدهد که کنترل را در دست بگیرند و تعداد زیادی از نورون های زیر را فریب دهند تا طبق خواسته خود رای دهند. اما اگر نورونهای عمومی دارای پیشنهادات سرپرست باشند ، می توانند توسط نورون هایی که دنبال می کنند (پیروان آنها) ، که معمولاً توسط تعداد زیادی از اعضای تیم کنترل می شوند ، که بدون اخطار به استفاده از آنها اخاذی می شوند ، کنترل شوند. کلیدهای مخفی در هر صورت.

دستورات

اصلی که یک نورون را کنترل می کند ممکن است به او دستور دهد اقدامات زیر را انجام دهد:

شروع به حل شدن تاخیر حل مانند تایمر آشپزخانه است که فقط می تواند در یک جهت بچرخد. می توان آن را به طور دلخواه افزایش داد ، اما فقط با روشن کردن حالت حل و شمارش معکوس کاهش می یابد. می توان به نورون دستور داد "شروع به حل شدن" کند. هنگامی که نورون در حال حل شدن است ، تاخیر حل شدن آن در طول زمان کاهش می یابد تا زمانی که یا متوقف شود یا به صفر برسد. هنگامی که یک عصب عصبی نمی تواند رای بدهد (یا پاداشی برای رای گیری دریافت می کند) وقتی تاخیر انحلال آن به کمتر از شش ماه برسد. هنگامی که تاخیر حل شدن به صفر برسد ، سقوط آن متوقف می شود و مدیر کنترل کننده می تواند به نورون دستور بدهد. توقف حل شدن می توان به نورونی که در حال حل شدن است دستور داد که متوقف شود ، در نتیجه تأخیر حل شدن آن با گذشت زمان متوقف می شود. پرداخت وقتی تأخیر حل شدن نورون 0 باشد ، اصل کنترل کننده آن می تواند به او دستور دهد که سهم نورون را پس دهد. موجودی ICP قفل شده آن به حساب دفتری جدید منتقل می شود و نورون و حساب دفتری خود ناپدید می شوند. افزایش تأخیر انحلال تاخیر در انحلال نورون را می توان حداکثر تا هشت سال افزایش داد. تخم ریزی هنگامی که بلوغ یک نورون از یک آستانه بالاتر رفت ، می توان به ایجاد یک نورون جدید دستور داد. این یک نورون جدید ایجاد می کند که تعادل جدیدی از ICP را بر روی دفتر قفل می کند. نورون جدید می تواند توسط همان مدیر والد خود کنترل شود ، یا به یک مدیر جدید واگذار شود. وقتی یک نورون یک سلول عصبی جدید ایجاد می کند ، بلوغ آن به صفر می رسد. افزودن کلید داغ یک کلید گرم جدید اضافه کنید که می تواند برای مدیریت نورون استفاده شود. این جایگزینی برای استفاده از کلید سرد مدیر برای مدیریت نورون فراهم می کند ، که ممکن است سخت باشد و محافظت از آن دشوار است ، به ویژه اگر به طور منظم استفاده شود. کلید داغ ممکن است یک کلید WebAuthn باشد که در داخل دستگاه کاربر مانند تلفن هوشمند نگهداری می شود. حذف کلید داغ یک کلید داغ را که قبلاً به نورون اختصاص داده شده است حذف کنید.

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

رای دهید به نورون رأی دهید یا پیشنهادی را با شناسه مشخص پذیرفته یا رد کند. دنبال کنید با مشخص کردن گروهی از نورون های متعاقب که اکثریت آرا رعایت می شود ، قانونی را اضافه کنید که به نورون امکان می دهد به طور خودکار به پیشنهادات مربوط به یک موضوع خاص رای دهد. پیکربندی چنین قوانین زیر می تواند مورد استفاده قرار گیرد: الف) توزیع قدرت رای دهی بین چندین نهاد ، ب) وقتی صاحب آن برای ارزیابی پیشنهادات ارائه شده جدید وقت کافی ندارد ، به طور خودکار رأی نورون بدهد ، ج) در صورت تمایل به طور خودکار یک رأی نورون داشته باشد. فاقد تخصص برای ارزیابی پیشنهادات تازه ارائه شده ، و د) برای اهداف دیگر است. یک قانون دنبال کردن مجموعه ای از دنبال کنندگان را مشخص می کند. هنگامی که اکثریت پیروان به تصویب یا رد پیشنهاد مربوط به موضوع مشخص شده رأی می دهند ، نورون نیز به همان شیوه رای می دهد. اگر تصویب برای اکثریت پیروان غیرممکن شود (برای مثال ، زیرا بین 50-50 بین پذیرش و رد شدن تقسیم شده اند) ، نورون به رد رای می دهد. اگر در جایی که مبحث پیشنهاد خالی است ، قانونی مشخص شود ، این قانون تبدیل به یک قانون همه جانبه می شود که از آن برای رای گیری خودکار به پیشنهادات مربوط به موضوعاتی استفاده می شود که قانون خاصی برای آنها مشخص نشده است. اگر لیست پیروان خالی باشد ، این قانون به طور م removeثر حذف می شود.

اقتصاد رمزنگاری

نمای کلی

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

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

از زمان رای گیری هنگامی که صاحبان آنها دارای دیدگاه بلندمدت هستند ، NNS ، در تصمیم گیری مفیدتر استهمچنین به رأی نورون ها بیشتر تأخیر در حل شدن آنها اعمال می شود و نورون ها با تاخیر در حل شدن کمتر از شش ماه به طور کلی از رای گیری جلوگیری می کنند. البته در صورت انتقال موجودی های قفل شده ، این طرح مزایای کمتری را برای شبکه به همراه خواهد داشت ، زیرا این امر به صاحبان نورون این امکان را می دهد که "نورون خود را" در هر زمان بفروشند ، حتی اگر آنها مجبور به تخفیف نسبت به موجودی های قفل نشده باشند. < /p>

51٪ حملات بر حاکمیت

نگرانی امنیتی اصلی جلوگیری از به دست آوردن 51 درصد قدرت رای توسط مهاجم یا حتی به اندازه ای است که بتواند تعادل را به نفع آنها تغییر دهد. که بی خردانه رای می دهند ، که به موفقیت شبکه آسیب می رساند. (اصطلاح "مهاجم" در اینجا به طور یکسان برای بازیگری که می خواهد به شبکه آسیب برساند ، بازیگری که تصادفاً تأثیرش مخرب خواهد بود و بازیگری که بیش از حد قدرت را متمرکز می کند ، صدق می کند.) خوشبختانه همه چیز برابر است ، ارزش عظیم ICP قفل شده در داخل NNS به دست آوردن چنین سهمی را بسیار گران می کند. علاوه بر این ، جبران سرمایه گذاری مالی مورد نیاز دشوار خواهد بود ، زیرا ICP هایی که خریداری و قفل شده اند در صورت آسیب به شبکه به طور چشمگیری ارزش خود را از دست خواهند داد. حتی اگر منابع نگران کننده نباشند - به عنوان مثال ، در جایی که مهاجم یک بازیگر بدخواه دولت بود - ICP قفل شده را نمی توان به سرعت در مبادلات مالی خریداری کرد ، زیرا اکثریت قریب به اتفاق کل عرضه ICP برای کسب پاداش در سلول های عصبی قفل شده است. این امر چنین مهاجمی را مجبور می کند تا به تدریج موقعیت خود را تقویت کند ، زیرا فشار خرید ناشی از خریدهای مهم نیز قیمت را بالا می برد ، به طوری که خریدهای پی در پی گران تر می شوند.

به این دلایل ، به احتمال زیاد نمی توان 51 درصد از قدرت رای را بدون دسترسی به موجودی های قفل شده ICP جمع کرد. این نشان می دهد که چرا مهم است که بازارها برای نورون ها ایجاد نشوند. در این مورد ، مهاجم ممکن است به دنبال ایجاد وحشت در بازار باشد تا بتواند سریعاً سهام قفل شده را به صورت دسته جمعی با هزینه کم به دست آورد. به عنوان مثال ، آنها ممکن است یک حمله جدی و مداوم DoS به شبکه را با انتشار گسترده اخبار جعلی و نظرات منفی در رسانه های اجتماعی ترکیب کنند تا صاحبان نورونها را متقاعد کنند که سهام قفل شده آنها در معرض خطر بی ارزش شدن قرار می گیرد ، به گونه ای که یک "فروش آتش" بزرگ ”رخ می دهد. اگرچه بسیار بعید است که یک بازیگر دولتی در عمل چنین حمله ای را انجام دهد ، سیاست شبکه های باز و دارایی های دیجیتالی تضمین می کند که شیداهای انبوه و سقوط بازار به مراتب بیشتر امکان پذیر است. به نفع شبکه نیست که چنین رویدادی باعث سازماندهی مجدد قدرت رأی شود ، به ویژه در مواردی که منجر به تمرکز ناگهانی آن در چند دست با تأمین مالی خوب شود. این بیشتر نشان می دهد که چرا بازارهای عصبی نامطلوب هستند.

محاسبه پاداش های رای گیری

نمای کلی

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

ما بازده مورد نیاز را به عنوان درصدی از عرضه فعلی برآورد می کنیم و اجازه می دهیم با گذشت زمان این میزان کاهش یابد تا خطر قفل شدن موجودی ها با پایدارتر شدن شبکه محاسبه شود. ما با توزیع 10 درصد عرضه (به صورت سالانه) شروع می کنیم ، با این کاهش تا 5 درصد عرضه در هشت سال توزیع می کنیم.

الگوریتم

بلوغ یک سلول عصبی شروع می شود در 0 اما با فعالیت رای گیری افزایش می یابد. هنگامی که بلوغ یک نورون از یک آستانه مشخص بیشتر می شود ، می تواند یک سلول عصبی جدید حاوی ICP تازه ایجاد شده ایجاد کند ، که بلوغ خود را به صفر باز می گرداند. مقدار نورونهای ICP تازه ایجاد شده در نورون تخمگذار برابر با ICP قفل شده در داخل نورون والد است که با بلوغ نورون والد محاسبه می شود. به عنوان مثال ، یک سلول عصبی که دارای 100 ICP است و بلوغ آن 10 درصد است ، می تواند یک سلول عصبی جدید که حاوی 10 ICP است ایجاد کند. انحلال سلول های عصبی تازه ایجاد شده هفت روز است و اجازه می دهد ICP قفل شده در داخل در صورت تمایل به راحتی بازیابی شود. البته سن نورون تازه به وجود آمده دارای صفر روز است.

بین بلوغ نورون و پاداشهای رای گیری که جمع آوری کرده است ، تقریباً معادل سازی وجود دارد ، که هنوز با تخمگذاری نورون دیگری حذف نشده است. (معادل بودن آن تقریبی است زیرا بلوغ فقط تعیین می کند که چه تعداد ICP در داخل نورون تخمگذار وجود داشته باشد ، زیرا در عملیات "تخم ریزی" درجه ای از عدم قطعیت وجود دارد.) در هر دوره 24 ساعته ، باید محاسبه کنیم که چه مقدار را افزایش دهیم. بلوغ هر نورونی که در رأی گیری شرکت کرده است. ما با محاسبه حداکثر مقدار اسمی ICP که ممکن است ایجاد و توزیع شود ، شروع می کنیم ، که با افزایش بلوغ نورون منعکس می شود. هنگامی که این مقدار را بدست آوردیم ، می توانیم محاسبه کنیم که هر عصبی چه سهم نسبی از پاداش را در نظر می گیرد ، با در نظر گرفتن مواردی مانند مقدار ICP قفل شده ، دوره انحلال تنظیم شده و سن.

ما حداکثر مقدار اسمی ICP را که می توان به عنوان پاداش از منبع فعلی ICP و روزهای پس از پیدایش ، ضرب و توزیع کرد ، بدست می آوریم. برای شروع ، این مقدار معادل 10 درصد از عرضه ICP بر تعداد روزهای سال است (به طور معمول 365 ، در سال کبیسه 366). در طول هشت سال ، این میزان به 5 درصد کاهش می یابد. توجه داشته باشید که از آنجا که ممکن است عرضه ICP در این مدت افزایش یا کاهش یابد ، پاداش های رای دهی در عمل نصف نمی شود.

ما می خواهیم نرخ اولیه 10 درصد در سال باشد. ما نرخ را می خواهیمدر پیدایش + هشت سال 5 درصد در سال باشد و پس از آن ثابت باشد. ما می خواهیم این نرخ یک تابع درجه دوم زمان باشد ما می خواهیم نرخ متفاوت باشد با توجه به زمان در نقطه ای که در آن مسطح می شود.

با نام زمان پیدایش G ، برای هر زمان t بین G و G + 8y ، کل پاداش R (t) در زمان t توسط <داده می شود /p>

R (t) = 0.05 + 0.05 [(G + 8y - t)/8y] ²

یا به طور کلی

R (t) = Rf + (R0 - Rf) [(T - t) /(T - G)] ² ،

که R0 نرخ اولیه (10٪) ، Rf نرخ نهایی (5٪) است ، و T زمانی است که نرخ در آن ثابت می شود (G + 8y).

توجه داشته باشید که:

R (G) = Rf + (R0 - Rf) [(T - G) /(T - G)] ² = Rf + (R0 - Rf) = R0 R (T) = Rf + (R0 - Rf) [(T - T) /(T - G)] ² = Rf R ’(t) = 2 (R0 - Rf) (T - t) /(T - G) R ’(T) = 0

 fn nominal_voting_rewards_available (icp_supply، days_since_genesis)
{
  //8 سال بار 365.25 روز 2922 روز است
  اجازه دهید روز = دقیقه (روزهای_از_پیدایش ، 2922) ؛
  اجازه دهید as_perc_of_annual = 0.05 + 0.05 [(2922 - روز) /2922]^2
  icp_supply*as_perc_of_annual /365.25
} 
گرافیک پاداشها را به عنوان درصد سالانه لحظه ای زمان جاری نشان می دهد عرضه

قدرت رأی گیری یک نورون در یک زمان معین به شرح زیر محاسبه می شود:

neuron_stake * dissolve_delay_bonus * age_bonus

پاداش تاخیر انحلال یک مقدار بین 1 و 2 و یک تابع خطی تاخیر در انحلال (که حداکثر مقدار آن هشت سال است) ، و پاداش سن یک مقدار بین 1 تا 1.25 و یک تابع خطی سن نورون است (محدوده چهار ساله ) یک نورون با وارد شدن به حالت قفل شده شروع به پیری می کند. بنابراین ، یک عصب می تواند قدرت رای دهی خود را تا 100 درصد از افزایش تاخیر در حل شدن و تا 25 درصد از افزایش سن افزایش دهد. این پاداش ها تجمعی هستند ، بنابراین حداکثر قدرت رای گیری یک نورون با 100 ICP 250 است. این امر زمانی محقق می شود که نورون با حداکثر تاخیر حل شدن هشت سال قفل شده و حداقل چهار سال پیر شده باشد.

برای توزیع پاداش های رای دهی برای یک دوره پاداش معین (معمولاً یک روز) ما با تعیین مجموعه پیشنهاداتی که در این دوره پاداش گنجانده شده است ، شروع می کنیم: اینها پیشنهاداتی هستند که (1) هنوز در مورد پاداش های رای دهی حل نشده اند و (2) دیگر برای رای گیری باز نیستند (یعنی دوره رای گیری آنها منقضی شده). در مرحله بعد ، کل قدرت رأی دهی به این پیشنهادات توسط نورون ها برای پذیرش یا رد رای اضافه می شود. سرانجام ، هر عصبی متناسب با قدرت رای دهی خود به این پیشنهادات پاداش می گیرد.

به انجمن توسعه دهندگان ما بپیوندید و در forum.dfinity.org شروع به کار کنید.

نظرات و مشاوره

نظرات و مشاوره

چگونه در سال 2021 مهندس بینایی کامپیوتر شویم

#1 دوره های آنلاین گسترده گسترده (MOOC)

عکس توسط Tudor Baciu در Unsplash

من فقط در سال 2020 یک مهندس حرفه ای بینایی کامپیوتر شدم ، اما مراحل و استراتژی هایی که من برای ورود به صنعت یادگیری ماشین استفاده می کردم در مدت زمان کوتاهی به شدت تغییر کرده است.

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

>

احتمالاً از ثابت بودن تعجب نمی کنید ماهیت تغییر در صنعت ML همانطور که به خوبی می دانید هوش مصنوعی با سرعت نوآوری حرکت می کند.

منظور من این است که آنچه برای اکثر پزشکان ML در سال 2020 برای دستیابی به نقش مفید بوده است ، لزوماً در 2021. همه ما باید خود را وفق دهیم.

این مقاله هشت روشی را ارائه می دهد که امروزه می توانید کاوش کنید و از آنها استفاده کنید تا مسیر خود را برای تبدیل شدن به مهندس بینایی رایانه آغاز کنید.

1. دوره های گسترده آنلاین باز (MOOC)

پوستر MOOC 4 آوریل 2013 ، توسط Mathieu Plourde ، دارای مجوز CC-BY در Flickr ، به بررسی مفهوم "دوره های آنلاین گسترده گسترده" معروف به MOOCs

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

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

من در ابتدا رعایت الزامات شغلی از نظر مهارت ها و فناوری های مورد انتظار از داوطلبان و کار برعکس برای انتخاب آنلاین مناسب را توصیه می کنم. دوره ها.

در اینجا پیوندهایی به برخی از MOOC ها آمده است:

متخصص بینایی کامپیوتر شوید تخصص یادگیری عمیق بینایی پیشرفته کامپیوتری با TensorFlow معرفی TensorFlow برای یادگیری عمیق DeepLearning AI TensorFlow Certificate Professional developer مقدمه ای بر بینایی کامپیوتر مبانی بینایی کامپیوتر آموزش عمیق عملی برای برنامه نویسان

MOOC های زیادی وجود دارد ، اما هنگام جستجو ، عوامل زیر را در نظر بگیرید: ارتباط شغلی ، تقاضای فناوری ، مدت زمان ، بررسی دوره و هزینه.

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

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

2. کتابخانه های یادگیری ماشین وچارچوب

بینایی رایانه ای به عنوان یک حوزه شامل رویکردها و تکنیک های زیادی برای حل مشکلات رایج CV مانند تشخیص شی ، تشخیص چهره ، برآورد ژست و غیره است.

معمولاً از شما انتظار نمی رود برای حل وظایف بی اهمیت بینایی رایانه (بجز اینکه در زمینه تحقیق کار می کنید) ، الگوریتم های جدیدی ایجاد کنید. بسیاری از ابزارهایی که در طول تحصیل و شغل خود استفاده خواهید کرد از طریق کتابخانه ها و چارچوب های ML در دسترس است.

کتابخانه ها و چارچوب ML مجموعه ای از ابزارها را آماده می کند که برای پیاده سازی ، آموزش ، آزمایش و استقرار بینایی کامپیوتر در اختیار پزشکان ML قرار دارد. راه حل ها ابزارها و کتابخانه های متداولی مانند TensorFlow و PyTorch و سایر موارد مانند FastAI ، Caffe2 ، Keras ، Scikit-Learn ، MXnet ، Darknet و غیره وجود دارد.

به نظر می رسد صنعت ML به عنوان استاندارد صنعت در TensorFlow (Keras) و PyTorch مستقر شده است. در نقش فعلی خود به عنوان مهندس بینایی رایانه ، از پلتفرم TensorFlow برای توسعه مدلهای ML برای محیطهای مختلف استفاده می کنم.

در اینجا یک چک لیست معمولی است که می توانید هنگام یادگیری کتابخانه ML به عنوان راهنما از آن استفاده کنید: < /p> ساختار و بارگیری مجموعه داده ها برای آموزش پیش پردازش اشکال مختلف مجموعه داده ها (متن ، تصویر ، عددی) افزایش داده ها پیاده سازی یک شبکه عصبی از ابتدا پیاده سازی یک شبکه عصبی عمیق از ابتدا اجرای فرایند آموزش سفارشی یک شبکه طبقه بندی تصویر با معماری های مختلف شبکه بارگذاری مدل ها برای یادگیری انتقال پیاده سازی لایه های سفارشی ، لایه های ترک تحصیل و لایه های رایج موجود در شبکه های عصبی از ابتدا آموزش یک مدل یادگیری عمیق نظارت بر روند آموزش با TensorBoard ذخیره و بارگذاری یک مدل آموزش دیده. توجه: لیست بالا شامل همه آنچه شما باید بدانید نیست ، در واقع من شک دارم که Iv برای اطمینان از آمادگی برای نقش مهندس CV حرفه ای ، 20 درصد از مواردی که باید پوشش دهید را لمس کرد. با این وجود ، لیست بالا به عنوان یک راهنما عمل می کند ، با خیال راحت می توانید لیست فوق را اضافه کرده و تغییر دهید.

3. کتاب بخوانید

برای تبدیل شدن به یک مهندس بینایی کامپیوتر در سال 2021 و بعد از آن ، باید از کتابهای یادگیری ماشین و دید کامپیوتر به عنوان منبع یادگیری استفاده کنید.

مهندس بینایی کامپیوتر هرگز یادگیری را متوقف نمی کند ، عمدتا به این دلیل که رشته هوش مصنوعی هر روز پیشرفت می کند.

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

یکی از بسیار حرفه ای کتابهای توصیه شده برای مهندسین رزومه ، یادگیری دستی ماشین با Scikit-Learn ، Keras و TensorFlow نوشته Aurélien Géron است. این کتاب برای همه پزشکان ML ، از دانشمندان داده تا مهندسان NLP

Hands- کاربرد دارد. در مورد یادگیری ماشین با Scikit-Learn ، Keras و TensorFlow

من به صراحت سعی می کنم این پیام را به شما برسانم که خواندن کتابهای کاربردی باید بخشی از استراتژی یادگیری شخصی شما باشد.

< p> فرض کنید شما حوزه های خاصی از حوزه انتخابی خود را پیدا کرده اید که ممکن است در آنها ریاضیات ، آمار ، برنامه نویسی یا الگوریتم ها تخصص نداشته باشید. در این صورت ، تعداد زیادی کتاب کاربردی وجود دارد که به راحتی قابل پیگیری و برای همه پزشکان ML در سطوح مختلف م effectiveثر است.

4. خدمات ابری

آیا مهندسان بینایی کامپیوتر باید از خدمات ابری مطلع شوند؟

بله ، اما شمالازم نیست متخصص باشید ، مهندسین ابر و داده هستند که تنها مسئولیت آنها تخصص در راه حل ها و خدمات Cloud است. Microsoft Azure و AWS ضروری است.

در اینجا دلایلی وجود دارد که چرا مهندسان CV باید از خدمات ابری استفاده کرده و از آنها استفاده کنند:

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

کار با سرویس های ابری می تواند دلهره آور و گاهی اوقات به طور غیرمنتظره ای پرهزینه باشد - مخصوصاً اگر فراموش کنید نمونه ای را خاموش کنید. داشتن دانش خدمات ابری شما را در صدک برتر مهندسان CV در صنعت ، از نظر مهارتها قرار می دهد.

5. گواهینامه

من به گواهینامه ها یا اعتبارنامه هایی که هنگام گذراندن دوره های آنلاین دریافت می کنید اشاره نمی کنم. گواهینامه هایی به متخصصان ML داده می شود که می توانند تخصص خود را در کتابخانه ها ، سرویس های ابری و چارچوب های خاص نشان دهند.

TensorFlow ، AWS و GCP همه ابزارها و منابعی هستند که در این مقاله ذکر کرده ام. یکی دیگر از اطلاعات این است که شرکتها و سازمانهایی که این ابزارها و خدمات را ارائه می دهند نیز گواهینامه های معتبر صادر می کنند.

چند سال پیش داشتن یک نمونه کار همراه با مدرک پیشرفته به اندازه کافی برای تضمین نقش ML کافی بود. با افزایش هجوم پزشکان ML ، دیدن گواهینامه های مورد استفاده برای انتخاب لیست داوطلبان توسط کارفرمایان و کارفرمایان منطقی است.

در زیر لیستی از گواهینامه های مربوط به پزشکان ML آمده است:

TensorFlow گواهی برنامه نویس گواهی مهندس Google Cloud ML تخصص یادگیری ماشین با گواهینامه AWS Google Cloud Professional Data Engineer Google Cloud Associate Cloud Engineer DeepLearning.AI TensorFlow Developer Certificate Professional

از این مرحله به بعد ، بخشهای شامل مهندس بینایی شدن کامپیوتر حاوی اطلاعات واضحی است. با این وجود ، مطالبی وجود دارد که به نظر شما ارزشمند است.

6. یادگیری عمیق

یادگیری عمیق زمینه ای است که از شبکه های عصبی مصنوعی عمیق برای تشخیص الگوهای درون داده ها استفاده می کند.

مهندسان بینایی رایانه به طور معمول از مدلهای یادگیری عمیق برای حل وظایف CV استفاده می کنند. این کم است که بگوییم مهندسان CV باید مفاهیم و ایده های اساسی در زمینه DL را درک کنند.

در سال 2021 ، یادگیری عمیق از استفاده غالب از شبکه عصبی کانولوشن به عنوان بلوک های سازنده کمی دور می شود. مدل هایی برای معماری Transformer که به تازگی معرفی شده است.

به احتمال زیاد پزشکان ML نحوه پیاده سازی و استفاده از Transformers را برای کار بینایی کامپیوتر درک نمی کنند - عمدتا به این دلیل که این هنوز یک حوزه تحقیق است.

برخی از پزشکان فعال ML در حال بررسی Transformers و درک نحوه پیاده سازی و کاربرد آنها هستند.

7. دستگاه های موبایل و لبه

اینستاگرام ، TikTok ، YouTube ، فیس بوک ... اینها همه شرکت هایی هستند که دارای برنامه های تلفن همراه هستند و در آنها می توانید مدل های ML را که به نوعی یا به نحوی مورد استفاده قرار گرفته اند پیدا کنید.

در سال 2021 ، مهندسان بینایی کامپیوتر باید از ابزارها و چارچوب هایی که توسعه را قادر می سازد آگاه باشندو ادغام مدلها در محیط موبایل.

چندین پلتفرم ، ابزار و چارچوب وجود دارد که مهندسان CV باید از آنها مطلع شوند ، در اینجا چند مورد وجود دارد:

TensorFlow Lite < uli> CoreML Apple Vision Framework TensorFlow-React CreateML

یک منبع یادگیری مفید برای درک کاربرد بینایی کامپیوتر و یادگیری عمیق در محیط موبایل کتاب Practical Deep Learning For Cloud، Mobile & Edge است.

8. زبانهای برنامه نویسی

هر نوع حرفه مهندسی نرم افزار مستلزم درک حداقل یک زبان برنامه نویسی است.

به طور معمول ، مهندسان بینایی کامپیوتر به خوبی در پایتون آشنا هستند. به احتمال زیاد متوجه خواهید شد که پایتون در اکثر نقشهای شغلی مرتبط با یادگیری ماشین بیشترین درخواست زبان برنامه نویسی را دارد.

در سال 2021 ، مهندسان CV باید حداقل به یک زبان تخصص داشته باشند و در سطح متوسط ​​باشند. به دو یا سه زبان دیگر. هر یک از این محیطها از سایر زبانهای برنامه نویسی اصلی برای انجام کارکردها و عملکردها استفاده می کنند.

من در حال حاضر مدلهای یادگیری عمیق را در محیطهای تلفن همراه ادغام می کنم ، که این امر مستلزم آن است که در Python ، JavaScript و Swift مهارت داشته باشم. در سال 2021 ، من مهارت های زبان برنامه نویسی خود را گسترش می دهم تا شامل کوتلین و جاوا شود. در عوض ، درک اصول اساسی برنامه نویسی شی گرا و الگوهای برنامه نویسی مورد استفاده در اکثر زبانهای برنامه نویسی مهمتر است. احتمال افزایش ارتباط با پذیرش بیشتر برنامه های کاربردی هوش مصنوعی با دوربین.

محتوای مورد نیاز برای تمرین کنندگان ML برای تبدیل شدن به یک مهندس CV ممکن است بسیار زیاد باشد ، اما به محض شروع ، چند MOOC تکمیل کنید ، انتخاب کنید کتابخانه های اصلی ML ، متوجه خواهید شد که یادگیری آسان تر می شود.

در این مقاله ، من هشت روش را ارائه می دهم که می توانید از آنها استفاده کنید و امروز از آنها استفاده کنید تا در سال 2021 مهندس CV شوید. در اینجا لیست خلاصه ها در زیر آمده است:

1. برای کسب تخصص در حوزه یا بهبود دانش ، دوره های آنلاین را بگذرانید.

2. از کتابخانه ها و چارچوب ماشین استفاده کنید.

3. کتابهای کاربردی ML/DL

4 بخوانید. از خدمات ابری مانند GCP ، AWS و غیره آگاه باشید

5. اخذ گواهینامه برای ابزارها و کتابخانه های خاص را در نظر بگیرید

6. آشنایی با اصول یادگیری عمیق

7. ابزارها ، کتابخانه ها و چارچوبی را که امکان ادغام مدلهای یادگیری عمیق در محیطهای تلفن همراه را فراهم می کند ، انتخاب کنید.

8. الگوها و اصول برنامه نویسی ، مانند برنامه نویسی شی گرا را درک کنید.

با تشکر از خواندن

برای ارتباط با من یا یافتن مطالب بیشتر مشابه این مقاله ، موارد زیر را انجام دهید:

برای خبرنامه های هفتگی در لیست ایمیل من مشترک شوید من را با رسانه متوسط ​​دنبال کنید در LinkedIn با من ارتباط برقرار کنید و با من تماس بگیرید