حصة المهندسين الأمازون: كيفية التقاط وإنشاء ومجموعات البيانات بناء ذات جودة عالية

AI تقنية الصحافة البيانات هو جوهر كل مشاكل التعلم الآلي. إذا لم تتمكن من الوصول إلى البيانات، ثم كل التقدم المحرز الآن باستخدام آلة التعلم أمر مستحيل. ومع ذلك، فإن معظم عشاق منهجية التعلم الآلي اليوم تركز على اكتساب المعرفة (والذي هو بداية جيدة، ولكن ليس الحال دائما).

عندما منهجية إلى حد ما، حل مشكلة من مجموعات البيانات المتاحة فقط للحد من إمكاناتها.

لحسن الحظ، ونحن نعيش في عصر الكثير من البيانات المتاحة على الشبكة، نحن بحاجة فقط المهارات اللازمة لتحديد واستخراج مجموعات البيانات ذات مغزى. في هذا الصدد، والأمازون المهندس ريشابه ميسرا المشتركة تجاربه حول كيفية تحديد والزحف وبناء ذات جودة عالية مجموعات البيانات تعلم الآلة، لخصت شبكة لى فنغ جمعتها منظمة العفو الدولية تقنية مراجعة على النحو التالي.

التركيز في هذه المقالة هو شرح كيفية بناء مجموعات البيانات ذات جودة عالية من خلال أمثلة واقعية ومقتطفات الشفرة.

وهذه الورقة تشير إلى ثلاث مجموعات من ذات جودة عالية جمع البيانات، وهي الملابس أوصى مجموعات البيانات حجم، ومجموعات البيانات وفئة الأخبار مجموعات بيانات الاختبار الساخرة لشرح نقاط مختلفة. لفترة وجيزة بعد شرح كل مجموعة البيانات هو كل شيء.

  • مجموعات البيانات حجم الملابس الموصى بها

وأوصى حجم الملابس ونوبة من التوقعات هو المفتاح لتحسين تجربة العملاء للتسوق والحد من إعادة صياغة المنتج. تم تجميعها من ModCloth بيانات يحتوي على زبائنها لشراء الملابس ردود الفعل مناسبة، فضلا عن معلومات أخرى مثل التقييمات والتعليقات وفئات من المعلومات، مثل مقاييس العملاء. ومن السمات الرئيسية لهذه المجموعة البيانات لتحديد القرار في المنتج الملابس الجانب مناسبة مفيدة.

  • أخبار فئات مجموعات البيانات

هذه مجموعة من البيانات يحتوي 2012-2018 حوالي 200،000 عنوان تم الحصول عليها من HuffPost. أنه يحتوي على معلومات مفصلة عن فئات مثل الأخبار، وعناوين الأخبار، وصفا موجزا للخبر، وتاريخ النشر. مجموعات البيانات التي يمكن أن تستخدم لأغراض مختلفة، مثل بطاقة تعريف المقالات الإخبارية لا يمكن تقفي أثرها، لتحديد نوع اللغة المستخدمة في فئات مختلفة الأخبار وما شابه ذلك.

  • ومن المفارقات، ومجموعات بيانات الاختبار

معظم الدراسات السابقة على كشف المفارقة هي استخدام مجموعات البيانات على أساس إشراف تويتر هاشتاج للجمع، ولكن هذه البيانات والمعلومات في وجود التسمية الضوضاء واللغة. للتغلب على هذه القيود، ويتم جمع هذه المجموعة البيانات من المواقع الإخبارية اثنين: TheOnion وHuffPost. أنتجت TheOnion نسخة ساخرة من الأحداث الجارية، ويقال HuffPost والأخبار الساخرة غير حقيقي.

حقيقة مثيرة للاهتمام هو: هذه مجموعات البيانات على مجموعه Kaggle أكثر من 250 الثناء، 50K + وجهات النظر، وتنزيل 6000 + 50 + لمقدم.

الخطوة 1: بيانات البحث

هذه المرحلة تتطلب الصبر، لأنك قد تحتاج إلى نطاق واسع البحث في الويب. ولكن لا تحتاج قلق. هنا، وسوف توفر بعض التوجيهات في تجربتي، لجعل البحث أكثر انتظاما وكفاءة.

إذا كنت ترغب في جمع وبناء مجموعة بيانات ذات جودة عالية، فإنك قد تكون في واحدة من حالتين:

  • كنت تبحث عن مجموعة من البيانات لحل مشاكل محددة .

  • كنت تبحث عن مجموعة من البيانات التي يمكن استخدامها في حل مشاكل مثيرة للاهتمام .

وفقا لحالتك، فإن المبادئ التوجيهية التالية تكون مفيدة.

المشكلات المعروفة

تناسب الملابس اجمع من السخرية وبيانات الاختبار مجموعات لحل مشاكل محددة.

الخطوات التالية قد تساعد في البحث في مجموعة البيانات في هذه الحالة:

التحلل حل المشكلة لتحديد البيانات المطلوبة لمشاكل إشارة: هذا هو معظم خطوة هامة. في حالة حجم الموصى بها من المشكلة، إذا كنا نريد للعملاء يوصي حجم الملابس، ثم معظم البيانات الهامة ستكون هوية المستخدم، معرف المنتج، وحجم الشراء وحجم شراء العملاء هي ردود الفعل المناسبة في هذا الشأن. معلومات أخرى، مثل فئة المنتج، وقياس العملاء، وأفضل ولكن ليس من الضروري.

البحث في تقديم كل المعلومات اللازمة عن المصدر على شبكة الإنترنت: وهنا، ومهارات البحث جوجل الخاص بك في متناول اليدين. استخدامه لتصفح مواقع متعددة ومعرفة ما اذا كان توفير البيانات اللازمة. للملابس تتناسب مع حجم مجموعة البيانات، مواقع مثل زابوس يبدو واعدا، لكن عدم وجود معلومات أساسية عن حجم الشراء، وModCloth لا توفر جميع البيانات الأساسية (على الرغم من الحاجة لجعل وبعض التعديلات الإضافية ستكون أكثر عن ذلك لاحقا).

إذا لم تتمكن من العثور على مصدر بيانات واحد، معرفة ما إذا كان يمكنك الجمع بين بيانات من مصادر متعددة لبناء مجموعة من البيانات: مجموعة البيانات يتم الجمع بين البيانات الكشف عن السخرية من مصادر متعددة لتشكيل سبيل المثال الكامل والكمال من مجموعة نوعية جيدة من البيانات. لأننا نعلم أن المشكلة (عثور على السخرية) ونوع البيانات التي تريد (غير السخرية والتهكم النص)، لذلك نحن لا نصر على استخدام مصدر بيانات لتوفير كافة المعلومات. وسوف TheOnion مصممة على الحصول على النص المصدر من السخرية، السخرية وغير نصية، اخترت موقع الأخبار الحقيقية HuffPost.

تحقق ما إذا كان مصدر البيانات يحتوي على بيانات تاريخية كافية للسماح لك لبناء مجموعة بيانات كافية كبير: هذا قبل البدء في جمع البيانات للنظر وهذه نقطة مهمة جدا. إذا لم يكن لدى موقع بيانات كافية، على سبيل المثال، لمتاجر التجزئة على الانترنت من دون الكثير من المنتجات المتاحة، أو إذا كان موقع الأخبار التي لا تحتوي على أرشيف القصص القديمة، حتى إذا قمت بتجميع هذه البيانات، فإنه لا تعطيك فائدة كبيرة. لذلك، للعثور على مصدر البيانات وتوفير بيانات كافية لبناء مجموعة بيانات كبيرة بما فيه الكفاية.

كيفية تحسين جمع البيانات؟ يمكنك الجمع بين بيانات من مصادر أخرى لجعلها أكثر إثارة للاهتمام؟ بعد التحقق من جميع النقاط المذكورة أعلاه، نلقي نظرة على كيفية زيادة تحسين جمع البيانات. التفكير في ما إذا كان يمكن الجمع بين مزيد من المعلومات حول بعض من صفات مصادر بيانات مختلفة، هذه المعلومات القوة الخصائص مساعدة الناس على بناء لنموذجهم.

مشكلة غير معروفة

عند تفسير هذه الأنواع من الحالات، مجموعة أخبار فئة البيانات هو خيار جيد. أنا لا أعرف ما الذي جعل situation're تبحث عن معقد أكثر من ذلك بقليل، ولكن عندما كنت تصفح الويب المذكرة النقاط التالية يمكن أن تساعد في التعرف على المجموعة التالية من بيانات مثيرة للاهتمام:

وسواء كان مصدر البيانات لا يحتوي على إشارة البيانات تقدر قيمتها بحوالي / توقع؟ : عند تحليل الموقع، يرجى النظر في ما إذا كان الموقع يوفر أي تقييم قيمتها معلومات مثيرة للاهتمام. قد يكون بعض الأشياء مباشرة، أو مع نوع من المعلومات على الموقع عن الأشياء.

وهناك مثال بسيط، لاحظت على HuffPost، يتم تصنيف كل قصة (مثل الرياضة والسياسة، الخ)، ولكن أعتقد أنه سيتم تصنيف التنبؤ مسألة مثيرة للاهتمام. للحصول على معلومات عن نوع القضية، وأود أن تعتبر HuffPost عنوان غير السخرية الجملة المفارقة مجموعة بيانات كشف (على افتراض أنها تقارير إخبارية الحقيقية)، وعنوان TheOnion ينظر إليها على أنها جملة ساخرة.

وسواء كان مصدر البيانات يحتوي على ما يكفي من الفوقية، الفوقية ما إذا كان من المفيد في توقع النتائج؟ بمجرد اختيار قيمتها التنبؤ من البيانات، يجب عليك التأكد من الموقع لتزويدك بمعلومات كافية عن المعلومات والبيانات يمكن استخدامها للتنبؤ، إن لم يكن، يمكنك استخدام هذه المعلومات لمصادر البيانات الأخرى لمجموعة البيانات. على سبيل المثال، إذا كان لدينا أي بيانات التعريف عن البضائع، ثم السعر المتوقع للمنصة التجارة الإلكترونية على التأثير قد لا تكون جيدة جدا. من أجل جعل جيدة مجموعة البيانات تكامل البيانات يحتاج معلومات كافية.

إذا كان الموقع يحتوي على بيانات تاريخية كافية، حتى تتمكن من بناء مجموعة بيانات كافية كبير؟ هذا هو نفس الجزء في أول 4:00 من "مشاكل معروفة."

وتتوقع نتائج ما هو التطبيقات الهامة أو؟ لافتة من مجموعة بيانات ذات جودة عالية، ويمكن أن تستخدم أيضا في حل المشاكل الحقيقية للاهتمام، أو يمكن أن توفر بعض الأفكار المثيرة للاهتمام في هذه الظاهرة. على سبيل المثال، استنادا إلى مجموعة البيانات التي شيدت تصنيف فئة أخبار يمكن أن تساعد في تحديد أي أسلوب الكتابة النثرية (سواء كانت سياسية، والنكتة، وما إلى ذلك)، مقالات لمساعدة علامة لا يمكن تقفي أثرها، وتوفير نظرة ثاقبة على نمط مختلف من أنواع مختلفة من كتابة الأخبار وهلم جرا.

تلك الشيكات عبر لمعرفة ما إذا كانت البيانات المتاحة بالفعل. إذا كان الأمر كذلك، ما إذا كانت مجموعة البيانات لإضافة أي محتوى على مجموعات البيانات الموجودة؟ هذه الخطوة مهمة جدا، لذلك كنت أعلم أنك ساهمت شيء فريد من نوعه وليس شيء موجود بالفعل. من هذه النقطة، بحث بسيط على جوجل بما فيه الكفاية.

كيفية تحسين جمع البيانات؟ يمكنك الجمع بين بيانات من مصادر أخرى لجعلها أكثر إثارة للاهتمام؟ هذا هو نفس الجزء في أول 5:00 من "مشاكل معروفة."

الخطوة 2: استخراج البيانات

وبمجرد الانتهاء من تضييق نطاق مصادر البيانات، يمكننا أن نبدأ لاستخراج البيانات.

قبل أن زحف البيانات، الرجاء قراءة شروط الموقع للتأكد من أنك لن الزحف والتوزيع العام للبيانات في انتهاك لسيادة القانون.

لأنه من الصعب أن أشرح هذا القسم دون إعطاء أمثلة عملية، ولذا فإنني سوف تستخدم مخطوطتي في الحصول على البيانات من ModCloth مثال لتوضيح وجهات نظر مختلفة.

فهم بنية الموقع

أول شيء فعله هو على دراية بنية الموقع.

في ModCloth، ونحن نرى أن هناك فئات مختلفة من الملابس على رأس الموقع: فساتين، قمم، قيعان، وهلم جرا. إذا كنا انقر على واحدة من هذه الفئات (مثل الجزء العلوي من الشكل أعلاه)، سترى المنتجات المعروضة في شكل شبكة. الصورة يعرض صفحة 100، منتجات أخرى يمكن الوصول إليها عن طريق التمرير بالقرب من أعلى يمين الصفحة سكرولر.

المقبل، ونحن انقر على أحد المنتجات لمراقبة كل صفحة المنتج هو ما يبدو. في الجزء العلوي، لدينا البيانات الوصفية المرتبطة بالمشروع، في الجزء السفلي، لدينا تعليقات على هذا المنتج.

ونلاحظ أن كل صفحة تحتوي على الحد الأقصى من 10 المشاركات. إذا كان التعليق أكثر من 10، وسوف نرى على زر "NEXT" في الزاوية اليمنى السفلى.

عندما نضغط على زر "NEXT" عرض التعليقات ال 10 المقبلة. ومع ذلك، قد تلاحظ أن الرابط لم يتغير، وهو ما يعني أنه بالإضافة إلى انقر زر "التالي" في الخارج، لا توجد وسيلة أخرى للوصول إلى متابعة تعليقات. يمكننا أن نرى أيضا أنه في الصفحات التالية، سيكون هناك زر "السابق". سنعرف لماذا هذه التفاصيل مهمة جدا لاستخراج البيانات.

لدينا الآن فهم جيد إلى حد ما من بنية الموقع. مرة أخرى، وهدفنا هو لاستخراج التعليقات لكل منتج من كل فئة.

روابط المنتجات استخراج

نظرا لعدد محدود من الفئات، ليست هناك حاجة إلى نصوص الكتابة لاستخراج الروابط، يمكننا جمع هذه الروابط يدويا. في هذا القسم، سوف نركز على واحدة من فئات الملابس: تي شيرت الروابط استخراج المنتج:

https://medium.freecodecamp.org/how-to-scrape-websites-with-python-and-beautifulsoup-5946935d93fe

لفهم أساسيات استخراج البيانات، يرجى زيارة بلوق التالية: كيفية استخراج البيانات BeautifulSoup الموقع استخدام pytho و

ونحن أيضا استخدام أداة أتمتة متصفح السيلينيوم لاستخراج البيانات.

لفهم كيفية السيلينيوم، يرجى زيارة بلوق التالية:

استخراج البيانات السيلينيوم باستخدام موقع الويب:

https://medium.com/the-andela-way/introduction-to-web-scraping-using-selenium-7ec377a8cf72

لذا، دعونا تبدأ في:

وحتى الآن، ونحن نعلم أنه في كل فئة، ومنتجات في شكل 100 في عرض مجموعة، يمكننا تمرير الصفحة لالتمرير للوصول إلى كافة المنتجات. أولا، نحن بحاجة إلى فهم كيفية ربط صفحات مختلفة تختلف. بشكل عام، ينصح الصورة التالية لاتباع نمط من الروابط.

الصفحة 1

الصفحة 2

الصفحة 3

ثم، لكل صفحة، نحن بحاجة إلى استخراج وصلات إلى صفحات للمشاريع الفردية. للقيام بذلك، انتقل إلى واحد من العناصر انقر بزر الماوس الأيمن فوق المشروع وانتقل إلى "تفتيش" الخيار. انتقل لأسفل القائمة لتحديد العنصر الذي يحتوي على وصلات < ل > ملاحظة الطبقة المغلق وعناصرها. في الصورة أدناه، ونحن نرى في مثالنا، والطبقة هي الروابط الظاهري. على الأرجح، فإن جميع الروابط المنتجات الأخرى أيضا استخدام نفس فئات نمط تصميم (التحقق مرة واحدة فقط).

مع هذه المعلومات، يمكننا كتابة التعليمات البرمجية التالية لاستخراج الروابط بلايز لجميع فئات المنتجات:

مدمج webdriver السيلينيوم استيراد

من BS4 BeautifulSoup استيراد

# تحميل برنامج التشغيل من

path_to_chromedriver = './chromedriver2.exe "

المتصفح = webdriver.Chrome (executable_path = path_to_chromedriver)

عناوين =؛ مكافحة = 0؛ tops_link =

## منذ الفئة بلايز ديها 7 صفحات، تصل إلى كل اتباع نمط معين،

## نحن يمكن أن تخلق روابط لصفحات التالية طريقة.

لأنني في مجموعة (7):

urls.append ( 'https://www.modcloth.com/shop/tops؟sz=102&start='+str (العداد))

مكافحة + = 102

## استخراج الروابط للمنتجات في كل صفحة

للرابط في عناوين:

## فتح رابط

browser.get (رابط)

## هادف وقت الانتظار للسماح للموقع للحصول على محملة بالكامل

time.sleep (4)

## الحصول على محتوى الصفحة

المحتوى = browser.page_source

شوربة = BeautifulSoup (المحتوى، "lxml")

product_links =

## استخراج كافة "على" عناصر مع "الإبهام الارتباط" فئة من الصفحة

data_links = soup.find_all ( "أ"، { "الطبقة": "الإبهام الارتباط"})

## من كل < ل >  العنصر استخراج URL

لأنني في data_links:

product_links.append (ط )

tops_link.extend (product_links)

## هادف وقت الانتظار لتجنب إرسال طلبات في تتابع سريع

time.sleep (10)

كما لاحظت، والسيناريو لانتظار الوقت المناسب للتأكد من أننا لا تقوم بإرسال طلب إلى موقع بكثرة. عادة، والطلب الثاني هو المناسب، ولكن نظرا لModCloth هو موقع صغير (الأمازون قد لا تكون كبيرة جدا)، لا يمكننا الانتظار لفترة أطول. وفي هذا الصدد يمكنك استخدام حكمك.

تعليقات جلب

والآن بعد أن قمنا بإنشاء وصلة لكل منتج، ثم يمكننا أن نفهم على نحو أفضل تعليق كل منتج. أولا، فإننا سوف تحقق كل تعليق المقابلة HTML. مرة أخرى، انقر بزر الماوس الأيمن عرض ثم انقر فوق "تفتيش".

ونلاحظ أن تدرج كل الاستعراض في < مقالة > العنصر. دعونا استكشاف < مقالة > العناصر المكونة. نحن يمكن تحقيق ذلك عن طريق النقر على السهم بجانب عنصر من عناصر هذا. عندما كنا تحوم < مقالة > عندما العناصر الفردية للعلامات، وسلط الضوء على عرض المقابلة على الصفحة.

على سبيل المثال، في الصورة أعلاه، وقد وصفته ب "العلاقات العامة الثالثة المحتوى كتلة العلاقات العامة، العلاقات العامة الأكورديون انهارت-الأكورديون" في الصف < قسم > للطي عنصر المقابلة لحجم والبيانات ردود الفعل المرتبطة بقياس العملاء. اطلع على السيناريو التالي لمعرفة كيفية استخراج < مقالة > تفاصيل داخل جميع المحتويات ذات الصلة.

من selenium.common.exceptions استيراد NoSuchElementException، WebDriverException

استيراد نمباي كما أرستها

استيراد عشوائي

## وظيفة مساعد لتوحيد اثنين من القواميس

مواطنه merge_two_dicts (س، ص):

ض = x.copy # تبدأ مع مفاتيح العاشر والقيم

z.update (ص) # يعدل ض مع مفاتيح ص والقيم ولا يوجد عوائد

عودة ض

scraped_data =

## لكل منتج في الفئة بلايز

لiterr في مجموعة (0، ليون (tops_link)):

الحرف الأول = 0

URL = tops_link  

## فتح URL في المتصفح

محاولة:

browser.get (رابط)

time.sleep (4)

يستثنى WebDriverException: ## عندما انتزعت URL غير صالح

طباعة ( 'رابط غير صالح'، iterr)

استمر

## الحصول على محتوى صفحة ويب

المحتوى = browser.page_source

شوربة = BeautifulSoup (المحتوى، "lxml")

## تكرار حتى ندير صفحات مراجعة

بينما (صحيح):

## الحصول على محتوى صفحة ويب

المحتوى = browser.page_source

شوربة = BeautifulSoup (المحتوى، "lxml")

## استخراج تفاصيل المعلقين

reviewer_details = soup.find_all ( "شعبة"، { "الطبقة": "العلاقات العامة-الثالث-مراجع-تفاصيل PR-RD-الداخلية-الجانبية للمقاولات والأنف والحنجرة كتلة"})

## اسم استخراج المراجعين

reviewers_name =

لمراجع في reviewer_details:

## في ModCloth، يظهر اسم المؤلفين "حسب REVIEWER_NAME"

## تقسيم في النهاية هو لإزالة "بواسطة" فقط للحصول على اسم المراجع الفعلي

. REVIEWER_NAME = reviewer.find ( "ع"، { "الطبقة": "العلاقات العامة-الثالث-تفاصيل العلاقات العامة الثالثة في تأليف-لقب"}) الشركة المصرية للاتصالات xt.split ( '\ ن') .strip

reviewers_name.append (REVIEWER_NAME)

## استخراج "isVerified" معلومات

isVerified = soup.find_all ( "فترة"، { "الطبقة": "العلاقات العامة-الثالث-التأشير النص"})

## استخراج البيانات التي تناسب ردود الفعل والعملاء القياسات (review_metadata)

review_data = soup.find_all ( "المادة"، { "الطبقة": "العلاقات العامة-مراجعة"})

review_metadata_raw =

لأنني في مجموعة (ليون (review_data)):

review_metadata_raw.append (review_data .find ( "شعبة"، { "الطبقة": "العلاقات العامة-الأكورديون-conten ر"}))

## عناصر استخراج HTML التي تحتوي على بيانات التعريف مراجعة

review_metadata_elements =

## استخراج البيانات الفعلية من عناصر HTML

review_metadata =

لعنصر في review_metadata_elements:

إذا العنصر هو بلا:

review_metadata.append (لا يوجد)

استمر

## < دينارا >  عناصر تحتوي على اسم الحقل بيانات وصفية مثل "صالح"، "طول" الخ

## < دد >  عناصر تحتوي على استجابة المراجع لتلك الحقول الوصفية مثل "صغيرة"، "مجرد حق" الخ

review_metadata.append ()

## نص مقتطف مراجعة

REVIEW_TEXT =  

review_summary =  

## معرف استخراج البند

ITEM_ID = soup.find ( "شعبة"، { "الطبقة": "المنتج رقم"}). العثور على ( "فترة") النص.

## فئة استخراج البند

محاولة:

فئة = soup.find ( "أ"، { "الطبقة": "التفصيلي عنصر"}) text.lower.

يستثنى AttributeError: ## إذا الفئة غير موجودة، العنصر غير متوفر

time.sleep (15 + random.randint (0،10))

استراحة

## استخراج أحجام المنتج المتاحة

product_sizes =

item_info = { "فئة": فئة "ITEM_ID": ITEM_ID "product_sizes": product_sizes}

## توحيد جميع البيانات المستخرجة

## تجاهل السجلات التي لم يكن لديك أي الفوقية مراجعة وردود فعل مناسبا هو نال سيج الضروري بالنسبة لنا

scraped_data.extend ( )

## إذا كانت الصفحة الحالية هي واحدة الأولي، فإنه يحتوي على زر التالي فقط (السابق مفقود)

إذا الحرف الأول == 0:

محاولة:

الحرف الأول = 1

## تنفيذ اضغط على NEXT من خلال الاستفادة من كسباث من NEXT

browser.execute_script ( "الحجج . انقر،" browser.find_element_by_xpath ( '// * / تذييل / شعبة / جانبا / زر')) time.sleep (10 + random.randint (0،5))

إلا NoSuchElementException: ## لا NEXT زر الحاضر، أقل من 10 نظرات time.sleep (15 + random.randint (0،10))

استراحة

آخر:

محاولة:

## تنفيذ اضغط على NEXT من خلال الاستفادة من كسباث من NEXT

## إذا لاحظت وكسباث من NEXT مختلف هنا لأن أيضا مسبقا أرسلت زر السابق الآن

browser.execute_script ( "الحجج . انقر،" browser.find_element_by_xpath ( '// * / تذييل / شعبة / جانبا / زر '))

time.sleep (10 + random.randint (0،5))

إلا NoSuchElementException: ## زر NEXT لا، لا أكثر صفحات اليسار

time.sleep (15 + random.randint (0،10))

استراحة

## حفظ البيانات المستخرجة محليا

np.save ( './ scraped_data_tops.npy، scraped_data)

بعضها يحتاج إلى أن يكون على علم:

فعلناه معالجة الاستثناء في كثير من الأماكن. عندما واجهت مشاكل عند تشغيل البرنامج النصي، وستضاف هذه العمليات تدريجيا إليها.

السطر الأول هو المسؤول عن 30-97 سوف تكون ذات فائدة لتحليل البيانات المستخرجة وقاموس الشكل. عموما، الناس يفضلون وحاليا تحليل يتم تخزين البيانات المستخرجة محليا، ولكن نظرا لحد التخزين للكمبيوتر المحمول، وأنا أفضل أن تحليل الانترنت.

السيلينيوم في الصف الأول 99-119 مفيد. نظرا للا يغير من الوضع URL صفحة مختلفة، وبالتالي فإن الطريقة الوحيدة لالتنقل هو محاكاة انقر فوق زر. وقد استخدمنا كسباث زر "NEXT" لإكمال المهمة نفسها.

كسباث يمكن استخدامها لعناصر المستند XML التنقل والصفات. XPath لتحديد العناصر، انتقل إلى فحص وفوق الحق ونسخ كسباث كود HTML كما هو موضح أدناه.

كسباث طريقة للحصول على عنصر HTML؛ في هذه الحالة، كما زر "NEXT"

هذا يكمل عملية استخراج وتحليل البيانات، ثم سنقوم بتسجيل البيانات كما هو موضح أدناه:

ويبدو أن عملنا قد اكتملت. ومع ذلك، لا تزال هناك العديد من الخطوات لبناء مجموعة البيانات النهائية.

الخطوة 3: إنشاء مجموعة بيانات

وحتى الآن، لدينا نوعية البيانات لديها بعض مجالا للتحسين في عدة أبعاد:

تنظيف البيانات

حتى البيانات المستخرجة حتى الآن قد تكون مفقودة بعض المعلومات أو بيانات السجل الأساسي، وشكرا بيانات يمكن التخلص منها بشكل آمن. على سبيل المثال:

هناك الكثير من التعليقات حول ModCloth، التي لا تحتوي على ما إذا كان أو شراء المنتجات تناسب حجم المعلومات ردود الفعل. على الرغم من أننا تخلى خط التعليق 64-66 لا يحتوي على أي معلومات ذات صلة، ولكن هناك بعض التعليقات تحتوي على معلومات حول البيانات ولكن لا تحتوي على معلومات أساسية معينة.

ونلاحظ أن التعليقات على الناس ModCloth أي معلومات وليست مرتبطة مع هوية محددة. هذا تحد آخر بالنسبة لنا، لأن هوية المستخدم هو البيانات الأساسية. لحل هذه المشكلة، يمكننا أن المعلقين لقب ويتم متصلا قيم هدفا لتشكيل سلسلة واحدة. يمكن سلاسل تضم على الأقل ثلاثة حقول المعلومات المطلوبة، مجموعة البيانات للحد من التدخل بسبب المراجعين مختلفة للحصول يتم إنشاء نفس ID. ثم يمكنك بأمان حذف غير موجود جميع سجلات هذه المعلومات.

وبالإضافة إلى ذلك، هناك بعض السجلات تظهر أي أبعاد حجم كتالوج المشتريات (ربما تقريرا خطأ)، ولذا فإننا التخلي عن هذه السجلات.

مجهول

لحماية الخصوصية، جعلت الحاجة للحصول على تفاصيل المستخدم ومقالات مجهولة. البيانات ModCloth المنصوص عليها في بعض الخصائص الحساسة، مثل البيانات حجم الجسم، يمكننا إنشاء عشوائيا هوية المستخدم والرقم البند. إذا كان لنا أن استخراج البيانات من معلومات غير متاحة للعامة، فإنه يصبح أكثر أهمية.

التقييس

قد يكون هناك بعض البيانات السمة، وهذا يعني في كل هذه الخصائص قد لا يكون بالضبط نفس السجل. في هذه الحالة، نحن بحاجة إلى استخدام الحدس (أو بعض خط الأساس) لتوحيد سمات مجموعة البيانات. على سبيل المثال، قد يكون من المنتجات المختلفة على ModCloth وحدات مختلفة الحجم (مثل الجينز في الولايات المتحدة والصين لديهما وحدات حجم مختلفة تماما). وهكذا، قبل أن توحيد جميع البيانات المسجلة، مجموعة البيانات غير متوفرة بشكل كبير.

طريقة واحدة لمعالجة هذه المشكلة هو استخدام الجدول الحجم على ModCloth، وحجم الذي يحول وحدات مختلفة من معيار موحد. ومع ذلك، بعض المنتجات لا تزال بعض وحدات حجم غير معروف. يمكننا استخدام الحدس لدينا لتحويلها إلى مقياس معياري، أو حذف التعليقات الشك البيانات.

منظم

بعد أن نكون قد أكملت كل من ما قبل العلاج، ونحن بحاجة إلى القيام به هو تحويل هياكل البيانات إلى تنسيق مشترك، مثل CSV، سلمان، وما إلى ذلك، حتى أن الناس مهتمة في مجموعة البيانات يمكن بسهولة قراءة واستيراد البيانات.

استنتاج

بعد الانتهاء من جميع الخطوات المذكورة أعلاه، قد يتم تسجيل البيانات على النحو التالي:

أفضل طريقة لاستيعاب المعرفة هي التدريب العملي على، بحيث يمكن للطلاب الآن العثور على مجموعة من البيانات، وبدء ممارسة يد ذلك!

عن طريق:

https://towardsdatascience.com/a-practical-guide-to-collecting-ml-datasets-476f1ecf5e35

انقر على قراءة النص الأصلي ، سينضم KDD أعلى التبادل فريق والتعلم والتواصل مع أقرانهم

الصين دليل الاقتصادية: تطور من ثلاث مراحل والسلسلة الصناعية العالمية "غوس نموذج" اقتصاد

الصغرى قناة دائرة من الأصدقاء لمستخدمي بطاقات سهم ضرب لكمة تشكو مباشرة الحظر

هذه البيانات مستوى قياسي منخفض يبلغ نصف قرن! ارتفعت الاسهم الامريكية، كان هناك حسن تشغيل المحرك ألف سهم مايو كم الصعاب

أسعار العقارات سوتشو، والدوران على حد سواء ارتفع عشرة مليارات الأراضي بالضرب الآن! لتنظيم سوق الصفقة الجديدة

تسويق مراقبة | بغض النظر عمن يجلس على العرش نهائي الحديد، وفاز كل ستاربكس

دائرة الرقابة الداخلية 9.0.0 أطلقت نسخة الموسيقى QQ رسميا واجهة المستخدم الجديدة

المرأة بدعوة: صن يانغ Shuhui استراحة القضاة، U19 الصين 4-0 فيتنام

الرعد إطلاق سراح 2019 أرباح الربع الأول وايرادات قدرها 41300000 $

ناروهيتو من إمبراطور اليابان اعتلى العرش في 1 مايو على "أوامر و" تايم

رقم واحد زائد 7 برو لفتح موعد بضع ساعات كسر 240000

احتجزت قوات الجيش الشعبي لتحرير المتمركزة في ماكاو الثكنات السادسة عشرة افتتاح الحدث

الروبوت Q كود اسم الحلوى على جوجل التنفيذيين الحيرة