تحلیل سری زمانی به دادههایی نگاه میکند که در طول زمان جمعآوری شدهاند. برای مثال، یک معیار سری زمانی میتواند مقدار موجودی فروختهشده در یک فروشگاه از یک روز تا روز بعد باشد. اغلب الگوهایی ظاهر میشوند که میتوانند مشکلات را پیشبینی کرده و از آنها جلوگیری کنند. کاهش ناگهانی فروش برای شرکت پرهزینه خواهد بود، بنابراین درک اینکه چه رویدادهایی پیش از این نوع تغییر رخ میدهند و آن را پیشبینی میکنند، مفید خواهد بود. دادههای سری زمانی همهجا هستند. با ابزارمندتر شدن هرچه بیشتر جهان ما، حسگرها و سیستمها جریان بیوقفهای از دادههای سری زمانی منتشر میکنند.
نمونههایی از تحلیل سری زمانی:
فعالیت الکتریکی در مغز
اندازهگیری میزان بارندگی
قیمت سهام
تعداد لکههای خورشیدی
فروش سالانه خردهفروشی
مشترکان ماهانه
ضربان قلب در دقیقه
مفاهیم کلیدی سری زمانی
دادههای سری زمانی مجموعهای از نقاط داده در طول زمان هستند.
تحلیل سری زمانی شناسایی روندها، مانند فصلی بودن، برای کمک به پیشبینی یک رویداد آینده است.
نمونههای سری زمانی
سوابق آبوهوا، شاخصهای اقتصادی و معیارهای تحول سلامت بیماران — همه دادههای سری زمانی هستند. دادههای سری زمانی همچنین میتوانند شامل معیارهای سرور، پایش عملکرد برنامهها، دادههای شبکه، دادههای حسگر، رویدادها، کلیکها و بسیاری دیگر از انواع دادههای تحلیلی باشند. بهترین راه برای درک سری زمانی این است که با برخی دادههای نمونه در InfluxDB Cloud شروع به بررسی کنید.
توجه کنید که چگونه زمان — که در پایین نمودار زیر نشان داده شده است — محور را تشکیل میدهد.

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

نمونه پایش خوشه در زیر، که دادههای نوشتن عملیات دیسک و میزان استفاده را نشان میدهد، برای تیمهای مرکز عملیات شبکه آشنا خواهد بود. به یاد داشته باشید که دادههای پایش، دادههای سری زمانی هستند.

نمونه آشنای دیگر از دادههای سری زمانی، پایش سلامت بیماران است، مانند الکتروکاردیوگرام (ECG)، که فعالیت قلب را برای نشان دادن اینکه آیا بهطور طبیعی کار میکند یا خیر، پایش میکند.

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

تریسها (فهرستی از فراخوانیهای زیرروال که یک برنامه در هنگام اجرا انجام میدهد) نیز دادههای سری زمانی هستند. بر روی نوارهای رنگی در نمودار تریس زیر، میتوانید نمونههایی از دادههای سری زمانی را مشاهده کنید. هدف از تریس کردن، دنبال کردن جریان برنامه و پیشرفت دادهها است. تریس کردن شامل یک نمای گسترده و پیوسته از یک برنامه برای یافتن باگها در یک برنامه یا نرمافزار است.

نمونههای بالا دو نوع متفاوت از دادههای سری زمانی را در بر میگیرند، همانطور که در زیر توضیح داده شده است.
انواع دادههای سری زمانی
دادههای سری زمانی را میتوان به دو نوع دستهبندی کرد:
- اندازهگیریهایی که در فواصل زمانی منظم جمعآوری میشوند (معیارها)
- اندازهگیریهایی که در فواصل زمانی نامنظم جمعآوری میشوند (رویدادها)

در بخش «نمونههای داده سری زمانی» در بالا:
- نمونههای ۳ (پایش خوشه) و ۴ (پایش سلامت) معیارها را نشان میدهند.
- نمونههای ۵ (لاگها) و ۶ (تریسها) رویدادها را نشان میدهند.
از آنجا که در فواصل نامنظم رخ میدهند، رویدادها غیرقابل پیشبینی هستند و نمیتوان آنها را مدلسازی یا پیشبینی کرد، زیرا پیشبینی فرض میکند که آنچه در گذشته رخ داده است شاخص خوبی برای آنچه در آینده رخ خواهد داد، است.
یک نمونه داده سری زمانی میتواند هر توالی اطلاعاتی باشد که در فواصل زمانی مشخص (چه منظم و چه نامنظم) ثبت شده است. نمونههای رایج داده میتوانند از ضربان قلب تا قیمت واحد کالاهای فروشگاهی باشند.
دادههای سری زمانی خطی در برابر غیرخطی
یک سری زمانی خطی سریای است که در آن، برای هر نقطه داده Xt، آن نقطه داده میتواند بهعنوان ترکیبی خطی از مقادیر یا تفاوتهای گذشته یا آینده در نظر گرفته شود. سریهای زمانی غیرخطی توسط معادلات دینامیکی غیرخطی تولید میشوند. آنها ویژگیهایی دارند که نمیتوانند توسط فرایندهای خطی مدلسازی شوند: واریانس متغیر با زمان، چرخههای نامتقارن، ساختارهای مرتبه بالاتر، آستانهها و شکستها. در اینجا چند ملاحظه مهم هنگام کار با دادههای سری زمانی خطی و غیرخطی آمده است:
- اگر یک معادله رگرسیون از قوانین یک مدل خطی پیروی نکند، پس باید یک مدل غیرخطی باشد.
- رگرسیون غیرخطی میتواند طیف عظیمی از منحنیها را برازش دهد.
- ویژگی تعریفکننده برای هر دو نوع مدل، شکلهای تابعی هستند.
تحلیل سری زمانی
تحلیل دادههای سری زمانی امکان استخراج آمار معنادار و سایر ویژگیهای داده را فراهم میکند. همانطور که از نام آن پیداست، دادههای سری زمانی مجموعهای از مشاهدات هستند که با تکرار اندازهگیریها در طول زمان ایجاد شدهاند. زمانی که این اطلاعات را در اختیار دارید، میتوانید آنها را روی یک نمودار ترسیم کنید و درباره آنچه دقیقاً در حال ردیابی هستید بیشتر بیاموزید.
یک نمونه بسیار ساده از تحلیل سری زمانی میتواند افزایش و کاهش دما در طول یک روز باشد. با ردیابی دمای خاص محیط بیرون در فواصل ساعتی به مدت ۲۴ ساعت، شما تصویری کامل از افزایش و کاهش دما در منطقه خود دارید. سپس، فرض کنید میدانید که روز بعد از نظر عواملی مانند بارش و رطوبت نسبتاً مشابه خواهد بود. در این صورت، میتوانید حدس آگاهانهتری درباره دما در زمانهای خاص بزنید. این تحلیل یک نمونه سادهسازیشده است، بله — اما ساختار زیربنایی بدون توجه به موضوع یکسان است.

چنین تحلیلی مستلزم شناسایی الگوی یک مجموعه داده سری زمانی مشاهدهشده است. زمانی که الگو مشخص شد، میتوان آن را تفسیر کرد، با دادههای دیگر ادغام نمود و برای پیشبینی استفاده کرد (که برای یادگیری ماشین اساسی است). یادگیری ماشین نوعی از هوش مصنوعی است که به برنامههای کامپیوتری اجازه میدهد واقعاً «یاد بگیرند» و در طول زمان «باهوشتر» شوند، بدون آنکه بهطور صریح برای انجام این کار برنامهنویسی شده باشند.
اهمیت تحلیل سری زمانی
با پیادهسازی دستگاههای متصل بیشتر و انتظار جمعآوری و پردازش دادهها بهصورت بلادرنگ، توانایی کار با دادههای سری زمانی بهطور فزایندهای مهم شده است. این موضوع در چند سال آینده با نقش پررنگتر اینترنت اشیا، هوش مصنوعی و دستگاهها در تمام جنبههای زندگی ما، اهمیت بیشتری پیدا خواهد کرد.
در هسته خود، اینترنت اشیا اصطلاحی است که برای توصیف شبکهای از میلیاردها دستگاه متصل بهکار میرود — که همگی در تمام زمانها در حال ایجاد و اشتراکگذاری داده هستند. در زمینه شخصی، ما قبلاً شاهد آغاز این گذار در خانههای «هوشمند» بودهایم. ترموستات شما میداند که وقتی دما به حد خاصی رسید، باید پردهها را پایین بکشد تا به کنترل دما کمک کند. یا هاب خانه هوشمند شما میداند که به محض خروج آخرین فرد از خانه، باید تمام درها را قفل کرده و تمام چراغها را خاموش کند. بدون یک شبکه بههمپیوسته از حسگرها که دائماً اطلاعات را مبادله میکنند، رسیدن به این نقطه ممکن نبود — که این امر تحلیل سری زمانی را حیاتیتر میکند.
در میان موارد دیگر، تحلیل سری زمانی میتواند بهطور مؤثر:
- نشان دهد که نقاط داده ثبتشده در طول زمان ممکن است دارای نوعی روند یا الگو باشند که احتمالاً در غیر این صورت کشف نمیشد.
- درک بهتری از گذشته در اختیار کاربران قرار دهد و آنها را در موقعیتی قرار دهد که آینده را بهتر پیشبینی کنند.
این نکته آخر بسیار مهم است و بخش بزرگی از دلیل استفاده از تحلیل سری زمانی در اقتصاد، آمار و حوزههای مشابه است. فرض کنید دادههای تاریخی یک سهم خاص را دارید و میدانید که این سهم بهطور سنتی در مواجهه با رویدادهای خاص جهانی چگونه عمل کرده است. در این صورت، میتوانید قیمت آن را هنگام وقوع رویدادهای مشابه در آینده بهتر پیشبینی کنید. اگر بدانید رکود اقتصادی در راه است، میتوانید از این بینش برای اتخاذ تصمیم بهتر و آگاهانهتر درباره خرید سهم استفاده کنید.
از آنجا که تحلیل بر اساس دادههایی است که در برابر زمان ترسیم شدهاند، اولین گام ترسیم داده و مشاهده هرگونه الگویی است که ممکن است در طول زمان رخ دهد.
روشهای تحلیل سری زمانی
تحلیل سری زمانی روشی برای تحلیل مجموعهای از نقاط داده جمعآوریشده در یک بازه زمانی است. در تحلیل سری زمانی، نقاط داده در فواصل زمانی منظم طی یک بازه زمانی مشخص ثبت میشوند، نه بهصورت متناوب یا تصادفی.
تحلیل سری زمانی استفاده از روشهای آماری برای تحلیل دادههای سری زمانی و استخراج آمار و ویژگیهای معنادار درباره داده است. TSA به شناسایی روندها، چرخهها و تغییرات فصلی برای کمک به پیشبینی یک رویداد آینده کمک میکند. عوامل مرتبط با TSA شامل ایستایی، فصلی بودن و خودهمبستگی هستند.
تحلیل سری زمانی میتواند برای مشاهده اینکه یک متغیر مشخص چگونه در طول زمان تغییر میکند مفید باشد (در حالی که خود زمان، در دادههای سری زمانی، اغلب متغیر مستقل است). تحلیل سری زمانی همچنین میتواند برای بررسی اینکه تغییرات مرتبط با نقطه داده انتخابشده چگونه با تغییرات سایر متغیرها در همان بازه زمانی مقایسه میشوند، استفاده شود.
روشهای پیشبینی سری زمانی
پیشبینی سری زمانی از اطلاعات مربوط به مقادیر تاریخی و الگوهای مرتبط برای پیشبینی فعالیت آینده استفاده میکند.
روشهای پیشبینی سری زمانی شامل:
- تحلیل روند
- تحلیل نوسانات چرخهای
- تحلیل الگوهای فصلی
مانند تمام روشهای پیشبینی، موفقیت تضمینشده نیست. یادگیری ماشین اغلب برای این منظور استفاده میشود. همچنین پیشینیان کلاسیک آن: ETS، ARIMA و هولت-وینترز.
سؤالات متداول درباره دادههای سری زمانی
دادههای سری زمانی کجا ذخیره میشوند؟
دادههای سری زمانی اغلب در حجمهای عظیم وارد سیستم میشوند و به پایگاه دادهای هدفساخته برای مدیریت این مقیاس نیاز دارند. به همین دلیل، دادههای سری زمانی بهترین حالت در یک پایگاه داده سری زمانی ذخیره میشوند که بهطور خاص برای مدیریت معیارها و رویدادهای دارای برچسب زمانی ساخته شده است.
نمودار سری زمانی چیست؟
نمودارهای سری زمانی صرفاً ترسیم دادههای سری زمانی بر روی یک محور (معمولاً Y) در برابر زمان بر روی محور دیگر (معمولاً X) هستند. این نمودارها اغلب روندها یا الگوها را بهشکلی قابلدسترستر و شهودیتر نمایش میدهند.
