મુખ્ય સામગ્રી પર જાઓ
  1. સંસાધનો/
  2. અભ્યાસ સામગ્રી/
  3. ઇન્ફોર્મેશન ટેકનોલોજી એન્જિનિયરિંગ/
  4. આઈટી સેમેસ્ટર 4/
  5. મશીન લર્નિંગના મૂળભૂત સિદ્ધાંતો (4341603)/

મશીન લર્નિંગના મૂળભૂત સિદ્ધાંતો (4341603) - ઉનાળા 2024 સોલ્યુશન

·
અભ્યાસ-સામગ્રી સોલ્યુશન મશીન-લર્નિંગ 4341603 2024 ઉનાળો
મિલવ ડબગર
લેખક
મિલવ ડબગર
ઇલેક્ટ્રિકલ અને ઇલેક્ટ્રોનિક મેન્યુફેક્ચરિંગ ઉદ્યોગમાં અનુભવી લેક્ચરર. એમ્બેડેડ સિસ્ટમ્સ, ઈમેજ પ્રોસેસિંગ, ડેટા સાયન્સ, મેટલેબ, પાયથન, STM32માં કુશળ. એલ.ડી. કોલેજ ઓફ એન્જિનિયરિંગ - અમદાવાદથી કમ્યુનિકેશન સિસ્ટમ્સ એન્જિનિયરિંગમાં માસ્ટર્સ ડિગ્રી ધરાવતા મજબૂત શિક્ષણ વ્યાવસાયિક.
અનુક્રમણિકા

પ્રશ્ન 1(અ) [3 ગુણ]
#

યોગ્ય ઉદાહરણનો ઉપયોગ કરીને મશીન લર્નિંગને વ્યાખ્યાયિત કરો

જવાબ:

મશીન લર્નિંગ આર્ટિફિશિયલ ઇન્ટેલિજન્સનો એક ભાગ છે જે કમ્પ્યુટર્સને ડેટામાંથી શીખવા અને દરેક કાર્ય માટે સ્પષ્ટ રીતે પ્રોગ્રામ કર્યા વિના નિર્ણયો લેવા માટે સક્ષમ બનાવે છે.

ટેબલ: મશીન લર્નિંગના મુખ્ય ઘટકો

ઘટકવર્ણન
ડેટાટ્રેનિંગ માટે ઉપયોગમાં લેવાતી ઇનપુટ માહિતી
અલ્ગોરિધમપેટર્ન શીખતા ગાણિતિક મોડેલ
ટ્રેનિંગઅલ્ગોરિધમને શીખવવાની પ્રક્રિયા
પ્રિડિક્શનશીખેલા પેટર્ન આધારિત આઉટપુટ

ઉદાહરણ: ઇમેઇલ સ્પામ ડિટેક્શન સિસ્ટમ હજારો ઇમેઇલોમાંથી “સ્પામ” અથવા “નોટ સ્પામ” તરીકે લેબલ કરેલા ઇમેઇલોમાંથી શીખે છે અને નવા ઇમેઇલોને આપોઆપ વર્ગીકૃત કરે છે.

મેમરી ટ્રીક: “ડેટા ડ્રાઇવ્સ ડિસિઝન્સ” - ડેટા અલ્ગોરિધમને બુદ્ધિશાળી નિર્ણયો લેવા માટે પ્રશિક્ષિત કરે છે

પ્રશ્ન 1(બ) [4 ગુણ]
#

સ્કેમેટિક રેખાકૃતિના ઉપયોગ કરીને મશીન લર્નિંગની પ્રક્રિયા સમજાવો

જવાબ:

મશીન લર્નિંગ પ્રક્રિયામાં ડેટા સંગ્રહથી લઈને મોડેલ ડિપ્લોયમેન્ટ સુધીના વ્યવસ્થિત પગલાંઓનો સમાવેશ થાય છે.

flowchart TD
    A[ડેટા સંગ્રહ] --> B[ડેટા પ્રીપ્રોસેસિંગ]
    B --> C[ફીચર સિલેક્શન]
    C --> D[મોડેલ સિલેક્શન]
    D --> E[ટ્રેનિંગ]
    E --> F[વેલિડેશન]
    F --> G{પરફોર્મન્સ સારું?}
    G -->|ના| D
    G -->|હા| H[ટેસ્ટિંગ]
    H --> I[ડિપ્લોયમેન્ટ]

પ્રક્રિયાના પગલાં:

  • ડેટા સંગ્રહ: સંબંધિત ડેટાસેટ એકત્રિત કરવું
  • પ્રીપ્રોસેસિંગ: ડેટાને સાફ અને તૈયાર કરવું
  • ટ્રેનિંગ: ટ્રેનિંગ ડેટાનો ઉપયોગ કરીને અલ્ગોરિધમને શીખવવું
  • વેલિડેશન: મોડેલની કામગીરીને ચકાસવી
  • ડિપ્લોયમેન્ટ: વાસ્તવિક પ્રિડિક્શન માટે મોડેલનો ઉપયોગ

મેમરી ટ્રીક: “કમ્પ્યુટર્સ કેન ટ્રુલી થિંક” - કલેક્ટ, ક્લીન, ટ્રેન, ટેસ્ટ

પ્રશ્ન 1(ક) [7 ગુણ]
#

યોગ્ય એપ્લિકેશન સાથે વિવિધ પ્રકારના મશીન લર્નિંગ સમજાવો

જવાબ:

મશીન લર્નિંગ અલ્ગોરિધમ્સને લર્નિંગ એપ્રોચ અને ઉપલબ્ધ ડેટાના આધારે વર્ગીકૃત કરવામાં આવે છે.

ટેબલ: મશીન લર્નિંગના પ્રકારો

પ્રકારલર્નિંગ મેથડડેટા આવશ્યકતાઉદાહરણ એપ્લિકેશન
સુપરવાઇઝ્ડલેબલ્ડ ડેટાનો ઉપયોગઇનપુટ-આઉટપુટ જોડીઓઇમેઇલ ક્લાસિફિકેશન
અનસુપરવાઇઝ્ડછુપાયેલા પેટર્ન શોધેમાત્ર ઇનપુટ ડેટાકસ્ટમર સેગમેન્ટેશન
રિઇનફોર્સમેન્ટરિવોર્ડ્સ દ્વારા શીખેએન્વાયર્નમેન્ટ ફીડબેકગેમ પ્લેઇંગ AI

એપ્લિકેશન્સ:

  • સુપરવાઇઝ્ડ લર્નિંગ: મેડિકલ ડાયગ્નોસિસ, ઇમેજ રેકોગ્નિશન, ફ્રોડ ડિટેક્શન
  • અનસુપરવાઇઝ્ડ લર્નિંગ: માર્કેટ રિસર્ચ, એનોમેલી ડિટેક્શન, રેકમેન્ડેશન સિસ્ટમ્સ
  • રિઇનફોર્સમેન્ટ લર્નિંગ: ઓટોનોમસ વેહિકલ્સ, રોબોટિક્સ, સ્ટ્રેટેજિક ગેમ્સ

ડાયાગ્રામ: લર્નિંગ ટાઇપ્સ

mindmap
  root((મશીન લર્નિંગ))
    સુપરવાઇઝ્ડ
      ક્લાસિફિકેશન
      રિગ્રેશન
    અનસુપરવાઇઝ્ડ
      ક્લસ્ટરિંગ
      એસોસિએશન
    રિઇનફોર્સમેન્ટ
      પોલિસી લર્નિંગ
      વેલ્યુ ફંક્શન

મેમરી ટ્રીક: “સ્ટુડન્ટ્સ યુઝ્યુઅલી રીમેમ્બર” - સુપરવાઇઝ્ડ, અનસુપરવાઇઝ્ડ, રિઇનફોર્સમેન્ટ

પ્રશ્ન 1(ક) OR [7 ગુણ]
#

મશીન લર્નિંગમાં વિવિધ સમસ્યાઓ શું છે? ત્રણ સમસ્યાઓ કે જે મશીન લર્નિંગનો ઉપયોગ કરીને ઉકેલી શકાતી નથી.

જવાબ:

ટેબલ: મશીન લર્નિંગની સમસ્યાઓ

સમસ્યા કેટેગરીવર્ણનઅસર
ડેટા ક્વોલિટીઅધૂરો, નોઇઝી, પક્ષપાતી ડેટાનબળું મોડેલ પરફોર્મન્સ
ઓવરફિટિંગમોડેલ ટ્રેનિંગ ડેટાને યાદ રાખે છેનબળું જનરલાઇઝેશન
કમ્પ્યુટેશનલઉચ્ચ પ્રોસેસિંગ આવશ્યકતાઓરિસોર્સ મર્યાદાઓ
ઇન્ટરપ્રિટેબિલિટીબ્લેક બોક્સ મોડેલ્સપારદર્શિતાનો અભાવ

ML માટે અનુપયુક્ત સમસ્યાઓ:

  1. સિમ્પલ રૂલ-બેસ્ડ ટાસ્ક - મૂળભૂત ગણતરીઓ, સિમ્પલ if-then લોજિક
  2. નૈતિક નિર્ણયો - માનવીય મૂલ્યોની આવશ્યકતા ધરાવતા નૈતિક जजમેન્ટ્સ
  3. ક્રિએટિવ એક્સપ્રેશન - માનવીય લાગણીની આવશ્યકતા ધરાવતી મૂળ કલાત્મક સર્જના

અન્ય સમસ્યાઓ:

  • પ્રાઇવસી ચિંતાઓ: સંવેદનશીલ ડેટા હેન્ડલિંગ
  • બાયસ પ્રોપેગેશન: અન્યાયકારક અલ્ગોરિધમિક નિર્ણયો
  • ફીચર સિલેક્શન: સંબંધિત ઇનપુટ વેરિએબલ્સ પસંદ કરવા

મેમરી ટ્રીક: “ડેટા ડ્રાઇવ્સ ક્વોલિટી” - ડેટા ક્વોલિટી સીધી રીતે મોડેલ ક્વોલિટીને અસર કરે છે

પ્રશ્ન 2(અ) [3 ગુણ]
#

સામાન્ય મશીન લર્નિંગ સમસ્યામાં વિવિધ પ્રકારના ડેટાનો સારાંશ આપો

જવાબ:

ટેબલ: મશીન લર્નિંગમાં ડેટા પ્રકારો

ડેટા પ્રકારવર્ણનઉદાહરણ
ન્યુમેરિકલમાત્રાત્મક મૂલ્યોઉંમર: 25, ઊંચાઈ: 170cm
કેટેગોરિકલઅસ્પષ્ટ કેટેગરીઓરંગ: લાલ, વાદળી, લીલો
ઓર્ડિનલક્રમબદ્ધ કેટેગરીઓરેટિંગ: નબળું, સારું, ઉત્તમ
બાઇનરીબે શક્ય મૂલ્યોલિંગ: પુરુષ/સ્ત્રી

લક્ષણો:

  • સ્ટ્રક્ચર્ડ: ટેબલોમાં વ્યવસ્થિત (ડેટાબેસેસ, સ્પ્રેડશીટ્સ)
  • અનસ્ટ્રક્ચર્ડ: ઇમેજ, ટેક્સ્ટ, ઓડિયો ફાઇલો
  • ટાઇમ-સીરીઝ: સમય પર ડેટા પોઇન્ટ્સ

મેમરી ટ્રીક: “નંબર્સ કાઉન્ટ બેટર દેન વર્ડ્સ” - ન્યુમેરિકલ, કેટેગોરિકલ, બાઇનરી, ટેક્સ્ટ

પ્રશ્ન 2(બ) [4 ગુણ]
#

બંને એટ્રિબ્યુટ માટે વેરિયન્સ ગણતરી કરો. નક્કી કરો કે કઈ એટ્રિબ્યુટ મીનની આસપાસ સ્પ્રેડ આઉટ છે

જવાબ:

આપેલ ડેટા:

  • એટ્રિબ્યુટ 1: 32, 37, 47, 50, 59
  • એટ્રિબ્યુટ 2: 48, 40, 41, 47, 49

ગણતરીઓ:

એટ્રિબ્યુટ 1:

  • મીન = (32+37+47+50+59)/5 = 225/5 = 45
  • વેરિયન્સ = [(32-45)² + (37-45)² + (47-45)² + (50-45)² + (59-45)²]/5
  • વેરિયન્સ = [169 + 64 + 4 + 25 + 196]/5 = 458/5 = 91.6

એટ્રિબ્યુટ 2:

  • મીન = (48+40+41+47+49)/5 = 225/5 = 45
  • વેરિયન્સ = [(48-45)² + (40-45)² + (41-45)² + (47-45)² + (49-45)²]/5
  • વેરિયન્સ = [9 + 25 + 16 + 4 + 16]/5 = 70/5 = 14

પરિણામ: એટ્રિબ્યુટ 1 (વેરિયન્સ = 91.6) એટ્રિબ્યુટ 2 (વેરિયન્સ = 14) કરતાં વધુ સ્પ્રેડ આઉટ છે.

મેમરી ટ્રીક: “હાયર વેરિયન્સ શોઝ સ્પ્રેડ” - વધુ વેરિયન્સ વધુ વિખેરાઈને દર્શાવે છે

પ્રશ્ન 2(ક) [7 ગુણ]
#

ડેટા ગુણવત્તા સમસ્યા તરફ દોરી જતા ફેક્ટર્સની યાદી બનાવો. આઉટલાયર્સ અને મિસિંગ વેલ્યુ કેવી રીતે હેન્ડલ કરવું

જવાબ:

ટેબલ: ડેટા ગુણવત્તા સમસ્યાઓ

ફેક્ટરકારણસોલ્યુશન
અપૂર્ણતામિસિંગ ડેટા કલેક્શનઇમ્પ્યુટેશન ટેકનિક્સ
અસંગતતાવિવિધ ડેટા ફોર્મેટ્સસ્ટેન્ડર્ડાઇઝેશન
અચોક્કસતાહ્યુમન/સેન્સર એરર્સવેલિડેશન રૂલ્સ
નોઇઝરેન્ડમ વેરિએશન્સફિલ્ટરિંગ મેથડ્સ

આઉટલાયર્સ હેન્ડલ કરવું:

  • ડિટેક્શન: સ્ટેટિસ્ટિકલ મેથડ્સ (Z-score, IQR)
  • ટ્રીટમેન્ટ: એક્સ્ટ્રીમ વેલ્યુઝને રીમૂવ, ટ્રાન્સફોર્મ, અથવા કેપ કરવી
  • વિઝ્યુઅલાઇઝેશન: બોક્સ પ્લોટ્સ, સ્કેટર પ્લોટ્સ

મિસિંગ વેલ્યુઝ હેન્ડલ કરવું:

  • ડિલીશન: અપૂર્ણ રેકોર્ડ્સ રીમૂવ કરવા
  • ઇમ્પ્યુટેશન: મીન, મીડિયન, અથવા મોડ સાથે ભરવું
  • પ્રિડિક્શન: મિસિંગ વેલ્યુઝની આગાહી કરવા માટે ML નો ઉપયોગ

કોડ ઉદાહરણ:

# મિસિંગ વેલ્યુઝ હેન્ડલ કરવું
df.fillna(df.mean())  # મીન ઇમ્પ્યુટેશન
df.dropna()          # મિસિંગ રોઝ રીમૂવ કરવા

મેમરી ટ્રીક: “ક્લીન ડેટા મેક્સ મોડેલ્સ” - સાફ ડેટા બેહતર મોડેલ્સ બનાવે છે

પ્રશ્ન 2(અ) OR [3 ગુણ]
#

વિવિધ મશીન લર્નિંગ પ્રવૃત્તિઓ આપો

જવાબ:

ટેબલ: મશીન લર્નિંગ પ્રવૃત્તિઓ

પ્રવૃત્તિહેતુઉદાહરણ
ડેટા કલેક્શનસંબંધિત માહિતી એકત્રિત કરવીસર્વે, સેન્સર્સ, ડેટાબેસેસ
ડેટા પ્રીપ્રોસેસિંગડેટાને સાફ અને તૈયાર કરવુંનોઇઝ રીમૂવ કરવું, મિસિંગ વેલ્યુઝ હેન્ડલ કરવું
ફીચર એન્જિનિયરિંગઅર્થપૂર્ણ વેરિએબલ્સ બનાવવારો ડેટામાંથી ફીચર્સ એક્સ્ટ્રેક્ટ કરવા
મોડેલ ટ્રેનિંગઅલ્ગોરિધમને પેટર્ન શીખવવાટ્રેનિંગ ડેટાસેટનો ઉપયોગ
મોડેલ ઇવેલ્યુએશનપરફોર્મન્સ આકારણીટેસ્ટ એક્યુરસી, પ્રિસિઝન, રિકોલ
મોડેલ ડિપ્લોયમેન્ટમોડેલને પ્રોડક્શનમાં મૂકવુંવેબ સર્વિસેસ, મોબાઇલ એપ્સ

મુખ્ય પ્રવૃત્તિઓ:

  • એક્સ્પ્લોરેટરી ડેટા એનાલિસિસ: ડેટા પેટર્ન સમજવા
  • હાયપરપેરામીટર ટ્યુનિંગ: મોડેલ સેટિંગ્સ ઓપ્ટિમાઇઝ કરવા
  • ક્રોસ-વેલિડેશન: મજબૂત પરફોર્મન્સ આકારણી

મેમરી ટ્રીક: “ડેટા મોડેલ્સ પર્ફોર્મ એક્સેલન્ટલી” - ડેટા તૈયારી, મોડેલ બિલ્ડિંગ, પરફોર્મન્સ ઇવેલ્યુએશન, એક્ઝિક્યુશન

પ્રશ્ન 2(બ) OR [4 ગુણ]
#

નીચેની સંખ્યાઓના મીન અને મીડિયન ની ગણતરી કરો: 12,15,18,20,22,24,28,30

જવાબ:

આપેલ સંખ્યાઓ: 12, 15, 18, 20, 22, 24, 28, 30

મીન ગણતરી: મીન = (12+15+18+20+22+24+28+30)/8 = 169/8 = 21.125

મીડિયન ગણતરી:

  • સંખ્યાઓ પહેલેથી સૉર્ટ કરેલી છે: 12, 15, 18, 20, 22, 24, 28, 30
  • સમ કાઉન્ટ (8 સંખ્યાઓ)
  • મીડિયન = (4મી સંખ્યા + 5મી સંખ્યા)/2 = (20 + 22)/2 = 21

ટેબલ: સ્ટેટિસ્ટિકલ સમરી

માપદંડમૂલ્યવર્ણન
મીન21.125સરેરાશ મૂલ્ય
મીડિયન21મધ્યમ મૂલ્ય
કાઉન્ટ8કુલ સંખ્યાઓ

મેમરી ટ્રીક: “મિડલ મેક્સ મીડિયન” - મધ્યમ મૂલ્ય મીડિયન આપે છે

પ્રશ્ન 2(ક) OR [7 ગુણ]
#

ડેટા પ્રીપ્રોસેસિંગના સંદર્ભમાં ડાયમેન્શનાલિટી રિડક્શન અને ફીચર સબસેટ સિલેક્શન પર ટૂંકી નોંધ લખો

જવાબ:

ડાયમેન્શનાલિટી રિડક્શન અપ્રસ્તુત ફીચર્સને દૂર કરે છે અને કોમ્પ્યુટેશનલ જટિલતા ઘટાડે છે જ્યારે મહત્વપૂર્ણ માહિતી જાળવી રાખે છે.

ટેબલ: ડાયમેન્શનાલિટી રિડક્શન ટેકનિક્સ

ટેકનિકમેથડવપરાશ
PCAપ્રિન્સિપલ કમ્પોનન્ટ એનાલિસિસલીનિયર રિડક્શન
LDAલીનિયર ડિસ્ક્રિમિનન્ટ એનાલિસિસક્લાસિફિકેશન ટાસ્ક્સ
t-SNEનોન-લીનિયર એમ્બેડિંગવિઝ્યુઅલાઇઝેશન
ફીચર સિલેક્શનમહત્વપૂર્ણ ફીચર્સ પસંદ કરવાઓવરફિટિંગ ઘટાડવું

ફીચર સબસેટ સિલેક્શન મેથડ્સ:

  • ફિલ્ટર મેથડ્સ: સ્ટેટિસ્ટિકલ ટેસ્ટ્સ, કોરિલેશન એનાલિસિસ
  • રેપર મેથડ્સ: ફોરવર્ડ/બેકવર્ડ સિલેક્શન
  • એમ્બેડેડ મેથડ્સ: LASSO, રિજ રિગ્રેશન

ફાયદાઓ:

  • કોમ્પ્યુટેશનલ કાર્યક્ષમતા: ઝડપી ટ્રેનિંગ અને પ્રિડિક્શન
  • સ્ટોરેજ રિડક્શન: ઓછી મેમરી આવશ્યકતાઓ
  • નોઇઝ રિડક્શન: અપ્રસ્તુત ફીચર્સ દૂર કરવા
  • વિઝ્યુઅલાઇઝેશન: 2D/3D પ્લોટિંગ સક્ષમ કરવું

કોડ ઉદાહરણ:

from sklearn.decomposition import PCA
pca = PCA(n_components=2)
reduced_data = pca.fit_transform(data)

મેમરી ટ્રીક: “રિડ્યુસ ફીચર્સ, ઇમ્પ્રૂવ પર્ફોર્મન્સ” - ઓછા ફીચર્સ ઘણીવાર બેહતર મોડેલ્સ તરફ દોરી જાય છે

પ્રશ્ન 3(અ) [3 ગુણ]
#

શું બાયસ ML મોડેલના પરફોર્મન્સને અસર કરે છે? ટૂંકમાં સમજાવો

જવાબ:

હા, બાયસ પ્રિડિક્શન્સમાં સિસ્ટેમેટિક એરર્સ બનાવીને ML મોડેલના પરફોર્મન્સને નોંધપાત્ર રીતે અસર કરે છે.

ટેબલ: બાયસના પ્રકારો

બાયસ પ્રકારવર્ણનઅસર
સિલેક્શન બાયસબિન-પ્રતિનિધિત્વકારી ડેટાનબળું જનરલાઇઝેશન
કન્ફર્મેશન બાયસઅપેક્ષિત પરિણામોની તરફેણત્રાંસા નિષ્કર્ષો
અલ્ગોરિધમિક બાયસમોડેલ ધારણાઓઅન્યાયકારક પ્રિડિક્શન્સ

પરફોર્મન્સ પર અસરો:

  • અંડરફિટિંગ: ઉચ્ચ બાયસ અતિ સરળ મોડેલ્સ તરફ દોરી જાય છે
  • નબળી ચોકસાઈ: સિસ્ટેમેટિક એરર્સ એકંદર પરફોર્મન્સ ઘટાડે છે
  • અન્યાયકારક નિર્ણયો: પક્ષપાતી મોડેલ્સ જૂથો સામે ભેદભાવ કરે છે

ઘટાડવાની વ્યૂહરચનાઓ:

  • વિવિધ ટ્રેનિંગ ડેટા
  • ક્રોસ-વેલિડેશન ટેકનિક્સ
  • બાયસ ડિટેક્શન અલ્ગોરિધમ્સ

મેમરી ટ્રીક: “બાયસ બ્રેક્સ બેટર પર્ફોર્મન્સ” - બાયસ મોડેલની અસરકારકતા ઘટાડે છે

પ્રશ્ન 3(બ) [4 ગુણ]
#

ક્રોસ-વેલિડેશન અને બૂટસ્ટ્રેપ સેમ્પલિંગની સરખામણી કરો

જવાબ:

ટેબલ: ક્રોસ-વેલિડેશન vs બૂટસ્ટ્રેપ સેમ્પલિંગ

પાસુંક્રોસ-વેલિડેશનબૂટસ્ટ્રેપ સેમ્પલિંગ
મેથડડેટાને ફોલ્ડ્સમાં વિભાજિત કરવુંરિપ્લેસમેન્ટ સાથે સેમ્પલ કરવું
ડેટા ઉપયોગબધો ડેટા વાપરે છેમલ્ટિપલ સેમ્પલ્સ બનાવે છે
હેતુમોડેલ ઇવેલ્યુએશનઅનિશ્ચિતતાનો અંદાજ
ઓવરલેપસેટ્સ વચ્ચે કોઈ ઓવરલેપ નથીડુપ્લિકેટ સેમ્પલ્સની મંજૂરી

ક્રોસ-વેલિડેશન:

  • ડેટાને k સમાન ભાગોમાં વહેંચે છે
  • k-1 ભાગોમાં ટ્રેન કરે છે, 1 ભાગમાં ટેસ્ટ કરે છે
  • મજબૂત ઇવેલ્યુએશન માટે k વખત પુનરાવર્તન કરે છે

બૂટસ્ટ્રેપ સેમ્પલિંગ:

  • રિપ્લેસમેન્ટ સાથે રેન્ડમ સેમ્પલ્સ બનાવે છે
  • સમાન સાઇઝના મલ્ટિપલ ડેટાસેટ્સ જનરેટ કરે છે
  • કોન્ફિડન્સ ઇન્ટરવલ્સનો અંદાજ કાઢે છે

એપ્લિકેશન્સ:

  • ક્રોસ-વેલિડેશન: મોડેલ સિલેક્શન, હાયપરપેરામીટર ટ્યુનિંગ
  • બૂટસ્ટ્રેપ: સ્ટેટિસ્ટિકલ ઇન્ફરન્સ, કોન્ફિડન્સ એસ્ટિમેશન

મેમરી ટ્રીક: “ક્રોસ ચેક્સ, બૂટસ્ટ્રેપ બિલ્ડ્સ” - ક્રોસ-વેલિડેશન પરફોર્મન્સ ચેક કરે છે, બૂટસ્ટ્રેપ કોન્ફિડન્સ બિલ્ડ કરે છે

પ્રશ્ન 3(ક) [7 ગુણ]
#

કન્ફ્યુઝન મેટ્રિક્સ ગણતરી અને મેટ્રિક્સ

જવાબ:

આપેલ માહિતી:

  • True Positive (TP): 83 (પ્રિડિક્ટેડ ખરીદશે, વાસ્તવમાં ખરીદ્યું)
  • False Positive (FP): 7 (પ્રિડિક્ટેડ ખરીદશે, નથી ખરીદ્યું)
  • False Negative (FN): 5 (પ્રિડિક્ટેડ નહીં ખરીદે, વાસ્તવમાં ખરીદ્યું)
  • True Negative (TN): 5 (પ્રિડિક્ટેડ નહીં ખરીદે, નથી ખરીદ્યું)

કન્ફ્યુઝન મેટ્રિક્સ:

પ્રિડિક્ટેડ ખરીદશેપ્રિડિક્ટેડ નહીં ખરીદે
વાસ્તવમાં ખરીદે83 (TP)5 (FN)
વાસ્તવમાં નહીં ખરીદે7 (FP)5 (TN)

ગણતરીઓ:

અ) એરર રેટ: એરર રેટ = (FP + FN) / કુલ = (7 + 5) / 100 = 0.12 = 12%

બ) પ્રિસિઝન: પ્રિસિઝન = TP / (TP + FP) = 83 / (83 + 7) = 83/90 = 0.922 = 92.2%

ક) રિકોલ: રિકોલ = TP / (TP + FN) = 83 / (83 + 5) = 83/88 = 0.943 = 94.3%

ડ) F-મેઝર: F-મેઝર = 2 × (પ્રિસિઝન × રિકોલ) / (પ્રિસિઝન + રિકોલ) F-મેઝર = 2 × (0.922 × 0.943) / (0.922 + 0.943) = 0.932 = 93.2%

ટેબલ: પરફોર્મન્સ મેટ્રિક્સ

મેટ્રિકમૂલ્યઅર્થઘટન
એરર રેટ12%મોડેલ 12% ખોટી આગાહીઓ કરે છે
પ્રિસિઝન92.2%પ્રિડિક્ટેડ ખરીદદારોમાંથી 92.2% ખરેખર ખરીદે છે
રિકોલ94.3%મોડેલ 94.3% વાસ્તવિક ખરીદદારોને ઓળખે છે
F-મેઝર93.2%સંતુલિત પરફોર્મન્સ માપદંડ

મેમરી ટ્રીક: “પર્ફેક્ટ રિકોલ ફાઇન્ડ્સ એવરીવન” - પ્રિસિઝન ચોકસાઈ માપે છે, રિકોલ બધા પોઝિટિવ શોધે છે

પ્રશ્ન 3(અ) OR [3 ગુણ]
#

સંક્ષિપ્તમાં વ્યાખ્યાયિત કરો: અ) ટાર્ગેટ ફંક્શન બ) કોસ્ટ ફંક્શન ક) લોસ ફંક્શન

જવાબ:

ટેબલ: ફંક્શન વ્યાખ્યાઓ

ફંક્શનવ્યાખ્યાહેતુ
ટાર્ગેટ ફંક્શનઇનપુટથી આઉટપુટ સુધીની આદર્શ મેપિંગઆપણે શું શીખવા માગીએ છીએ
કોસ્ટ ફંક્શનએકંદર મોડેલ એરરને માપે છેકુલ પરફોર્મન્સનું મૂલ્યાંકન
લોસ ફંક્શનએક પ્રિડિક્શન માટે એરર માપે છેવ્યક્તિગત પ્રિડિક્શન એરર

વિગતવાર સમજૂતી:

  • ટાર્ગેટ ફંક્શન: f(x) = y, સાચો સંબંધ જેનો આપણે અંદાજ કાઢવા માગીએ છીએ
  • કોસ્ટ ફંક્શન: તમામ લોસ ફંક્શન્સની સરેરાશ, J = (1/n)Σloss(yi, ŷi)
  • લોસ ફંક્શન: એક સેમ્પલ માટે એરર, દા.ત., (yi - ŷi)²

સંબંધ: કોસ્ટ ફંક્શન સામાન્ય રીતે તમામ ટ્રેનિંગ ઉદાહરણોમાં લોસ ફંક્શન્સની સરેરાશ હોય છે.

મેમરી ટ્રીક: “ટાર્ગેટ કોસ્ટ્સ લેસ” - ટાર્ગેટ ફંક્શન આદર્શ છે, કોસ્ટ ફંક્શન એકંદર એરર માપે છે, લોસ ફંક્શન વ્યક્તિગત એરર માપે છે

પ્રશ્ન 3(બ) OR [4 ગુણ]
#

બેલેન્સ્ડ ફિટ, અંડરફિટ અને ઓવરફિટ સમજાવો

જવાબ:

ટેબલ: મોડેલ ફિટિંગ પ્રકારો

ફિટ પ્રકારટ્રેનિંગ એરરવેલિડેશન એરરલક્ષણો
અંડરફિટઊંચોઊંચોખૂબ સાદું મોડેલ
બેલેન્સ્ડ ફિટનીચોનીચોઆદર્શ જટિલતા
ઓવરફિટખૂબ નીચોઊંચોખૂબ જટિલ મોડેલ

વિઝ્યુઅલાઇઝેશન:

graph LR
    A[અંડરફિટ] --> B[બેલેન્સ્ડ ફિટ]
    B --> C[ઓવરફિટ]
    A --> D[હાઇ બાયસ]
    C --> E[હાઇ વેરિયન્સ]
    B --> F[ઓપ્ટિમલ પરફોર્મન્સ]

લક્ષણો:

  • અંડરફિટ: મોડેલ ખૂબ સાદું, પેટર્ન કેપ્ચર કરી શકતું નથી
  • બેલેન્સ્ડ ફિટ: યોગ્ય જટિલતા, સારું જનરલાઇઝેશન
  • ઓવરફિટ: મોડેલ ખૂબ જટિલ, ટ્રેનિંગ ડેટાને યાદ રાખે છે

સોલ્યુશન્સ:

  • અંડરફિટ: મોડેલ જટિલતા વધારવી, ફીચર્સ ઉમેરવા
  • ઓવરફિટ: રેગ્યુલરાઇઝેશન, ક્રોસ-વેલિડેશન, વધુ ડેટા

મેમરી ટ્રીક: “બેલેન્સ બ્રિંગ્સ બેસ્ટ રિઝલ્ટ્સ” - સંતુલિત મોડેલ્સ નવા ડેટા પર શ્રેષ્ઠ પરફોર્મ કરે છે

પ્રશ્ન 4(અ) [3 ગુણ]
#

ક્લાસિફિકેશન લર્નિંગ સ્ટેપ્સ આપો

જવાબ:

ટેબલ: ક્લાસિફિકેશન લર્નિંગ સ્ટેપ્સ

સ્ટેપવર્ણનહેતુ
ડેટા કલેક્શનલેબલ્ડ ઉદાહરણો એકત્રિત કરવાટ્રેનિંગ મટેરિયલ પ્રદાન કરવું
પ્રીપ્રોસેસિંગડેટાને સાફ અને તૈયાર કરવુંડેટા ગુણવત્તા સુધારવી
ફીચર સિલેક્શનસંબંધિત એટ્રિબ્યુટ્સ પસંદ કરવાજટિલતા ઘટાડવી
મોડેલ ટ્રેનિંગટ્રેનિંગ ડેટામાંથી શીખવુંક્લાસિફાયર બનાવવું
ઇવેલ્યુએશનમોડેલ પરફોર્મન્સ ટેસ્ટ કરવુંચોકસાઈ આકારવી
ડિપ્લોયમેન્ટનવી આગાહીઓ માટે ઉપયોગપ્રેક્ટિકલ એપ્લિકેશન

વિગતવાર પ્રક્રિયા:

  1. ડેટાસેટ તૈયાર કરવું ઇનપુટ ફીચર્સ અને ક્લાસ લેબલ્સ સાથે
  2. ડેટા સ્પ્લિટ કરવું ટ્રેનિંગ અને ટેસ્ટિંગ સેટ્સમાં
  3. ક્લાસિફાયર ટ્રેન કરવું ટ્રેનિંગ ડેટાનો ઉપયોગ કરીને
  4. મોડેલ વેલિડેટ કરવું ટેસ્ટ ડેટાનો ઉપયોગ કરીને
  5. પેરામીટર્સ ફાઇન-ટ્યુન કરવા આદર્શ પરફોર્મન્સ માટે

મેમરી ટ્રીક: “ડેટા પ્રેપેરેશન ફેસિલિટેટ્સ મોડેલ એક્સેલન્સ” - ડેટા પ્રેપ, ફીચર સિલેક્શન, મોડેલ ટ્રેનિંગ, ઇવેલ્યુએશન

પ્રશ્ન 4(બ) [4 ગુણ]
#

લીનિયર રિલેશનશિપ ગણતરી

જવાબ:

આપેલ ડેટા:

કલાકો (X)પરીક્ષા સ્કોર (Y)
285
380
475
570
660

લીનિયર રિગ્રેશન ગણતરી:

સ્ટેપ 1: મીન્સ કેલ્ક્યુલેટ કરવા

  • X̄ = (2+3+4+5+6)/5 = 4
  • Ȳ = (85+80+75+70+60)/5 = 74

સ્ટેપ 2: સ્લોપ (b) કેલ્ક્યુલેટ કરવું

  • ન્યુમેરેટર = Σ(X-X̄)(Y-Ȳ) = (2-4)(85-74) + (3-4)(80-74) + (4-4)(75-74) + (5-4)(70-74) + (6-4)(60-74)
  • = (-2)(11) + (-1)(6) + (0)(1) + (1)(-4) + (2)(-14) = -22 - 6 + 0 - 4 - 28 = -60
  • ડિનોમિનેટર = Σ(X-X̄)² = (-2)² + (-1)² + (0)² + (1)² + (2)² = 4 + 1 + 0 + 1 + 4 = 10
  • b = -60/10 = -6

સ્ટેપ 3: ઇન્ટરસેપ્ટ (a) કેલ્ક્યુલેટ કરવું

  • a = Ȳ - b×X̄ = 74 - (-6)×4 = 74 + 24 = 98

લીનિયર ઇક્વેશન: Y = 98 - 6X

અર્થઘટન: સ્માર્ટફોન ઉપયોગના દરેક વધારાના કલાક માટે, પરીક્ષા સ્કોર 6 પોઇન્ટ ઘટે છે.

મેમરી ટ્રીક: “મોર ફોન, લેસ સ્કોર” - ફોનના ઉપયોગ અને ગ્રેડ્સ વચ્ચે નેગેટિવ કોરિલેશન

પ્રશ્ન 4(ક) [7 ગુણ]
#

વર્ગીકરણના પગલાંને વિગતવાર સમજાવો

જવાબ:

ક્લાસિફિકેશન એ સુપરવાઇઝ્ડ લર્નિંગ પ્રક્રિયા છે જે ઇનપુટ ડેટાને પૂર્વનિર્ધારિત કેટેગરીઓ અથવા ક્લાસોમાં સોંપે છે.

વિગતવાર ક્લાસિફિકેશન સ્ટેપ્સ:

1. સમસ્યા વ્યાખ્યા

  • ક્લાસો અને ઉદ્દેશ્યો વ્યાખ્યાયિત કરવા
  • ઇનપુટ ફીચર્સ અને ટાર્ગેટ વેરિએબલ ઓળખવા
  • સફળતાના માપદંડો નક્કી કરવા

2. ડેટા કલેક્શન અને તૈયારી

flowchart TD
    A[રો ડેટા] --> B[ડેટા ક્લીનિંગ]
    B --> C[મિસિંગ વેલ્યુઝ હેન્ડલ કરવું]
    C --> D[આઉટલાયર્સ રીમૂવ કરવા]
    D --> E[ફીચર એન્જિનિયરિંગ]
    E --> F[ડેટા સ્પ્લિટિંગ]

3. ફીચર એન્જિનિયરિંગ

  • ફીચર સિલેક્શન: સંબંધિત એટ્રિબ્યુટ્સ પસંદ કરવા
  • ફીચર એક્સ્ટ્રેક્શન: નવા અર્થપૂર્ણ ફીચર્સ બનાવવા
  • નોર્મલાઇઝેશન: ફીચર્સને સમાન રેન્જમાં સ્કેલ કરવા

4. મોડેલ સિલેક્શન અને ટ્રેનિંગ

ટેબલ: સામાન્ય ક્લાસિફિકેશન અલ્ગોરિધમ્સ

અલ્ગોરિધમશ્રેષ્ઠ માટેફાયદાઓ
ડિસિઝન ટ્રીઇન્ટરપ્રિટેબલ રૂલ્સસમજવામાં સરળ
SVMહાઇ-ડાયમેન્શનલ ડેટાસારું જનરલાઇઝેશન
ન્યુરલ નેટવર્ક્સજટિલ પેટર્ન્સઉચ્ચ ચોકસાઈ
નાઇવ બેઝટેક્સ્ટ ક્લાસિફિકેશનઝડપી ટ્રેનિંગ

5. મોડેલ ઇવેલ્યુએશન

  • કન્ફ્યુઝન મેટ્રિક્સ: વિગતવાર પરફોર્મન્સ એનાલિસિસ
  • ક્રોસ-વેલિડેશન: મજબૂત પરફોર્મન્સ અંદાજ
  • મેટ્રિક્સ: એક્યુરસી, પ્રિસિઝન, રિકોલ, F1-સ્કોર

6. હાયપરપેરામીટર ટ્યુનિંગ

  • આદર્શ પેરામીટર્સ માટે ગ્રિડ સર્ચ
  • પેરામીટર સિલેક્શન માટે વેલિડેશન સેટ

7. અંતિમ ઇવેલ્યુએશન અને ડિપ્લોયમેન્ટ

  • અદ્રશ્ય ડેટા પર ટેસ્ટ કરવું
  • પ્રોડક્શન ઉપયોગ માટે મોડેલ ડિપ્લોય કરવું
  • સમય જતાં પરફોર્મન્સ મોનિટર કરવું

મેમરી ટ્રીક: “પ્રોપર ડેટા મોડેલિંગ ઇવેલ્યુએટ્સ પર્ફોર્મન્સ થોરોલી” - પ્રોબ્લેમ ડેફિનિશન, ડેટા પ્રેપ, મોડેલિંગ, ઇવેલ્યુએશન, પર્ફોર્મન્સ ટેસ્ટિંગ, ટ્યુનિંગ

પ્રશ્ન 4(અ) OR [3 ગુણ]
#

શું k વેલ્યુની પસંદગી KNN અલ્ગોરિધમના પરફોર્મન્સને પ્રભાવિત કરે છે? ટૂંકમાં સમજાવો

જવાબ:

હા, k વેલ્યુ ડિસિઝન બાઉન્ડરી અને મોડેલ જટિલતાને અસર કરીને KNN અલ્ગોરિધમના પરફોર્મન્સને નોંધપાત્ર રીતે પ્રભાવિત કરે છે.

ટેબલ: K વેલ્યુની અસર

K વેલ્યુઅસરપરફોર્મન્સ
નાનું K (k=1)નોઇઝ પ્રત્યે સંવેદનશીલહાઇ વેરિયન્સ, લો બાયસ
મધ્યમ Kસંતુલિત નિર્ણયોઆદર્શ પરફોર્મન્સ
મોટું Kસ્મૂથ બાઉન્ડરીઝલો વેરિયન્સ, હાઇ બાયસ

અસર એનાલિસિસ:

  • k=1: ટ્રેનિંગ ડેટા પર ઓવરફિટ થઈ શકે, આઉટલાયર્સ પ્રત્યે સંવેદનશીલ
  • આદર્શ k: સામાન્ય રીતે વિષમ સંખ્યા, બાયસ-વેરિયન્સ ટ્રેડઓફને સંતુલિત કરે
  • મોટું k: અંડરફિટ થઈ શકે, સ્થાનિક પેટર્ન્સ ગુમાવે

સિલેક્શન વ્યૂહરચના:

  • આદર્શ k શોધવા માટે ક્રોસ-વેલિડેશનનો ઉપયોગ
  • શરૂઆતના બિંદુ તરીકે k = √n ટ્રાય કરો
  • કોમ્પ્યુટેશનલ કોસ્ટ vs ચોકસાઈનો વિચાર કરો

મેમરી ટ્રીક: “સ્મોલ K વેરીઝ, લાર્જ K સ્મૂથ્સ” - નાનું k વેરિયન્સ બનાવે, મોટું k સ્મૂથ બાઉન્ડરીઝ બનાવે

પ્રશ્ન 4(બ) OR [4 ગુણ]
#

SVM મોડેલમાં સપોર્ટ વેક્ટર્સને વ્યાખ્યાયિત કરો

જવાબ:

સપોર્ટ વેક્ટર્સ એ મહત્વપૂર્ણ ડેટા પોઇન્ટ્સ છે જે સપોર્ટ વેક્ટર મશીન અલ્ગોરિધમમાં ડિસિઝન બાઉન્ડરી (હાયપરપ્લેન)ની સૌથી નજીક આવેલા હોય છે.

ટેબલ: સપોર્ટ વેક્ટર લક્ષણો

પાસુંવર્ણનમહત્વ
સ્થાનહાયપરપ્લેનની સૌથી નજીકના પોઇન્ટ્સડિસિઝન બાઉન્ડરી વ્યાખ્યાયિત કરે
અંતરબાઉન્ડરીથી સમાન અંતરમેક્સિમમ માર્જિન
ભૂમિકાહાયપરપ્લેનને સપોર્ટ કરેઆદર્શ વિભાજન નક્કી કરે
સંવેદનશીલતાતેમને રીમૂવ કરવાથી મોડેલ બદલાયમોડેલ સ્ટ્રક્ચર માટે મહત્વપૂર્ણ

મુખ્ય ગુણધર્મો:

  • માર્જિન ડેફિનિશન: સપોર્ટ વેક્ટર્સ ક્લાસો વચ્ચે મેક્સિમમ માર્જિન નક્કી કરે છે
  • મોડેલ ડિપેન્ડન્સી: માત્ર સપોર્ટ વેક્ટર્સ જ અંતિમ મોડેલને અસર કરે છે
  • બાઉન્ડરી ફોર્મેશન: આદર્શ વિભાજક હાયપરપ્લેન બનાવે છે

ડાયાગ્રામ:

AO:X:xxOxxxBX

ગાણિતિક મહત્વ: સપોર્ટ વેક્ટર્સ yi(w·xi + b) = 1 કન્સ્ટ્રેઇન્ટને સંતુષ્ટ કરે છે, જ્યાં તેઓ માર્જિન બાઉન્ડરી પર બરાબર સ્થિત હોય છે.

મેમરી ટ્રીક: “સપોર્ટ વેક્ટર્સ સપોર્ટ ડિસિઝન્સ” - આ વેક્ટર્સ ડિસિઝન બાઉન્ડરીને સપોર્ટ કરે છે

પ્રશ્ન 4(ક) OR [7 ગુણ]
#

લોજિસ્ટિક રિગ્રેશનને વિગતવાર સમજાવો

જવાબ:

લોજિસ્ટિક રિગ્રેશન એ બાઇનરી ક્લાસિફિકેશન માટે વપરાતી સ્ટેટિસ્ટિકલ મેથડ છે જે લોજિસ્ટિક ફંક્શનનો ઉપયોગ કરીને ક્લાસ મેમ્બરશિપની સંભાવનાને મોડેલ કરે છે.

ગાણિતિક આધાર:

સિગ્મોઇડ ફંક્શન: σ(z) = 1 / (1 + e^(-z)) જ્યાં z = β₀ + β₁x₁ + β₂x₂ + … + βₙxₙ

ટેબલ: લીનિયર vs લોજિસ્ટિક રિગ્રેશન

પાસુંલીનિયર રિગ્રેશનલોજિસ્ટિક રિગ્રેશન
આઉટપુટસતત મૂલ્યોસંભાવનાઓ (0-1)
ફંક્શનલીનિયરસિગ્મોઇડ (S-કર્વ)
હેતુઆગાહીક્લાસિફિકેશન
એરર ફંક્શનમીન સ્ક્વેર્ડ એરરલોગ-લાઇકલીહુડ

મુખ્ય ઘટકો:

1. લોજિસ્ટિક ફંક્શન ગુણધર્મો:

  • S-આકારનો કર્વ: 0 અને 1 વચ્ચે સ્મૂથ ટ્રાન્ઝિશન
  • એસિમ્પ્ટોટ્સ: 0 અને 1ની નજીક પહોંચે પણ ક્યારેય પહોંચતું નથી
  • મોનોટોનિક: હંમેશા વધતું ફંક્શન

2. મોડેલ ટ્રેનિંગ:

  • મેક્સિમમ લાઇકલીહુડ એસ્ટિમેશન: જોયેલા ડેટાની સંભાવના વધારતા પેરામીટર્સ શોધવા
  • ગ્રેડિયન્ટ ડિસેન્ટ: પુનરાવર્તક ઓપ્ટિમાઇઝેશન અલ્ગોરિધમ
  • કોસ્ટ ફંક્શન: લોગ-લોસ અથવા ક્રોસ-એન્ટ્રોપી

3. નિર્ણય લેવું:

  • થ્રેશોલ્ડ: બાઇનરી ક્લાસિફિકેશન માટે સામાન્ય રીતે 0.5
  • પ્રોબેબિલિટી આઉટપુટ: P(y=1|x) ક્લાસ સંભાવના આપે છે
  • ડિસિઝન રૂલ: P(y=1|x) > 0.5 હોય તો પોઝિટિવ તરીકે ક્લાસિફાય કરવું

ફાયદાઓ:

  • પ્રોબેબિલિસ્ટિક આઉટપુટ: આગાહીઓમાં વિશ્વાસ પ્રદાન કરે છે
  • કોઈ ધારણાઓ નથી: ઇન્ડિપેન્ડન્ટ વેરિએબલ્સના વિતરણ વિશે
  • ઓછું ઓવરફિટિંગ: જટિલ મોડેલ્સની તુલનામાં
  • ઝડપી ટ્રેનિંગ: કાર્યક્ષમ કોમ્પ્યુટેશન

એપ્લિકેશન્સ:

  • મેડિકલ ડાયગ્નોસિસ
  • માર્કેટિંગ રિસ્પોન્સ આગાહી
  • ક્રેડિટ એપ્રૂવલ નિર્ણયો
  • ઇમેઇલ સ્પામ ડિટેક્શન

કોડ ઉદાહરણ:

from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
probabilities = model.predict_proba(X_test)

મેમરી ટ્રીક: “સિગ્મોઇડ સ્ક્વેશેસ ઇન્ફિનિટ ઇનપુટ” - સિગ્મોઇડ ફંક્શન કોઈપણ વાસ્તવિક સંખ્યાને સંભાવનામાં કન્વર્ટ કરે છે

પ્રશ્ન 5(અ) [3 ગુણ]
#

Matplotlib python library પર ટૂંકી નોંધ લખો

જવાબ:

Matplotlib એ ડેટા સાયન્સ અને મશીન લર્નિંગમાં સ્ટેટિક, એનિમેટેડ અને ઇન્ટરેક્ટિવ વિઝ્યુઅલાઇઝેશન બનાવવા માટેની વ્યાપક Python લાઇબ્રેરી છે.

ટેબલ: Matplotlib મુખ્ય ફીચર્સ

ફીચરહેતુઉદાહરણ
PyplotMATLAB-જેવું પ્લોટિંગ ઇન્ટરફેસલાઇન પ્લોટ્સ, સ્કેટર પ્લોટ્સ
Object-orientedએડવાન્સ્ડ કસ્ટમાઇઝેશનફિગર અને એક્સેસ ઓબ્જેક્ટ્સ
મલ્ટિપલ ફોર્મેટ્સવિવિધ ફોર્મેટમાં સેવ કરવુંPNG, PDF, SVG, EPS
સબપ્લોટ્સએક ફિગરમાં મલ્ટિપલ પ્લોટ્સગ્રિડ એરેન્જમેન્ટ્સ

સામાન્ય પ્લોટ પ્રકારો:

  • લાઇન પ્લોટ: સમય પર વલણો
  • સ્કેટર પ્લોટ: વેરિએબલ્સ વચ્ચે સંબંધ
  • હિસ્ટોગ્રામ: ડેટા વિતરણ
  • બાર ચાર્ટ: કેટેગોરિકલ કમ્પેરિઝન્સ
  • બોક્સ પ્લોટ: સ્ટેટિસ્ટિકલ સમરીઝ

મૂળભૂત ઉપયોગ:

import matplotlib.pyplot as plt
plt.plot(x, y)
plt.xlabel('X લેબલ')
plt.ylabel('Y લેબલ')
plt.title('પ્લોટ ટાઇટલ')
plt.show()

એપ્લિકેશન્સ: ડેટા એક્સ્પ્લોરેશન, મોડેલ પરફોર્મન્સ વિઝ્યુઅલાઇઝેશન, પ્રેઝન્ટેશન ગ્રાફિક્સ

મેમરી ટ્રીક: “Matplotlib મેક્સ પ્રિટી પ્લોટ્સ” - ડેટા વિઝ્યુઅલાઇઝેશન માટે આવશ્યક ટૂલ

પ્રશ્ન 5(બ) [4 ગુણ]
#

દ્વિ-પરિમાણીય ડેટા માટે K-means ક્લસ્ટરિંગ

જવાબ:

આપેલ પોઇન્ટ્સ: {(2,3),(3,3),(4,3),(5,3),(6,3),(7,3),(8,3),(25,20),(26,20),(27,20),(28,20),(29,20),(30,20)}

K-means અલ્ગોરિધમ સ્ટેપ્સ:

સ્ટેપ 1: સેન્ટ્રોઇડ્સ ઇનિશિયલાઇઝ કરવા

  • ક્લસ્ટર 1: (4, 3) - ડાબા જૂથમાંથી પસંદ કરેલું
  • ક્લસ્ટર 2: (27, 20) - જમણા જૂથમાંથી પસંદ કરેલું

સ્ટેપ 2: નજીકના સેન્ટ્રોઇડને પોઇન્ટ્સ સોંપવા

ટેબલ: પોઇન્ટ એસાઇનમેન્ટ્સ

પોઇન્ટC1નું અંતરC2નું અંતરસોંપેલ ક્લસ્ટર
(2,3)2.025.8ક્લસ્ટર 1
(3,3)1.024.8ક્લસ્ટર 1
(4,3)0.023.8ક્લસ્ટર 1
(5,3)1.022.8ક્લસ્ટર 1
(6,3)2.021.8ક્લસ્ટર 1
(7,3)3.020.8ક્લસ્ટર 1
(8,3)4.019.8ક્લસ્ટર 1
(25,20)23.82.0ક્લસ્ટર 2
(26,20)24.81.0ક્લસ્ટર 2
(27,20)25.80.0ક્લસ્ટર 2
(28,20)26.81.0ક્લસ્ટર 2
(29,20)27.82.0ક્લસ્ટર 2
(30,20)28.83.0ક્લસ્ટર 2

સ્ટેપ 3: સેન્ટ્રોઇડ્સ અપડેટ કરવા

  • નવું C1 = ((2+3+4+5+6+7+8)/7, (3+3+3+3+3+3+3)/7) = (5, 3)
  • નવું C2 = ((25+26+27+28+29+30)/6, (20+20+20+20+20+20)/6) = (27.5, 20)

અંતિમ ક્લસ્ટર્સ:

  • ક્લસ્ટર 1: {(2,3),(3,3),(4,3),(5,3),(6,3),(7,3),(8,3)}
  • ક્લસ્ટર 2: {(25,20),(26,20),(27,20),(28,20),(29,20),(30,20)}

મેમરી ટ્રીક: “સેન્ટ્રોઇડ્સ એટ્રેક્ટ નિયરેસ્ટ નેબર્સ” - પોઇન્ટ્સ નજીકના સેન્ટ્રોઇડમાં જોડાય છે

પ્રશ્ન 5(ક) [7 ગુણ]
#

Scikit-learn ના ફંક્શન્સ અને તેનો ઉપયોગ આપો: a. ડેટા પ્રીપ્રોસેસિંગ b. મોડેલ સિલેક્શન c. મોડેલ ઇવેલ્યુએશન અને મેટ્રિક્સ

જવાબ:

Scikit-learn ડેટા પ્રીપ્રોસેસિંગથી લઈને મોડેલ ઇવેલ્યુએશન સુધીના મશીન લર્નિંગ વર્કફ્લો માટે વ્યાપક સાધનો પ્રદાન કરે છે.

a) ડેટા પ્રીપ્રોસેસિંગ ફંક્શન્સ:

ટેબલ: પ્રીપ્રોસેસિંગ ફંક્શન્સ

ફંક્શનહેતુઉદાહરણ ઉપયોગ
StandardScaler()ફીચર્સને નોર્મલાઇઝ કરવામીન દૂર કરવું, યુનિટ વેરિયન્સ
MinMaxScaler()[0,1] રેન્જમાં સ્કેલ કરવુંફીચર સ્કેલિંગ
LabelEncoder()કેટેગોરિકલ લેબલ્સ એન્કોડ કરવાટેક્સ્ટને નંબરમાં કન્વર્ટ કરવું
OneHotEncoder()ડમી વેરિએબલ્સ બનાવવાકેટેગોરિકલ ફીચર્સ હેન્ડલ કરવા
train_test_split()ડેટાસેટ સ્પ્લિટ કરવુંટ્રેનિંગ/ટેસ્ટિંગ વિભાજન

કોડ ઉદાહરણ:

from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

b) મોડેલ સિલેક્શન ફંક્શન્સ:

ટેબલ: મોડેલ સિલેક્શન ટૂલ્સ

ફંક્શનહેતુએપ્લિકેશન
GridSearchCV()હાયપરપેરામીટર ટ્યુનિંગઆદર્શ પેરામીટર્સ શોધવા
RandomizedSearchCV()રેન્ડમ પેરામીટર સર્ચઝડપી પેરામીટર ઓપ્ટિમાઇઝેશન
cross_val_score()ક્રોસ-વેલિડેશનમોડેલ પરફોર્મન્સ ઇવેલ્યુએશન
StratifiedKFold()સ્ટ્રેટિફાઇડ સેમ્પલિંગસંતુલિત ક્રોસ-વેલિડેશન
Pipeline()પ્રીપ્રોસેસિંગ અને મોડેલિંગ ભેગું કરવુંસ્ટ્રીમલાઇન્ડ વર્કફ્લો

કોડ ઉદાહરણ:

from sklearn.model_selection import GridSearchCV
param_grid = {'C': [0.1, 1, 10]}
grid_search = GridSearchCV(SVM(), param_grid, cv=5)
grid_search.fit(X_train, y_train)

c) મોડેલ ઇવેલ્યુએશન અને મેટ્રિક્સ ફંક્શન્સ:

ટેબલ: ઇવેલ્યુએશન મેટ્રિક્સ

ફંક્શનહેતુવપરાશ કેસ
accuracy_score()એકંદર ચોકસાઈસામાન્ય ક્લાસિફિકેશન
precision_score()પોઝિટિવ પ્રિડિક્શન ચોકસાઈફોલ્સ પોઝિટિવ્સ ઘટાડવા
recall_score()ટ્રુ પોઝિટિવ રેટફોલ્સ નેગેટિવ્સ ઘટાડવા
f1_score()પ્રિસિઝન/રિકોલનું હાર્મોનિક મીનસંતુલિત મેટ્રિક
confusion_matrix()વિગતવાર એરર એનાલિસિસભૂલો સમજવી
classification_report()વ્યાપક મેટ્રિક્સસંપૂર્ણ મૂલ્યાંકન
roc_auc_score()ROC કર્વ હેઠળનો વિસ્તારબાઇનરી ક્લાસિફિકેશન

કોડ ઉદાહરણ:

from sklearn.metrics import classification_report
print(classification_report(y_true, y_pred))

વર્કફ્લો ઇન્ટિગ્રેશન:

  • પ્રીપ્રોસેસિંગ: ડેટાને સાફ અને તૈયાર કરવું
  • મોડેલ સિલેક્શન: અલ્ગોરિધમ્સ પસંદ કરવા અને ટ્યુન કરવા
  • ઇવેલ્યુએશન: પરફોર્મન્સનું વ્યાપક આકારણી

મેમરી ટ્રીક: “પ્રીપ્રોસેસ, સિલેક્ટ, ઇવેલ્યુએટ” - Scikit-learn માં સંપૂર્ણ ML વર્કફ્લો

પ્રશ્ન 5(અ) OR [3 ગુણ]
#

NumPy ના મુખ્ય ફીચર્સની યાદી બનાવો

જવાબ:

NumPy (Numerical Python) Python માં વૈજ્ઞાનિક કોમ્પ્યુટિંગ માટેનું મૂળભૂત પેકેજ છે, જે શક્તિશાળી એરે ઓપરેશન્સ અને ગાણિતિક ફંક્શન્સ પ્રદાન કરે છે.

ટેબલ: NumPy ના મુખ્ય ફીચર્સ

ફીચરવર્ણનફાયદો
N-dimensional Arraysકાર્યક્ષમ એરે ઓબ્જેક્ટ્સઝડપી ગાણિતિક ઓપરેશન્સ
Broadcastingવિવિધ સાઇઝના એરે પર ઓપરેશન્સલવચીક કોમ્પ્યુટેશન્સ
Linear Algebraમેટ્રિક્સ ઓપરેશન્સ, ડીકમ્પોઝિશન્સવૈજ્ઞાનિક કોમ્પ્યુટિંગ
Random Numbersરેન્ડમ સેમ્પલિંગ અને ડિસ્ટ્રિબ્યુશન્સસ્ટેટિસ્ટિકલ સિમ્યુલેશન્સ
IntegrationC/C++/Fortran સાથે કામ કરે છેઉચ્ચ પરફોર્મન્સ

મુખ્ય ક્ષમતાઓ:

  • ગાણિતિક ફંક્શન્સ: ત્રિકોણમિતિ, લોગેરિધમિક, એક્સપોનેન્શિયલ
  • એરે મેનિપ્યુલેશન: રિશેપિંગ, સ્પ્લિટિંગ, જોઇનિંગ એરેઝ
  • ઇન્ડેક્સિંગ: એડવાન્સ્ડ સ્લાઇસિંગ અને બૂલિયન ઇન્ડેક્સિંગ
  • મેમરી કાર્યક્ષમતા: ઓપ્ટિમાઇઝ્ડ ડેટા સ્ટોરેજ

એપ્લિકેશન્સ: ડેટા એનાલિસિસ, મશીન લર્નિંગ, ઇમેજ પ્રોસેસિંગ, વૈજ્ઞાનિક સંશોધન

મેમરી ટ્રીક: “નંબર્સ નીડ NumPy’s પાવર” - ન્યુમેરિકલ કોમ્પ્યુટેશન્સ માટે આવશ્યક

પ્રશ્ન 5(બ) OR [4 ગુણ]
#

એક-પરિમાણીય ડેટા માટે K-means ક્લસ્ટરિંગ

જવાબ:

આપેલ ડેટાસેટ: {1,2,4,5,7,8,10,11,12,14,15,17}

3 ક્લસ્ટર્સ માટે K-means અલ્ગોરિધમ:

સ્ટેપ 1: સેન્ટ્રોઇડ્સ ઇનિશિયલાઇઝ કરવા

  • C1 = 3 (પ્રારંભિક મૂલ્યોની આસપાસ)
  • C2 = 9 (મધ્યમ મૂલ્યોની આસપાસ)
  • C3 = 15 (પછીના મૂલ્યોની આસપાસ)

સ્ટેપ 2: નજીકના સેન્ટ્રોઇડને પોઇન્ટ્સ સોંપવા

ટેબલ: પોઇન્ટ એસાઇનમેન્ટ્સ (ઇટરેશન 1)

પોઇન્ટC1નું અંતરC2નું અંતરC3નું અંતરસોંપેલ ક્લસ્ટર
12814ક્લસ્ટર 1
21713ક્લસ્ટર 1
41511ક્લસ્ટર 1
52410ક્લસ્ટર 1
7428ક્લસ્ટર 2
8517ક્લસ્ટર 2
10715ક્લસ્ટર 2
11824ક્લસ્ટર 2
12933ક્લસ્ટર 2
141151ક્લસ્ટર 3
151260ક્લસ્ટર 3
171482ક્લસ્ટર 3

સ્ટેપ 3: સેન્ટ્રોઇડ્સ અપડેટ કરવા

  • નવું C1 = (1+2+4+5)/4 = 3
  • નવું C2 = (7+8+10+11+12)/5 = 9.6
  • નવું C3 = (14+15+17)/3 = 15.33

અંતિમ ક્લસ્ટર્સ:

  • ક્લસ્ટર 1: {1, 2, 4, 5}
  • ક્લસ્ટર 2: {7, 8, 10, 11, 12}
  • ક્લસ્ટર 3: {14, 15, 17}

મેમરી ટ્રીક: “ગ્રુપ્સ ગેદર બાય ડિસ્ટન્સ” - સમાન પોઇન્ટ્સ પ્રાકૃતિક ક્લસ્ટર્સ બનાવે છે

પ્રશ્ન 5(ક) OR [7 ગુણ]
#

Pandas library ના ફંક્શન્સ અને તેનો ઉપયોગ આપો: a. ડેટા પ્રીપ્રોસેસિંગ b. ડેટા ઇન્સ્પેક્શન c. ડેટા ક્લીનિંગ અને ટ્રાન્સફોર્મેશન

જવાબ:

Pandas ડેટા મેનિપ્યુલેશન અને એનાલિસિસ માટેની શક્તિશાળી Python લાઇબ્રેરી છે, જે ઉચ્ચ-સ્તરના ડેટા સ્ટ્રક્ચર્સ અને ઓપરેશન્સ પ્રદાન કરે છે.

a) ડેટા પ્રીપ્રોસેસિંગ ફંક્શન્સ:

ટેબલ: પ્રીપ્રોસેસિંગ ફંક્શન્સ

ફંક્શનહેતુઉદાહરણ
read_csv()CSV ફાઇલો લોડ કરવાpd.read_csv('data.csv')
head()પ્રથમ n રોઝ જોવાdf.head(10)
tail()છેલ્લા n રોઝ જોવાdf.tail(5)
sample()રેન્ડમ સેમ્પલિંગdf.sample(100)
set_index()કોલમને ઇન્ડેક્સ તરીકે સેટ કરવુંdf.set_index('id')

b) ડેટા ઇન્સ્પેક્શન ફંક્શન્સ:

ટેબલ: ઇન્સ્પેક્શન ફંક્શન્સ

ફંક્શનહેતુપ્રદાન કરેલી માહિતી
info()ડેટાસેટ ઓવરવ્યુડેટા ટાઇપ્સ, મેમરી વપરાશ
describe()સ્ટેટિસ્ટિકલ સમરીમીન, std, min, max
shapeડેટાસેટ ડાયમેન્શન્સ(રોઝ, કોલમ્સ)
dtypesડેટા ટાઇપ્સકોલમ ડેટા ટાઇપ્સ
isnull()મિસિંગ વેલ્યુઝનલ્સ માટે બૂલિયન માસ્ક
value_counts()યુનિક વેલ્યુઝ કાઉન્ટ કરવાફ્રીક્વન્સી ડિસ્ટ્રિબ્યુશન
corr()કોરિલેશન મેટ્રિક્સફીચર રિલેશનશિપ્સ

કોડ ઉદાહરણ:

# ડેટા ઇન્સ્પેક્શન
print(df.info())
print(df.describe())
print(df.isnull().sum())

c) ડેટા ક્લીનિંગ અને ટ્રાન્સફોર્મેશન ફંક્શન્સ:

ટેબલ: ક્લીનિંગ ફંક્શન્સ

ફંક્શનહેતુવપરાશ
dropna()મિસિંગ વેલ્યુઝ રીમૂવ કરવાdf.dropna()
fillna()મિસિંગ વેલ્યુઝ ભરવાdf.fillna(0)
drop_duplicates()ડુપ્લિકેટ રોઝ રીમૂવ કરવાdf.drop_duplicates()
replace()વેલ્યુઝ રિપ્લેસ કરવાdf.replace('old', 'new')
astype()ડેટા ટાઇપ્સ બદલવાdf['col'].astype('int')
apply()ડેટા પર ફંક્શન એપ્લાય કરવુંdf.apply(lambda x: x*2)
groupby()ડેટા ગ્રુપ કરવુંdf.groupby('category')
merge()ડેટાસેટ્સ જોઇન કરવાpd.merge(df1, df2)
pivot()ડેટા રિશેપ કરવુંdf.pivot(columns='col')

એડવાન્સ્ડ ઓપરેશન્સ:

  • સ્ટ્રિંગ ઓપરેશન્સ: str.contains(), str.replace()
  • તારીખ ઓપરેશન્સ: to_datetime(), dt.year
  • કેટેગોરિકલ ડેટા: pd.Categorical()

વર્કફ્લો ઉદાહરણ:

# સંપૂર્ણ પ્રીપ્રોસેસિંગ પાઇપલાઇન
df = pd.read_csv('data.csv')
df = df.dropna()
df['category'] = df['category'].astype('category')
df_grouped = df.groupby('type').mean()

ફાયદાઓ:

  • સહજ સિન્ટેક્સ: શીખવા અને વાપરવામાં સરળ
  • પરફોર્મન્સ: મોટા ડેટાસેટ્સ માટે ઓપ્ટિમાઇઝ્ડ
  • ઇન્ટિગ્રેશન: NumPy, Matplotlib સાથે સારી રીતે કામ કરે છે
  • લવચીકતા: વિવિધ ડેટા ફોર્મેટ્સ હેન્ડલ કરે છે

મેમરી ટ્રીક: “Pandas પ્રોસેસેસ ડેટા પર્ફેક્ટલી” - વ્યાપક ડેટા મેનિપ્યુલેશન ટૂલ

સંબંધિત

આઈટી સિસ્ટમ્સનો પરિચય (4311602) - ઉનાળો 2024 સોલ્યુશન
અભ્યાસ-સામગ્રી સોલ્યુશન આઈટી-સિસ્ટમ્સ 4311602 2024 ઉનાળો
મશીન લર્નિંગનાં મૂળતત્વો (4341603) - શિયાળો 2023 સોલ્યુશન
અભ્યાસ-સામગ્રી સોલ્યુશન મશીન-લર્નિંગ 4341603 2023 શિયાળો
મોબાઇલ અને વાયરલેસ કમ્યુનિકેશન (4351104) - ઉનાળો 2024 સોલ્યૂશન
અભ્યાસ-સામગ્રી સોલ્યૂશન મોબાઇલ-કમ્યુનિકેશન 4351104 2024 ઉનાળો
સાયબર સિક્યુરિટી અને ડિજિટલ ફોરેન્સિક્સ (4361601) - ઉનાળુ 2024 સોલ્યુશન
અભ્યાસ-સામગ્રી સોલ્યુશન સાયબર-સિક્યુરિટી 4361601 2024 ઉનાળુ
ડેટાબેસ મેનેજમેન્ટ (4331603) - ઉનાળો 2024 સોલ્યુશન
અભ્યાસ-સામગ્રી સોલ્યુશન ડેટાબેસ-મેનેજમેન્ટ 4331603 2024 ઉનાળો
કમ્પ્યુટર નેટવર્કસ અને ડેટા કમ્યુનિકેશન (4361101) - ઉનાળો 2024 સોલ્યુશન
અભ્યાસ-સામગ્રી સોલ્યુશન કમ્પ્યુટર-નેટવર્કસ 4361101 2024 ઉનાળો