আরএমএসই কি? এমএসই, আরএমডি বা আরএমএস নামেও পরিচিত। এটি কোন সমস্যার সমাধান করে?
আপনি যদি আরএমএসই: (রুট মানে স্কোয়ার ত্রুটি) বোঝেন, এমএসই: (মানে স্কোয়ার ত্রুটি) আরএমডি (রুট মানে স্কোয়ার্ড ডিভিয়েশন) এবং আরএমএস: (রুট মানে স্কোয়ার্ড) আপনার জন্য এটি গণনা করার জন্য একটি লাইব্রেরি জিজ্ঞাসা করা অপ্রয়োজনীয় ওভার ইঞ্জিনিয়ারিং । এই সমস্ত মেট্রিকগুলি প্রায় 2 ইঞ্চি লম্বা পাইথন কোডের একক লাইন। Rmse, mse, rmd এবং rms এই তিনটি মেট্রিক তাদের মূল ধারণাগতভাবে অভিন্ন।
RMSE প্রশ্নের উত্তর: "কিভাবে অনুরূপ, গড়ে, এ সংখ্যা list1
থেকেlist2
?"। দুটি তালিকা অবশ্যই একই আকারের হবে। আমি "প্রদত্ত যে কোনও দুটি উপাদানের মধ্যে আওয়াজ ধুয়ে ফেলতে চাইছি, সংগৃহীত তথ্যের আকার ধুয়ে ফেলতে চাই এবং সময়ের সাথে সাথে একক সংখ্যা বোধ করতে পারি"।
আরএমএসই এর জন্য স্বজ্ঞাত এবং ই এলআই 5:
কল্পনা করুন আপনি একটি ডার্ট বোর্ডে ডার্টগুলি ফেলতে শিখছেন। প্রতিদিন আপনি এক ঘন্টা অনুশীলন করেন। আপনি ভাল হয়ে উঠছেন বা আরও খারাপ হচ্ছে কিনা তা আপনি খুঁজে বের করতে চান। তাই প্রতিদিন আপনি 10 টি নিক্ষেপ করেন এবং বুলসিয়ে এবং যেখানে আপনার ডার্টটি আঘাত করে তার মধ্যে দূরত্বটি পরিমাপ করুন।
আপনি এই সংখ্যাগুলির একটি তালিকা তৈরি করুন list1
। দিন 1 এ দূরত্ব এবং list2
সমস্ত জিরো সমেত ব্যবস্থার মধ্যে মূল গড় স্কোয়ার ত্রুটিটি ব্যবহার করুন । ২ য় এবং নবম দিনেও একই কাজ করুন। আপনি যা পাবেন তা হ'ল একক সংখ্যা যা আশা করি সময়ের সাথে সাথে হ্রাস পাবে। আপনার আরএমএসই নম্বরটি শূন্য হলে আপনি প্রতিবার বুলসেসে আঘাত করেন hit আরএমএস নম্বর যদি উপরে যায় তবে আপনি আরও খারাপ হয়ে যাচ্ছেন।
মূল গণনার উদাহরণ অজগরটিতে স্কোয়ার ত্রুটির অর্থ:
import numpy as np
d = [0.000, 0.166, 0.333] #ideal target distances, these can be all zeros.
p = [0.000, 0.254, 0.998] #your performance goes here
print("d is: " + str(["%.8f" % elem for elem in d]))
print("p is: " + str(["%.8f" % elem for elem in p]))
def rmse(predictions, targets):
return np.sqrt(((predictions - targets) ** 2).mean())
rmse_val = rmse(np.array(d), np.array(p))
print("rms error is: " + str(rmse_val))
কোন মুদ্রণ:
d is: ['0.00000000', '0.16600000', '0.33300000']
p is: ['0.00000000', '0.25400000', '0.99800000']
rms error between lists d and p is: 0.387284994115
গাণিতিক স্বরলিপি:
গ্লাইফ কিংবদন্তি: n
একটি সম্পূর্ণ ধনাত্মক পূর্ণসংখ্যা যা ছোঁড়ার সংখ্যা উপস্থাপন করে। i
যোগফলকে গণনা করে এমন একটি সম্পূর্ণ ধনাত্মক পূর্ণসংখ্যার কাউন্টারকে উপস্থাপন করে। d
আদর্শ দূরত্বকে বোঝায়, list2
উপরের উদাহরণে সমস্ত শূন্য রয়েছে। উপরের উদাহরণে p
পারফরম্যান্সের জন্য দাঁড়ায় list1
। সুপারস্ক্রিপ্ট 2 মানে সংখ্যার স্কোয়ার। d আমি হ'ল এর প্রথম সূচক d
। p আমি হ'ল এর সূচক p
।
আরএমএস ছোট পদক্ষেপে সম্পন্ন হয়েছে যাতে এটি বোঝা যায়:
def rmse(predictions, targets):
differences = predictions - targets #the DIFFERENCEs.
differences_squared = differences ** 2 #the SQUAREs of ^
mean_of_differences_squared = differences_squared.mean() #the MEAN of ^
rmse_val = np.sqrt(mean_of_differences_squared) #ROOT of ^
return rmse_val #get the ^
আরএমএসইর প্রতিটি পদক্ষেপ কীভাবে কাজ করে:
অন্যের থেকে একটি সংখ্যা বিয়োগ করা আপনাকে তাদের মধ্যে দূরত্ব দেয়।
8 - 5 = 3 #absolute distance between 8 and 5 is +3
-20 - 10 = -30 #absolute distance between -20 and 10 is +30
আপনি যদি কোনও সংখ্যার গুণকে নিজেই গুণ করেন তবে ফলাফল সর্বদা ইতিবাচক হয় কারণ নেতিবাচক সময় নেতিবাচক হয়:
3*3 = 9 = positive
-30*-30 = 900 = positive
এগুলি সমস্ত যোগ করুন, তবে অপেক্ষা করুন, তারপরে অনেক উপাদান সহ একটি অ্যারেতে একটি ছোট অ্যারের চেয়ে বড় ত্রুটি থাকবে, সুতরাং উপাদানগুলির সংখ্যা অনুসারে এটিকে গড় করুন।
তবে অপেক্ষা করুন, ইতিবাচকভাবে বাধ্য করার জন্য আমরা তাদের সবার আগে স্কোয়ার করেছি। বর্গমূল দিয়ে ক্ষতিটিকে পূর্বাবস্থায় ফিরিয়ে আনুন!
এটি আপনাকে এমন একক সংখ্যার সাথে ছেড়ে দেয় যা উপস্থাপন করে গড়ে, তালিকা 1 এর প্রতিটি মানের সাথে তালিকার 2 এর মূল উপাদানটির সাথে সংশ্লিষ্ট দূরত্ব।
আরএমএসইয়ের মান সময়ের সাথে সাথে কমতে থাকলে আমরা খুশি কারণ বৈকল্পিকতা হ্রাস পাচ্ছে ।
আরএমএসই সর্বাধিক নির্ভুল লাইন ফিটিং কৌশল নয়, মোট সর্বনিম্ন স্কোয়ারগুলি হ'ল:
রুট গড় স্কোয়ার ত্রুটিটি বিন্দু এবং লাইনের মধ্যবর্তী উল্লম্ব দূরত্ব পরিমাপ করে, তাই যদি আপনার ডেটাটি কলাটির মতো আকারের হয়, নীচের অংশের সমতল এবং শীর্ষে খাড়া হয়, তবে আরএমএসই উচ্চতর পয়েন্টগুলিতে উচ্চতর দূরত্বের প্রতিবেদন করবে তবে সংক্ষিপ্ত দূরত্ব থেকে পয়েন্ট কম যখন বাস্তবে দূরত্ব সমান হয়। এটি একটি স্কিউ সৃষ্টি করে যেখানে রেখাটি নীচের চেয়ে উচ্চ পয়েন্টের কাছে যেতে পছন্দ করে।
যদি এটি সমস্যা হয় তবে সর্বনিম্ন স্কোয়ার পদ্ধতিটি এটি ঠিক করে:
https://mubaris.com/posts/linear-regression
এই আরএমএসই ফাংশনটি ভেঙে ফেলতে পারে এমন গোচা:
যদি কোনও ইনপুট তালিকায় নাল বা অসীমতা থাকে তবে আউটপুট আরএমএসের মানটি কোনও অর্থবহ হতে চলেছে। উভয় তালিকায় নাল / নিখোঁজ মান / অসম্পূর্ণতা মোকাবেলা করার জন্য তিনটি কৌশল রয়েছে: সেই উপাদানটিকে উপেক্ষা করুন, এটিকে শূন্য করুন বা সর্বোত্তম অনুমান বা সমস্ত টাইমস্টেপের সাথে অভিন্ন র্যান্ডম শোনার যোগ করুন add আপনার উপাত্তটির অর্থ কী তার উপর নির্ভর করে প্রতিটি প্রতিকারের পক্ষে তার পক্ষে মতামত রয়েছে সাধারণভাবে অনুপস্থিত মান সহ যে কোনও উপাদানকে অগ্রাহ্য করা পছন্দ করা হয়, তবে এই আরএমএসই শূন্যের দিকে পক্ষপাতদুষ্ট করে তোলে আপনি ভাবছেন যে সত্যিকার অর্থে না হয়ে পারফরম্যান্সের উন্নতি হয়েছে। যদি প্রচুর অনুপস্থিত মান থাকে তবে একটি ভাল অনুমানের ভিত্তিতে এলোমেলো শব্দ যোগ করা পছন্দ করা যেতে পারে।
আরএমএসই আউটপুটটির আপেক্ষিক যথার্থতার গ্যারান্টি দেওয়ার জন্য আপনাকে অবশ্যই ইনপুট থেকে সমস্ত নাল / ইনফিনাইট অপসারণ করতে হবে।
আরএমএসইয়ের বহিরাগত ডেটা পয়েন্টগুলির সাথে শূন্য সহনশীলতা রয়েছে যা সম্পর্কিত নয়
রুট মানে স্কোয়ার ত্রুটিযুক্ত স্কোয়ারগুলি সমস্ত ডেটা সঠিক হওয়ার উপর নির্ভর করে এবং সবগুলি সমান হিসাবে গণনা করা হয়। এর অর্থ বাম ক্ষেত্রের বাইরে থাকা একটি স্ট্রাই পয়েন্ট পুরো হিসাবটি পুরোপুরি নষ্ট করতে চলেছে। আউটলেটর ডেটা পয়েন্টগুলি পরিচালনা করতে এবং নির্দিষ্ট প্রান্তিকের পরে তাদের অভূতপূর্ব প্রভাবকে বরখাস্ত করার জন্য, শক্তিশালী অনুমানকারীরা দেখুন যা বহিরাগতদের বরখাস্ত করার জন্য একটি প্রান্তিকের মধ্যে তৈরি করে।