meridian.model.model.Meridian

মেরিডিয়ান এমএমএম মডেল ফিট করার জন্য প্রধান কার্যকারিতা রয়েছে।

input_data মডেলের জন্য ইনপুট ডেটা ধারণকারী একটি InputData অবজেক্ট।
model_spec মডেল স্পেসিফিকেশন ধারণকারী একটি ModelSpec অবজেক্ট।
inference_data একটি পরিবর্তনযোগ্য arviz.InferenceData অবজেক্ট যাতে মডেল ফিটিং থেকে প্রাপ্ত ডেটা থাকে।
n_geos ডেটাতে জিওর সংখ্যা।
n_media_channels ডেটাতে মিডিয়া চ্যানেলের সংখ্যা।
n_rf_channels ডেটাতে পৌঁছানো এবং ফ্রিকোয়েন্সি (RF) চ্যানেলের সংখ্যা।
all_channel_names সমন্বিত ক্রমে ডেটাতে সমস্ত মিডিয়া চ্যানেলের নাম (R&F, যদি থাকে)।
n_controls ডেটাতে নিয়ন্ত্রণ ভেরিয়েবলের সংখ্যা।
n_times কেপিআই বা ব্যয় ডেটাতে সময়কালের সংখ্যা।
n_media_times মিডিয়া ডেটাতে সময়কালের সংখ্যা।
is_national একটি বুলিয়ান নির্দেশ করে যে ডেটাটি জাতীয় (একক জিও) বা না (একাধিক জিও)।
knot_info একটি KnotInfo ইনপুট ডেটা এবং মডেল স্পেক থেকে প্রাপ্ত।
kpi একটি টেনসর input_data.kpi থেকে নির্মিত।
revenue_per_kpi একটি টেনসর input_data.revenue_per_kpi থেকে নির্মিত। যদি input_data.revenue_per_kpi None না হয়, তাহলে এটিও None।
controls একটি টেনসর input_data.controls থেকে নির্মিত।
population একটি টেনসর input_data.population থেকে নির্মিত।
media_tensors input_data থেকে প্রাপ্ত মিডিয়া টেনসরের একটি সংগ্রহ।
rf_tensors রিচ অ্যান্ড ফ্রিকোয়েন্সি (RF) মিডিয়া টেনসরের একটি সংগ্রহ।
total_spend media_tensors.media_spend এবং rf_tensors.rf_spend সহ মোট ব্যয় সম্বলিত একটি টেনসর।
controls_transformer একটি ControlsTransformer মডেলের কন্ট্রোল ডেটা ব্যবহার করে টেনসর নিয়ন্ত্রণ করে।
kpi_transformer মডেলের KPI ডেটা ব্যবহার করে KPI টেনসর স্কেল করার জন্য একটি KpiTransformer
controls_scaled নিয়ন্ত্রণ টেনসর জনসংখ্যা এবং মধ্যম মান দ্বারা স্বাভাবিক করা হয়.
kpi_scaled KPI টেনসর জনসংখ্যা এবং মধ্যম মান দ্বারা স্বাভাবিক করা হয়।
media_effects_dist জিওস জুড়ে মিডিয়া এলোমেলো প্রভাবের বিতরণ নির্দিষ্ট করার জন্য একটি স্ট্রিং।
unique_sigma_for_each_geo একটি বুলিয়ান নির্দেশ করে যে প্রতিটি জিওর জন্য একটি অনন্য অবশিষ্ট প্রকরণ ব্যবহার করতে হবে কিনা।
prior_broadcast সম্প্রচারিত ডিস্ট্রিবিউশন ধারণকারী একটি PriorDistribution অবজেক্ট।
baseline_geo_idx বেসলাইন জিওর সূচক।
holdout_id হোল্ডআউট আইডি ধারণকারী একটি টেনসর, যদি উপস্থিত থাকে।

পদ্ধতি

adstock_hill_media

উৎস দেখুন

পছন্দসই ক্রমে অ্যাডস্টক এবং হিল ফাংশন ব্যবহার করে মিডিয়াকে রূপান্তরিত করে।

আর্গস
media মাত্রার টেনসর (n_geos, n_media_times, n_media_channels) যাতে অ-নেতিবাচক মিডিয়া এক্সিকিউশন মান রয়েছে। সাধারণত এটি ইম্প্রেশন, তবে এটি যে কোনো মেট্রিক হতে পারে, যেমন media_spend । ক্লিকগুলি প্রায়ই অর্থপ্রদানের অনুসন্ধান বিজ্ঞাপনগুলির জন্য ব্যবহৃত হয়।
alpha অ্যাডস্টক এবং হিল গণনার জন্য অভিন্ন বন্টন।
ec অ্যাডস্টক এবং হিল গণনার জন্য অর্ধ-স্বাভাবিক বন্টন স্থানান্তরিত হয়েছে।
slope অ্যাডস্টক এবং হিল গণনার জন্য নির্ধারক বন্টন।
n_times_output আউটপুট করার সময়কালের সংখ্যা। এই যুক্তিটি ঐচ্ছিক যখন media সময়কালের সংখ্যা self.n_media_times সমান হয়, যে ক্ষেত্রে n_times_output ডিফল্ট self.n_times

রিটার্নস
মাত্রা সহ টেনসর [..., n_geos, n_times, n_media_channels] যেটি অ্যাডস্টক এবং হিল-ট্রান্সফর্মড মিডিয়ার প্রতিনিধিত্ব করে।

adstock_hill_rf

উৎস দেখুন

হিল এবং অ্যাডস্টক ফাংশন ব্যবহার করে পৌঁছানোর এবং ফ্রিকোয়েন্সি (আরএফ) রূপান্তরিত করে।

আর্গস
reach মাত্রার টেনসর (n_geos, n_media_times, n_rf_channels) যাতে নাগালের জন্য অ-নেতিবাচক মিডিয়া রয়েছে।
frequency মাত্রার টেনসর (n_geos, n_media_times, n_rf_channels) যাতে ফ্রিকোয়েন্সির জন্য অ-নেতিবাচক মিডিয়া থাকে।
alpha অ্যাডস্টক এবং হিল গণনার জন্য অভিন্ন বন্টন।
ec অ্যাডস্টক এবং হিল গণনার জন্য অর্ধ-স্বাভাবিক বন্টন স্থানান্তরিত হয়েছে।
slope অ্যাডস্টক এবং হিল গণনার জন্য নির্ধারক বন্টন।
n_times_output আউটপুট করার সময়কালের সংখ্যা। এই যুক্তি ঐচ্ছিক যখন reach সময়কালের সংখ্যা self.n_media_times সমান হয়, যে ক্ষেত্রে n_times_output ডিফল্ট self.n_times

রিটার্নস
মাত্রা সহ টেনসর [..., n_geos, n_times, n_rf_channels] হিল এবং অ্যাডস্টক-রূপান্তরিত RF প্রতিনিধিত্ব করে।

expand_selected_time_dims

উৎস দেখুন

নির্বাচিত সময়ের উপর ভিত্তি করে সময়ের মাত্রা মান যাচাই করে এবং প্রদান করে।

start_date এবং end_date উভয়ই যদি কোনটিই না হয় তবে কোনটিই প্রদান করে না।

আর্গস
start_date নির্বাচিত সময়কালের শুরুর তারিখ। যদি কোনটি না হয়, ইনপুট ডেটাতে প্রথম দিকের সময় মাত্রার মান বোঝায়।
end_date নির্বাচিত সময়কালের শেষ তারিখ। যদি কিছু না হয়, ইনপুট ডেটাতে সাম্প্রতিক সময়ের মাত্রা মান বোঝায়।

রিটার্নস
নির্বাচিত সময়ের মধ্যে ইনপুট ডেটাতে সময় মাত্রা মানগুলির একটি তালিকা (মেরিডিয়ান-ফরম্যাট করা স্ট্রিং হিসাবে), অথবা উভয় আর্গুমেন্টই যদি None হয়, অথবা যদি start_date এবং end_date ইনপুটে সম্পূর্ণ সময় সীমার সাথে মিলে যায় তবে কিছুই করবেন না এবং None এর মধ্য দিয়ে যান তথ্য

বাড়ায়
মান ত্রুটি যদি start_date বা end_date ইনপুট ডেটা সময় মাত্রায় না থাকে।

populate_cached_properties

উৎস দেখুন

সাগ্রহে সব ক্যাশে বৈশিষ্ট্য সক্রিয়.

এটি একটি ক্যাপচার করা বন্ধের অংশ হিসাবে এই মেরিডিয়ান বস্তুর সাথে একটি tf.function গণনা গ্রাফ তৈরি করার জন্য দরকারী। গণনা গ্রাফের মধ্যে, অভ্যন্তরীণ অবস্থার মিউটেশনগুলি সমস্যাযুক্ত, এবং তাই এই পদ্ধতিটি গণনা গ্রাফ তৈরি হওয়ার আগে বস্তুর অবস্থাগুলিকে হিমায়িত করে।

sample_posterior

উৎস দেখুন

মার্কভ চেইন মন্টে কার্লো (MCMC) পোস্টেরিয়র ডিস্ট্রিবিউশনের নমুনা চালায়।

আর্গুমেন্ট সম্পর্কে আরও তথ্যের জন্য, windowed_adaptive_nuts দেখুন।

আর্গস
n_chains MCMC চেইনের সংখ্যা। পূর্ণসংখ্যার একটি ক্রম দেওয়া, windowed_adaptive_nuts প্রতিটি উপাদানের জন্য একবার কল করা হবে। প্রতিটি windowed_adaptive_nuts কলের n_chains আর্গুমেন্ট সংশ্লিষ্ট পূর্ণসংখ্যা উপাদানের সমান হবে। পূর্ণসংখ্যার একটি তালিকা ব্যবহার করে, কেউ একটি windowed_adaptive_nuts কলের চেইনকে প্রতি কলে কম চেইন সহ একাধিক কলে বিভক্ত করতে পারে। এটি মেমরি ব্যবহার কমাতে পারে। এর জন্য অভিন্নতার জন্য অভিযোজন পদক্ষেপের একটি বর্ধিত সংখ্যক প্রয়োজন হতে পারে, কারণ প্রতি নমুনা কল প্রতি কম চেইন জুড়ে অপ্টিমাইজেশান ঘটছে।
n_adapt প্রতি চেইন অভিযোজন ড্র সংখ্যা.
n_burnin প্রতি চেইন বার্ন-ইন ড্রয়ের সংখ্যা। বার্ন-ইন ড্র হয় অভিযোজন ড্রয়ের পরে এবং রাখা ড্রয়ের আগে।
n_keep অনুমানের জন্য রাখা প্রতি চেইন ড্রয়ের পূর্ণসংখ্যা।
current_state টেনসরের ঐচ্ছিক কাঠামো যেখানে স্যাম্পলিং শুরু করতে হবে। model.experimental_pin(**pins).sample(n_chains) হিসাবে একই আকার এবং গঠন ব্যবহার করুন।
init_step_size ঐচ্ছিক পূর্ণসংখ্যা নির্ধারণ করে যেখানে লিপফ্রগ ইন্টিগ্রেটরের জন্য ধাপের আকার শুরু করতে হবে। গঠন current_state এর সাথে সম্প্রচার করা আবশ্যক। উদাহরণস্বরূপ, যদি প্রাথমিক অবস্থা হয়: { 'a': tf.zeros(n_chains), 'b': tf.zeros([n_chains, n_features]), } তাহলে 1. , {'a': 1., 'b': 1.} , অথবা {'a': tf.ones(n_chains), 'b': tf.ones([n_chains, n_features])} কাজ করবে। লগ ঘনত্বের মাত্রা ¼ পাওয়ারে ডিফল্ট।
dual_averaging_kwargs tfp.mcmc.DualAveragingStepSizeAdaptation এ পাস করার জন্য ঐচ্ছিক ডিক্ট কীওয়ার্ড আর্গুমেন্ট। ডিফল্টরূপে, 0.85 এর একটি target_accept_prob সেট করা হয়, হারমোনিক গড় ব্যবহার করে চেইন জুড়ে গ্রহণযোগ্যতার সম্ভাবনা হ্রাস করা হয়, এবং ক্লাস ডিফল্টগুলি অন্যথায় ব্যবহার করা হয়।
max_tree_depth গাছের সর্বোচ্চ গভীরতা নিহিতভাবে NUTS দ্বারা নির্মিত। লিপফ্রগ ধাপের সর্বাধিক সংখ্যা 2**max_tree_depth দ্বারা সীমাবদ্ধ, উদাহরণস্বরূপ, একটি বাইনারি ট্রি max_tree_depth নোডের গভীরে নোডের সংখ্যা। 10 -এর ডিফল্ট সেটিং 1024টি লিপফ্রগ ধাপ পর্যন্ত নেয়।
max_energy_diff প্রতিটি লিপফ্রগে শক্তির পার্থক্যের স্কেলার থ্রেশহোল্ড, ডাইভারজেন্স নমুনাগুলিকে লিপফ্রগ পদক্ষেপ হিসাবে সংজ্ঞায়িত করা হয় যা এই প্রান্তিকটি অতিক্রম করে। ডিফল্ট হল 1000
unrolled_leapfrog_steps প্রতি গাছ সম্প্রসারণের ধাপে আনরোল করার জন্য লিপব্যাঙের সংখ্যা। max_tree_depth দ্বারা উহ্য সর্বাধিক ট্রাজেক্টোরি দৈর্ঘ্যে একটি সরাসরি রৈখিক গুণক প্রয়োগ করে। ডিফল্ট হল 1
parallel_iterations সমান্তরালভাবে চালানোর জন্য অনুমোদিত পুনরাবৃত্তির সংখ্যা। একটি ধনাত্মক পূর্ণসংখ্যা হতে হবে। আরও তথ্যের জন্য, tf.while_loop দেখুন।
seed পুনরুৎপাদনযোগ্য ফলাফলের জন্য বীজ সেট করতে ব্যবহৃত হয়। আরও তথ্যের জন্য, PRNGS এবং বীজ দেখুন।
**pins এগুলি প্রদত্ত জয়েন্ট ডিস্ট্রিবিউশনের শর্তে ব্যবহার করা হয় এবং সরাসরি joint_dist.experimental_pin(**pins) এ পাঠানো হয়।

নিক্ষেপ করে
MCMCOOMError যদি মডেলটি মেমরির বাইরে থাকে। n_keep কমানোর চেষ্টা করুন বা n_chains হিসাবে পূর্ণসংখ্যার একটি তালিকাকে ক্রমিকভাবে নমুনা চেইনে পাস করুন (https://developers.google.com/meridian/docs/advanced-modeling/model-debugging#gpu-oom-error দেখুন)।

sample_prior

উৎস দেখুন

পূর্বের বিতরণ থেকে নমুনা আঁকে।

আর্গস
n_draws পূর্বের বিতরণ থেকে আঁকা নমুনার সংখ্যা।
seed পুনরুৎপাদনযোগ্য ফলাফলের জন্য বীজ সেট করতে ব্যবহৃত হয়। আরও তথ্যের জন্য, PRNGS এবং বীজ দেখুন।