Нейрондук тармактар. Мунун баары кайда баратат?

Макала эки бөлүктөн турат:

  1. Сүрөттөрдөгү объектти аныктоо үчүн кээ бир тармак архитектураларынын кыскача сүрөттөлүшү жана мен үчүн ресурстарга эң түшүнүктүү шилтемелер менен сүрөт сегментациясы. Мен видео түшүндүрмөлөрдү тандоого аракет кылдым жана эң жакшысы орус тилинде.
  2. Экинчи бөлүк нейрон тармактарынын архитектурасынын өнүгүү багытын түшүнүүгө аракет кылат. Жана алардын негизинде технологиялар.

Нейрондук тармактар. Мунун баары кайда баратат?

1-сүрөт – Нейрондук тармактын архитектурасын түшүнүү оңой эмес

Мунун баары Android телефонунда объекттерди классификациялоо жана аныктоо үчүн эки демо тиркемени жасоо менен башталды:

  • Арткы демо, маалыматтар серверде иштетилип, телефонго берилгенде. Аюулардын үч түрүнүн сүрөт классификациясы: күрөң, кара жана Тедди.
  • Front-end demoмаалыматтар телефондун өзүндө иштетилгенде. Объектилерди аныктоо (объектилерди аныктоо) үч түрдөгү: фундук, инжир жана курма.

Сүрөттөрдү классификациялоо, сүрөттөлүштөгү объектти аныктоо жана милдеттеринин ортосунда айырма бар сүрөттү сегменттөө. Ошондуктан, нейрондук тармактын архитектурасы сүрөттөлүштөрдөгү объектилерди аныктай турганын жана кайсынысын сегменттей аларын билүү зарылчылыгы келип чыкты. Мен үчүн ресурстарга эң түшүнүктүү шилтемелери бар архитектуралардын төмөнкү мисалдарын таптым:

  • R-CNNге негизделген бир катар архитектуралар (Rменен аймактар Cайлануу Neural Networks өзгөчөлүктөрү): R-CNN, Fast R-CNN, Тезирээк R-CNN, Маска R-CNN. Сүрөттөгү объектти аныктоо үчүн чектеш кутучалар Региондук сунуш тармагы (RPN) механизми аркылуу бөлүнөт. Башында, RPN ордуна жайыраак Selective Search механизми колдонулган. Андан кийин тандалган чектелген аймактар ​​классификациялоо үчүн кадимки нейрон тармагынын киргизүүсүнө берилет. R-CNN архитектурасында AlexNet ички тармагы аркылуу жалпысынан 2000ге чейин чектелген аймактарда ачык "үчүн" циклдери бар. Ачык "үчүн" циклдери сүрөттү иштетүү ылдамдыгын жайлатат. Архитектуранын ар бир жаңы версиясы менен ички нейрон тармагы аркылуу өткөн ачык циклдердин саны азайып, ылдамдыкты жогорулатуу жана объектти аныктоо тапшырмасын Mask R-CNNде объектти сегменттөө менен алмаштыруу үчүн ондогон башка өзгөртүүлөр киргизилет.
  • Ёло (You Only Lтолгоо Once) мобилдик түзмөктөрдө объекттерди реалдуу убакытта тааныган биринчи нейрон тармагы. Айырмалоочу өзгөчөлүгү: бир чуркоодо объектилерди айырмалоо (бир эле жолу караңыз). Башкача айтканда, YOLO архитектурасында ачык "үчүн" циклдери жок, ошондуктан тармак тез иштейт. Мисалы, бул окшоштук: NumPyде матрицалар менен операцияларды аткарууда ачык-айкын “for” циклдери да жок, алар NumPyде C программалоо тили аркылуу архитектуранын төмөнкү деңгээлдеринде ишке ашырылат.YOLO алдын ала аныкталган терезелердин торчосун колдонот. Бир эле объекттин бир нече жолу аныкталышына жол бербөө үчүн терезенин кайталануу коэффициенти (IoU) колдонулат. Iкесилиши oбасс Union). Бул архитектура кеңири диапазондо иштейт жана бийик бекемдик: Моделди фотосүрөттөргө үйрөтсө болот, бирок кол менен тартылган сүрөттөрдү жакшы аткарат.
  • SSD (SИнгл Sысык MultiBox Detektor) – YOLO архитектурасынын эң ийгиликтүү “хакерлери” колдонулат (мисалы, максималдуу эмес басуу) жана нейрондук тармак тезирээк жана так иштеши үчүн жаңылары кошулат. Айырмалоочу өзгөчөлүгү: сүрөттөлүш пирамидасындагы терезелердин берилген торчосун (демейки куту) колдонуу менен объекттерди бир иштен айырмалоо. Сүрөт пирамидасы конволюция тензорлорунда ырааттуу конволюция жана бириктирүү операциялары аркылуу коддолот (максималдуу топтоо операциясы менен мейкиндик өлчөмү азаят). Ошентип, чоң жана кичинекей объектилер бир тармакта аныкталат.
  • MobileSSD (кыймылдууNetV2+ SSD) эки нейрон тармактарынын архитектурасынын айкалышы. Биринчи тармак MobileNetV2 тез иштейт жана таануу тактыгын жогорулатат. MobileNetV2 башында колдонулган VGG-16 ордуна колдонулат оригиналдуу макала. Экинчи SSD тармагы сүрөттөгү объектилердин жайгашкан жерин аныктайт.
  • SqueezeNet – абдан кичинекей, бирок так нейрон тармагы. Ал өзүнөн өзү объектти аныктоо маселесин чечпейт. Бирок, аны ар кандай архитектуралардын айкалышында колдонсо болот. Жана мобилдик түзмөктөрдө колдонулат. Айырмалоочу өзгөчөлүгү, маалыматтар адегенде төрт 1×1 конволюциялык чыпкага кысылып, андан кийин төрт 1×1 жана төрт 3×3 конволюциялык чыпкаларга кеңейтилет. Маалыматтарды кысуу-кеңейтүүнүн ушундай итерациясынын бири “От модулу” деп аталат.
  • DeepLab (Semantic Image Segmentation with Deep Convolutional Nets) – сүрөттөлүштөгү объекттерди сегменттөө. Архитектуранын айырмалоочу өзгөчөлүгү мейкиндиктин резолюциясын сактаган кеңейтилген конволюция болуп саналат. Андан кийин графикалык ыктымалдык моделди (шарттуу кокустук талаасы) колдонуу менен натыйжаларды кайра иштетүүдөн кийинки этабы өтөт, ал сегментациялоодо майда ызы-чууларды алып салууга жана сегменттелген сүрөттүн сапатын жакшыртууга мүмкүндүк берет. "Графикалык ыктымалдык модель" деген коркунучтуу аталыштын артында беш пунктка жакындалган кадимки Гаусс фильтри жашырылган.
  • Аппаратты аныктоого аракет кылды RefineDet (Бир атуу тазалооОбъект үчүн нейрон тармагы Theection), бирок мен көп түшүнгөн жокмун.
  • Мен ошондой эле "көңүл коюу" технологиясы кандай иштээрин карап көрдүм: видео1, видео2, видео3. "Көңүл коюунун" архитектурасынын айырмалоочу өзгөчөлүгү - сүрөттөлүштө көңүл буруунун аймактарын автоматтык түрдө тандоо (RoI, Rлегиондор of Interest) Attention Unit деп аталган нейрон тармагын колдонуу. Көңүл буруунун аймактары чектеш кутучаларга окшош, бирок алардан айырмаланып, алар сүрөттө бекитилген эмес жана чек аралары бүдөмүк болушу мүмкүн. Андан кийин, көңүл бурулган аймактардан архитектуралуу кайталануучу нейрон тармактарына "тамактанган" белгилер (функциялар) бөлүнүп чыгат. LSDM, GRU же Vanilla RNN. Кайталануучу нейрон тармактары ырааттуулукта өзгөчөлүктөрүнүн байланышын талдай алат. Рекурренттик нейрон тармактары алгач текстти башка тилдерге которуу үчүн колдонулса, азыр которуу үчүн сүрөттөрдү текстке и сүрөткө текст.

Биз бул архитектураларды изилдеп жатканда Мен эч нерсе түшүнбөгөнүмдү түшүндүм. Ал эми менин нейрон тармагымда көңүл буруу механизми менен көйгөйлөр бар деп айтууга болбойт. Бул архитектуралардын бардыгын түзүү авторлор хакерлер менен атаандашкан кандайдыр бир чоң хакатон сыяктуу. Hack бул татаал программалык камсыздоо маселесин тез чечүү. Башкача айтканда, бардык бул архитектуралардын ортосунда көзгө көрүнгөн жана түшүнүктүү логикалык байланыш жок. Аларды бириктиргендин баары бири-биринен алынган эң ийгиликтүү хакерлердин жыйындысы жана бардыгы үчүн жалпы жабык циклдеги конволюция операциясы (ката артка жайылуу, артка жайылуу). Жок системалык ой жүгүртүү! Эмнени өзгөртүү жана болгон жетишкендиктерди кантип оптималдаштыруу керектиги түшүнүксүз.

Хакерлердин ортосундагы логикалык байланыштын жоктугунун натыйжасында аларды эстеп калуу жана иш жүзүндө колдонуу өтө кыйын. Бул чачыранды билим. Эң жакшы дегенде, бир нече кызыктуу жана күтүүсүз учурлар эсте калат, бирок түшүнүктүү жана түшүнүксүз нерселердин көбү бир нече күндүн ичинде эс-учун жоготуп коёт. Бир жумадан кийин жок дегенде архитектуранын атын эстеп алсаңыз жакшы болот. Бирок бир нече саат, атүгүл күндүк жумуш убактысы макалаларды окууга жана сереп салуу видеолорун көрүү үчүн сарпталды!

Нейрондук тармактар. Мунун баары кайда баратат?

2-сүрөт – Нейрондук тармактардын зоопаркы

Илимий макалалардын авторлорунун көбү, менин жеке оюмча, бул чачыранды билимдер да окурмандарга түшүнүксүз болуп калбашы үчүн колдон келгендин баарын жасашат. Ал эми он саптык сүйлөмдөрдүн катышуучу сөз айкаштары, формулалар менен "жумшак абадан" алынган өзүнчө макаланын темасы (маселе жарыялоо же жок болуу).

Ушул себептен улам, нейрондук тармактарды колдонуу менен маалыматты системалаштыруу жана ошону менен түшүнүү жана жаттоо сапатын жогорулатуу зарылчылыгы бар. Ошондуктан, жасалма нейрон тармактарынын жеке технологияларын жана архитектураларын талдоонун негизги темасы төмөнкүдөй тапшырма болду: мунун баары кайда баратканын бил, жана өзүнчө кандайдыр бир конкреттүү нейрон тармагынын аппараты эмес.

Мунун баары кайда баратат? Негизги жыйынтыктар:

  • Акыркы эки жылда машина үйрөнүү стартаптарынын саны кескин түштү. Мүмкүн болгон себеп: "нейрондук тармактар ​​мындан ары жаңы нерсе эмес."
  • Ар бир адам жөнөкөй маселени чечүү үчүн иштеген нейрон тармагын түзө алат. Бул үчүн, "модель зоопаркынан" даяр моделди алып, нейрон тармагынын акыркы катмарын үйрөтүңүз (которууну үйрөнүү) тартып даяр маалыматтар боюнча Google Dataset Search же 25 миң Kaggle маалымат топтому бекер булут Jupyter дептери.
  • Нейрондук тармактардын ири өндүрүүчүлөрү түзүлө баштады "үлгүлүү зоопарктар" (модель зоопарк). Аларды колдонуу менен сиз тез арада коммерциялык тиркемени түзө аласыз: TF хабы TensorFlow үчүн, MMDetection PyTorch үчүн, Детектор Caffe2 үчүн, chainer-modelzoo Chainer үчүн жана другие.
  • Нейрондук тармактар ​​иштейт реалдуу убакыт (реалдуу убакыт) мобилдик түзмөктөрдө. Секундасына 10дон 50 кадрга чейин.
  • Нейрондук тармактарды телефондордо (TF Lite), браузерлерде (TF.js) жана үй-тиричилик буюмдары (IoT, Iинтернет of Tилгичтер). Айрыкча аппараттык деңгээлде нейрон тармактарын колдогон телефондордо (нейрондук тездеткичтер).
  • «Ар бир аппарат, кийим-кече, ал тургай, тамак-аш да болот IP-v6 дареги жана бири-бири менен байланыш" - Себастьян Тран.
  • Машиналарды үйрөнүү боюнча басылмалардын саны өсө баштады Мурдун мыйзамынан ашат 2015-жылдан бери (эки жылда эки эсе көбөйөт). Албетте, макалаларды талдоо үчүн нейрондук тармактар ​​керек.
  • Төмөнкү технологиялар популярдуулукка ээ болууда:
    • PyTorch – популярдуулугу тездик менен өсүп жатат жана TensorFlowду басып өткөндөй.
    • Гиперпараметрлерди автоматтык түрдө тандоо AutoML - популярдуулугу акырындык менен өсүп жатат.
    • Акырындык менен тактыктын төмөндөшү жана эсептөө ылдамдыгынын жогорулашы: бүдөмүк логика, алгоритмдер жогорулатуу, так эмес (болжолдуу) эсептөөлөр, кванттоо (нейрондук тармактын салмактары бүтүн сандарга айландырылганда жана квантталганда), нейрондук тездеткичтер.
    • котормо сүрөттөрдү текстке и сүрөткө текст.
    • түзүү Видеодон 3D объекттери, азыр реалдуу убакытта.
    • DL жөнүндө негизги нерсе - маалыматтар көп, бирок аны чогултуу жана белгилөө оңой эмес. Ошондуктан, белгилөө автоматташтыруу өнүгүп жатат (автоматташтырылган аннотация) нейрондук тармактарды колдонгон нейрондук тармактар ​​үчүн.
  • Нейрондук тармактар ​​менен компьютер илими күтүлбөгөн жерден пайда болду эксперименталдык илим жана турду кайра жаралуу кризиси.
  • IT акча жана нейрон тармактарынын популярдуулугу эсептөө рыноктук наркы болуп калганда бир эле учурда пайда болгон. Экономика алтын-валюта экономикасынан өзгөрүүдө алтын-валюта-эсептөө. Менин макаламды караңыз эконофизика жана IT акчанын пайда болушунун себеби.

Бара-бара жаңысы пайда болот ML/DL программалоо методологиясы (Machine Learning & Deep Learning), бул программаны үйрөтүлгөн нейрондук тармак моделдеринин жыйындысы катары көрсөтүүгө негизделген.

Нейрондук тармактар. Мунун баары кайда баратат?

3-сүрөт – ML/DL жаңы программалоо методологиясы катары

Бирок, ал эч качан пайда болгон эмес "Нейрондук тармак теориясы", анын ичинде сиз ойлонуп, системалуу иштей аласыз. Азыр "теория" деп аталган нерсе чындыгында эксперименталдык, эвристикалык алгоритмдер.

Менин жана башка ресурстарга шилтемелер:

Конул бурганын учун рахмат!

Source: www.habr.com

Комментарий кошуу