علم داده

آموزش بهترین ترفندهای برنامه نویسی

معرفی دیتاست های عمومی و رایگان برای پروژه های علم داده-قسمت دوم

در پست قبل 11 دیتاست عمومی و رایگان برای اجرای الگوریتم های مختلف علم داده، داده کاوی و هوش مصنوعی معرفی کردیم. در ادامه در این پست 11 مجموعه داده دیگر را باهم بررسی می کنیم.

  1. متون گوگل

اگر به داده های واقعاً گسترده علاقه مند هستید، مجموعه داده های گوگل فراوانی کلمات و عبارات را بر اساس تعداد زیادی از منابع متنی به صورت سالانه می شمارد. حجم این مجموعه داده حدود 2.2 ترابایت است. اگرچه استفاده از این مورد برای یک پروژه تجسم داده ممکن است دشوار باشد ، اما یک مجموعه داده عالی برای تمیز کردن داده هاست.

  1. داده های یونیسف

یونیسف معتبرترین منبع برای اطلاعات مربوط به زندگی کودکان در سراسر جهان است. مجموعه داده های عمومی این سازمان تغذیه ، ایمن سازی و آموزش و... را شامل می شود که یک منبع عالی برای پروژه های تجسم داده است.

  1. کامنت های سایت ردیت

سایت Reddit یک مجموعه داده بسیار جالب از هر نظری که در این سایت ارائه شده را منتشر کرده است. حجم این مجموعه داده بیش از یک ترابایت است. بنابراین اگر می خواهید یک مجموعه داده کوچکتر برای کار کردن داشته باشید سایت Kaggle نظرات مه 2015 را در سایت خود جمع آوری کرده است.

 

دیتاست عمومی پروژه علم داده و داده کاوی

 

  1. ویکی پدیا

ویکی پدیا علاوه بر پروژه های دیگر بنیاد ویکی مدیا ، دستورالعمل هایی را برای بارگیری متن مقالات انگلیسی زبان ارائه می دهد. بارگیری پایگاه داده ویکی پدیا برای بازتاب و استفاده شخصی در دسترس است و حتی برنامه متن باز مخصوص به خود را دارد که می توانید برای بارگیری کامل ویکی پدیا در سیستم خود از گزینه های متنوع پردازش و تمیز کردن پروژه ها استفاده کنید.

  1. داده های Yelp

Yelp یک مجموعه داده رایگان برای استفاده در اهداف شخصی، آموزشی و دانشگاهی نگهداری می کند. این دیتاست شامل 6 میلیون بررسی است که شامل 189000 کسب و کار در 10 منطقه شهری است. دانشجویان از مشارکت در چالش مجموعه داده های Yelp استقبال می کنند و به شما گزینه های مختلفی برای انواع مختلف پروژه های داده می دهند.

  1. داده های ترند گوگل

گوگل یکی از بهترین مجموعه های داده برای تجزیه و تحلیل را داراست. شما می توانید مجموعه داده دلخواه خود را در قالب فایل CSV دانلود و با استفاده از نرم افزارها یا زبان های برنامه نویسی مختلف تجزیه و تحلیل کنید. همچنین امکان اینکه این داده ها را بر اساس موضوع، مکان و... دسته بندی و مرتب کنید وجود دارد.

  1. سازمان تجارت جهانی

سازمان تجارت جهانی مجموعه داده زیادی برای تجزیه و تحلیل در اختیار علاقه مندان قرار می دهد. کسانی که قصد کسب و کار در حوزه تجارت و پیش بینی های مربوط به آن را دارند از این مجموعه داده استقبال زیادی می کنند زیرا هم فرصت های زیادی برای ورود به علم داده فراهم می کند هم درک افراد را از صنعت تجارت زیادتر خواهد کرد.

  1. صندوق بین المللی پول

این سایت چندین مجموعه داده اکسل رایگان در حوزه شاخص های مختلف اقتصادی کلیدی از تولید ناخالص داخلی تا تورم دارد. گرفتن داده ها از چندین فایل مختلف و تجمیع آن ها، یک روش عالی برای تمیز کردن داده ها است.

 

مجموعه داده رایگان پروژه

 

  1. اداره اطلاعات انرژیِ ایالات متحده

این سایت داده های رایگان و در دسترسی در قالب فایل اکسل و google sheet از طریق افزونه و همچنین از طریق ویجت هایی که تجسم داده های تعاملی را فراهم می کنند، در اختیار افراد قرار می دهد. این مجموعه داده برای پروژه های یادگیری ماشین بسیار خوب عمل می کند.

  1. مجموعه داده تصاویر Tensorflow (CelebA)

برای تمرین در حوزه یادگیری ماشین، به یک مجموعه داده تخصصی مانند TensorFlow نیاز دارید. کتابخانه TensorFlow شامل انواع ابزارها، مدل ها و راهنماهای یادگیری ماشین به همراه مجموعه داده های خود است. CelebA بسیار گسترده و به صورت آنلاین در دسترس عموم است و شامل بیش از دویست هزار تصویر مشهور است.

  1. مجموعه داده متنی Tensorflow

یک مجموعه داده دیگر از کتابخانه Tensorflow به نام  Common Crawl’s Web Crawl Corpus

در بیش از 40 زبان وجود دارد. این دیتاست داده های هفت سال را در بر می گیرد و مبنعی عالی برای ارزیابی عملکرد مجموعه داده های یادگیری ماشین است.

معرفی دیتاست های عمومی و رایگان برای پروژه های علم داده-قسمت اول

در مسیر تبدیل شدن به یک دانشمند داده (data scientist) اولین قدم یافتن یک مجموعه داده مناسب برای تجزیه و تحلیل داده هاست. در طول این مسیر شما باید تصمیم بگیرید مجموعه داده در چه حوزه ای نیاز دارید و میخواهید این مجموعه داده چقدر بزرگ و نامرتب باشد. مرحله تمیز کردن داده ها (data cleaning) جزئی جدایی ناپذیر از علم داده است اما ممکن است تصمیم شما برای اولین پروژه ها این باشد که به جای تمیز کردن داده ها، روی تجزیه و تحلیل آن ها تمرکز کنید.

در این پست مجموعه داده هایی از انواع مختلف و پیچیدگی های گوناگون معرفی می کنیم که به نظر میرسد برای پروژه های اول خوب کار می کنند. این مجموعه داده ها منابع مختلفی را پوشش می دهند مانند داده های جمعیت شناختی، داده های اقتصادی، داده های متنی و داده های شرکتی

 

دیتاست مجموعه داده داده کاوی

 

  1. داده های سرشماری ایالات متحده

اداره سرشماری ایالات متحده مجموعه اطلاعات دموگرافیک را در سطح ایالت ، شهر و حتی کد پستی منتشر می کند. این مجموعه داده یک مجموعه خارق العاده برای دانشجویان علاقه مند به ایجاد تجسم داده های جغرافیایی است و از طریق وب سایت اداره سرشماری و همچنین از طریق API قابل دسترسی است. به طور کلی این داده ها بسیار تمیز و جامع هستند و به این دلیل که نیاز به تمیز کردن دستی آن ها وجود ندارد، برای پروژه های تجسم داده انتخاب خوبی هستند.

 

  1. اطلاعات جرم FBI

داده های جرایم FBI یکی از جذاب ترین مجموعه های داده در این لیست است. اگر به تجزیه و تحلیل داده های سری زمانی علاقه دارید، می توانید از آنها برای ترسیم تغییرات در میزان جرم در سطح کشور طی یک دوره 20 ساله استفاده کنید. همچنین می توانید از نظر جغرافیایی به داده ها نگاه کنید.

 

  1. علت مرگ

مراکز کنترل و پیشگیری از بیماری ها یک پایگاه داده در مورد علت مرگ نگهداری می کنند. داده ها را می توان تقریباً از هر لحاظ تقسیم بندی کرد: سن ، نژاد ، سال و غیره. از آنجا که این مجموعه داده بسیار گسترده است ، استفاده از آن برای پروژه های پردازش داده خوب است.

 

  1. کیفیت بیمارستان ها

مرکز خدمات پزشکی یک پایگاه داده در مورد کیفیت مراقبت در بیش از 4000 بیمارستان دارای گواهی مدیکر در سراسر ایالات متحده را نگهداری می کند و مقایسه های جالبی ارائه می دهد. از آنجا که این داده ها در چندین پرونده پخش می شود و درک کامل آن ممکن است به کمی تحقیق نیاز داشته باشد، می تواند یک پروژه تمیز کردن داده ها باشد.

 

  1. داده های مربوط به سرطان

دولت ایالات متحده داده هایی در مورد بروز سرطان دارد که باز هم بر اساس سن ، نژاد ، جنس ، سال و سایر عوامل تقسیم می شود. این مجموعه داده از برنامه نظارت ، اپیدمیولوژی و نتایج نهایی موسسه ملی سرطان به دست آمده است. داده ها به سال 1975 برمی گردند و 18 پایگاه داده دارند ، بنابراین گزینه های زیادی برای تجزیه و تحلیل خواهند داشت.

 

  1. اداره آمار کار

بسیاری از شاخص های مهم اقتصادی برای ایالات متحده (مانند بیکاری و تورم) را می توان در وب سایت Bureau of Statistics Statistics یافت. بیشتر داده ها را می توان هم از نظر زمان و هم از نظر جغرافیایی تقسیم بندی و برای پروژه های پردازش داده و تجسم داده استفاده کرد.

 

دیتاست علم داده داده کاوی

 

  1. دفتر تحلیل اقتصادی

دفتر تحلیل اقتصادی دارای داده های اقتصادی ملی و منطقه ای از جمله تولید ناخالص داخلی و نرخ ارز است. محدوده عظیمی در گروههای مختلف داده وجود دارد که می توان براساس مکان ، حساب های اقتصادی و موضوعات فهرست کرد. این گروه ها در زیرمجموعه های حتی کوچکتر نیز سازمان یافته اند.

 

  1. اطلاعات اقتصادی صندوق بین المللی پول

چند مجموعه داده مختلف در حوزه آمار اقتصادی جهانی در سایت صندوق بین المللی پول وجود دارد که می توان از آن برای طیف گسترده ای از پروژه ها مانند تجسم یا حتی تمیز کردن داده ها استفاده کرد.

 

  1. پیش بینی شاخص های سهام

پیش بینی قیمت سهام عمده ترین کاربرد تجزیه و تحلیل داده ها و یادگیری ماشین است. یک مجموعه داده مرتبط برای کاوش بازده هفتگی شاخص داو جونز توسط مرکز سیستم های یادگیری ماشین در دانشگاه کالیفرنیا منتشر شده است. این یکی از مجموعه هایی است که مخصوص پروژه های یادگیری ماشین ساخته شده است.

 

  1. داده های دولت انگلیس

در پورتال رسمی داده های دولت انگلیس ده ها هزار مجموعه داده در موضوعاتی مانند جرم، تحصیلات، حمل و نقل و بهداشت موجود است. از آنجا که این مجموعه داده یک منبع داده باز با میلیون ها ورودی است، شما قادر خواهید بود تمیز کردن داده ها را در گروه های مختلف تمرین کنید.

 

دیتاست مجموعه داده رایگان عمومی

 

  1. ایمیل های شرکت آمریکایی Enron

پس از فروپاشی Enron یک مجموعه داده رایگان از تقریباً پانصد هزار ایمیل با متن پیام و فراداده منتشر شد. این مجموعه داده اکنون مشهور است و یک زمینه آزمایش عالی برای تجزیه و تحلیل مرتبط با متن فراهم می کند. همچنین می توانید سایر کاربردهای تحقیقاتی این مجموعه داده را از طریق صفحه این شرکت جستجو کنید.

پایتون بهتر است یا R ؟ کدام زبان برنامه نویسی برای ورود به دنیای علم داده مناسب تر است؟

این روزها علم داده یا data science طرفدارهای بسیار زیادی پیدا کرده و به سرعت در حال گسترش است. اما سوالی که برای بسیاری از برنامه نویسان مطرح می شود این است که کدام زبان برنامه نویسی برای این کار بهتر است؟ قبل از اینکه در مورد زبان های برنامه نویسی صحبت کنیم، بهتر است کمی بیشتر در مورد خود علم داده اطلاع پیدا کنیم.

 

علم داده یا data science چیست؟

اگر در محیط وب جستجویی در مورد علم داده داشته باشید حتما با دنیایی از مقالات طولانی و پیچیده مواجه می شوید اما ما فقط یک جمله برای تعریف آن بیان می کنیم. علم داده هنر جمع آوری، اندازه گیری، ارزیابی، مرتب سازی و آنالیز مجموعه داده (data set) است. این مجموعه داده می تواند بسیار کوچک مثلا در حد شناسایی افراد بازدیدکننده از سایت شما در یک بازه زمانی خاص باشد یا داده های بسیار زیادی را شامل شود مثل بررسی وضعیت هزاران سنسور هوشمند در سراسر یک منطقه.

علم داده سال های زیادی است که پدید آمده ولی نوآوری در زبان های برنامه نویسی مانند پایتون و R باعث گسترش قابلیت های آن در استفاده از نرم افزارهای گوناگون شده و سرعت جمع آوری ، ارزیابی و آنالیز داده ها را به طور چشمگیری افزایش داده است.

 

علم داده data science

 

خب تا اینجا درمورد علم داده صحبت کردیم. در ادامه این مطلب قصد داریم زبان های پایتون و R را از جنبه های مختلفی باهم مقایسه کنیم.

 

جمع آوری داده (data collection)

اولین تفاوت مهم زبان های پایتون و R در حوزه جمع آوری داده است. برای مثال زبان پایتون از انواع فرمت های گوناگون از csv گرفته تا json و حتی جداول sql پشتیبانی می کند. در حوزه توسعه وب هم پایتون این اجازه را می دهد که داده ها را از دنیای وب جمع آوری کنید و در جداولی که خودتان ساختارش را مشخص کرده اید، قرار دهید. در مقابل زبان R برای وارد کردن داده هایی با فرمت excel ، csv و txt بهینه سازی شده است.

 

اکتشاف داده (exploring data)
پایتون یک کتابخانه بسیار قدرتمند برای تحلیل و اکتشاف داده به نام Pandas دارد که می توانید از آن برای عملیات گوناگونی مثل فیلتر کردن داده ها، مرتب سازی و نمایش داده ها به راحتی استفاده کنید. در مقابل زبان R برای آنالیزهای آماری در دیتاست های بزرگ بهینه شده و شامل قابلیت های متنوعی برای انجام عملیات اکتشاف داده است. با استفاده از زبان R شما می توانید توزیع احتمال های مختلفی برای داده هایتان در نظر بگیرید، تست های آماری زیادی به کار ببرید و عملیات های مختلف داده کاوی و یادگیری ماشین اجرا کنید.

 

مدل سازی داده (data modeling)

در زبان پایتون کتابخانه های قدرتمند و استانداردی مانند NumPy برای آنالیز مدل سازی عددی یا SciPy برای محاسبات علمی وجود دارد. اما اگر برنامه نویسان بخواهند همین مدل سازی های علمی را در زبان R انجام دهند، باید از پکیج های خارج از این زبان استفاده کنند. البته ممکن است راه حل هایی در درون خود زبان R هم وجود داشته باشد ولی قطعا پیچیدگی هایی را به برنامه اضافه می کند که در زبان پایتون وجود نداشته است.

 

تصویرسازی داده (data visualization)

تنها حوزه ای که زبان R نسبت به زبان پایتون برتری دارد، حیطه مصورسازی داده است. پایتون ابزارهایی مانند matplotlib دارد که می توانند داده ها را به خوبی نمایش دهد. اما زبان R اساسا برای نمایش نتایج آنالیزهای آماری ساخته شده است و ماژول های گرافیکی آن امکان رسم نمودارها و چارت های مختلف را فراهم می کند.

 

مقایسه زبان پایتون و زبان آر

 

با این تفاسیر کدام زبان برای افراد مبتدی بهتر است؟

زبان پایتون و R هرکدام مزیت های متفاوتی در حوزه علم داده دارند اما سوال اصلی اینجاست که کدام یک برای افراد مبتدی و کارهای اولیه مناسب تر است؟ با توجه به مواردی که گفته شد به نظر میرسد زبان پایتون انتخاب اصلی برای این دسته از افراد باشد. درست است که افراد تازه کار می توانند از زبان R برای اجرای آنالیزهای ساده و پایه ای در مدت زمان کوتاهی استفاده کنند، اما برای این که این زبان و کتابخانه های آن را به درستی به کار ببرند، باید ساعت ها برای یادگیری تلاش کنند. در مقابل زبان برنامه نویسی پایتون یک زبان بسیار ساده و قابل فهم است که نه فقط برای علم داده بلکه برای بسیاری از برنامه ها در حوزه های مختلف، کاربرد زیادی دارد. یکی از روش های یادگیری این زبان برنامه نویسی، مشاهده ویدئوهای آموزشی معتبر است. سایت الگوریتم اول این امکان را فراهم کرده است که افراد با هر سطحی از دانش، بتوانند دوره ی مقدماتی زبان برنامه نویسی پایتون را بگذرانند و پس از کسب نمره قبولی در آزمون ها و پروژه های این دوره، مدرک معتبر دانشگاه شیراز را دریافت کنند.