Exploratory Data Analysis

एंड-टू-एंड मशीन लर्निंग

Joshua Stapleton

Machine Learning Engineer

EDA प्रक्रिया

  • डेटासेट {{1}} की जाँच और विश्लेषण करें
  • डेटासेट को समझें
  • डेटासेट को विजुअलाइज़ करें
  • डेटासेट की विशेषताएँ बताएं / वर्गीकृत करें

मरीजों के हृदय-रोग डेटासेट पर लागू EDA के घटकों का आरेख

एंड-टू-एंड मशीन लर्निंग

अपने डेटा को समझना

df.head()

  • डेटासेट की शुरुआती पंक्तियाँ दिखाता है
  • डेटा की संरचना की झलक देता है
# पहली 5 पंक्तियाँ प्रिंट करें
print(heart_disease_df.head())

हमारे heart disease DataFrame की पहली 5 पंक्तियाँ. df.head() कॉल का परिणाम.

df.info()

  • फीचर्स का सारांश देता है
  • non-null एंट्री और फीचर टाइप दिखाता है
# विवरण प्रिंट करें
print(heart_disease_df.info())

हमारे heart disease DataFrame की समरी जानकारी. df.info() कॉल का परिणाम.

एंड-टू-एंड मशीन लर्निंग

क्लास (im)balance

df.value_counts()

  • प्रत्येक क्लास की यूनिक आवृत्ति गिनता है
  • क्लास: हृदय-रोग की बाइनरी उपस्थिति (1/0)
  • मॉडलिंग के लिए महत्वपूर्ण
# क्लास बैलेंस प्रिंट करें
print(heart_disease_df['target'].value_counts(normalize=True))

हमारे heart disease DataFrame के target कॉलम का क्लास बैलेंस. target पर .value_counts() का परिणाम.

एंड-टू-एंड मशीन लर्निंग

Missing values

  • त्रुटियों का कारण बन सकता है
  • अप्रतिनिधिक, पक्षपाती परिणाम

df.isnull() का उपयोग करें

  • null/खाली/अनुपस्थित मानों की जाँच करता है
  • कॉलम या कॉलमों के समूह पर लागू

उपयोग

# जाँचें कि क्या कॉलम के सभी मान null हैं
print(heart_disease_df['oldpeak'].isnull().all())
True
एंड-टू-एंड मशीन लर्निंग

Outliers

  • असामान्य मान

    • माप त्रुटियाँ
    • डेटा एंट्री त्रुटियाँ
    • दुर्लभ घटनाएँ
  • मॉडल प्रदर्शन को बिगाड़ सकते हैं

    • मॉडल चरम मानों पर सीखता है
    • सामान्य ट्रेंड नहीं पकड़ता
  • कभी-कभी उपयोगी भी:

    • दुर्लभ मान
    • पता लगाना: boxplot या IQR से

एक विजुअलाइज़ेशन जो outlier दिखाता है.

एंड-टू-एंड मशीन लर्निंग

डेटा का विजुअलाइज़ेशन

विजुअलाइज़ेशन दिखाते हैं:

  • सामान्य ट्रेंड्स
  • missing values और outliers

अन्य विजुअलाइज़ेशन प्रकार:

  • Kernel density estimation
  • Empirical cumulative distributions
  • Bivariate distributions
df['age'].plot(kind='hist')
plt.xlabel('Age')
plt.ylabel('Frequency')
plt.show()

हमारे डेटासेट में age का वितरण दिखाने वाला विजुअलाइज़ेशन.

1 https://seaborn.pydata.org/tutorial/distributions.html, https://app.datacamp.com/learn/courses/intermediate-data-visualization-with-seaborn
एंड-टू-एंड मशीन लर्निंग

EDA के लक्ष्य

डेटा समझें

  • क्या कोई पैटर्न है?
  • जैसे: क्या पुरुषों में हृदय-रोग दर अधिक है?

Outliers पहचानें

  • क्या कोई डेटा स्वीकार्य सीमा के बाहर है?
  • क्या गलत या missing मान हैं?

परिकल्पनाएँ बनाएं

  • हमें डेटा से क्या अपेक्षा रखनी चाहिए?

मान्यताएँ जाँचे

  • क्या हमारी अपेक्षाएँ वास्तविकता से मेल खाती हैं?
एंड-टू-एंड मशीन लर्निंग

अभ्यास करते हैं!

एंड-टू-एंड मशीन लर्निंग

Preparing Video For Download...