واژه نامه یادگیری ماشینی: مبانی ML

این صفحه شامل اصطلاحات واژه نامه اصول ML است. برای همه اصطلاحات واژه نامه، اینجا را کلیک کنید .

آ

دقت

#مبانی

تعداد پیش‌بینی‌های طبقه‌بندی صحیح تقسیم بر تعداد کل پیش‌بینی‌ها. به این معنا که:

$$\text{Accuracy} = \frac{\text{correct predictions}} {\text{correct predictions + incorrect predictions }}$$

به عنوان مثال، مدلی که 40 پیش‌بینی درست و 10 پیش‌بینی نادرست داشته باشد، دقتی برابر با:

$$\text{Accuracy} = \frac{\text{40}} {\text{40 + 10}} = \text{80%}$$

طبقه بندی باینری نام های خاصی را برای دسته های مختلف پیش بینی های صحیح و پیش بینی های نادرست ارائه می دهد. بنابراین، فرمول دقت برای طبقه بندی باینری به شرح زیر است:

$$\text{Accuracy} = \frac{\text{TP} + \text{TN}} {\text{TP} + \text{TN} + \text{FP} + \text{FN}}$$

جایی که:

مقایسه و مقایسه دقت با دقت و یادآوری .

عملکرد فعال سازی

#مبانی

تابعی که شبکه های عصبی را قادر می سازد تا روابط غیرخطی (پیچیده) بین ویژگی ها و برچسب را بیاموزند.

توابع فعال سازی محبوب عبارتند از:

نمودار توابع فعال سازی هرگز خطوط مستقیم منفرد نیستند. به عنوان مثال، نمودار تابع فعال سازی ReLU از دو خط مستقیم تشکیل شده است:

طرح دکارتی از دو خط. خط اول دارای یک مقدار ثابت y برابر با 0 است که در امتداد محور x از -infinity,0 تا 0,-0 قرار دارد. خط دوم از 0.0 شروع می شود. این خط دارای شیب 1+ است، بنابراین از 0،0 تا + بی نهایت، + بی نهایت است.

نمودار تابع فعال سازی سیگموئید به صورت زیر است:

یک نمودار منحنی دو بعدی با مقادیر x که دامنه -بی نهایت تا + مثبت را در بر می گیرد، در حالی که مقادیر y محدوده تقریباً 0 تا تقریبا 1 را در بر می گیرد. وقتی x 0 باشد، y 0.5 است. شیب منحنی همیشه مثبت است، با بیشترین شیب 0.5 و به تدریج با افزایش مقدار مطلق x شیب ها کاهش می یابد.

هوش مصنوعی

#مبانی

یک برنامه یا مدل غیر انسانی که می تواند کارهای پیچیده را حل کند. برای مثال، برنامه یا مدلی که متن را ترجمه می کند یا برنامه یا مدلی که بیماری ها را از تصاویر رادیولوژیک شناسایی می کند، هر دو هوش مصنوعی را نشان می دهند.

به طور رسمی، یادگیری ماشین زیر شاخه هوش مصنوعی است. با این حال، در سال‌های اخیر، برخی از سازمان‌ها شروع به استفاده از اصطلاحات هوش مصنوعی و یادگیری ماشینی کرده‌اند.

AUC (مساحت زیر منحنی ROC)

#مبانی

عددی بین 0.0 و 1.0 نشان دهنده توانایی یک مدل طبقه بندی باینری برای جداسازی کلاس های مثبت از کلاس های منفی است. هر چه AUC به 1.0 نزدیکتر باشد، مدل توانایی بهتری برای جداسازی کلاس ها از یکدیگر دارد.

برای مثال، تصویر زیر یک مدل طبقه‌بندی کننده را نشان می‌دهد که کلاس‌های مثبت (بیضی سبز) را از کلاس‌های منفی (مستطیل‌های بنفش) کاملاً جدا می‌کند. این مدل غیرواقعی کامل دارای AUC 1.0 است:

یک خط اعداد با 8 مثال مثبت در یک طرف و 9 مثال منفی در طرف دیگر.

برعکس، تصویر زیر نتایج یک مدل طبقه‌بندی کننده را نشان می‌دهد که نتایج تصادفی ایجاد می‌کند. این مدل دارای AUC 0.5 است:

یک خط اعداد با 6 مثال مثبت و 6 مثال منفی. دنباله مثال ها مثبت، منفی، مثبت، منفی، مثبت، منفی، مثبت، منفی، مثبت، مثبت، منفی است.

بله، مدل قبلی دارای AUC 0.5 است، نه 0.0.

اکثر مدل ها جایی بین دو حالت افراطی هستند. به عنوان مثال، مدل زیر موارد مثبت را تا حدودی از منفی جدا می کند و بنابراین دارای AUC بین 0.5 و 1.0 است:

یک خط اعداد با 6 مثال مثبت و 6 مثال منفی. دنباله مثال ها منفی، منفی، منفی، منفی، مثبت، منفی، مثبت، مثبت، منفی، مثبت، مثبت، مثبت است.

AUC هر مقداری را که برای آستانه طبقه بندی تنظیم کرده اید نادیده می گیرد. در عوض، AUC تمام آستانه های طبقه بندی ممکن را در نظر می گیرد.

ب

پس انتشار

#مبانی

الگوریتمی که نزول گرادیان را در شبکه های عصبی پیاده سازی می کند.

آموزش یک شبکه عصبی شامل تکرارهای زیادی از چرخه دو پاس زیر است:

  1. در طول پاس رو به جلو ، سیستم دسته‌ای از نمونه‌ها را پردازش می‌کند تا پیش‌بینی (های) را به دست آورد. سیستم هر پیش بینی را با هر برچسب مقایسه می کند. تفاوت بین مقدار پیش‌بینی و برچسب، ضرر آن مثال است. سیستم تلفات را برای همه نمونه‌ها جمع‌آوری می‌کند تا مجموع ضرر را برای دسته فعلی محاسبه کند.
  2. در طول گذر به عقب (انتشار عقب)، سیستم با تنظیم وزن تمام نورون ها در تمام لایه(های) پنهان، تلفات را کاهش می دهد.

شبکه‌های عصبی اغلب حاوی نورون‌های زیادی در لایه‌های پنهان بسیاری هستند. هر یک از این نورون ها به روش های مختلفی در از دست دادن کلی نقش دارند. انتشار معکوس تعیین می کند که آیا وزن اعمال شده روی نورون های خاص افزایش یا کاهش یابد.

نرخ یادگیری یک ضریب است که میزان افزایش یا کاهش هر وزنه توسط هر پاس به عقب را کنترل می کند. نرخ یادگیری زیاد هر وزن را بیش از یک نرخ یادگیری کوچک افزایش یا کاهش می دهد.

در اصطلاح حساب دیفرانسیل و انتگرال، پس انتشار قانون زنجیره حساب دیفرانسیل و انتگرال را پیاده سازی می کند. یعنی پس انتشار مشتق جزئی خطا را با توجه به هر پارامتر محاسبه می کند. برای جزئیات بیشتر، این آموزش را در Machine Learning Crash Course ببینید.

سال‌ها پیش، تمرین‌کنندگان ML مجبور بودند کدی را برای پیاده‌سازی انتشار پس‌انداز بنویسند. API های مدرن ML مانند TensorFlow اکنون پس انتشار را برای شما پیاده سازی می کنند. اوه!

دسته ای

#مبانی

مجموعه مثال های مورد استفاده در یک تکرار آموزشی. اندازه دسته تعداد نمونه ها را در یک دسته تعیین می کند.

برای توضیح نحوه ارتباط یک دسته با یک دوره، به epoch مراجعه کنید.

اندازه دسته

#مبانی

تعداد نمونه ها در یک دسته . به عنوان مثال، اگر اندازه دسته 100 باشد، مدل در هر تکرار 100 نمونه را پردازش می کند.

استراتژی های اندازه دسته ای محبوب زیر هستند:

  • نزول گرادیان تصادفی (SGD) که در آن اندازه دسته 1 است.
  • دسته کامل، که در آن اندازه دسته تعداد نمونه ها در کل مجموعه آموزشی است. به عنوان مثال، اگر مجموعه آموزشی حاوی یک میلیون مثال باشد، اندازه دسته ای یک میلیون نمونه خواهد بود. دسته کامل معمولا یک استراتژی ناکارآمد است.
  • مینی بچ که در آن اندازه دسته معمولا بین 10 تا 1000 است. مینی بچ معمولا کارآمدترین استراتژی است.

تعصب (اخلاق / انصاف)

#انصاف
#مبانی

1. کلیشه سازی، تعصب یا طرفداری نسبت به برخی چیزها، افراد یا گروه ها نسبت به دیگران. این سوگیری ها می توانند بر جمع آوری و تفسیر داده ها، طراحی یک سیستم و نحوه تعامل کاربران با یک سیستم تأثیر بگذارند. اشکال این نوع سوگیری عبارتند از:

2. خطای سیستماتیک معرفی شده توسط یک روش نمونه گیری یا گزارش. اشکال این نوع سوگیری عبارتند از:

نباید با اصطلاح سوگیری در مدل‌های یادگیری ماشین یا سوگیری پیش‌بینی اشتباه گرفته شود.

تعصب (ریاضی) یا اصطلاح سوگیری

#مبانی

رهگیری یا جبران از مبدأ. تعصب یک پارامتر در مدل های یادگیری ماشینی است که با یکی از موارد زیر نشان داده می شود:

  • ب
  • w 0

به عنوان مثال، بایاس b در فرمول زیر است:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

در یک خط دوبعدی ساده، بایاس فقط به معنای «قطعه y» است. به عنوان مثال، بایاس خط در تصویر زیر 2 است.

نمودار یک خط با شیب 0.5 و بایاس (برق y) 2.

تعصب وجود دارد زیرا همه مدل ها از مبدا (0,0) شروع نمی شوند. به عنوان مثال، فرض کنید یک پارک تفریحی برای ورود به آن 2 یورو و برای هر ساعت اقامت مشتری 0.5 یورو اضافی هزینه دارد. بنابراین، مدلی که هزینه کل را نگاشت می کند، بایاس 2 دارد زیرا کمترین هزینه 2 یورو است.

سوگیری نباید با سوگیری در اخلاق و انصاف یا سوگیری پیش بینی اشتباه شود.

طبقه بندی باینری

#مبانی

یک نوع کار طبقه بندی که یکی از دو کلاس منحصر به فرد را پیش بینی می کند:

به عنوان مثال، دو مدل یادگیری ماشین زیر، هر کدام دسته بندی باینری را انجام می دهند:

  • مدلی که تعیین می‌کند پیام‌های ایمیل هرزنامه هستند (کلاس مثبت) یا اسپم نیستند (کلاس منفی).
  • مدلی که علائم پزشکی را ارزیابی می کند تا مشخص کند آیا یک فرد دارای یک بیماری خاص (طبقه مثبت) است یا آن بیماری (طبقه منفی) را ندارد.

در تقابل با طبقه بندی چند طبقه .

همچنین به رگرسیون لجستیک و آستانه طبقه بندی مراجعه کنید.

سطل سازی

#مبانی

تبدیل یک ویژگی واحد به چندین ویژگی باینری به نام سطل یا bins ، که معمولاً بر اساس یک محدوده مقدار است. ویژگی خرد شده معمولاً یک ویژگی پیوسته است.

به عنوان مثال، به جای نمایش دما به عنوان یک ویژگی ممیز شناور منفرد، می توانید محدوده دما را به سطل های مجزا تقسیم کنید، مانند:

  • <= 10 درجه سانتیگراد سطل "سرد" خواهد بود.
  • 11 تا 24 درجه سانتیگراد سطل "معتدل" خواهد بود.
  • >= 25 درجه سانتیگراد سطل "گرم" خواهد بود.

مدل با هر مقدار در یک سطل یکسان رفتار می کند. به عنوان مثال، مقادیر 13 و 22 هر دو در سطل معتدل هستند، بنابراین مدل با دو مقدار یکسان رفتار می کند.

سی

داده های طبقه بندی شده

#مبانی

ویژگی هایی که مجموعه خاصی از مقادیر ممکن را دارند. به عنوان مثال، یک ویژگی طبقه بندی به نام traffic-light-state را در نظر بگیرید که فقط می تواند یکی از سه مقدار ممکن زیر را داشته باشد:

  • red
  • yellow
  • green

با نشان دادن traffic-light-state به عنوان یک ویژگی طبقه‌بندی، یک مدل می‌تواند تأثیرات متفاوت red ، green و yellow را بر رفتار راننده بیاموزد.

ویژگی‌های طبقه‌بندی گاهی اوقات ویژگی‌های گسسته نامیده می‌شوند.

در مقابل داده های عددی .

کلاس

#مبانی

دسته ای که یک برچسب می تواند به آن تعلق داشته باشد. مثلا:

  • در یک مدل طبقه‌بندی باینری که هرزنامه را شناسایی می‌کند، این دو کلاس ممکن است هرزنامه باشند و نه هرزنامه .
  • در یک مدل طبقه‌بندی چند طبقه که نژادهای سگ را مشخص می‌کند، کلاس‌ها ممکن است پودل ، بیگل ، پاگ و غیره باشند.

یک مدل طبقه بندی یک کلاس را پیش بینی می کند. در مقابل، یک مدل رگرسیون یک عدد را به جای یک کلاس پیش بینی می کند.

مدل طبقه بندی

#مبانی

مدلی که پیش‌بینی آن یک کلاس است. به عنوان مثال، موارد زیر همه مدل های طبقه بندی هستند:

  • مدلی که زبان جمله ورودی (فرانسوی؟ اسپانیایی؟ ایتالیایی؟) را پیش بینی می کند.
  • مدلی که گونه های درختی (افرا؟ بلوط؟ بائوباب؟) را پیش بینی می کند.
  • مدلی که کلاس مثبت یا منفی را برای یک بیماری خاص پیش بینی می کند.

در مقابل، مدل های رگرسیون اعداد را به جای کلاس ها پیش بینی می کنند.

دو نوع رایج از مدل های طبقه بندی عبارتند از:

آستانه طبقه بندی

#مبانی

در یک طبقه بندی باینری ، عددی بین 0 و 1 که خروجی خام یک مدل رگرسیون لجستیک را به پیش بینی کلاس مثبت یا منفی تبدیل می کند. توجه داشته باشید که آستانه طبقه بندی مقداری است که یک انسان انتخاب می کند، نه ارزشی که توسط آموزش مدل انتخاب شده است.

یک مدل رگرسیون لجستیک یک مقدار خام بین 0 و 1 خروجی می دهد. سپس:

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

به عنوان مثال، فرض کنید آستانه طبقه بندی 0.8 باشد. اگر مقدار خام 0.9 باشد، مدل کلاس مثبت را پیش بینی می کند. اگر مقدار خام 0.7 باشد، مدل کلاس منفی را پیش بینی می کند.

انتخاب آستانه طبقه بندی به شدت بر تعداد مثبت کاذب و منفی کاذب تأثیر می گذارد.

مجموعه داده های کلاس نامتعادل

#مبانی

مجموعه داده ای برای یک مسئله طبقه بندی که در آن تعداد کل برچسب های هر کلاس به طور قابل توجهی متفاوت است. به عنوان مثال، یک مجموعه داده طبقه بندی باینری را در نظر بگیرید که دو برچسب آن به صورت زیر تقسیم می شوند:

  • 1,000,000 برچسب منفی
  • 10 برچسب مثبت

نسبت برچسب های منفی به مثبت 100000 به 1 است، بنابراین این یک مجموعه داده با کلاس نامتعادل است.

در مقابل، مجموعه داده زیر از نظر کلاس نامتعادل نیست زیرا نسبت برچسب های منفی به برچسب های مثبت نسبتا نزدیک به 1 است:

  • 517 برچسب منفی
  • 483 برچسب مثبت

مجموعه داده‌های چند کلاسه نیز می‌توانند دارای عدم تعادل کلاسی باشند. به عنوان مثال، مجموعه داده طبقه‌بندی چند کلاسه زیر نیز از نظر کلاس نامتعادل است، زیرا یک برچسب نمونه‌های بسیار بیشتری نسبت به دو برچسب دیگر دارد:

  • 1,000,000 برچسب با کلاس "سبز"
  • 200 برچسب با کلاس "بنفش"
  • 350 برچسب با کلاس "نارنجی"

همچنین به آنتروپی ، کلاس اکثریت و کلاس اقلیت مراجعه کنید.

بریدن

#مبانی

تکنیکی برای رسیدگی به موارد پرت با انجام یکی یا هر دو مورد زیر:

  • کاهش مقادیر ویژگی که بیشتر از یک آستانه حداکثر است تا آن آستانه حداکثر.
  • افزایش مقادیر ویژگی که کمتر از یک آستانه حداقل تا آن آستانه حداقل است.

برای مثال، فرض کنید که <0.5٪ از مقادیر یک ویژگی خاص خارج از محدوده 40-60 باشد. در این صورت می توانید کارهای زیر را انجام دهید:

  • تمام مقادیر بالای 60 (حداکثر آستانه) را دقیقاً 60 کنید.
  • تمام مقادیر زیر 40 (حداقل آستانه) را دقیقاً 40 کنید.

پرت ها می توانند به مدل ها آسیب برسانند و گاهی اوقات باعث سرریز وزنه ها در طول تمرین می شوند. برخی از نقاط پرت نیز می توانند به طور چشمگیری معیارهایی مانند دقت را خراب کنند. برش یک تکنیک رایج برای محدود کردن آسیب است.

برش گرادیان مقادیر گرادیان را در یک محدوده تعیین شده در طول تمرین مجبور می کند.

ماتریس سردرگمی

#مبانی

یک جدول NxN که تعداد پیش‌بینی‌های صحیح و نادرست را که یک مدل طبقه‌بندی انجام داده است، خلاصه می‌کند. به عنوان مثال، ماتریس سردرگمی زیر را برای یک مدل طبقه بندی باینری در نظر بگیرید:

تومور (پیش بینی شده) غیر توموری (پیش بینی شده)
تومور (حقیقت زمینی) 18 (TP) 1 (FN)
غیر تومور (حقیقت زمینی) 6 (FP) 452 (TN)

ماتریس سردرگمی قبلی موارد زیر را نشان می دهد:

  • از 19 پیش‌بینی که در آنها حقیقت پایه تومور بود، مدل 18 را به درستی و 1 را به اشتباه طبقه‌بندی کرد.
  • از 458 پیش‌بینی که در آنها حقیقت پایه غیرتوموری بود، مدل 452 را به درستی و 6 را به اشتباه طبقه‌بندی کرد.

ماتریس سردرگمی برای یک مسئله طبقه بندی چند طبقه می تواند به شما در شناسایی الگوهای اشتباه کمک کند. به عنوان مثال، ماتریس سردرگمی زیر را برای یک مدل طبقه‌بندی چند کلاسه سه کلاسه در نظر بگیرید که سه نوع عنبیه مختلف (ویرجینیکا، ورسیکالر و ستوزا) را دسته‌بندی می‌کند. زمانی که حقیقت اصلی ویرجینیکا بود، ماتریس سردرگمی نشان می‌دهد که این مدل به احتمال زیاد Versicolor را به اشتباه پیش‌بینی می‌کرد تا Setosa:

ستوزا (پیش بینی شده) Versicolor (پیش‌بینی شده) ویرجینیکا (پیش بینی شده)
ستوسا (حقیقت زمینی) 88 12 0
Versicolor (حقیقت زمینی) 6 141 7
ویرجینیکا (حقیقت زمینی) 2 27 109

به عنوان مثال دیگری، یک ماتریس سردرگمی می‌تواند نشان دهد که مدلی که برای تشخیص ارقام دست‌نویس آموزش دیده است، به اشتباه 9 را به جای 4 پیش‌بینی می‌کند، یا به اشتباه 1 را به جای 7 پیش‌بینی می‌کند.

ماتریس های سردرگمی حاوی اطلاعات کافی برای محاسبه انواع معیارهای عملکرد، از جمله دقت و یادآوری هستند.

ویژگی پیوسته

#مبانی

یک ویژگی ممیز شناور با دامنه نامتناهی از مقادیر ممکن، مانند دما یا وزن.

کنتراست با ویژگی گسسته .

همگرایی

#مبانی

حالتی به دست می آید که مقادیر زیان با هر تکرار خیلی کم یا اصلاً تغییر نمی کند. به عنوان مثال، منحنی ضرر زیر همگرایی را در حدود 700 تکرار نشان می دهد:

طرح دکارتی. محور X از دست دادن است. محور Y تعداد تکرارهای آموزشی است. تلفات در چند تکرار اول بسیار زیاد است، اما به شدت کاهش می یابد. پس از حدود 100 تکرار، زیان همچنان در حال کاهش است، اما بسیار تدریجی تر. پس از حدود 700 تکرار، ضرر ثابت می ماند.

یک مدل زمانی همگرا می شود که آموزش اضافی مدل را بهبود نبخشد.

در یادگیری عمیق ، مقادیر از دست دادن گاهی اوقات ثابت می ماند یا تقریباً برای بسیاری از تکرارها قبل از اینکه در نهایت کاهش یابد، ثابت می ماند. در طول یک دوره طولانی مقادیر ثابت از دست دادن، ممکن است به طور موقت احساس کاذب همگرایی داشته باشید.

توقف زودهنگام را نیز ببینید.

D

DataFrame

#مبانی

یک نوع داده محبوب پانداها برای نمایش مجموعه داده ها در حافظه.

یک DataFrame مشابه یک جدول یا یک صفحه گسترده است. هر ستون از یک DataFrame یک نام (یک سرصفحه) دارد و هر ردیف با یک عدد منحصر به فرد مشخص می شود.

هر ستون در یک DataFrame مانند یک آرایه دو بعدی ساختار یافته است، با این تفاوت که به هر ستون می توان نوع داده خاص خود را اختصاص داد.

همچنین به صفحه مرجع رسمی pandas.DataFrame مراجعه کنید.

مجموعه داده یا مجموعه داده

#مبانی

مجموعه ای از داده های خام، معمولا (اما نه منحصرا) در یکی از قالب های زیر سازماندهی شده است:

  • یک صفحه گسترده
  • یک فایل با فرمت CSV (مقادیر جدا شده با کاما).

مدل عمیق

#مبانی

یک شبکه عصبی حاوی بیش از یک لایه پنهان .

یک مدل عمیق، شبکه عصبی عمیق نیز نامیده می شود.

کنتراست با مدل عریض .

ویژگی متراکم

#مبانی

ویژگی که در آن اکثر یا همه مقادیر غیر صفر هستند، معمولاً تانسوری از مقادیر ممیز شناور است. به عنوان مثال، تانسور 10 عنصری زیر چگال است زیرا 9 مقدار آن غیر صفر است:

8 3 7 5 2 4 0 4 9 6

کنتراست با ویژگی پراکنده .

عمق

#مبانی

مجموع موارد زیر در یک شبکه عصبی :

به عنوان مثال، یک شبکه عصبی با پنج لایه پنهان و یک لایه خروجی دارای عمق 6 است.

توجه داشته باشید که لایه ورودی بر عمق تأثیر نمی گذارد.

ویژگی گسسته

#مبانی

ویژگی با مجموعه محدودی از مقادیر ممکن. برای مثال، یک ویژگی که مقادیر آن ممکن است فقط حیوانی ، گیاهی یا معدنی باشد، یک ویژگی گسسته (یا طبقه‌بندی) است.

کنتراست با ویژگی پیوسته .

پویا

#مبانی

کاری که به طور مکرر یا مداوم انجام می شود. اصطلاحات پویا و آنلاین در یادگیری ماشین مترادف هستند. موارد زیر کاربردهای رایج پویا و آنلاین در یادگیری ماشینی است:

  • مدل پویا (یا مدل آنلاین ) مدلی است که به طور مکرر یا پیوسته بازآموزی می شود.
  • آموزش پویا (یا آموزش آنلاین ) فرآیند آموزش مکرر یا مداوم است.
  • استنتاج پویا (یا استنتاج آنلاین ) فرآیند تولید پیش‌بینی‌ها بر حسب تقاضا است.

مدل پویا

#مبانی

مدلی که به طور مکرر (شاید حتی به طور مداوم) بازآموزی می شود. یک مدل پویا یک "یادگیرنده مادام العمر" است که دائماً با داده های در حال تکامل سازگار می شود. یک مدل پویا به عنوان مدل آنلاین نیز شناخته می شود.

کنتراست با مدل استاتیک .

E

توقف زودهنگام

#مبانی

روشی برای منظم‌سازی که شامل پایان دادن به تمرین قبل از کاهش افت تمرین است. در توقف اولیه، زمانی که از دست دادن مجموعه داده اعتبارسنجی شروع به افزایش می‌کند، عمداً آموزش مدل را متوقف می‌کنید. یعنی زمانی که عملکرد تعمیم بدتر می شود.

لایه جاسازی

#زبان
#مبانی

یک لایه مخفی ویژه که بر روی یک ویژگی طبقه بندی با ابعاد بالا آموزش می دهد تا به تدریج بردار تعبیه ابعاد پایین تر را یاد بگیرد. یک لایه جاسازی شبکه عصبی را قادر می‌سازد تا بسیار کارآمدتر از آموزش فقط بر روی ویژگی طبقه‌بندی با ابعاد بالا آموزش ببیند.

برای مثال، زمین در حال حاضر از حدود 73000 گونه درختی پشتیبانی می کند. فرض کنید گونه درختی یک ویژگی در مدل شما باشد، بنابراین لایه ورودی مدل شما شامل یک بردار یک داغ به طول 73000 عنصر است. برای مثال، شاید baobab چیزی شبیه به این نشان داده شود:

آرایه ای از 73000 عنصر. 6232 عنصر اول مقدار 0 را نگه می دارند. عنصر بعدی مقدار 1 را دارد. 66767 عنصر نهایی مقدار صفر را نگه می دارند.

یک آرایه 73000 عنصری بسیار طولانی است. اگر یک لایه جاسازی به مدل اضافه نکنید، به دلیل ضرب 72999 صفر، آموزش بسیار وقت گیر خواهد بود. شاید لایه جاسازی را از 12 بعد انتخاب کنید. در نتیجه، لایه جاسازی به تدریج یک بردار تعبیه جدید برای هر گونه درختی را یاد می گیرد.

در شرایط خاص، هش جایگزین معقولی برای لایه جاسازی است.

دوران

#مبانی

یک پاس آموزشی کامل در کل مجموعه آموزشی به طوری که هر نمونه یک بار پردازش شده است.

یک دوره نشان دهنده تکرارهای آموزشی اندازه N / دسته ای است که در آن N تعداد کل نمونه ها است.

به عنوان مثال، موارد زیر را فرض کنید:

  • مجموعه داده شامل 1000 نمونه است.
  • اندازه دسته 50 نمونه است.

بنابراین، یک دوره واحد نیاز به 20 تکرار دارد:

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

مثال

#مبانی

مقادیر یک ردیف از ویژگی ها و احتمالاً یک برچسب . نمونه هایی در یادگیری تحت نظارت به دو دسته کلی تقسیم می شوند:

  • یک مثال برچسب گذاری شده از یک یا چند ویژگی و یک برچسب تشکیل شده است. در طول آموزش از نمونه های برچسب دار استفاده می شود.
  • یک مثال بدون برچسب شامل یک یا چند ویژگی است اما بدون برچسب. در طول استنتاج از نمونه های بدون برچسب استفاده می شود.

به عنوان مثال، فرض کنید در حال آموزش مدلی برای تعیین تأثیر شرایط آب و هوایی بر نمرات آزمون دانش آموزان هستید. در اینجا سه ​​نمونه برچسب گذاری شده وجود دارد:

امکانات برچسب
درجه حرارت رطوبت فشار نمره آزمون
15 47 998 خوب
19 34 1020 عالی
18 92 1012 فقیر

در اینجا سه ​​نمونه بدون برچسب آورده شده است:

درجه حرارت رطوبت فشار
12 62 1014
21 47 1017
19 41 1021

ردیف یک مجموعه داده معمولاً منبع خام برای مثال است. یعنی یک مثال معمولاً از زیر مجموعه ای از ستون های مجموعه داده تشکیل شده است. علاوه بر این، ویژگی‌های یک مثال می‌تواند شامل ویژگی‌های مصنوعی ، مانند تلاقی ویژگی‌ها نیز باشد.

اف

منفی کاذب (FN)

#مبانی

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

مثبت کاذب (FP)

#مبانی

مثالی که در آن مدل به اشتباه کلاس مثبت را پیش بینی می کند. برای مثال، مدل پیش‌بینی می‌کند که یک پیام ایمیل خاص هرزنامه است (کلاس مثبت)، اما آن پیام ایمیل در واقع هرزنامه نیست .

نرخ مثبت کاذب (FPR)

#مبانی

نسبت مثال‌های منفی واقعی که مدل به اشتباه کلاس مثبت را پیش‌بینی کرده است. فرمول زیر نرخ مثبت کاذب را محاسبه می کند:

$$\text{false positive rate} = \frac{\text{false positives}}{\text{false positives} + \text{true negatives}}$$

نرخ مثبت کاذب، محور x در منحنی ROC است.

ویژگی

#مبانی

یک متغیر ورودی به یک مدل یادگیری ماشینی یک مثال از یک یا چند ویژگی تشکیل شده است. به عنوان مثال، فرض کنید در حال آموزش مدلی برای تعیین تأثیر شرایط آب و هوایی بر نمرات آزمون دانش آموزان هستید. جدول زیر سه نمونه را نشان می دهد که هر کدام شامل سه ویژگی و یک برچسب است:

امکانات برچسب
درجه حرارت رطوبت فشار نمره آزمون
15 47 998 92
19 34 1020 84
18 92 1012 87

کنتراست با برچسب

متقاطع ویژگی

#مبانی

یک ویژگی مصنوعی که با "تقاطع" ویژگی های طبقه بندی شده یا سطلی شکل می گیرد.

به عنوان مثال، یک مدل "پیش بینی خلق و خو" را در نظر بگیرید که دما را در یکی از چهار سطل زیر نشان می دهد:

  • freezing
  • chilly
  • temperate
  • warm

و سرعت باد را در یکی از سه سطل زیر نشان می دهد:

  • still
  • light
  • windy

بدون تلاقی ویژگی ها، مدل خطی به طور مستقل در هر یک از هفت سطل مختلف قبلی تمرین می کند. بنابراین، به عنوان مثال، مدل در حالت freezing مستقل از آموزش، به عنوان مثال، windy تمرین می کند.

از طرف دیگر، می توانید یک تلاقی ویژگی از دما و سرعت باد ایجاد کنید. این ویژگی مصنوعی دارای 12 مقدار ممکن زیر است:

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

به لطف ویژگی‌های ضربدری، این مدل می‌تواند تفاوت‌های خلقی را بین یک روز freezing-windy و یک روز freezing-still بیاموزد.

اگر یک ویژگی مصنوعی از دو ویژگی ایجاد کنید که هر کدام دارای سطل های مختلف هستند، ویژگی متقاطع حاصل تعداد زیادی ترکیب ممکن خواهد داشت. به عنوان مثال، اگر یک ویژگی دارای 1000 سطل و ویژگی دیگر دارای 2000 سطل باشد، متقاطع ویژگی حاصل دارای 2،000،000 سطل است.

به طور رسمی، صلیب یک محصول دکارتی است.

تلاقی ویژگی ها بیشتر با مدل های خطی استفاده می شود و به ندرت برای شبکه های عصبی استفاده می شود.

مهندسی ویژگی

#مبانی
#TensorFlow

فرآیندی که شامل مراحل زیر است:

  1. تعیین اینکه کدام ویژگی ممکن است در آموزش یک مدل مفید باشد.
  2. تبدیل داده های خام از مجموعه داده به نسخه های کارآمد آن ویژگی ها.

برای مثال، ممکن است تعیین کنید که temperature ممکن است یک ویژگی مفید باشد. سپس، می‌توانید با سطل‌سازی آزمایش کنید تا آنچه را که مدل می‌تواند از محدوده‌های temperature مختلف بیاموزد، بهینه کنید.

مهندسی ویژگی گاهی اوقات استخراج ویژگی نامیده می شود.

مجموعه ویژگی

#مبانی

گروهی از ویژگی‌ها که مدل یادگیری ماشین شما در آن آموزش می‌بیند. به عنوان مثال، کد پستی، اندازه ملک و وضعیت ملک ممکن است مجموعه ای از ویژگی های ساده برای مدلی باشد که قیمت مسکن را پیش بینی می کند.

بردار ویژگی

#مبانی

آرایه ای از مقادیر ویژگی شامل یک مثال است. بردار ویژگی در حین آموزش و در حین استنتاج ورودی است. برای مثال، بردار ویژگی برای یک مدل با دو ویژگی گسسته ممکن است:

[0.92, 0.56]

چهار لایه: یک لایه ورودی، دو لایه پنهان و یک لایه خروجی. لایه ورودی شامل دو گره است، یکی حاوی مقدار 0.92 و دیگری حاوی مقدار 0.56.

هر مثال مقادیر مختلفی را برای بردار ویژگی ارائه می دهد، بنابراین بردار ویژگی برای مثال بعدی می تواند چیزی شبیه به:

[0.73, 0.49]

مهندسی ویژگی نحوه نمایش ویژگی ها در بردار ویژگی را تعیین می کند. برای مثال، یک ویژگی دسته‌بندی باینری با پنج مقدار ممکن ممکن است با رمزگذاری یک‌طرفه نمایش داده شود. در این مورد، بخشی از بردار ویژگی برای یک مثال خاص از چهار صفر و یک 1.0 واحد در موقعیت سوم تشکیل شده است، به شرح زیر:

[0.0, 0.0, 1.0, 0.0, 0.0]

As another example, suppose your model consists of three features:

  • a binary categorical feature with five possible values represented with one-hot encoding; for example: [0.0, 1.0, 0.0, 0.0, 0.0]
  • another binary categorical feature with three possible values represented with one-hot encoding; for example: [0.0, 0.0, 1.0]
  • a floating-point feature; for example: 8.3 .

In this case, the feature vector for each example would be represented by nine values. Given the example values in the preceding list, the feature vector would be:

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

feedback loop

#fundamentals

In machine learning, a situation in which a model's predictions influence the training data for the same model or another model. For example, a model that recommends movies will influence the movies that people see, which will then influence subsequent movie recommendation models.

جی

generalization

#fundamentals

A model's ability to make correct predictions on new, previously unseen data. A model that can generalize is the opposite of a model that is overfitting .

generalization curve

#fundamentals

A plot of both training loss and validation loss as a function of the number of iterations .

A generalization curve can help you detect possible overfitting . For example, the following generalization curve suggests overfitting because validation loss ultimately becomes significantly higher than training loss.

A Cartesian graph in which the y-axis is labeled 'loss' and the x-axis
          is labeled 'iterations'. Two plots appear. One plots shows the
          training loss and the other shows the validation loss.
          The two plots start off similarly, but the training loss eventually
          dips far lower than the validation loss.

gradient descent

#fundamentals

A mathematical technique to minimize loss . Gradient descent iteratively adjusts weights and biases , gradually finding the best combination to minimize loss.

Gradient descent is older—much, much older—than machine learning.

ground truth

#fundamentals

واقعیت.

The thing that actually happened.

For example, consider a binary classification model that predicts whether a student in their first year of university will graduate within six years. Ground truth for this model is whether or not that student actually graduated within six years.

اچ

hidden layer

#fundamentals

A layer in a neural network between the input layer (the features) and the output layer (the prediction). Each hidden layer consists of one or more neurons . For example, the following neural network contains two hidden layers, the first with three neurons and the second with two neurons:

Four layers. The first layer is an input layer containing two
          features. The second layer is a hidden layer containing three
          neurons. The third layer is a hidden layer containing two
          neurons. The fourth layer is an output layer. Each feature
          contains three edges, each of which points to a different neuron
          in the second layer. Each of the neurons in the second layer
          contains two edges, each of which points to a different neuron
          in the third layer. Each of the neurons in the third layer contain
          one edge, each pointing to the output layer.

A deep neural network contains more than one hidden layer. For example, the preceding illustration is a deep neural network because the model contains two hidden layers.

hyperparameter

#fundamentals

The variables that you or a hyperparameter tuning serviceadjust during successive runs of training a model. For example, learning rate is a hyperparameter. You could set the learning rate to 0.01 before one training session. If you determine that 0.01 is too high, you could perhaps set the learning rate to 0.003 for the next training session.

In contrast, parameters are the various weights and bias that the model learns during training.

من

independently and identically distributed (iid)

#fundamentals

Data drawn from a distribution that doesn't change, and where each value drawn doesn't depend on values that have been drawn previously. An iid is the ideal gas of machine learning—a useful mathematical construct but almost never exactly found in the real world. For example, the distribution of visitors to a web page may be iid over a brief window of time; that is, the distribution doesn't change during that brief window and one person's visit is generally independent of another's visit. However, if you expand that window of time, seasonal differences in the web page's visitors may appear.

See also nonstationarity .

inference

#fundamentals

In machine learning, the process of making predictions by applying a trained model to unlabeled examples .

Inference has a somewhat different meaning in statistics. See the Wikipedia article on statistical inference for details.

input layer

#fundamentals

The layer of a neural network that holds the feature vector . That is, the input layer provides examples for training or inference . For example, the input layer in the following neural network consists of two features:

Four layers: an input layer, two hidden layers, and an output layer.

interpretability

#fundamentals

The ability to explain or to present an ML model's reasoning in understandable terms to a human.

Most linear regression models, for example, are highly interpretable. (You merely need to look at the trained weights for each feature.) Decision forests are also highly interpretable. Some models, however, require sophisticated visualization to become interpretable.

You can use the Learning Interpretability Tool (LIT) to interpret ML models.

iteration

#fundamentals

A single update of a model's parameters—the model's weights and biases —during training . The batch size determines how many examples the model processes in a single iteration. For instance, if the batch size is 20, then the model processes 20 examples before adjusting the parameters.

When training a neural network , a single iteration involves the following two passes:

  1. A forward pass to evaluate loss on a single batch.
  2. A backward pass ( backpropagation ) to adjust the model's parameters based on the loss and the learning rate.

L

L 0 regularization

#fundamentals

A type of regularization that penalizes the total number of nonzero weights in a model. For example, a model having 11 nonzero weights would be penalized more than a similar model having 10 nonzero weights.

L 0 regularization is sometimes called L0-norm regularization .

L 1 loss

#fundamentals

A loss function that calculates the absolute value of the difference between actual label values and the values that a model predicts. For example, here's the calculation of L 1 loss for a batch of five examples :

Actual value of example Model's predicted value Absolute value of delta
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
8 = L 1 loss

L 1 loss is less sensitive to outliers than L 2 loss .

The Mean Absolute Error is the average L 1 loss per example.

L 1 regularization

#fundamentals

A type of regularization that penalizes weights in proportion to the sum of the absolute value of the weights. L 1 regularization helps drive the weights of irrelevant or barely relevant features to exactly 0 . A feature with a weight of 0 is effectively removed from the model.

Contrast with L 2 regularization .

L 2 loss

#fundamentals

A loss function that calculates the square of the difference between actual label values and the values that a model predicts. For example, here's the calculation of L 2 loss for a batch of five examples :

Actual value of example Model's predicted value Square of delta
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
16 = L 2 loss

Due to squaring, L 2 loss amplifies the influence of outliers . That is, L 2 loss reacts more strongly to bad predictions than L 1 loss . For example, the L 1 loss for the preceding batch would be 8 rather than 16. Notice that a single outlier accounts for 9 of the 16.

Regression models typically use L 2 loss as the loss function.

The Mean Squared Error is the average L 2 loss per example. Squared loss is another name for L 2 loss.

L 2 regularization

#fundamentals

A type of regularization that penalizes weights in proportion to the sum of the squares of the weights. L 2 regularization helps drive outlier weights (those with high positive or low negative values) closer to 0 but not quite to 0 . Features with values very close to 0 remain in the model but don't influence the model's prediction very much.

L 2 regularization always improves generalization in linear models .

Contrast with L 1 regularization .

label

#fundamentals

In supervised machine learning , the "answer" or "result" portion of an example .

Each labeled example consists of one or more features and a label. For instance, in a spam detection dataset, the label would probably be either "spam" or "not spam." In a rainfall dataset, the label might be the amount of rain that fell during a certain period.

labeled example

#fundamentals

An example that contains one or more features and a label . For example, the following table shows three labeled examples from a house valuation model, each with three features and one label:

Number of bedrooms Number of bathrooms House age House price (label)
3 2 15 $345,000
2 1 72 $179,000
4 2 34 $392,000

In supervised machine learning , models train on labeled examples and make predictions on unlabeled examples .

Contrast labeled example with unlabeled examples.

lambda

#fundamentals

Synonym for regularization rate .

Lambda is an overloaded term. Here we're focusing on the term's definition within regularization .

layer

#fundamentals

A set of neurons in a neural network . Three common types of layers are as follows:

For example, the following illustration shows a neural network with one input layer, two hidden layers, and one output layer:

A neural network with one input layer, two hidden layers, and one
          output layer. The input layer consists of two features. The first
          hidden layer consists of three neurons and the second hidden layer
          consists of two neurons. The output layer consists of a single node.

In TensorFlow , layers are also Python functions that take Tensors and configuration options as input and produce other tensors as output.

learning rate

#fundamentals

A floating-point number that tells the gradient descent algorithm how strongly to adjust weights and biases on each iteration . For example, a learning rate of 0.3 would adjust weights and biases three times more powerfully than a learning rate of 0.1.

Learning rate is a key hyperparameter . If you set the learning rate too low, training will take too long. If you set the learning rate too high, gradient descent often has trouble reaching convergence .

linear

#fundamentals

A relationship between two or more variables that can be represented solely through addition and multiplication.

The plot of a linear relationship is a line.

Contrast with nonlinear .

linear model

#fundamentals

A model that assigns one weight per feature to make predictions . (Linear models also incorporate a bias .) In contrast, the relationship of features to predictions in deep models is generally nonlinear .

Linear models are usually easier to train and more interpretable than deep models. However, deep models can learn complex relationships between features.

Linear regression and logistic regression are two types of linear models.

رگرسیون خطی

#fundamentals

A type of machine learning model in which both of the following are true:

  • The model is a linear model .
  • The prediction is a floating-point value. (This is the regression part of linear regression .)

Contrast linear regression with logistic regression . Also, contrast regression with classification .

logistic regression

#fundamentals

A type of regression model that predicts a probability. Logistic regression models have the following characteristics:

  • The label is categorical . The term logistic regression usually refers to binary logistic regression , that is, to a model that calculates probabilities for labels with two possible values. A less common variant, multinomial logistic regression , calculates probabilities for labels with more than two possible values.
  • The loss function during training is Log Loss . (Multiple Log Loss units can be placed in parallel for labels with more than two possible values.)
  • The model has a linear architecture, not a deep neural network. However, the remainder of this definition also applies to deep models that predict probabilities for categorical labels.

For example, consider a logistic regression model that calculates the probability of an input email being either spam or not spam. During inference, suppose the model predicts 0.72. Therefore, the model is estimating:

  • A 72% chance of the email being spam.
  • A 28% chance of the email not being spam.

A logistic regression model uses the following two-step architecture:

  1. The model generates a raw prediction (y') by applying a linear function of input features.
  2. The model uses that raw prediction as input to a sigmoid function , which converts the raw prediction to a value between 0 and 1, exclusive.

Like any regression model, a logistic regression model predicts a number. However, this number typically becomes part of a binary classification model as follows:

  • If the predicted number is greater than the classification threshold , the binary classification model predicts the positive class.
  • If the predicted number is less than the classification threshold, the binary classification model predicts the negative class.

Log Loss

#fundamentals

The loss function used in binary logistic regression .

log-odds

#fundamentals

The logarithm of the odds of some event.

ضرر - زیان

#fundamentals

During the training of a supervised model , a measure of how far a model's prediction is from its label .

A loss function calculates the loss.

loss curve

#fundamentals

A plot of loss as a function of the number of training iterations . The following plot shows a typical loss curve:

A Cartesian graph of loss versus training iterations, showing a
          rapid drop in loss for the initial iterations, followed by a gradual
          drop, and then a flat slope during the final iterations.

Loss curves can help you determine when your model is converging or overfitting .

Loss curves can plot all of the following types of loss:

See also generalization curve .

loss function

#fundamentals

During training or testing, a mathematical function that calculates the loss on a batch of examples. A loss function returns a lower loss for models that makes good predictions than for models that make bad predictions.

The goal of training is typically to minimize the loss that a loss function returns.

Many different kinds of loss functions exist. Pick the appropriate loss function for the kind of model you are building. مثلا:

م

machine learning

#fundamentals

A program or system that trains a model from input data. The trained model can make useful predictions from new (never-before-seen) data drawn from the same distribution as the one used to train the model.

Machine learning also refers to the field of study concerned with these programs or systems.

majority class

#fundamentals

The more common label in a class-imbalanced dataset . For example, given a dataset containing 99% negative labels and 1% positive labels, the negative labels are the majority class.

Contrast with minority class .

mini-batch

#fundamentals

A small, randomly selected subset of a batch processed in one iteration . The batch size of a mini-batch is usually between 10 and 1,000 examples.

For example, suppose the entire training set (the full batch) consists of 1,000 examples. Further suppose that you set the batch size of each mini-batch to 20. Therefore, each iteration determines the loss on a random 20 of the 1,000 examples and then adjusts the weights and biases accordingly.

It is much more efficient to calculate the loss on a mini-batch than the loss on all the examples in the full batch.

minority class

#fundamentals

The less common label in a class-imbalanced dataset . For example, given a dataset containing 99% negative labels and 1% positive labels, the positive labels are the minority class.

Contrast with majority class .

مدل

#fundamentals

In general, any mathematical construct that processes input data and returns output. Phrased differently, a model is the set of parameters and structure needed for a system to make predictions. In supervised machine learning , a model takes an example as input and infers a prediction as output. Within supervised machine learning, models differ somewhat. مثلا:

  • A linear regression model consists of a set of weights and a bias .
  • A neural network model consists of:
    • A set of hidden layers , each containing one or more neurons .
    • The weights and bias associated with each neuron.
  • A decision tree model consists of:
    • The shape of the tree; that is, the pattern in which the conditions and leaves are connected.
    • The conditions and leaves.

You can save, restore, or make copies of a model.

Unsupervised machine learning also generates models, typically a function that can map an input example to the most appropriate cluster .

multi-class classification

#fundamentals

In supervised learning, a classification problem in which the dataset contains more than two classes of labels. For example, the labels in the Iris dataset must be one of the following three classes:

  • Iris setosa
  • Iris virginica
  • Iris versicolor

A model trained on the Iris dataset that predicts Iris type on new examples is performing multi-class classification.

In contrast, classification problems that distinguish between exactly two classes are binary classification models . For example, an email model that predicts either spam or not spam is a binary classification model.

In clustering problems, multi-class classification refers to more than two clusters.

ن

negative class

#fundamentals

In binary classification , one class is termed positive and the other is termed negative . The positive class is the thing or event that the model is testing for and the negative class is the other possibility. مثلا:

  • The negative class in a medical test might be "not tumor."
  • کلاس منفی در یک طبقه‌بندی ایمیل ممکن است "نه هرزنامه" باشد.

Contrast with positive class .

neural network

#fundamentals

A model containing at least one hidden layer . A deep neural network is a type of neural network containing more than one hidden layer. For example, the following diagram shows a deep neural network containing two hidden layers.

A neural network with an input layer, two hidden layers, and an
          output layer.

Each neuron in a neural network connects to all of the nodes in the next layer. For example, in the preceding diagram, notice that each of the three neurons in the first hidden layer separately connect to both of the two neurons in the second hidden layer.

Neural networks implemented on computers are sometimes called artificial neural networks to differentiate them from neural networks found in brains and other nervous systems.

Some neural networks can mimic extremely complex nonlinear relationships between different features and the label.

See also convolutional neural network and recurrent neural network .

نورون

#fundamentals

In machine learning, a distinct unit within a hidden layer of a neural network . Each neuron performs the following two-step action:

  1. Calculates the weighted sum of input values multiplied by their corresponding weights.
  2. Passes the weighted sum as input to an activation function .

A neuron in the first hidden layer accepts inputs from the feature values in the input layer . A neuron in any hidden layer beyond the first accepts inputs from the neurons in the preceding hidden layer. For example, a neuron in the second hidden layer accepts inputs from the neurons in the first hidden layer.

The following illustration highlights two neurons and their inputs.

A neural network with an input layer, two hidden layers, and an
          output layer. Two neurons are highlighted: one in the first
          hidden layer and one in the second hidden layer. The highlighted
          neuron in the first hidden layer receives inputs from both features
          in the input layer. The highlighted neuron in the second hidden layer
          receives inputs from each of the three neurons in the first hidden
          layer.

A neuron in a neural network mimics the behavior of neurons in brains and other parts of nervous systems.

node (neural network)

#fundamentals

A neuron in a hidden layer .

nonlinear

#fundamentals

A relationship between two or more variables that can't be represented solely through addition and multiplication. A linear relationship can be represented as a line; a nonlinear relationship can't be represented as a line. For example, consider two models that each relate a single feature to a single label. The model on the left is linear and the model on the right is nonlinear:

Two plots. One plot is a line, so this is a linear relationship.
          The other plot is a curve, so this is a nonlinear relationship.

nonstationarity

#fundamentals

A feature whose values change across one or more dimensions, usually time. For example, consider the following examples of nonstationarity:

  • The number of swimsuits sold at a particular store varies with the season.
  • The quantity of a particular fruit harvested in a particular region is zero for much of the year but large for a brief period.
  • Due to climate change, annual mean temperatures are shifting.

Contrast with stationarity .

normalization

#fundamentals

Broadly speaking, the process of converting a variable's actual range of values into a standard range of values, such as:

  • -1 to +1
  • 0 to 1
  • the normal distribution

For example, suppose the actual range of values of a certain feature is 800 to 2,400. As part of feature engineering , you could normalize the actual values down to a standard range, such as -1 to +1.

Normalization is a common task in feature engineering . Models usually train faster (and produce better predictions) when every numerical feature in the feature vector has roughly the same range.

numerical data

#fundamentals

Features represented as integers or real-valued numbers. For example, a house valuation model would probably represent the size of a house (in square feet or square meters) as numerical data. Representing a feature as numerical data indicates that the feature's values have a mathematical relationship to the label. That is, the number of square meters in a house probably has some mathematical relationship to the value of the house.

Not all integer data should be represented as numerical data. For example, postal codes in some parts of the world are integers; however, integer postal codes should not be represented as numerical data in models. That's because a postal code of 20000 is not twice (or half) as potent as a postal code of 10000. Furthermore, although different postal codes do correlate to different real estate values, we can't assume that real estate values at postal code 20000 are twice as valuable as real estate values at postal code 10000. Postal codes should be represented as categorical data instead.

Numerical features are sometimes called continuous features .

O

offline

#fundamentals

Synonym for static .

offline inference

#fundamentals

The process of a model generating a batch of predictions and then caching (saving) those predictions. Apps can then access the desired prediction from the cache rather than rerunning the model.

For example, consider a model that generates local weather forecasts (predictions) once every four hours. After each model run, the system caches all the local weather forecasts. Weather apps retrieve the forecasts from the cache.

Offline inference is also called static inference .

Contrast with online inference .

one-hot encoding

#fundamentals

Representing categorical data as a vector in which:

  • One element is set to 1.
  • All other elements are set to 0.

One-hot encoding is commonly used to represent strings or identifiers that have a finite set of possible values. For example, suppose a certain categorical feature named Scandinavia has five possible values:

  • "Denmark"
  • "Sweden"
  • "Norway"
  • "Finland"
  • "Iceland"

One-hot encoding could represent each of the five values as follows:

country بردار
"Denmark" 1 0 0 0 0
"Sweden" 0 1 0 0 0
"Norway" 0 0 1 0 0
"Finland" 0 0 0 1 0
"Iceland" 0 0 0 0 1

Thanks to one-hot encoding, a model can learn different connections based on each of the five countries.

Representing a feature as numerical data is an alternative to one-hot encoding. Unfortunately, representing the Scandinavian countries numerically is not a good choice. For example, consider the following numeric representation:

  • "Denmark" is 0
  • "Sweden" is 1
  • "Norway" is 2
  • "Finland" is 3
  • "Iceland" is 4

With numeric encoding, a model would interpret the raw numbers mathematically and would try to train on those numbers. However, Iceland isn't actually twice as much (or half as much) of something as Norway, so the model would come to some strange conclusions.

one-vs.-all

#fundamentals

Given a classification problem with N classes, a solution consisting of N separate binary classifiers —one binary classifier for each possible outcome. For example, given a model that classifies examples as animal, vegetable, or mineral, a one-vs.-all solution would provide the following three separate binary classifiers:

  • animal vs. not animal
  • vegetable vs. not vegetable
  • mineral vs. not mineral

online

#fundamentals

Synonym for dynamic .

online inference

#fundamentals

Generating predictions on demand. For example, suppose an app passes input to a model and issues a request for a prediction. A system using online inference responds to the request by running the model (and returning the prediction to the app).

Contrast with offline inference .

output layer

#fundamentals

The "final" layer of a neural network. The output layer contains the prediction.

The following illustration shows a small deep neural network with an input layer, two hidden layers, and an output layer:

A neural network with one input layer, two hidden layers, and one
          output layer. The input layer consists of two features. The first
          hidden layer consists of three neurons and the second hidden layer
          consists of two neurons. The output layer consists of a single node.

overfitting

#fundamentals

Creating a model that matches the training data so closely that the model fails to make correct predictions on new data.

Regularization can reduce overfitting. Training on a large and diverse training set can also reduce overfitting.

پ

pandas

#fundamentals

A column-oriented data analysis API built on top of numpy . Many machine learning frameworks, including TensorFlow, support pandas data structures as inputs. See the pandas documentation for details.

parameter

#fundamentals

The weights and biases that a model learns during training . For example, in a linear regression model, the parameters consist of the bias ( b ) and all the weights ( w 1 , w 2 , and so on) in the following formula:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

In contrast, hyperparameter are the values that you (or a hyperparameter turning service) supply to the model. For example, learning rate is a hyperparameter.

positive class

#fundamentals

The class you are testing for.

For example, the positive class in a cancer model might be "tumor." The positive class in an email classifier might be "spam."

Contrast with negative class .

post-processing

#fairness
#fundamentals

Adjusting the output of a model after the model has been run. Post-processing can be used to enforce fairness constraints without modifying models themselves.

For example, one might apply post-processing to a binary classifier by setting a classification threshold such that equality of opportunity is maintained for some attribute by checking that the true positive rate is the same for all values of that attribute.

پیش بینی

#fundamentals

A model's output. مثلا:

  • The prediction of a binary classification model is either the positive class or the negative class.
  • The prediction of a multi-class classification model is one class.
  • The prediction of a linear regression model is a number.

proxy labels

#fundamentals

Data used to approximate labels not directly available in a dataset.

For example, suppose you must train a model to predict employee stress level. Your dataset contains a lot of predictive features but doesn't contain a label named stress level. Undaunted, you pick "workplace accidents" as a proxy label for stress level. After all, employees under high stress get into more accidents than calm employees. یا آنها؟ Maybe workplace accidents actually rise and fall for multiple reasons.

As a second example, suppose you want is it raining? to be a Boolean label for your dataset, but your dataset doesn't contain rain data. If photographs are available, you might establish pictures of people carrying umbrellas as a proxy label for is it raining? Is that a good proxy label? Possibly, but people in some cultures may be more likely to carry umbrellas to protect against sun than the rain.

Proxy labels are often imperfect. When possible, choose actual labels over proxy labels. That said, when an actual label is absent, pick the proxy label very carefully, choosing the least horrible proxy label candidate.

آر

rater

#fundamentals

A human who provides labels for examples . "Annotator" is another name for rater.

Rectified Linear Unit (ReLU)

#fundamentals

An activation function with the following behavior:

  • If input is negative or zero, then the output is 0.
  • If input is positive, then the output is equal to the input.

مثلا:

  • If the input is -3, then the output is 0.
  • If the input is +3, then the output is 3.0.

Here is a plot of ReLU:

A cartesian plot of two lines. The first line has a constant
          y value of 0, running along the x-axis from -infinity,0 to 0,-0.
          The second line starts at 0,0. This line has a slope of +1, so
          it runs from 0,0 to +infinity,+infinity.

ReLU is a very popular activation function. Despite its simple behavior, ReLU still enables a neural network to learn nonlinear relationships between features and the label .

regression model

#fundamentals

Informally, a model that generates a numerical prediction. (In contrast, a classification model generates a class prediction.) For example, the following are all regression models:

  • A model that predicts a certain house's value, such as 423,000 Euros.
  • A model that predicts a certain tree's life expectancy, such as 23.2 years.
  • A model that predicts the amount of rain that will fall in a certain city over the next six hours, such as 0.18 inches.

Two common types of regression models are:

  • Linear regression , which finds the line that best fits label values to features.
  • Logistic regression , which generates a probability between 0.0 and 1.0 that a system typically then maps to a class prediction.

Not every model that outputs numerical predictions is a regression model. In some cases, a numeric prediction is really just a classification model that happens to have numeric class names. For example, a model that predicts a numeric postal code is a classification model, not a regression model.

regularization

#fundamentals

Any mechanism that reduces overfitting . Popular types of regularization include:

Regularization can also be defined as the penalty on a model's complexity.

regularization rate

#fundamentals

A number that specifies the relative importance of regularization during training. Raising the regularization rate reduces overfitting but may reduce the model's predictive power. Conversely, reducing or omitting the regularization rate increases overfitting.

ReLU

#fundamentals

Abbreviation for Rectified Linear Unit .

retrieval-augmented generation

#fundamentals

A software architecture commonly used in large language model (LLM) applications. Common motivations to use retrieval-augmented generation include:

  • Increasing the factual accuracy of the model's generated responses
  • Giving the model access to knowledge it was not trained on
  • Changing what knowledge the model uses
  • Enabling the model to cite sources

For example, suppose that a chemistry app uses the PaLM API to generate summaries related to user queries. When the app's backend receives a query, the backend first searches for ("retrieves") data that's relevant to the user's query, appends ("augments") the relevant chemistry data to the user's query, and instructs the LLM to create a summary based on the appended data.

ROC (receiver operating characteristic) Curve

#fundamentals

A graph of true positive rate vs. false positive rate for different classification thresholds in binary classification.

The shape of an ROC curve suggests a binary classification model's ability to separate positive classes from negative classes. Suppose, for example, that a binary classification model perfectly separates all the negative classes from all the positive classes:

A number line with 8 positive examples on the right side and
          7 negative examples on the left.

The ROC curve for the preceding model looks as follows:

An ROC curve. The x-axis is False Positive Rate and the y-axis
          is True Positive Rate. The curve has an inverted L shape. The curve
          starts at (0.0,0.0) and goes straight up to (0.0,1.0). Then the curve
          goes from (0.0,1.0) to (1.0,1.0).

In contrast, the following illustration graphs the raw logistic regression values for a terrible model that can't separate negative classes from positive classes at all:

A number line with positive examples and negative classes
          completely intermixed.

The ROC curve for this model looks as follows:

An ROC curve, which is actually a straight line from (0.0,0.0)
          to (1.0,1.0).

Meanwhile, back in the real world, most binary classification models separate positive and negative classes to some degree, but usually not perfectly. So, a typical ROC curve falls somewhere between the two extremes:

An ROC curve. The x-axis is False Positive Rate and the y-axis
          is True Positive Rate. The ROC curve approximates a shaky arc
          traversing the compass points from West to North.

The point on an ROC curve closest to (0.0,1.0) theoretically identifies the ideal classification threshold. However, several other real-world issues influence the selection of the ideal classification threshold. For example, perhaps false negatives cause far more pain than false positives.

A numerical metric called AUC summarizes the ROC curve into a single floating-point value.

Root Mean Squared Error (RMSE)

#fundamentals

The square root of the Mean Squared Error .

اس

sigmoid function

#fundamentals

A mathematical function that "squishes" an input value into a constrained range, typically 0 to 1 or -1 to +1. That is, you can pass any number (two, a million, negative billion, whatever) to a sigmoid and the output will still be in the constrained range. A plot of the sigmoid activation function looks as follows:

A two-dimensional curved plot with x values spanning the domain
          -infinity to +positive, while y values span the range almost 0 to
          almost 1. When x is 0, y is 0.5. The slope of the curve is always
          positive, with the highest slope at 0,0.5 and gradually decreasing
          slopes as the absolute value of x increases.

The sigmoid function has several uses in machine learning, including:

softmax

#fundamentals

A function that determines probabilities for each possible class in a multi-class classification model . The probabilities add up to exactly 1.0. For example, the following table shows how softmax distributes various probabilities:

Image is a... احتمال
dog .85
گربه .13
اسب .02

Softmax is also called full softmax .

Contrast with candidate sampling .

sparse feature

#language
#fundamentals

A feature whose values are predominately zero or empty. For example, a feature containing a single 1 value and a million 0 values is sparse. In contrast, a dense feature has values that are predominantly not zero or empty.

In machine learning, a surprising number of features are sparse features. Categorical features are usually sparse features. For example, of the 300 possible tree species in a forest, a single example might identify just a maple tree . Or, of the millions of possible videos in a video library, a single example might identify just "Casablanca."

In a model, you typically represent sparse features with one-hot encoding . If the one-hot encoding is big, you might put an embedding layer on top of the one-hot encoding for greater efficiency.

sparse representation

#language
#fundamentals

Storing only the position(s) of nonzero elements in a sparse feature.

For example, suppose a categorical feature named species identifies the 36 tree species in a particular forest. Further assume that each example identifies only a single species.

You could use a one-hot vector to represent the tree species in each example. A one-hot vector would contain a single 1 (to represent the particular tree species in that example) and 35 0 s (to represent the 35 tree species not in that example). So, the one-hot representation of maple might look something like the following:

A vector in which positions 0 through 23 hold the value 0, position
          24 holds the value 1, and positions 25 through 35 hold the value 0.

Alternatively, sparse representation would simply identify the position of the particular species. If maple is at position 24, then the sparse representation of maple would simply be:

24

Notice that the sparse representation is much more compact than the one-hot representation.

sparse vector

#fundamentals

A vector whose values are mostly zeroes. See also sparse feature and sparsity .

squared loss

#fundamentals

Synonym for L 2 loss .

ایستا

#fundamentals

Something done once rather than continuously. The terms static and offline are synonyms. The following are common uses of static and offline in machine learning:

  • static model (or offline model ) is a model trained once and then used for a while.
  • static training (or offline training ) is the process of training a static model.
  • static inference (or offline inference ) is a process in which a model generates a batch of predictions at a time.

Contrast with dynamic .

static inference

#fundamentals

Synonym for offline inference .

stationarity

#fundamentals

A feature whose values don't change across one or more dimensions, usually time. For example, a feature whose values look about the same in 2021 and 2023 exhibits stationarity.

In the real world, very few features exhibit stationarity. Even features synonymous with stability (like sea level) change over time.

Contrast with nonstationarity .

stochastic gradient descent (SGD)

#fundamentals

A gradient descent algorithm in which the batch size is one. In other words, SGD trains on a single example chosen uniformly at random from a training set .

supervised machine learning

#fundamentals

Training a model from features and their corresponding labels . Supervised machine learning is analogous to learning a subject by studying a set of questions and their corresponding answers. After mastering the mapping between questions and answers, a student can then provide answers to new (never-before-seen) questions on the same topic.

Compare with unsupervised machine learning .

synthetic feature

#fundamentals

A feature not present among the input features, but assembled from one or more of them. Methods for creating synthetic features include the following:

  • Bucketing a continuous feature into range bins.
  • Creating a feature cross .
  • Multiplying (or dividing) one feature value by other feature value(s) or by itself. For example, if a and b are input features, then the following are examples of synthetic features:
    • ab
    • a 2
  • Applying a transcendental function to a feature value. For example, if c is an input feature, then the following are examples of synthetic features:
    • sin(c)
    • ln(c)

Features created by normalizing or scaling alone are not considered synthetic features.

تی

test loss

#fundamentals

A metric representing a model's loss against the test set . When building a model , you typically try to minimize test loss. That's because a low test loss is a stronger quality signal than a low training loss or low validation loss .

A large gap between test loss and training loss or validation loss sometimes suggests that you need to increase the regularization rate .

آموزش

#fundamentals

The process of determining the ideal parameters (weights and biases) comprising a model . During training, a system reads in examples and gradually adjusts parameters. Training uses each example anywhere from a few times to billions of times.

training loss

#fundamentals

A metric representing a model's loss during a particular training iteration. For example, suppose the loss function is Mean Squared Error . Perhaps the training loss (the Mean Squared Error) for the 10th iteration is 2.2, and the training loss for the 100th iteration is 1.9.

A loss curve plots training loss vs. the number of iterations. A loss curve provides the following hints about training:

  • A downward slope implies that the model is improving.
  • An upward slope implies that the model is getting worse.
  • A flat slope implies that the model has reached convergence .

For example, the following somewhat idealized loss curve shows:

  • A steep downward slope during the initial iterations, which implies rapid model improvement.
  • A gradually flattening (but still downward) slope until close to the end of training, which implies continued model improvement at a somewhat slower pace then during the initial iterations.
  • A flat slope towards the end of training, which suggests convergence.

The plot of training loss vs. iterations. This loss curve starts
     with a steep downward slope. The slope gradually flattens until the
     slope becomes zero.

Although training loss is important, see also generalization .

training-serving skew

#fundamentals

The difference between a model's performance during training and that same model's performance during serving .

training set

#fundamentals

The subset of the dataset used to train a model .

Traditionally, examples in the dataset are divided into the following three distinct subsets:

Ideally, each example in the dataset should belong to only one of the preceding subsets. For example, a single example should not belong to both the training set and the validation set.

true negative (TN)

#fundamentals

An example in which the model correctly predicts the negative class . For example, the model infers that a particular email message is not spam , and that email message really is not spam .

true positive (TP)

#fundamentals

An example in which the model correctly predicts the positive class . For example, the model infers that a particular email message is spam, and that email message really is spam.

true positive rate (TPR)

#fundamentals

Synonym for recall . That is:

$$\text{true positive rate} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}}$$

True positive rate is the y-axis in an ROC curve .

U

underfitting

#fundamentals

Producing a model with poor predictive ability because the model hasn't fully captured the complexity of the training data. Many problems can cause underfitting, including:

unlabeled example

#fundamentals

An example that contains features but no label . For example, the following table shows three unlabeled examples from a house valuation model, each with three features but no house value:

Number of bedrooms Number of bathrooms House age
3 2 15
2 1 72
4 2 34

In supervised machine learning , models train on labeled examples and make predictions on unlabeled examples .

In semi-supervised and unsupervised learning, unlabeled examples are used during training.

Contrast unlabeled example with labeled example .

unsupervised machine learning

#clustering
#fundamentals

Training a model to find patterns in a dataset, typically an unlabeled dataset.

The most common use of unsupervised machine learning is to cluster data into groups of similar examples. For example, an unsupervised machine learning algorithm can cluster songs based on various properties of the music. The resulting clusters can become an input to other machine learning algorithms (for example, to a music recommendation service). Clustering can help when useful labels are scarce or absent. For example, in domains such as anti-abuse and fraud, clusters can help humans better understand the data.

Contrast with supervised machine learning .

V

validation

#fundamentals

The initial evaluation of a model's quality. Validation checks the quality of a model's predictions against the validation set .

Because the validation set differs from the training set , validation helps guard against overfitting .

You might think of evaluating the model against the validation set as the first round of testing and evaluating the model against the test set as the second round of testing.

validation loss

#fundamentals

A metric representing a model's loss on the validation set during a particular iteration of training.

See also generalization curve .

validation set

#fundamentals

The subset of the dataset that performs initial evaluation against a trained model . Typically, you evaluate the trained model against the validation set several times before evaluating the model against the test set .

Traditionally, you divide the examples in the dataset into the following three distinct subsets:

Ideally, each example in the dataset should belong to only one of the preceding subsets. For example, a single example should not belong to both the training set and the validation set.

دبلیو

weight

#fundamentals

A value that a model multiplies by another value. Training is the process of determining a model's ideal weights; inference is the process of using those learned weights to make predictions.

weighted sum

#fundamentals

The sum of all the relevant input values multiplied by their corresponding weights. For example, suppose the relevant inputs consist of the following:

input value input weight
2 -1.3
-1 0.6
3 0.4

The weighted sum is therefore:

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

A weighted sum is the input argument to an activation function .

ز

Z-score normalization

#fundamentals

A scaling technique that replaces a raw feature value with a floating-point value representing the number of standard deviations from that feature's mean. For example, consider a feature whose mean is 800 and whose standard deviation is 100. The following table shows how Z-score normalization would map the raw value to its Z-score:

Raw value Z-score
800 0
950 +1.5
575 -2.25

The machine learning model then trains on the Z-scores for that feature instead of on the raw values.