አርቲፊሻል ኢንተለጀንስ (AI) በቅርብ ዓመታት ውስጥ ከፍተኛ ተወዳጅነት አግኝቷል.
የሶፍትዌር መሐንዲስ፣ የኮምፒዩተር ሳይንቲስት ወይም በአጠቃላይ የዳታ ሳይንስ አድናቂ ከሆኑ በዚህ መስክ በሚቀርቡት አስደናቂ የምስል ማቀናበሪያ፣ የስርዓተ-ጥለት ማወቂያ እና የዕቃን ፈልጎ ማግኘቶች ሳቡት አይቀርም።
ምናልባት እርስዎ የሰሙት በጣም አስፈላጊው የ AI ንዑስ መስክ ጥልቅ ትምህርት ነው። ይህ መስክ የሚያተኩረው ኃይለኛ ስልተ ቀመሮች (የኮምፒዩተር ፕሮግራም መመሪያዎች) ተብሎ በሚታወቀው የሰው አእምሮ አሠራር ሞዴል ነው። የነርቭ አውታረመረቦች.
በዚህ ጽሑፍ ውስጥ ስለ የነርቭ አውታረ መረቦች ጽንሰ-ሀሳብ እና እነዚህን ሞዴሎች እንዴት መገንባት ፣ ማጠናቀር ፣ ማገጣጠም እና መገምገም እንደሚቻል እንመረምራለን ። ዘንዶ.
የነርቭ አውታረመረቦች
የነርቭ ኔትወርኮች፣ ወይም ኤንኤን፣ በሰው አንጎል ባዮሎጂያዊ እንቅስቃሴ የተቀረጹ ተከታታይ ስልተ ቀመሮች ናቸው። ነርቭ ኔትወርኮች ኖዶችን ያቀፉ፣ የነርቭ ሴሎችም ይባላሉ።
የቋሚ አንጓዎች ስብስብ ንብርብሮች በመባል ይታወቃሉ. ሞዴሉ አንድ ግቤት, አንድ ውጤት እና በርካታ የተደበቁ ንብርብሮችን ያካትታል. እያንዳንዱ ሽፋን ስሌቶቹ የሚካሄዱባቸው ኖዶች (ኒውሮኖች) ተብለው የሚጠሩትን ኖዶች ያካትታል.
በሚከተለው ሥዕላዊ መግለጫ ላይ ክበቦቹ አንጓዎችን የሚወክሉ ሲሆን ቀጥ ያለ የአንጓዎች ስብስብ ንብርብሮችን ይወክላሉ. በዚህ ሞዴል ውስጥ ሶስት እርከኖች አሉ.
የአንድ ንብርብር አንጓዎች ከታች እንደሚታየው በማስተላለፊያ መስመሮች በኩል ከሚቀጥለው ንብርብር ጋር ተያይዘዋል.
የእኛ የውሂብ ስብስብ መለያ ውሂብን ያካትታል። ይህ ማለት እያንዳንዱ የውሂብ አካል የተወሰነ የስም ዋጋ ተሰጥቷል ማለት ነው።
ስለዚህ ለእንስሳት ምደባ ዳታ ስብስብ የድመቶች እና ውሾች ምስሎች እንደ ዳታችን፣ 'ድመት' እና 'ውሻ' እንደ መለያችን ይኖረናል።
ለሞዴላችን ትርጉም እንዲሰጡን መለያዎችን ወደ አሃዛዊ እሴቶች መለወጥ እንደሚያስፈልግ ልብ ማለት ያስፈልጋል፣ ስለዚህ የእኛ የእንስሳት መለያዎች ለድመት '0' እና ለውሻ '1' ይሆናሉ። ሁለቱም መረጃዎች እና መለያዎቹ በአምሳያው ውስጥ ያልፋሉ.
ትምህርት
ውሂቡ ለአምሳያው አንድ አካል በአንድ ጊዜ ይመገባል። ይህ ውሂብ ወደ ክፍልፋዮች የተከፋፈለ እና በእያንዳንዱ የሞዴል መስቀለኛ መንገድ ውስጥ ያልፋል። አንጓዎች በእነዚህ ቁርጥራጮች ላይ የሂሳብ ስራዎችን ያከናውናሉ.
ለዚህ አጋዥ ስልጠና የሂሳብ ተግባራትን ወይም ስሌቶችን ማወቅ አያስፈልግም, ነገር ግን እነዚህ ሞዴሎች እንዴት እንደሚሰሩ አጠቃላይ ሀሳብ ማግኘት አስፈላጊ ነው. በአንድ ንብርብር ውስጥ ከተከታታይ ስሌቶች በኋላ, ውሂቡ ወደሚቀጥለው ንብርብር እና ወዘተ ይተላለፋል.
አንዴ ከተጠናቀቀ፣ ሞዴላችን በውጤቱ ንብርብር ላይ ያለውን የውሂብ መለያ ይተነብያል (ለምሳሌ በእንስሳት ምደባ ችግር ውስጥ ስለ ድመት '0' ትንበያ እናገኛለን)።
ከዚያም ሞዴሉ ይህንን የተተነበየ ዋጋ ከትክክለኛው የመለያ ዋጋ ጋር ለማነፃፀር ይቀጥላል።
እሴቶቹ ከተዛመዱ የእኛ ሞዴል ቀጣዩን ግቤት ይወስዳል ነገር ግን እሴቶቹ ከተለያዩ ሞዴሉ በሁለቱም እሴቶች መካከል ያለውን ልዩነት ያሰላል ፣ ኪሳራ ተብሎ የሚጠራው እና የመስቀለኛ ስሌቶችን በማስተካከል በሚቀጥለው ጊዜ ተዛማጅ መለያዎችን ያወጣል።
ጥልቅ የመማሪያ ማዕቀፎች
በኮድ ውስጥ የነርቭ አውታረ መረቦችን ለመገንባት, ከውጭ ማስገባት አለብን ጥልቅ የመማሪያ ማዕቀፎች የተቀናጀ ልማት አካባቢን (IDE) በመጠቀም ቤተ-መጻሕፍት በመባል ይታወቃሉ።
እነዚህ ማዕቀፎች በዚህ መማሪያ ውስጥ የሚረዱን ቀድሞ የተፃፉ ተግባራት ስብስብ ናቸው። ሞዴላችንን ለመገንባት የኬራስ ማእቀፍ እንጠቀማለን.
ኬራስ ጥልቅ ትምህርት እና አርቴፊሻል ኢንተለጀንስ ድጋፍን የሚጠቀም የፓይዘን ቤተ-መጽሐፍት ነው። tensor ፍሰት በቀላል ቅደም ተከተል ሞዴሎች መልክ ኤንኤን ለመፍጠር.
Keras እንዲሁ ጥቅም ላይ ሊውሉ ከሚችሉ የራሱ ቀዳሚ ሞዴሎች ጋር አብሮ ይመጣል። ለዚህ አጋዥ ስልጠና Keras በመጠቀም የራሳችንን ሞዴል እንፈጥራለን.
ስለዚህ ጥልቅ ትምህርት ማዕቀፍ ከ ተጨማሪ ማወቅ ይችላሉ። Keras ድር ጣቢያ.
የነርቭ ኔትወርክ መገንባት (መማሪያ)
ፒቲንን በመጠቀም የነርቭ ኔትወርክን ወደመገንባት እንሂድ።
የችግሩ መግለጫ
የነርቭ አውታረ መረቦች በ AI ላይ ለተመሰረቱ ችግሮች የመፍትሄ አይነት ናቸው። ለዚህ አጋዥ ስልጠና በፒማ ኢንዲያንስ የስኳር ህመም መረጃ ላይ እንገኛለን፣ ይህም ይገኛል። እዚህ.
አይ.ሲ.አይ. ማሽን መማር ይህንን የመረጃ ስብስብ አጠናቅሯል። እና የህንድ ታካሚዎች የህክምና መዝገብ ይዟል። የእኛ ሞዴል በሽተኛው በ 5 ዓመታት ውስጥ የስኳር በሽታ መጀመሩን ወይም አለመሆኑን መተንበይ አለበት.
የውሂብ ስብስብን በመጫን ላይ
የእኛ ዳታ ስብስብ 'diabetes.csv' የሚባል ነጠላ የሲኤስቪ ፋይል ሲሆን በቀላሉ የማይክሮሶፍት ኤክሴልን በመጠቀም ሊሰራ ይችላል።
ሞዴላችንን ከመፍጠራችን በፊት የመረጃ ቋታችንን ማስመጣት አለብን። የሚከተለውን ኮድ በመጠቀም ይህንን ማድረግ ይችላሉ-
ፓንዳዎችን እንደ ፒዲ አስመጣ
ውሂብ = pd.read_csv ('diabetes.csv')
x = data.drop("ውጤት")
y = ውሂብ["ውጤት"]
እዚህ እንጠቀማለን ፓናስ ላይብረሪ የCSV ፋይል ውሂባችንን ለመቆጣጠር እንድንችል read_csv() አብሮ የተሰራ የፓንዳስ ተግባር ሲሆን ይህም በፋይላችን ውስጥ ያሉትን እሴቶች 'ዳታ' ወደ ሚባል ተለዋዋጭ እንድናከማች ያስችለናል።
ተለዋዋጭ x ያለ የውጤት (ስያሜዎች) ውሂብ የእኛን የውሂብ ስብስብ ይዟል. ይህንን የምናሳካው በ data.drop() ተግባር ሲሆን ለ x መለያዎችን ያስወግዳል ፣ y ደግሞ የውጤት (መለያ) መረጃን ብቻ ይይዛል።
የግንባታ ቅደም ተከተል ሞዴል
ደረጃ 1፡ ቤተ-መጻሕፍትን ማስመጣት
በመጀመሪያ ለሞዴላችን ከሚያስፈልጉት የተወሰኑ መመዘኛዎች ጋር TensorFlow እና Keras ማስመጣት አለብን። የሚከተለው ኮድ ይህንን እንድናደርግ ይፈቅድልናል፡-
አስመጣ tensorflow እንደ tf
ከ tensorflow አስመጪ keras
ከ tensorflow.keras.models ማስመጣት ተከታታይ
ከ tensorflow.keras.layers ማስመጣት ገቢር፣ ጥቅጥቅ ያለ
ከ tensorflow.keras.optimizers አዳም ያስመጡታል።
ከ tensorflow.keras.metrics categorical_crossentropy አስመጣ
ለሞዴላችን ጥቅጥቅ ያሉ ንብርብሮችን እናስመጣለን። እነዚህ ሙሉ በሙሉ የተገናኙ ንብርብሮች ናቸው; ማለትም በንብርብር ውስጥ ያለው እያንዳንዱ መስቀለኛ መንገድ በሚቀጥለው ንብርብር ውስጥ ካለው ሌላ መስቀለኛ መንገድ ጋር ሙሉ በሙሉ የተገናኘ ነው።
እኛ ደግሞ አስመጣን ማግበር ወደ አንጓዎች የተላከውን ውሂብ ለመለካት የሚያስፈልግ ተግባር። አመቻቾች ኪሳራን ለመቀነስም ከውጭ ገብተዋል።
አዳም የእኛን ሞዴል የመስቀለኛ መንገድ ስሌቶችን ከዚ ጋር በብቃት የሚያዘምንበት ታዋቂ አመቻች ነው። categorical_crossentropy የትኛው ነው የምንጠቀመው የኪሳራ ተግባር አይነት (በትክክለኛ እና በተገመቱ የመለያ እሴቶች መካከል ያለውን ልዩነት ያሰላል)።
ደረጃ 2፡ ሞዴላችንን መንደፍ
እኔ እየፈጠርኩት ያለው ሞዴል አንድ ግቤት (ከ 16 ክፍሎች ጋር) አንድ የተደበቀ (ከ 32 ክፍሎች ጋር) እና አንድ ውጤት (ከ 2 ክፍሎች ጋር) ንብርብር አለው. እነዚህ ቁጥሮች አልተስተካከሉም እና ሙሉ በሙሉ በተሰጠው ችግር ላይ ይወሰናሉ.
ትክክለኛውን የንጥል እና የንብርብሮች ቁጥር ማቀናበር በትርፍ ሰዓት በተግባር ሊሻሻል የሚችል ሂደት ነው. ማግበር በመስቀለኛ መንገድ ከማለፍዎ በፊት በእኛ መረጃ ላይ ከምንሰራው የመለኪያ አይነት ጋር ይዛመዳል።
Relu እና Softmax ለዚህ ተግባር የታወቁ የማግበር ተግባራት ናቸው።
ሞዴል = ተከታታይ ([
ጥቅጥቅ ያለ (አሃዶች = 16፣ የግቤት_ቅርጽ = (1፣)፣ ማግበር = 'relu')፣
ጥቅጥቅ ያሉ (አሃዶች = 32፣ ማግበር = 'relu')፣
ጥቅጥቅ ያለ (ዩኒቶች = 2፣ ማግበር = 'softmax')
])
የአምሳያው ማጠቃለያ ምን መምሰል እንዳለበት እነሆ።
ሞዴሉን ማሰልጠን
የእኛ ሞዴል በሁለት ደረጃዎች ይሠለጥናል, የመጀመሪያው ሞዴሉን በማጠናቀር (ሞዴሉን አንድ ላይ በማጣመር) እና ቀጣዩ ሞዴል በተሰጠው የውሂብ ስብስብ ላይ ይጣጣማል.
ይህ የሞዴል.compile () ተግባርን ተከትሎ የሞዴል.fit () ተግባርን በመጠቀም ሊከናወን ይችላል.
model.compile(አመቻች = አዳም(የትምህርት_ደረጃ = 0.0001)፣ ኪሳራ = 'binary_crossentropy'፣ metrics = ['ትክክለኛነት'])
model.fit(x፣ y፣ epochs = 30፣ batch_size = 10)
የ'ትክክለኛነት' መለኪያን መግለጽ በስልጠና ወቅት የአምሳያችንን ትክክለኛነት እንድንመለከት ያስችለናል።
መለያዎቻችን በ1 እና በ0ዎች መልክ ስላሉ፣ በትክክለኛ እና በተገመቱ መለያዎች መካከል ያለውን ልዩነት ለማስላት የሁለትዮሽ ኪሳራ ተግባርን እንጠቀማለን።
የመረጃ ቋቱ ወደ 10 (ባtch_size) እየተከፋፈለ ነው እና በአምሳያው 30 ጊዜ (ኢፖች) ይተላለፋል። ለተወሰነ የውሂብ ስብስብ x ውሂቡ እና y ከውሂቡ ጋር የሚዛመዱ መለያዎች ይሆናሉ።
ትንበያዎችን በመጠቀም ሞዴል መሞከር
የእኛን ሞዴል ለመገምገም የትንበያ () ተግባርን በመጠቀም በሙከራ መረጃ ላይ ትንበያዎችን እንሰራለን.
ትንበያዎች = ሞዴል.predict(x)
እና ያ ነው!
አሁን ስለ ጉዳዩ ጥሩ ግንዛቤ ሊኖርዎት ይገባል ጥልቀት ያለው ትምህርት መተግበሪያ, የነርቭ አውታረ መረቦች, በአጠቃላይ እንዴት እንደሚሰሩ እና ሞዴልን በ Python ኮድ ውስጥ እንዴት እንደሚገነቡ, እንደሚያሠለጥኑ እና እንደሚሞክሩ.
ይህ አጋዥ ስልጠና የራስዎን ጥልቅ ትምህርት ሞዴሎችን ለመፍጠር እና ለማሰማራት ኪክስታርት እንደሚሰጥዎት ተስፋ አደርጋለሁ።
ጽሑፉ ጠቃሚ ከሆነ በአስተያየቶቹ ውስጥ ያሳውቁን።
መልስ ይስጡ