Ինչպես է էներգետիկ ինժեներն ուսումնասիրել նեյրոնային ցանցերը և «Udacity. Intro to TensorFlow for Deep Learning» անվճար դասընթացի վերանայումը:

Իմ ողջ հասուն կյանքում ես էներգետիկ ըմպելիք եմ եղել (ոչ, հիմա խոսքը կասկածելի հատկություններով խմիչքի մասին չէ)։

Ինձ երբեք առանձնապես չի հետաքրքրել տեղեկատվական տեխնոլոգիաների աշխարհը, և ես դժվար թե կարողանամ անգամ մատրիցաներ բազմապատկել թղթի վրա: Եվ ես երբեք դրա կարիքը չունեի, որպեսզի դուք մի փոքր հասկանաք իմ աշխատանքի առանձնահատկությունները, ես կարող եմ կիսվել մի հրաշալի պատմությամբ։ Մի անգամ գործընկերներիս խնդրեցի, որ գործը կատարեն Excel աղյուսակով, աշխատանքային օրվա կեսն անցել էր, բարձրացա իրենց մոտ, նրանք նստած ամփոփում էին հաշվիչի տվյալները, այո, սովորական սև հաշվիչի վրա՝ կոճակներով։ Դե, սրանից հետո ի՞նչ նեյրոնային ցանցերի մասին կարող ենք խոսել... Հետևաբար, ես երբեք հատուկ նախադրյալներ չեմ ունեցել ՏՏ աշխարհում խորասուզվելու համար։ Բայց, ինչպես ասում են, «լավ է, որտեղ մենք չկանք», ընկերներս ականջներս թնդացին ընդլայնված իրականության, նեյրոնային ցանցերի, ծրագրավորման լեզուների մասին (հիմնականում Python-ի մասին):

Բառերով այն շատ պարզ թվաց, և ես որոշեցի, թե ինչու չտիրապետել այս կախարդական արվեստին, որպեսզի այն կիրառեմ իմ գործունեության ոլորտում։

Այս հոդվածում ես բաց կթողնեմ Python-ի հիմունքները տիրապետելու իմ փորձերը և կկիսվեմ ձեզ հետ Udacity-ից TensorFlow անվճար դասընթացի մասին իմ տպավորություններով:

Ինչպես է էներգետիկ ինժեներն ուսումնասիրել նեյրոնային ցանցերը և «Udacity. Intro to TensorFlow for Deep Learning» անվճար դասընթացի վերանայումը:

Ներածություն

Սկզբից հարկ է նշել, որ էներգետիկ ոլորտում 11 տարի անց, երբ դուք գիտեք և կարող եք անել ամեն ինչ և նույնիսկ մի փոքր ավելին (ըստ ձեր պարտականությունների), արմատապես նոր բաներ սովորելը, մի կողմից, մեծ ոգևորություն է առաջացնում, բայց մյուս կողմից՝ վերածվում է ֆիզիկական ցավի «փոխանակներ իմ գլխում»։

Ես դեռ լիովին չեմ հասկանում ծրագրավորման և մեքենայական ուսուցման բոլոր հիմնական հասկացությունները, այնպես որ դուք չպետք է ինձ շատ խիստ դատեք: Հուսով եմ, որ իմ հոդվածը հետաքրքիր և օգտակար կլինի ինձ նման մարդկանց, ովքեր հեռու են ծրագրային ապահովման մշակումից:

Նախքան դասընթացի ակնարկին անցնելը, ես կասեմ, որ այն ուսումնասիրելու համար ձեզ անհրաժեշտ կլինի Python-ի առնվազն նվազագույն գիտելիքներ: Դուք կարող եք կարդալ մի քանի գիրք խաբեբաների համար (ես սկսել եմ նաև Ստեպիչի դասընթաց անցնել, բայց դեռ ամբողջությամբ չեմ յուրացրել):

TensorFlow դասընթացն ինքնին չի պարունակի բարդ կառուցվածքներ, բայց անհրաժեշտ կլինի հասկանալ, թե ինչու են գրադարանները ներմուծվում, ինչպես է սահմանվում գործառույթը և ինչու է ինչ-որ բան փոխարինվում դրանում:

Ինչու՞ TensorFlow և Udacity:

Իմ վերապատրաստման հիմնական նպատակը նեյրոնային ցանցերի միջոցով էլեկտրական տեղադրման տարրերի լուսանկարները ճանաչելու ցանկությունն էր:

Ես ընտրեցի TensorFlow-ն, քանի որ դրա մասին լսել եմ իմ ընկերներից: Եվ ինչպես հասկացա, այս դասընթացը բավականին տարածված է։

Փորձեցի սկսել սովորել պաշտոնյանից ուսուցողական .

Եվ հետո ես բախվեցի երկու խնդրի.

  • Ուսումնական նյութերը շատ են, և դրանք լինում են տարբեր տեսակների։ Ինձ համար շատ դժվար էր պատկերների ճանաչման խնդրի լուծման գոնե քիչ թե շատ ամբողջական պատկերացում կազմելը։
  • Ինձ անհրաժեշտ հոդվածների մեծ մասը ռուսերեն չեն թարգմանվել։ Պարզապես եղավ, որ մանկուց գերմաներեն եմ սովորել և հիմա, ինչպես շատ խորհրդային երեխաներ, չգիտեմ ոչ գերմաներեն, ոչ անգլերեն: Իհարկե, իմ հասուն կյանքի ընթացքում ես փորձում էի տիրապետել անգլերենին, բայց ստացվեց նկարի նման մի բան։

Ինչպես է էներգետիկ ինժեներն ուսումնասիրել նեյրոնային ցանցերը և «Udacity. Intro to TensorFlow for Deep Learning» անվճար դասընթացի վերանայումը:

Պաշտոնական կայքում փորփրելուց հետո ես գտա առաջարկություններ, որոնցով պետք է անցնել երկու առցանց դասընթացներից մեկը.

Ինչպես հասկացա, Coursera-ի դասընթացը վճարովի էր, իսկ դասընթացը Udacity. TensorFlow-ի ներածություն խորը ուսուցման համար հնարավոր էր անցնել «անվճար, այսինքն՝ իզուր»։

Դասընթացի բովանդակությունը

Դասընթացը բաղկացած է 9 դասից։

Հենց առաջին բաժինը ներածական է, որտեղ նրանք ձեզ կասեն, թե ինչու է դա անհրաժեշտ սկզբունքորեն։

Դաս թիվ 2 դարձավ իմ ամենասիրածը: Այն բավական պարզ էր հասկանալու համար, ինչպես նաև ցույց տվեց գիտության հրաշալիքները: Մի խոսքով, այս դասում, ի լրումն նեյրոնային ցանցերի մասին հիմնական տեղեկությունների, ստեղծողները ցույց են տալիս, թե ինչպես կարելի է օգտագործել միաշերտ նեյրոնային ցանց՝ լուծելու ջերմաստիճանը Ֆարենհայթից Ցելսիուսի փոխակերպելու խնդիրը:

Սա իսկապես շատ պարզ օրինակ է։ Ես դեռ նստած եմ այստեղ և մտածում եմ, թե ինչպես գտնել և լուծել նմանատիպ խնդիր, բայց միայն էլեկտրիկների համար:

Ցավոք սրտի, ես ավելի շատ կանգ առա, քանի որ անծանոթ լեզվով անհասկանալի բաներ սովորելը բավականին դժվար է։ Ինձ փրկեց այն, ինչ ես գտա Habré-ում այս դասընթացի թարգմանությունը ռուսերեն.

Թարգմանությունը կատարվել է բարձր որակով, թարգմանվել են նաև Colab-ի տետրերը, ուստի ես հետո նայեցի և՛ բնօրինակը, և՛ թարգմանությունը։

Թիվ 3 դասը իրականում TensorFlow-ի պաշտոնական ձեռնարկի նյութերի հարմարեցումն է: Այս ձեռնարկում մենք օգտագործում ենք բազմաշերտ նեյրոնային ցանց՝ սովորելու, թե ինչպես դասակարգել հագուստի նկարները (Fashion MNIST տվյալների բազա):

Թիվ 4-ից 7-րդ դասերը նույնպես ձեռնարկի ադապտացիա են: Բայց քանի որ դրանք ճիշտ են դասավորված, կարիք չկա ինքներդ հասկանալ ուսումնասիրության հաջորդականությունը։ Այս դասերում մեզ հակիրճ կպատմվի գերճշգրիտ նեյրոնային ցանցերի մասին, թե ինչպես բարձրացնել մարզումների ճշգրտությունը և պահպանել մոդելը։ Միաժամանակ մենք միաժամանակ կլուծենք պատկերում կատուների ու շների դասակարգման խնդիրը։

Թիվ 8 դասը լրիվ առանձին դասընթաց է, ուրիշ ուսուցիչ կա, իսկ դասընթացն ինքնին բավականին ծավալուն է։ Դասը ժամանակային շարքերի մասին է։ Քանի որ դա ինձ դեռ չի հետաքրքրում, ես սկանավորեցի այն անկյունագծով։

Սա ավարտվում է #9 դասով, որը TensorFlow lite-ի անվճար դասընթաց անցնելու հրավեր է:

Այն, ինչ ձեզ դուր եկավ և ինչ չհավանեց

Սկսեմ դրական կողմերից.

  • Դասընթացն անվճար է
  • Դասընթացը TensorFlow 2-ի վրա է: Որոշ դասագրքեր, որոնք ես տեսել եմ, և որոշ դասընթացներ ինտերնետում եղել են TensorFlow 1-ի վրա: Ես չգիտեմ, թե արդյոք մեծ տարբերություն կա, բայց հաճելի է սովորել ընթացիկ տարբերակը:
  • Տեսանյութի ուսուցիչները չեն զայրացնում (չնայած ռուսերեն տարբերակում նրանք այնքան ուրախ չեն կարդում, որքան բնօրինակում)
  • Դասընթացը շատ ժամանակ չի պահանջում
  • Դասընթացը ձեզ չի ստիպում տխուր կամ հուսահատ զգալ: Դասընթացի առաջադրանքները պարզ են և միշտ ակնարկ կա Colab-ի տեսքով ճիշտ լուծումով, եթե ինչ-որ բան պարզ չէ (իսկ առաջադրանքների լավ կեսն ինձ համար պարզ չէր)
  • Ոչինչ տեղադրելու կարիք չկա, դասընթացի բոլոր լաբորատոր աշխատանքները կարելի է կատարել բրաուզերում

Հիմա մինուսները.

  • Գործնականում հսկիչ նյութեր չկան։ Ոչ թեստեր, ոչ առաջադրանքներ, ոչ մի բան, որը կարող է ինչ-որ կերպ ստուգել դասընթացի վարպետությունը
  • Իմ ոչ բոլոր նոթատետրերն են աշխատել այնպես, ինչպես պետք է: Կարծում եմ, որ անգլերեն Colab-ի սկզբնական դասընթացի երրորդ դասում սխալ էր թույլ տալիս, և ես չգիտեի, թե ինչ անել դրա հետ
  • Հարմար է դիտել միայն համակարգչով։ Միգուցե ես դա լիովին չհասկացա, բայց չկարողացա գտնել Udacity հավելվածը իմ սմարթֆոնի վրա: Իսկ կայքի բջջային տարբերակը ռեսպոնսիվ չէ, այսինքն՝ էկրանի գրեթե ողջ տարածքը զբաղեցնում է նավիգացիոն ընտրացանկը, սակայն հիմնական բովանդակությունը տեսնելու համար անհրաժեշտ է դիտման տարածքից այն կողմ ոլորել աջ։ Բացի այդ, տեսանյութը չի կարող դիտվել հեռախոսով: Դուք իրականում ոչինչ չեք կարող տեսնել 6 դյույմից փոքր էկրանի վրա:
  • Դասընթացի որոշ իրեր մի քանի անգամ ծամվում են, բայց միևնույն ժամանակ, կոնվոլյուցիոն ցանցերում իսկապես անհրաժեշտ բաները չեն ծամվում դասընթացի ընթացքում: Ես դեռ չէի հասկանում որոշ վարժությունների ընդհանուր նպատակը (օրինակ՝ ինչի համար է Max Pooling-ը):

Ամփոփում

Անշուշտ, դուք արդեն կռահեցիք, որ հրաշքը տեղի չունեցավ։ Եվ այս կարճ դասընթացն ավարտելուց հետո անհնար է իրականում հասկանալ, թե ինչպես են աշխատում նեյրոնային ցանցերը:

Իհարկե, դրանից հետո ես չկարողացա ինքնուրույն լուծել իմ խնդիրը անջատիչների և կոճակների լուսանկարների դասակարգմամբ:

Բայց ընդհանուր առմամբ դասընթացը օգտակար է: Այն ցույց է տալիս, թե ինչ բաներ կարելի է անել TensorFlow-ի հետ և ինչ ուղղություն վերցնել հաջորդիվ:

Կարծում եմ, որ նախ պետք է սովորեմ Python-ի հիմունքները և ռուսերեն գրքեր կարդամ այն ​​մասին, թե ինչպես են աշխատում նեյրոնային ցանցերը, իսկ հետո պետք է ընդունեմ TensorFlow-ը:

Եզրափակելով, ես կցանկանայի շնորհակալություն հայտնել իմ ընկերներին, որոնք դրդեցին ինձ գրել առաջին հոդվածը Habr-ում և օգնեցին ինձ ձևավորել այն:

Հ.Գ. Ուրախ կլինեմ տեսնել ձեր մեկնաբանությունները և ցանկացած կառուցողական քննադատություն։

Source: www.habr.com

Добавить комментарий