تجزیه و تحلیل داده ها با استفاده از Scala
انتخاب ابزار مناسب برای تجزیه و تحلیل داده ها بسیار مهم است. در انجمن های Kaggle، جایی که مسابقات بین المللی علم داده برگزار می شود، مردم اغلب می پرسند که کدام ابزار بهتر است. R و Python در بالای لیست قرار دارند. در این مقاله ما به شما در مورد یک پشته جایگزین از فناوری های تجزیه و تحلیل داده ها بر اساس Scala خواهیم گفت.
By رومن زیکوف، بنیانگذار/دانشمند داده @ TopDataLab
انتخاب ابزار مناسب برای تجزیه و تحلیل داده ها بسیار مهم است. در Kaggle.com انجمنهایی که مسابقات بینالمللی علوم داده در آن برگزار میشود، مردم اغلب میپرسند کدام ابزار بهتر است. R و Python در بالای لیست قرار دارند. در این مقاله به شما در مورد یک پشته جایگزین از فناوری های تجزیه و تحلیل داده ها، بر اساس زبان برنامه نویسی اسکالا و جرقه پلت فرم محاسباتی توزیع شده
چگونه به آن رسیدیم؟ ما در Retail Rocket یادگیری ماشینی زیادی را روی مجموعه داده های بسیار بزرگ انجام می دهیم. ما قبلاً از یک سری IPython + Pyhs2 (درایور کندو برای پایتون) + Pandas + Sklearn برای توسعه نمونههای اولیه استفاده میکردیم. در پایان تابستان 2014 تصمیمی اساسی گرفتیم که به اسپارک برویم، زیرا آزمایشها نشان دادهاند که در همان پارک سرورها 3-4 برابر بهبود عملکرد خواهیم داشت.
Another advantage is that we can use one programming language for modeling and code that will run on production servers. This was a huge benefit for us, since before we were using 4 languages simultaneously: Hive, Pig, Java, Python. It’s a problem for a small team of engineers.
Spark از کار با Python/Scala/Java از طریق API ها به خوبی پشتیبانی می کند. ما تصمیم گرفتیم Scala را انتخاب کنیم زیرا این زبانی است که Spark به آن نوشته شده است، به این معنی که می توانیم کد منبع آن را تجزیه و تحلیل کنیم و در صورت نیاز اشکالات را برطرف کنیم. همچنین JVM است که Hadoop بر روی آن اجرا می شود.
باید بگویم که انتخاب آسان نبود، زیرا در آن زمان هیچ کس در تیم اسکالا را نمی شناخت.
این یک واقعیت شناخته شده است که برای یادگیری برقراری ارتباط خوب در یک زبان، باید خود را در زبان غرق کنید و تا حد امکان از آن استفاده کنید. بنابراین ما پشته پایتون را به نفع Scala برای مدلسازی و تجزیه و تحلیل سریع دادهها رها کردیم.
اولین قدم یافتن جایگزینی برای نوت بوک های IPython بود. گزینه ها به شرح زیر بود:
- زپلین – an IPython-like notebook for Spark;
- ISpark;
- نوت بوک اسپارک;
- IBM’s Spark IPython Notebook.
- آپاچی تیسنگ معدن
So far the choice has been ISpark because it’s simple – it’s IPython for Scala/Spark. It’s been relatively easy to bolt on HighCharts and R graphics. And we had no problem connecting it to the Yarn cluster.
کار
Let’s try to answer the question: does average purchase amount (AOV) in your online store depend on static customer parameters, which include settlement, browser type (mobile/Desktop), operating system and browser version? You can do this with اطلاعات متقابل.
We use entropy a lot for our recommendation algorithms and analysis: the classical Shannon formula, the Kullback-Leibler divergence, Mutual Information. We even submitted a paper on this topic. There is a separate, albeit small, section devoted to these measures in Murphy’s famous textbook on machine learning.
Let’s analyze it on real Retail Rocket data. Beforehand I copied the sample from our cluster to my computer as a csv file.
داده ها
Here we use ISpark and Spark running in local mode, which means that all calculations are performed locally and are distributed among the processor cores. Everything is described in comments to the code. The most important thing is that in output we get RDD (Spark data structure), which is a collection of case classes of type Row, which is defined in the code. This will allow you to refer to fields via “.”, for example _.categoryId.
منبع: https://www.kdnuggets.com/2021/09/data-analysis-scala.html
- "
- &
- 100
- مزیت - فایده - سود - منفعت
- الگوریتم
- معرفی
- آمازون
- در میان
- تحلیل
- آپاچی
- رابط های برنامه کاربردی
- برنامه های
- مقاله
- پیچ
- مرورگر
- اشکالات
- ساختن
- دسته
- تغییر دادن
- نمودار
- رمز
- نظرات
- مسابقات
- محاسبه
- داده ها
- تحلیل داده ها
- علم اطلاعات
- دانشمند داده
- معامله
- یادگیری عمیق
- توسعه
- DID
- محاسبات توزیع شده
- راننده
- مهندسی
- مورد تأیید
- و غیره
- اکسل
- تجربه
- تجربه
- اکتشاف
- چهره
- خانواده
- FAST
- امکانات
- زمینه
- نام خانوادگی
- رفع
- موسس
- چارچوب
- GitHub
- هادوپ
- اینجا کلیک نمایید
- کندو
- چگونه
- چگونه
- HTTPS
- بزرگ
- اطلاعات
- تعاملی
- بین المللی
- IT
- جاوه
- زبان
- زبان ها
- بزرگ
- یاد گرفتن
- یادگیری
- کتابخانه
- لاین
- لینک
- فهرست
- محلی
- به صورت محلی
- طولانی
- فراگیری ماشین
- ماشین آلات
- ریاضیات
- متریک
- مایکروسافت
- مدل سازی
- محبوبترین
- نوت بوک
- آنلاین
- فروشگاه آنلاین
- باز کن
- منبع باز
- عملیاتی
- سیستم عامل
- گزینه
- سفارش
- دیگران
- مقاله
- مردم
- کارایی
- چشم انداز
- فیزیک
- سکو
- محبوب
- مقام
- تولید
- برنامه نويسي
- پروژه
- خرید
- پــایتــون
- خرده فروشی
- دویدن
- در حال اجرا
- اسکالا
- علم
- دانشمندان
- تنظیم
- توافق
- ساده
- اندازه
- مهارت ها
- کوچک
- So
- نرم افزار
- فضا
- opbevare
- داستان
- ارسال
- تابستان
- پشتیبانی
- پشتیبانی از
- گزینه
- سیستم
- فن آوری
- تست
- نمودار
- زمان
- بالا
- وحدت
- URI
- us
- ارزش
- وب
- ویکیپدیا
- پنجره
- مهاجرت کاری
- X
- سال
- صفر