От купчина към таблица
В миналия урок видяхме, че всичко в компютъра е числа. Но купчина числа още не е нещо, от което може да се учи. За да сравним един пример с друг, те трябва да са описани по един и същ начин — с едни и същи характеристики, в един и същ ред. Това е таблицата.
Каквото и да прави един модел — разпознава снимки или предсказва закъснения, — данните му се свеждат до таблица. Правилата за нея са три и си струва да се научат веднъж завинаги.
Пример (ред, обект)
Един конкретен обект, за който имаме данни: един ученик, един имейл, един апартамент, една снимка.
Признак (колона, характеристика)
Едно измеримо свойство на примера: часовете сън, начинът на придвижване, площта, часът на изпращане.
Етикет (целева колона)
Отговорът, който искаме моделът да се научи да дава: „бодър ли е сутрин“, цената, „спам или не“. Етикетът е също колона, но е отделена от останалите, защото той е изходът, а те са входът.
Типове колони
| Тип | Пример | Какво може да се прави |
|---|---|---|
| Числова | път до училище 25 мин, сън 7.5 ч | сравнява се, събира се, смята се средно |
| Категорийна | транспорт „метро“, любим предмет „история“ | само равно / различно; брои се колко са от всеки вид |
| Да/не (двоична) | бодър ли е сутрин, има ли колело | да = 1, не = 0 |
Има и междинен случай — подредена колона: размер S/M/L или оценка от 1 до 5 звезди. Стойностите се сравняват („по-голямо“), но разликите между тях не са равни — от 1 до 2 звезди не е същото като от 4 до 5.
Разликата между типовете не е формална. Средно аритметично на часовете сън има смисъл; „средно аритметично“ на транспорта — не. Затова още при съставянето на таблицата решаваме коя колона какъв тип е.
Правила за добра таблица
Таблица, попълнена от 25 души, без предварителни правила, е неизползваема: единият пише „25 мин“, другият „25“, третият „около половин час“. Правилата се уговарят преди да се събере и една стойност.
- Една стойност в клетка. Не „автобус и пеша“ — избира се основният начин.
- Числото е само число. Единицата е в заглавието на колоната (
път_мин), не в клетката („25 мин“). - Категориите са от предварителен списък. Записани еднакво: с малки букви, без съкращения. „Математика“, „математика“ и „матем.“ са три различни стойности за компютъра.
- Да/не е точно „да“ или „не“. Не „yes“, не „понякога“, не „+“.
- Липса = празна клетка. Не 0 и не „—“. Нулата е стойност (0 книги), празното е липса на отговор.
- Без лични данни. Никакви имена, само номер на реда. Никакви колони за здраве, семейство, оценки, пари.
Примерният набор: учениците в класа
Ако класът не избере своя тема, ето готова: „учениците в класа“. Пет признака и един етикет, всичките безобидни. Таблицата по-долу е с измислени, но правдоподобни данни — ще ни служи за пример и в следващите три урока.
| № | транспорт | път_мин | сън_ч | любим_предмет | книги_год | бодър_сутрин |
|---|---|---|---|---|---|---|
| 1 | пеша | 10 | 8 | информатика | 4 | да |
| 2 | автобус | 35 | 6.5 | история | 2 | не |
| 3 | метро | 25 | 7.5 | математика | 6 | да |
| 4 | кола | 20 | 7 | физическо | 1 | да |
| 5 | пеша | 15 | 6 | литература | 12 | не |
| 6 | автобус | 45 | 7 | английски | 3 | не |
| 7 | метро | 30 | 8.5 | информатика | 5 | да |
| 8 | колело | 15 | 7.5 | биология | 8 | да |
| 9 | автобус | 40 | 6.5 | математика | 0 | не |
| 10 | кола | 25 | 8 | английски | 7 | да |
| 11 | пеша | 5 | 9 | информатика | 3 | да |
| 12 | метро | 50 | 7 | история | 10 | не |
| Колона | Тип | Допустими стойности |
|---|---|---|
| транспорт | категорийна | пеша, автобус, метро, кола, колело |
| път_мин | числова (цяло) | от 1 до 120 |
| сън_ч | числова (дробно) | от 4 до 12, стъпка 0.5 |
| любим_предмет | категорийна | името на предмета с малки букви |
| книги_год | числова (цяло) | от 0 до 50 |
| бодър_сутрин | да/не — етикет | да или не |
Етикетът е бодър_сутрин: въпросът, на който бихме искали моделът да отговаря по останалите колони. Вижте редове 2, 6, 9 и 12 — какво общо имат? Не бързайте с извода: в урок 14 ще проверим дали е истински.
Какво трябва да запомниш
- Един ред е един обект (пример); една колона е една характеристика (признак).
- Етикетът е колоната, която искаме да предсказваме — изходът; останалите колони са входът.
- Три типа колони: числова, категорийна, да/не. Типът определя какво може да се смята с колоната.
- Категорийна колона не се кодира с 1, 2, 3 — числата носят подредба, каквато няма.
- Правилата за колоните се уговарят преди събирането: една стойност в клетка, число без единица, категории от списък, липса = празно.
- Никакви имена и лични данни — само номер на реда.