ዝርዝር ሁኔታ[ደብቅ][አሳይ]
ሮቦቶችን በአርአያነት ለመማር እና አካባቢያቸውን በማስተዋል ችሎታችን ለመምሰል እንደቻልን ማወቃችን የሚያረጋጋ ነው። ዋናው ተግዳሮት ኮምፒውተሮችን እንደ ሰዎች “እንዲያዩ” የሚያስተምሩ ሰዎች ብዙ ጊዜ እና ጥረት ይፈልጋሉ።
ሆኖም ይህ ክህሎት በአሁኑ ጊዜ ለድርጅቶች እና ኢንተርፕራይዞች የሚሰጠውን ተግባራዊ ጠቀሜታ ስናስብ ጥረቱ አዋጭ ነው። በዚህ ጽሑፍ ውስጥ ስለ ምስል ምደባ, እንዴት እንደሚሰራ እና ተግባራዊ አተገባበሩን ይማራሉ. እንጀምር.
የምስል ምደባ ምንድን ነው?
ምስልን ወደ ሀ የነርቭ ኔትወርክ እና ለዚያ ምስል የሆነ ዓይነት መለያ እንዲያወጣ ማድረግ የምስል ማወቂያ በመባል ይታወቃል። የአውታረ መረቡ ውፅዓት መለያ አስቀድሞ ከተገለጸው ክፍል ጋር ይዛመዳል።
ለሥዕሉ ብዙ ክፍሎች ተመድበው ሊሆን ይችላል፣ ወይም በቀላሉ አንድ። አንድ ክፍል ብቻ ሲኖር, "እውቅና" የሚለው ቃል በተደጋጋሚ ጥቅም ላይ ይውላል, ብዙ ክፍሎች ሲኖሩ, "መመደብ" የሚለው ቃል በተደጋጋሚ ጥቅም ላይ ይውላል.
የነገር መለየት የአንድ የተወሰነ ክፍል እንደ እንስሳት፣ ተሽከርካሪዎች ወይም ሰዎች ያሉ የነገሮች ልዩ ሁኔታዎች የተገኙበት የሥዕል ምደባ ንዑስ ስብስብ ነው።
የምስል ምደባ እንዴት ነው የሚሰራው?
በፒክሰሎች መልክ ያለ ምስል በኮምፒዩተር ይተነተናል። ይህንንም የሚያከናውነው ስዕሉን እንደ ማትሪክስ ስብስብ በመመልከት ነው, መጠኑ በምስል መፍታት ይወሰናል. በቀላል አነጋገር፣ የሥዕል ምደባ ከኮምፒዩተር አንፃር ስልተ ቀመሮችን በመጠቀም የስታቲስቲክስ መረጃን ማጥናት ነው።
የምስል ምደባ የሚከናወነው በዲጂታል ምስል ሂደት ውስጥ ፒክስሎችን አስቀድሞ ወደተወሰኑ ቡድኖች ወይም “ክፍሎች” በመመደብ ነው። ስልተ ቀመሮቹ ምስሉን ወደ ተከታታይ ባህሪያት ይከፋፍሏቸዋል, ይህም የመጨረሻውን ክላሲፋየር ሸክሙን ይቀንሳል.
እነዚህ ጥራቶች ስለ ምስሉ ትርጉም እና እምቅ አመዳደብ ለክላሲፋዩ ያሳውቃሉ። ስዕልን በመመደብ ላይ ያሉት የቀሩት ሂደቶች በእሱ ላይ ስለሚመሰረቱ, የባህሪው የማውጣት ዘዴ በጣም ወሳኝ ደረጃ ነው.
የ መረጃ ቀርቧል ወደ አልጎሪዝም እንዲሁ በምስል ምደባ ውስጥ ወሳኝ ነው ፣ በተለይም ቁጥጥር የሚደረግበት ምደባ። በክፍል እና በዝቅተኛ የምስል እና የማብራሪያ ጥራት ላይ የተመሰረተ የውሂብ አለመመጣጠን ካለው አስፈሪ የውሂብ ስብስብ ጋር ሲነጻጸር፣ በጥሩ ሁኔታ የተሻሻለ የምደባ ዳታ ስብስብ በሚያስደንቅ ሁኔታ ይሰራል።
በፓይቶን ውስጥ Tensorflow እና Keras በመጠቀም የምስል ምደባ
እኛ እንጠቀማለን CIFAR-10 ዳታሴት (ይህም አውሮፕላን፣ አውሮፕላኖች፣ ወፎች እና ሌሎች 7 ነገሮችን ያካትታል)።
1. የመጫኛ መስፈርቶች
ከዚህ በታች ያለው ኮድ ሁሉንም ቅድመ ሁኔታዎች ይጭናል.
2. ጥገኛዎችን ማስመጣት
በ Python ውስጥ train.py ፋይል ይፍጠሩ። ከታች ያለው ኮድ Tensorflow እና Keras ጥገኞችን ያስመጣል።
3. መለኪያዎችን ማስጀመር
CIFAR-10 የሚያካትተው 10 የሥዕል ምድቦችን ብቻ ነው፣ ስለሆነም የቁጥር መደቦች በቀላሉ የሚከፋፈሉትን ምድቦች ብዛት ያመለክታሉ።
4. የውሂብ ስብስብን በመጫን ላይ
ተግባሩ የውሂብ ስብስብን ለመጫን የ Tensorflow Datasets ሞጁሉን ይጠቀማል፣ እና ስለ እሱ የተወሰነ መረጃ ለማግኘት ከመረጃ ጋር ወደ እውነት አዘጋጅተናል። የትኞቹ መስኮች እና እሴቶቻቸው እንደሆኑ ለማየት ማተም ይችላሉ እና መረጃውን በስልጠና እና የሙከራ ስብስቦች ውስጥ ያሉትን የናሙናዎች ብዛት ለማምጣት እንጠቀማለን።
5. ሞዴሉን መፍጠር
አሁን ሶስት እርከኖችን እንገነባለን፣ እያንዳንዳቸው ሁለት ConvNets ከ max-pooling እና ReLU activation ተግባር ጋር፣ በመቀጠልም ሙሉ ለሙሉ የተገናኘ 1024-unit ሲስተም። ዘመናዊ ሞዴሎች ከሆኑ ResNet50 ወይም Xception ጋር ሲነጻጸር ይህ በንፅፅር ትንሽ ሞዴል ሊሆን ይችላል።
6. ሞዴሉን ማሰልጠን
በእያንዳንዱ ዘመን ያለውን ትክክለኛነት እና ኪሳራ ለመለካት Tensorboardን ተጠቀምኩኝ እና ውሂቡን አስመጣሁ እና ሞዴሉን ካመነጨሁ በኋላ ደስ የሚል ማሳያ አቅርቤ ነበር። የሚከተለውን ኮድ ያሂዱ; በእርስዎ ሲፒዩ/ጂፒዩ ላይ በመመስረት ስልጠና ብዙ ደቂቃዎችን ይወስዳል።
Tensorboard ለመጠቀም የሚከተለውን ትእዛዝ በተርሚናል ወይም አሁን ባለው ማውጫ ውስጥ የትእዛዝ መጠየቂያውን ብቻ ይተይቡ፡
የማረጋገጫ መጥፋት እየቀነሰ እና ትክክለኝነት ወደ 81% ገደማ እየጨመረ መሆኑን ያያሉ። ያ ድንቅ ነው!
ሞዴሉን መሞከር
ስልጠናው ሲጠናቀቅ የመጨረሻው ሞዴል እና ክብደቶች በውጤቶች አቃፊ ውስጥ ይቀመጣሉ, ይህም አንድ ጊዜ ለማሰልጠን እና በመረጥን ጊዜ ትንበያዎችን እንድንሰጥ ያስችለናል. test.py በተባለ አዲስ የpython ፋይል ውስጥ ኮዱን ይከተሉ።
7. ለሙከራ መገልገያዎችን ማስመጣት
8. የፓይቶን ማውጫ መስራት
እያንዳንዱን ኢንቲጀር ዋጋ ወደ የውሂብ ስብስብ አግባብ መለያ የሚተረጉም የፓይዘን መዝገበ ቃላት ይስሩ፡
9. የሙከራ ውሂብ እና ሞዴል በመጫን ላይ
የሚከተለው ኮድ የሙከራ ውሂብን እና ሞዴሉን ይጭናል.
10. ግምገማ እና ትንበያ
የሚከተለው ኮድ በእንቁራሪት ምስሎች ላይ ይገመግማል እና ትንበያዎችን ያደርጋል.
11. ውጤቶች
ሞዴሉ እንቁራሪቱን በ 80.62% ትክክለኛነት ተንብዮ ነበር.
መደምደሚያ
እሺ፣ ይህንን ትምህርት ጨርሰናል። 80.62% ለትንሽ CNN ጥሩ ባይሆንም፣ ሞዴሉን እንድትቀይሩ ወይም ResNet50፣ Xception ወይም ሌሎች ቆራጥ የሆኑ ሞዴሎችን ለተሻለ ውጤት እንድትመለከቱ አጥብቄ እመክራችኋለሁ።
አሁን የመጀመሪያውን የምስል ማወቂያ አውታረ መረብዎን በኬራስ ውስጥ ገንብተዋል፣ የተለያዩ መለኪያዎች በአፈፃፀሙ ላይ ምን ያህል ተጽዕኖ እንደሚያሳድሩ ለማወቅ በአምሳያው ላይ መሞከር አለብዎት።
መልስ ይስጡ