د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

څو میاشتې دمخه، زموږ همکاران د ګوګل څخه ترسره شوی په کاګل کې د حساسو عکسونو لپاره د کټګورۍ جوړولو لپاره سیالي لوبه "چټک، رسم!" ټیم، چې د Yandex پراختیا کونکي رومن ولاسوف پکې شامل وو، په سیالۍ کې څلورم ځای خپل کړ. د جنوري په میاشت کې د ماشین زده کړې روزنې کې، رومن د خپل ټیم ​​نظرونه، د ډلبندۍ وروستی تطبیق، او د هغه د مخالفینو په زړه پورې کړنې شریکې کړې.


- سلام و ټولو ته! زما نوم روما ولاسوف دی، نن به تاسو ته د Quick، Draw په اړه ووایم! د ډوډل پیژندنې ننګونه.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

زموږ په ټیم کې پنځه کسان وو. زه د ادغام نیټې نیټې څخه دمخه یوځای شوم. موږ بدبخته وو، موږ لږ وخوځول شو، مګر موږ د پیسو له موقعیت څخه ولړزول شو، او دوی د سرو زرو له موقف څخه ووتل. او موږ په ویاړ څلورم ځای خپل کړ.

(د سیالۍ په جریان کې، ټیمونو خپل ځانونه په درجه بندي کې لیدلي، چې د وړاندیز شوي ډیټا سیټ په یوې برخې کې ښودل شوي پایلو پراساس رامینځته شوي. وروستۍ درجه بندي، په پایله کې، د ډیټاسیټ په بله برخه کې جوړه شوې. دا کار ترسره کیږي. دا چې د سیالۍ برخه اخیستونکي خپل الګوریتمونه ځانګړي ډیټا سره تنظیم نه کوي نو له همدې امله ، په فاینل کې ، کله چې د درجه بندۍ ترمینځ بدلیږي ، موقعیتونه یو څه راټیټیږي (د انګلیسي شیک اپ څخه - مخلوط کول): په نورو معلوماتو کې ، پایله ممکن وګرځي د توپیر لپاره. د رومان ټیم لومړی په دریو کې لومړی و، پدې حالت کې، لومړی درې د پیسو، د پیسو درجه بندي زون دی، ځکه چې یوازې لومړی درې ځایونه نغدي جایزه ورکړل شوې وه. څلورم مقام. په همدې ډول، بلې لوبډلې بریا له لاسه ورکړه، د سرو زرو مقام.)

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

سیالي په دې کې هم د پام وړ وه چې ایوګیني باباخنین یو لوی ماسټر ترلاسه کړ، ایوان سوسین ماسټر ترلاسه کړ، رومن سولویوف یو لوی ماسټر پاتې شو، الیکس پارینوف ماسټر ترلاسه کړ، زه یو ماهر شوم، او اوس زه یو ماسټر یم.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

دا چټک، رسم څه شی دی؟ دا د ګوګل څخه یو خدمت دی. ګوګل موخه درلوده چې د AI مشهور کړي او د دې خدمت سره غوښتل وښيي چې عصبي شبکې څنګه کار کوي. تاسو هلته لاړشئ، راځئ چې رسم کړو، او یوه نوې پاڼه راښکاره کیږي چیرې چې تاسو ته ویل کیږي: زیګزګ رسم کړئ، تاسو د دې کولو لپاره 20 ثانیې لرئ. تاسو هڅه کوئ چې په 20 ثانیو کې زیګزګ رسم کړئ، لکه دلته، د بیلګې په توګه. که تاسو بریالي شئ، شبکه وايي چې دا یو زیګزګ دی او تاسو پرمخ ځئ. یوازې شپږ داسې عکسونه شتون لري.

که د ګوګل شبکه د هغه څه په پیژندلو کې پاتې راغله چې تاسو یې رسم کړی، یو کراس په دنده کې کیښودل شو. وروسته به زه تاسو ته ووایم چې دا به په راتلونکي کې څه معنی ولري چې ایا انځور د شبکې لخوا پیژندل شوی یا نه.

دې خدمت په کافي اندازه لوی شمیر کارونکي راټول کړل ، او ټول هغه عکسونه چې کاروونکو یې اخیستي وو ننوتل.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

موږ وکولی شو نږدې 50 ملیونه عکسونه راټول کړو. له دې څخه، زموږ د سیالۍ لپاره د اورګاډي او ازموینې نیټه جوړه شوه. په هرصورت، په ازموینه کې د معلوماتو مقدار او د ټولګیو شمیر د یو دلیل لپاره په بولډ کې روښانه شوي. زه به تاسو ته لږ وروسته د هغوی په اړه ووایم.

د معلوماتو بڼه په لاندې ډول وه. دا یوازې د RGB عکسونه ندي ، مګر ، په لنډ ډول خبرې کول ، د هر هغه څه یوه لاګ چې کارونکي یې کړي. کلمه زموږ هدف دی، د هیواد کوډ هغه ځای دی چې د ډوډل لیکوال له کوم ځای څخه دی، د مهال ویش وخت دی. پیژندل شوی لیبل یوازې ښیي چې ایا شبکه د ګوګل څخه عکس پیژني که نه. او رسم کول پخپله یو ترتیب دی، د منحني اندازې اټکل چې کاروونکي د ټکو سره رسم کوي. او وختونه. دا د انځور جوړولو له پیل څخه وخت دی.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

معلومات په دوه شکلونو کې وړاندې شوي. دا لومړی بڼه ده، او دویمه ساده ده. دوی له هغه ځایه وختونه پرې کړل او د پوائنټونو دا سیټ یې د ټیټو ټکو سره نږدې کړ. د دې لپاره دوی کارول ډګلاس-پیکر الګوریتم. تاسو د ټکو لوی سیټ لرئ چې په ساده ډول مستقیم کرښه نږدې کوي ، مګر په حقیقت کې تاسو کولی شئ دا کرښه یوازې دوه ټکو سره نږدې کړئ. دا د الګوریتم نظر دی.

معلومات په لاندې ډول ویشل شوي. هر څه یو شان دي، مګر ځینې بهر شتون لري. کله چې موږ ستونزه حل کړه، موږ یې نه ګورو. اصلي شی دا دی چې هیڅ ټولګي شتون نلري چې واقعیا لږ وو، موږ د وزن لرونکي نمونې او د معلوماتو نظارت کولو ته اړتیا نه درلوده.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

انځورونه څه ډول ښکارېدل؟ دا د "هوایی الوتکې" ټولګی دی او له دې څخه مثالونه د پیژندل شوي او نه پیژندل شوي لیبلونو سره. د دوی تناسب د 1 څخه تر 9 پورې شاوخوا و. لکه څنګه چې تاسو لیدلی شئ، ډاټا خورا شور دی. زه اټکل کوم چې دا الوتکه ده. که تاسو ونه پیژندل شوي وګورئ، په ډیری مواردو کې دا یوازې شور دی. یو چا حتی هڅه کړې چې "هوایی الوتکه" ولیکي، مګر ظاهرا په فرانسوي کې.

ډیری برخه اخیستونکو په ساده ډول ګریډونه اخیستي، د RGB انځورونو په توګه د لینونو له دې ترتیب څخه ډاټا راټولوي، او شبکې ته یې غورځوي. ما تقریبا په ورته ډول رسم کړ: ما د رنګونو پیلټ واخیست، لومړۍ کرښه یې د یو رنګ سره رسم کړه، کوم چې د دې پیلټ په پیل کې و، وروستی کرښه یې د بل سره، چې د پیلټ په پای کې وه، او د دوی ترمنځ. ما د دې پیلټ په کارولو سره هرچیرې انټرپول کړی. په هرصورت، دا د دې په پرتله ښه پایله ورکړه که تاسو په لومړي سلایډ کې رسم کړئ - یوازې په تور کې.

د ټیم نور غړي، لکه ایوان سوسین، د انځور کولو لپاره یو څه مختلف طریقې هڅه کړې. د یو چینل سره یې په ساده ډول خړ انځور جوړ کړ، په بل چینل کې یې هر سټروک د پیل څخه تر پای پورې د 32 څخه تر 255 پورې په تدریجي ډول رسم کړ، او د دریم چینل سره یې د 32 څخه تر 255 پورې د ټولو سټروکونو لپاره تدریجي انځور کړ.

بله په زړه پورې خبره دا ده چې الیکس پارینوف د هیواد کوډ په کارولو سره شبکې ته معلومات پورته کړل.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

په سیالۍ کې کارول شوي میټریک د اوسط دقیقیت معنی لري. د سیالۍ لپاره د دې میټریک جوهر څه دی؟ تاسو کولی شئ درې وړاندوینې ورکړئ، او که چیرې په دې دریو کې صحیح وړاندوینه شتون ونلري، نو تاسو 0 ترلاسه کوئ. که چیرې یو سم وي، نو د هغې ترتیب په پام کې نیول کیږي. او د هدف پایله به ستاسو د وړاندوینې په ترتیب سره د 1 ویشل شوي حساب شي. د مثال په توګه، تاسو درې وړاندوینې جوړې کړې، او سم یې لومړی دی، بیا تاسو 1 په 1 ویشئ او 1 ترلاسه کړئ. که چیرې وړاندوینه سمه وي او ترتیب یې 2 وي، نو 1 په 2 ویشئ، تاسو 0,5 ترلاسه کوئ. ښه، etc.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

د معلوماتو دمخه پروسس کولو سره - څنګه عکسونه رسم کړو او داسې نور - موږ یو څه پریکړه کړې. موږ کوم معمارۍ کارولې؟ موږ هڅه کړې چې غوړ معمارۍ لکه PNASNet، SENet، او داسې لا دمخه د SE-Res-NeXt په څیر کلاسیک جوړښتونه وکاروو، دوی په زیاتیدونکي توګه نوي سیالیو ته ننوځي. دلته ResNet او DenseNet هم شتون درلود.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

موږ دا څنګه زده کړل؟ ټول هغه ماډلونه چې موږ یې اخیستي په امیجنټ کې دمخه روزل شوي. که څه هم ډیری ډیټا شتون لري ، 50 ملیون عکسونه ، مګر بیا هم ، که تاسو په imagenet کې دمخه روزل شوې شبکه واخلئ ، دا د دې په پرتله غوره پایلې ښیې که تاسو په ساده ډول له سکریچ څخه روزلي وي.

موږ کوم تدریسي تخنیکونه کارولي؟ دا د ګرمو بیا پیلونو سره کوزنګ انیلینګ دی ، کوم چې زه به یې لږ وروسته وغږیږم. دا یو تخنیک دی چې زه نږدې زما په ټولو وروستیو سیالیو کې کاروم، او د دوی سره دا د ښه لږترلږه ترلاسه کولو لپاره د ګریډونو ښه روزل کیږي.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

بل په پلیتو کې د زده کړې کچه راټیټه کړئ. تاسو د شبکې روزنه پیل کړئ، د زده کړې یو ټاکلی نرخ وټاکئ، تدریس ته دوام ورکړئ، او ستاسو ضایع په تدریجي ډول یو ټاکلي ارزښت ته رسیږي. تاسو دا وګورئ، د بیلګې په توګه، د لسو دورونو لپاره تاوان هیڅ بدلون نه دی راغلی. تاسو د خپل زده کړې کچه د یو څه ارزښت له مخې کمه کړئ او زده کړې ته دوام ورکړئ. دا یو څه بیا راټیټیږي، لږ تر لږه یو څه بدلیږي، او تاسو بیا د زده کړې کچه ټیټه کړئ، او داسې نور، تر هغه چې ستاسو شبکه په پای کې بدله شي.

بل په زړه پورې تخنیک دی: د زده کړې کچه مه خرابوئ، د بست اندازه زیاته کړئ. په همدې نوم یوه مقاله هم شته. کله چې تاسو یوه شبکه روزئ، تاسو اړتیا نلرئ د زده کړې کچه کمه کړئ، تاسو کولی شئ په ساده ډول د بست اندازه زیاته کړئ.

دا تخنیک، په لاره کې، د الیکس پارینوف لخوا کارول کیده. هغه د 408 سره مساوي بست سره پیل وکړ، او کله چې د هغه شبکه یو څه سطح ته ورسیده، هغه په ​​ساده ډول د بیچ اندازه دوه برابره کړه، او نور.

په حقیقت کې، زه په یاد نه یم چې د هغه د بیچ اندازه څومره ارزښت ته رسیدلې، مګر څه په زړه پورې دي چې په کاګل کې ټیمونه وو چې ورته تخنیک یې کارولی و، د دوی د بیچ اندازه شاوخوا 10000 وه. په هرصورت، د ژورې زده کړې لپاره عصري چوکاټونه، لکه PyTorch، د بیلګې په توګه، تاسو ته اجازه درکوي چې دا په اسانۍ سره ترسره کړئ. تاسو خپل بیچ جوړ کړئ او شبکې ته یې وسپارئ لکه څنګه چې دا په بشپړ ډول نه دی، مګر دا په ټوټو ویشئ ترڅو دا ستاسو په ویډیو کارت کې فټ شي، تدریجي محاسبه کړئ، او وروسته له دې چې تاسو د ټول بست لپاره تدریجي محاسبه کړئ، تازه کړئ. وزنونه

په هرصورت ، د لوی بیچ اندازې لاهم پدې سیالۍ کې شاملې وې ، ځکه چې ډیټا خورا شور وه ، او د لوی بیچ اندازې تاسو سره د تدریجي نږدې دقیق اندازې کې مرسته کړې.

Pseudo-labeling هم کارول کیده، چې ډیری یې د رومن سولویوف لخوا کارول کیږي. هغه د ازموینې څخه نیمایي معلومات په بستونو کې نمونه کړل، او په ورته بستونو کې یې ګریډ وروزل.

د عکسونو اندازه مهمه ده ، مګر حقیقت دا دی چې تاسو ډیری ډیټا لرئ ، تاسو اړتیا لرئ د اوږدې مودې لپاره روزنه وکړئ ، او که ستاسو د عکس اندازه خورا لوی وي ، نو تاسو به د ډیر وخت لپاره روزنه وکړئ. مګر دا ستاسو د وروستي کلاسیفیر کیفیت کې ډیر څه ندي اضافه کړي ، نو دا د یو ډول سوداګرۍ بند کارولو ارزښت درلود. او موږ یوازې هغه عکسونه هڅه وکړه چې په اندازې کې خورا لوی نه و.

دا ټول څنګه زده شول؟ لومړی، د کوچنیو اندازو عکسونه اخیستل شوي، څو دورې په دوی باندې چلول شوي، دې کار ډیر وخت واخیست. بیا لوی لوی عکسونه ورکړل شوي، شبکه روزل شوې، بیا حتی نور هم، حتی نور هم، ترڅو دا له سکریچ څخه روزل نشي او ډیر وخت ضایع نشي.

د اصلاح کونکو په اړه. موږ SGD او ادم کاروو. پدې توګه دا ممکنه وه چې یو واحد ماډل ترلاسه کړئ، کوم چې په عامه لیډربورډ کې د 0,941-0,946 سرعت ورکړی، کوم چې خورا ښه دی.

که تاسو موډلونه په یو ډول سره یوځای کړئ، نو تاسو به د 0,951 شاوخوا ځای ترلاسه کړئ. که تاسو یو بل تخنیک کاروئ، تاسو به په عامه بورډ کې د 0,954 وروستۍ نمرې ترلاسه کړئ، لکه څنګه چې موږ ترلاسه کړي. مګر په دې اړه نور وروسته. بیا به زه تاسو ته ووایم چې موږ څنګه موډلونه راټول کړل، او څنګه موږ د دې وروستي سرعت ترلاسه کولو اداره کوله.

بیا زه غواړم د ګرم ریسټارټس سره د کوزنګ اینیلینګ یا د ګرم ریسټارټس سره د سټوکاسټیک ګریډینټ نزول په اړه وغږیږم. په اصولو کې ، تاسو کولی شئ هر ډول اصلاح کونکي وکاروئ ، مګر ټکی دا دی: که تاسو یوازې یوه شبکه وروزو او په تدریج سره دا یو څه لږترلږه ته واړوئ ، نو هرڅه سم دي ، تاسو به یوه شبکه ترلاسه کړئ ، دا ځینې غلطۍ کوي ، مګر تاسو کولی شي یو څه بل ډول روزنه ورکړي. تاسو به د زده کړې یو څه ابتدايي نرخ وټاکئ، او په تدریجي ډول به د دې فورمول سره سم ټیټ کړئ. تاسو یې ټیټ کړئ، ستاسو شبکه یو څه لږ تر لږه راځي، بیا تاسو وزن خوندي کړئ، او بیا د زده کړې کچه چې د روزنې په پیل کې وه، ترتیب کړئ، په دې توګه د دې لږترلږه څخه یو څه پورته ځي، او بیا ستاسو د زده کړې کچه راټیټوي.

په دې توګه، تاسو کولی شئ په یوځل کې څو دقیقو څخه لیدنه وکړئ، په کوم کې چې ستاسو زیان به یو شان وي، جمع یا منفي. مګر حقیقت دا دی چې د دې وزنونو سره شبکې به ستاسو په نیټه کې مختلف غلطۍ ورکړي. د دوی په اوسط کولو سره، تاسو به یو ډول اټکل ترلاسه کړئ، او ستاسو سرعت به لوړ وي.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

پدې اړه چې موږ څنګه خپل ماډلونه راټول کړل. د پریزنټشن په پیل کې، ما وویل چې په ازموینه کې د معلوماتو مقدار او د ټولګیو شمیر ته پام وکړئ. که تاسو په ازموینه کې د هدفونو شمیر ته 1 اضافه کړئ او د ټولګیو په شمیره وویشئ ، نو تاسو به 330 شمیره ترلاسه کړئ ، او دا په فورم کې لیکل شوي - چې په ازموینه کې ټولګي متوازن دي. دا کارول کیدی شي.

د دې پراساس، رومن سولویوف د میټریک سره راغلی، موږ ورته د پراکسي سکور په نوم وایو، کوم چې د لیډربورډ سره خورا ښه تړاو لري. نقطه دا ده: تاسو وړاندوینه کوئ، د خپلو وړاندوینو سر 1 واخلئ او د هر ټولګي لپاره د شیانو شمیر حساب کړئ. بیا، د هر ارزښت څخه 330 کم کړئ او پایله شوي مطلق ارزښتونه اضافه کړئ.

لاندې ارزښتونه ترلاسه شوي. دې موږ سره مرسته وکړه چې د پلټونکي لیډربورډ رامینځته نه کړو، مګر په محلي توګه اعتبار وکړو او زموږ د انډولونو لپاره کوفیفینټ غوره کړو.

د یو انسبل سره تاسو کولی شئ دومره سرعت ترلاسه کړئ. زه نور څه کولی شم؟ فرض کړئ چې تاسو هغه معلومات کارولي چې ستاسو په ازموینه کې ټولګي متوازن دي.

توازن توپیر درلود. د دوی یو مثال - د هغو هلکانو څخه توازن کول چې لومړی ځای یې اخیستی.

موږ څه وکړل؟ زموږ توازن خورا ساده و، دا د ایوګیني بابخنین لخوا وړاندیز شوی و. موږ لومړی خپل وړاندوینې د لومړي 1 او د دوی څخه نوماندان غوره کړل - پدې توګه د ټولګیو شمیر له 330 څخه ډیر نه و. مګر د ځینو ټولګیو لپاره تاسو د 330 څخه لږ وړاندوینو سره پای ته رسي. ، او موږ به هم نوماندان وټاکو.

زموږ توازن څنګه د لومړي ځای له توازن څخه توپیر درلود؟ دوی یو تکراري طریقه کارولې، خورا مشهور ټولګي یې اخیستي او د دې ټولګي احتمالات یې د لږ شمیر لخوا کمول تر هغه چې دا ټولګی نور خورا مشهور نه و. موږ راتلونکی خورا مشهور ټولګی واخیست. نو دوی یې ټیټولو ته دوام ورکړ تر هغه چې د ټولو ټولګیو شمیر مساوي شي.

هر چا د شبکې روزلو لپاره جمع یا منفي یوه طریقه کارولې، مګر هرچا د توازن کارول نه دي کارولي. د توازن په کارولو سره، تاسو کولی شئ سرو زرو ته لاړ شئ، او که تاسو خوشحاله یاست، نو بیا پیسو ته.

د نیټې دمخه پروسس کولو څرنګوالی؟ هرڅوک د نیټې، جمع یا منفي، په ورته ډول مخکې له مخکې پروسس کوي - د لاسي صنایعو ځانګړتیاوې، د مختلف سټروک رنګونو سره د وختونو کوډ کولو هڅه کول، او داسې نور. Alexey Nozdrin-Plotnitsky چې اتم ځای یې اخیستی، پدې اړه خبرې وکړې.

د لاس لیکل شوي نقاشیو طبقه بندي. په Yandex کې راپور

هغه دا په بل ډول وکړ. هغه وویل چې دا ټول ستاسو په لاس جوړ شوي ځانګړتیاوې کار نه کوي، تاسو اړتیا نلرئ چې دا کار وکړئ، ستاسو شبکه باید دا ټول پخپله زده کړي. او پرځای یې، هغه د زده کړې ماډلونو سره راغلی چې ستاسو ډاټا پری پروسس کوي. هغه اصلي معلومات دوی ته پرته له مخکې پروسس کولو - نقطه همغږي او وختونه وغورځول.

بیا یې د همغږۍ پر بنسټ توپیر واخیست، او دا ټول د مهال ویش پر بنسټ اوسط کړل. او هغه د یو اوږد میټرکس سره راغی. هغه د 1xn اندازې میټریکس ترلاسه کولو لپاره څو ځله پدې کې 64D کنولوشن پلي کړ ، چیرې چې n د ټکو ټولټال شمیر دی ، او 64 د دې لپاره رامینځته شوی ترڅو پایله لرونکي میټریکس د هرې کنولوشن شبکې پرت ته تغذیه کړي ، کوم چې د چینلونو شمیر مني. - 64. هغه د 64xn میټریکس ترلاسه کړ، نو له دې څخه دا اړینه وه چې یو څه اندازه ټینسر جوړ کړي ترڅو د چینلونو شمیر 64 سره مساوي وي. هغه د X، Y ټول ټکي د 0 څخه تر 32 پورې نورمال کړل ترڅو د 32 څخه تر 32 پورې رینج کې یو جوړ کړي. د 32x32 اندازه ټینسر. زه نه پوهیږم چې هغه ولې 64x32 غواړي، دا یوازې په دې ډول پیښ شوي. او په دې همغږي کې هغه د 32xn اندازې د دې میټرکس یوه ټوټه کېښوده. نو دا یوازې د 64xXNUMXxXNUMX ټینسر سره پای ته رسیدلی چې تاسو کولی شئ نور ستاسو د عصبي عصبي شبکې کې واچوئ. دا ټول ما غوښتل ووایم.

سرچینه: www.habr.com

Add a comment