পাইথন ব্যবহার করে এক্সফোনেনশিয়াল স্মুথিং মডেল তৈরি করা: সাধারণ এক্সফোনেনশিয়াল স্মুথিং, হল্ট এবং হোল্ট-উইন্টারস

প্রথম 12 মাসে কতগুলি আইফোন এক্সএস বিক্রি হবে? এলোন মাস্ক একটি লাইভ শোতে আগাছা ধূমপানের পরে টেসলার চাহিদা কী? এই শীত কি গরম থাকবে? (আমি কানাডায় থাকি)) যদি আপনি এই সমস্যাগুলি সম্পর্কে কৌতূহলী হন তবে ক্ষতিকারক স্মুথিং আপনাকে মডেলগুলি তৈরি করে ভবিষ্যতের দিকে নজর দেওয়ার সুযোগের প্রতিশ্রুতি দেয়।

ক্ষতিকারক স্মুথ পদ্ধতিগুলি পূর্ববর্তী পর্যবেক্ষণগুলিতে তাত্পর্যপূর্ণভাবে ওজন হ্রাস করে। যত সাম্প্রতিক পর্যবেক্ষণ, ওজন তত বেশি হবে। উদাহরণস্বরূপ, এটি গত বছরের পর্যবেক্ষণগুলির চেয়ে গত মাসের তুলনায় ভারী পর্যবেক্ষণগুলি বেশি ভারী করে তোলে।

পূর্ব থেকে আজকের দিনে সূচকযুক্ত স্মুথ ওজন

এই নিবন্ধটি ব্যাখ্যা করে কীভাবে পাইথন এবং পরিসংখ্যানের মডেলগুলি ব্যবহার করে সাধারণ ক্ষতিকারক স্মুথিং, হল্ট এবং হোল্ট-উইন্টার্স মডেল তৈরি করা যায়। প্রতিটি মডেলের জন্য, বিক্ষোভটি নিম্নলিখিতভাবে সংগঠিত করা হয়:

স্ট্যাটাসমডেলস একটি পাইথন মডিউল যা বিভিন্ন স্ট্যাটিস্টিকাল মডেল বাস্তবায়নের জন্য ক্লাস এবং ফাংশন সরবরাহ করে। আমাদের নীচে এটি পাইথন কোডে আমদানি করতে হবে।

statsmodels.tsa.api আমদানি এক্সপেনশিয়াল স্মোথিং, সিম্পিএক্সপস স্মোথিং, হোল্ট

আমাদের উদাহরণস্বরূপ উত্স ডেটা সেট করা আছে একটি মার্কিন শহরে 2007-01 থেকে 2017-12 সময়কালে হোম বিক্রয় সংখ্যা।

রিয়েল এস্টেট বিক্রয় জন্য উত্স ডেটা সেট

লাইন চার্ট ব্যবহার করুন যেখানে বছরের পর বছর ধরে ডেটা পরিবর্তন হয়।

df.plot.line (x = 'YEAR_MONTH_SALE_DATE', y = 'COUNT_YEAR_MONTH_SALE_SAMPLE') plt.show ()

আমরা 10 বছরের historicalতিহাসিক ডেটা (2007-2016) এর ভিত্তিতে 2017 সালে সম্পত্তি বিক্রয় পূর্বাভাস করব।

সরল সূচকীয় স্মুথিং (এসইএস)

স্পষ্ট প্রবণতা বা seasonতু বিন্যাস ছাড়াই ডেটা পূর্বাভাস দেওয়ার জন্য এসইএস একটি ভাল পছন্দ। পূর্বাভাসগুলি ওজনিত গড়গুলি ব্যবহার করে গণনা করা হয়, অর্থাৎ বৃহত্তম ওজন সর্বাধিক সাম্প্রতিক পর্যবেক্ষণের সাথে যুক্ত হয়, তবে সবচেয়ে ছোট ওজনগুলি প্রাচীনতম পর্যবেক্ষণের সাথে যুক্ত থাকে:

স্মুথিং প্যারামিটার 0 α 1।

ওজন হ্রাসের হার স্মুথিং প্যারামিটার by দ্বারা নিয়ন্ত্রিত হয় α যখন large বড় হয় (অর্থাত্ 1 এর নিকটবর্তী), সাম্প্রতিক পর্যবেক্ষণগুলি আরও ভারী হয়। দুটি চরম মামলা রয়েছে:

  • α = 0: ভবিষ্যতের সমস্ত মানগুলির পূর্বাভাস historicalতিহাসিক তথ্যগুলির গড় (বা "গড়") সমান, যা গড় পদ্ধতি হিসাবে পরিচিত known
  • α = 1: কেবলমাত্র শেষ পর্যবেক্ষণের মান হিসাবে সমস্ত পূর্বাভাস সেট করুন, যা পরিসংখ্যানকে নিষ্পাপ পদ্ধতি বলে।

এখানে আমরা সাধারণ তাত্পর্যপূর্ণ মসৃণকরণের তিনটি প্রকার:

  1. ফিট 1 এ আমরা মসৃণ প্যারামিটার α = 0.2 দিয়ে স্পষ্টভাবে মডেলটি বর্ণনা করি
  2. ফিট 2 এ আমরা α = 0.6 পছন্দ করি
  3. ফিট 3 এ আমরা স্বয়ংক্রিয় অপ্টিমাইজেশন ব্যবহার করি, যার সাহায্যে পরিসংখ্যানের মডেলগুলি স্বয়ংক্রিয়ভাবে আমাদের জন্য অনুকূলিত একটি মান সন্ধান করে। এটি প্রস্তাবিত পন্থা।
# সরল সূচকীয় স্মুথিং ফিট 1 = সিম্পলএক্সপসমোথিং (সালাদেটা) fit 'ও', রঙ = 'নীল', কিংবদন্তি = সত্য) ফিট 1.ফিটেডালয়েস.প্লট (চিহ্নিত করা = 'ও', রঙ = 'নীল') ফিট 2 = সিম্পিএক্সপসমোথিং (সেলডাটা)। ফিট (স্মুথিং_ লেভেল = 0.6, অপ্টিমাইজড = মিথ্যা) fcast2 = ফিট 2.ফোরকাস্ট (12) .নাম (আর '$ \ আলফা = 0.6 $') # অ্যাকশন fcast2.plot (চিহ্নিত = 'ও', রঙ = 'লাল', কিংবদন্তি = সত্য) ফিট 2.ফিটেডালুয়েস.প্লট (চিহ্নিত করা = 'ও', রঙ = 'লাল') ফিট 3 = সিম্পিএক্সপসমোথিং (সালাদেটা) fitফিট () fcast3 = ফিট 3.ফোরস্টকাস্ট (12) ']) # অ্যাকশন fcast3.plot (চিহ্নিতকরণ =' ও ', রঙ =' সবুজ ', কিংবদন্তি = সত্য) ফিট 3.ফিটেডালিউস.প্লট (চিহ্নিত =' ও ', রঙ =' সবুজ ') plt.show ()

এসইএসের সাথে 2017-01 থেকে 2017-12 সময়কালের জন্য সম্পত্তি বিক্রয়ের পূর্বাভাস।

সাধারণ তাত্পর্যপূর্ণ মসৃণতার সাথে পূর্বাভাস

হল্টের পদ্ধতি

১৯৫ সালে ট্রেন্ডগুলির সাথে ডেটা পূর্বাভাসের অনুমতি দেওয়ার জন্য হোল্ট প্রসারিত সহজ তাত্পর্যপূর্ণ স্মুথিং (কোনও স্পষ্ট প্রবণতা বা মৌসুমতা ছাড়াই ডেটার সমাধান) প্রসারিত করে। হল্ট পদ্ধতিতে পূর্বাভাস সমীকরণ এবং দুটি স্মুথিং সমীকরণ (একটি বিমানের জন্য এবং একটি ট্রেন্ডের জন্য) অন্তর্ভুক্ত করে:

এখানে 0 α ≤ 1 হ'ল লেভেল স্মুথিং প্যারামিটার এবং 0 β * 1 হ'ল ট্রেন্ড স্মুথিং প্যারামিটার।

দীর্ঘমেয়াদী রোগ নির্ধারণের জন্য, হোল্ট পদ্ধতির সাথে প্রজ্ঞাটি অনির্দিষ্টকালের জন্য বৃদ্ধি বা হ্রাস পাবে। এই ক্ষেত্রে আমরা ড্যাম্পড ট্রেন্ড পদ্ধতিটি ব্যবহার করি, যার পূর্বে পূর্বাভাসটি "বন্য" হতে না পারে তার জন্য 0 <ϕ <1 এর স্যাঁতসেঁতে প্যারামিটার রয়েছে।

এখানেও আমরা থামার পদ্ধতির তিনটি রূপ নিই:

  1. ফিট 1 এ আমরা স্মুথিং প্যারামিটার α = 0.8, β * = 0.2 দিয়ে স্পষ্টভাবে মডেলটি সরবরাহ করি।
  2. ফিট 2-তে আমরা একটি অ্যাডিটিভ হল্ট মডেল (ডিফল্ট সেটিংস) এর পরিবর্তে ক্ষতিকারক মডেল ব্যবহার করি।
  3. ফিট 3-তে আমরা হোল্টের অ্যাডিটিভ মডেলের একটি স্যাঁতসেঁতে সংস্করণ ব্যবহার করি তবে স্যাঁতসেঁতে প্যারামিটার the এর অপ্টিমাইজেশনকে অনুমতি দেয়, যখন মানগুলি α = 0.8, β * = 0.2 এর জন্য স্থির থাকে।
ফিট 1 = হল্ট (সালাদেটা) (স্মুথিং_এলভেল = 0.8, স্মুথিং_স্লোপ = 0.2, অপ্টিমাইজড = মিথ্যা) fcast2 = ফিট 2.ফরেস্টকাস্ট (12) .নাম ("এক্সপেনশনাল ট্রেন্ড") ফিট 3 = হল্ট (সালাদেটা, স্যাঁতসেঁতে = সত্য) fcast3 = ফিট 3.ফরেস্টক্ট (12) .নাম ("অ্যাডিটিভলি স্যাঁতসেঁতে প্রবণতা") ফিট 1.ফিটেডালয়েস.প্লট (মার্কার = "ও", রঙ = 'নীল') fcast1.plot (রঙ = 'নীল', চিহ্নিত = "ও" , কিংবদন্তি = সত্য) ফিট 2.ফিটভ্যাল্যুয়েস.প্লট (চিহ্নিতকারী = "ও", রঙ = 'লাল') fcast2.plot (রঙ = 'লাল', মার্কার = "ও", কিংবদন্তি = সত্য) ফিট 3.ফিটেডালুয়েস.প্লট (মার্কার = "ও", রঙ = 'সবুজ') fcast3.plot (রঙ = 'সবুজ', চিহ্নিতকরণ = "ও", কিংবদন্তি = সত্য) plt.show ()
থামার পরে ভবিষ্যদ্বাণী করা

হল্ট-শীতকালীন পদ্ধতি

(পিটার উইন্টারস হল্টের ছাত্র ছিলেন। হল্ট-উইন্টার্স পদ্ধতিটি প্রথমে পিটার পরামর্শ করেছিলেন এবং তারপরে তারা একসাথে এটি কাজ করেছিলেন। কী সুন্দর এবং দুর্দান্ত সংযোগ। প্লেটো যেমন সক্রেটিসের সাথে সাক্ষাত করেছিলেন।)

হল্ট-উইন্টার্স পদ্ধতি প্রবণতা এবং মৌসুমী সহ ডেটাগুলির জন্য উপযুক্ত যা মরসুমে স্মুথিং প্যারামিটার ধারণ করে contain এই পদ্ধতির দুটি রূপ রয়েছে:

  • সংযোজন পদ্ধতি: মৌসুমের ওঠানামা সিরিজের প্রায় স্থির থাকে।
  • একক পদ্ধতিতে: মৌসুমের ওঠানামা সিরিজের স্তরে আনুপাতিকভাবে পরিবর্তিত হয়।

এখানে আমরা সম্পূর্ণ হোল্ট-উইন্টার্স পদ্ধতি চালাই, যার মধ্যে একটি ট্রেন্ড উপাদান এবং একটি aতু উপাদান রয়েছে। স্ট্যাটাস মডেলগুলি নিম্নলিখিত উদাহরণগুলি সহ সমস্ত সংমিশ্রণের অনুমতি দেয়:

  1. ফিট 1 এ আমরা অ্যাডিটিভ ট্রেন্ড, পিরিয়ড_র দৈর্ঘ্যের অ্যাডিটিভ সিজন = 4 এবং একটি বক্স-কক্স রূপান্তর ব্যবহার করি।
  2. ফিট 2-তে আমরা সংযোজনীয় প্রবণতা, পিরিয়ড_এর দৈর্ঘ্যের গুণক = 4 এবং একটি বক্স-কক্স রূপান্তর ব্যবহার করি।
  3. ফিট 3-তে আমরা অ্যাডিটিভ স্যাঁতসেঁতে ঝোঁক, ngthতু_ দৈর্ঘ্য = 4 এবং একটি বক্স-কক্স রূপান্তরকরণের অ্যাডিটিভ মরসুমী প্রবণতা ব্যবহার করি।
  4. ফিট 4-এ আমরা সংযোজনযুক্ত স্যাঁতসেঁতে প্রবণতা, মৌসুম_ দৈর্ঘ্য = 4 এবং একটি বক্স-কক্স রূপান্তর সহ বহু গুণগত মৌসুমগুলি ব্যবহার করি।
ফিট 1 = এক্সফোনেনশিয়াল স্মোথিং (সালাদেটা, মৌসুমী_পরিবর্তনকাল = 4, প্রবণতা = 'যোগ', মৌসুমী = 'যোগ')। ফিট (use_boxcox = সত্য) ফিট 2 = এক্সপোনেনশিয়াল স্মোথিং (সালাদেটা, মৌসুমী_প্রিয়াদি = 4, প্রবণতা = 'যোগ', মৌসুমী = 'মুল')। ফিট (use_boxcox = সত্য) ফিট 3 = এক্সপোনেনশিয়াল স্মোথিং (সালাদেটা, মৌসুমী_প্রিয়াদি = 4, প্রবণতা = 'যোগ', মৌসুমী = 'অ্যাড', স্যাঁতসেঁতে = সত্য) ফিট use = 'যুক্ত', মৌসুমী = 'মুল', স্যাঁতসেঁতে = সত্য)। ফিট (ব্যবহার_বক্সকক্স = সত্য)
ফিট 1.ফিটেডালুয়েস.প্লট (স্টাইল = '-', রঙ = 'লাল') ফিট 2.ফিটডাল্যুয়েস.প্লট (স্টাইল = '-', রঙ = 'সবুজ') ফিট 1.ফোরকাস্ট (12) .প্লিট (স্টাইল = '-' , চিহ্নিতকারী = 'ও', রঙ = 'লাল', কিংবদন্তি = সত্য) ফিট 2. ফোরকাস্ট (12) .প্লিট (স্টাইল = '-', মার্কার = 'ও', রঙ = 'সবুজ', কিংবদন্তি = সত্য) প্লট। () মুদ্রণ ("জোড় এবং গুণিত মৌসুমী সহ হল্ট-উইন্টার্স পদ্ধতিতে বিক্রয় পূর্বাভাস।")
অ্যাডিটিভ এবং গুণিত মৌসুমী সহ হল্ট-উইন্টার্স পদ্ধতি ব্যবহার করে রিয়েল এস্টেট বিক্রয়ের পূর্বাভাস

সংক্ষেপে, আমরা 3 ক্ষতিকারক স্মুথিং মডেলগুলির জন্য মেকানিক্স এবং পাইথন কোডের মাধ্যমে কাজ করেছি। নিম্নলিখিত টেবিলটি দেখায়, আমি আপনার ডেটাসেটের জন্য উপযুক্ত মডেল বাছাই করার জন্য একটি পদ্ধতি সরবরাহ করি।

এক্সফোনেনশিয়াল স্মুথিং পদ্ধতি

ঘন ঘন স্মুথ পদ্ধতিগুলির বিভিন্ন উপাদান ফর্মগুলির জন্য স্মুথিং পরামিতিগুলির সংক্ষিপ্তসার।

স্মুথিং পরামিতি

সূচকীয় স্মুথিং বর্তমানে শিল্পে সর্বাধিক ব্যবহৃত এবং সফল পূর্বাভাসের একটি পদ্ধতি। কীভাবে খুচরা বিক্রয়, পর্যটক আগমন, বিদ্যুতের চাহিদা বা বিক্রয় বৃদ্ধির পূর্বাভাস দেওয়া যায়? আপনার সামনে ভবিষ্যতটি দেখার জন্য যে সুপার পাওয়ার দরকার তা হ'ল এক্সফেনশনিয়াল স্মুথিং।