„Работи“ не е доказателство
Миналия час програмата тръгна и имате първо число. Днес превръщате „работи“ в нещо, което може да се провери от човек, който не е в екипа. Това носи 35% от оценката: 25% за тестове и кратка документация с декларация и 10% за честно посочени ограничения. Плюс подготовка на представянето, което носи още 25%.
Тестване
Тест
Един ред в таблица: конкретен вход, очакваният изход (записан преди да пуснете програмата) и полученият изход. Съвпадат — ✓, не — ✗ и кратко защо.
Очакваният изход се записва преди пускането. Иначе таблицата само повтаря каквото програмата е казала и не проверява нищо. Пример за съветник за спорт:
№ | Вход (отговорите) | Очакван извод | Получен извод | ✓/✗
1 | екип=да, навън=да | футбол | футбол | ✓
2 | екип=не, навън=не, музика=да | танци | танци | ✓
3 | екип=не, навън=да, издръжлив=да | бягане | бягане | ✓
4 | всички отговори „не“ | „не мога да реша“ | плуване | ✗ липсва правило
5 | празен ред вместо „да/не“ | „отговорете с да или не“ | срив | ✗ няма проверка
6 | „ДА“ с главни букви | като „да“ | „не мога да реша“ | ✗ сравнение по регистърГранични случаи
Граничен случай е вход, който е на ръба на очакваното: празен ред, букви вместо число, най-малката и най-голямата стойност, непозната дума, равенство в играта, снимка при друго осветление. Половината от истинските грешки живеят там — и учителят ще опита точно такива входове на защитата.
| Проект | Гранични случаи, които трябва да са в таблицата |
|---|---|
| Съветник, определител | непокрит случай; празен отговор; главни букви; отговор извън „да/не“ |
| Морски шах, Ним | заето поле; ход извън дъската; позиция с равенство; последният ход |
| Търсене в пъзел | начално състояние = целево; пъзел без решение (ако е възможен) |
| Перцептрон, класификатор по думи | вход с нула стойности; непознати думи; съобщение от една дума; пример точно на границата |
| Teachable Machine | друго осветление; друг фон; предмет извън трите класа; нищо пред камерата |
За модели: примерите, които бърка
При обучен модел таблицата с тестове е тестовият набор: всеки отделен пример с етикет и с отговора на модела. Точността е броят ✓ върху общия брой. Но по-важната част са ✗-овете: за всеки сгрешен пример — хипотеза защо. Това е суровината за раздела „какво не може“.
№ | Пример (тест) | Етикет | Модел | ✓/✗ | Защо според нас
1 | 155 г, 24 см | ябълка | ябълка | ✓ |
2 | 190 г, 26 см | ябълка | портокал | ✗ | голяма ябълка, а в обучението няма над 175 г
3 | 205 г, 27 см | портокал | портокал | ✓ |
…
Точност: 4 / 5 = 80%Документиране
Кратка документация: половин до една страница. Не разказ за това как сте работили, а справка за човек, който иска да пусне програмата и да знае какво да очаква.
ДОКУМЕНТАЦИЯ — „<име на проекта>“
Екип: ______________________
1. Задача (едно изречение)
Програмата получава ____ и връща ____.
2. Как работи (5–8 изречения)
Къде е елементът на изкуствен интелект: правила / дърво / търсене /
минимакс / перцептрон / обучен модел. Откъде са данните или правилата,
колко са, как са разделени на обучаващи и тестови.
3. Как се стартира
напр. „Отваря се Proekt.sln във Visual Studio, F5, отговаря се на
въпросите с да/не“ или „връзка към модела в Teachable Machine; натиска
се Use webcam и се показва предметът“.
4. Резултати
Числото от тестовата таблица: „11 от 12 теста минават“, „точност 80%
върху 5 тестови примера“. Първо и последно число, ако има разлика.
5. Какво не може (ограничения)
Три-четири честни изречения: върху какви входове греши и защо,
за какво не бива да се използва.
6. Кой какво е правил
По име: кои части от кода, данните, тестовете, документацията.
7. Източници
Уроци, от които е взет код; откъде са данните.| Слабо | Силно | |
|---|---|---|
| Как работи | „Програмата използва изкуствен интелект, за да препоръча спорт.“ | „12 правила в масив; първото, чието условие съвпада с отговорите, дава извода и обосновката.“ |
| Резултати | „Работи добре.“ | „10 от 12 теста минават; двата провала са при главни букви и при непокрит случай.“ |
| Ограничения | „Може да се използва от всеки.“ | „Обучен е върху 20 плода от един магазин; големи ябълки над 175 г ги бърка с портокали.“ |
| Принос | „Всички работихме по всичко.“ | „Мария — правилата и зареждането им; Петър — цикълът с въпросите; Ива — тестовете и проверката на входа.“ |
Декларация за използваните AI инструменти
Шаблонът е от урок 33; днес се попълва и подписва от всички. Декларира се всичко, което е написало текст или код вместо вас: чат асистент, довършване на код във Visual Studio, генератор на текст за документацията.
ДЕКЛАРАЦИЯ ЗА ИЗПОЛЗВАНИТЕ AI ИНСТРУМЕНТИ
Екип: ______________________ Проект: ______________________
1. Инструменти (или „не сме използвали“): ______________________
2. За какво точно: ______________________
3. Кое от предаденото е генерирано и как го проверихме: ______________________
4. Потвърждаваме, че можем да обясним всеки ред от кода.
Подписи: ____________ ____________ ____________Подготовка на представянето
Пет минути на екип, следващия час. Структурата е една за всички — така класът знае какво да слуша, а вие знаете какво да подготвите.
| Част | Време | Какво се очаква | Кой |
|---|---|---|---|
| Задачата | 30 сек | какво влиза, какво излиза, за кого | един |
| Демонстрация | 1.5 мин | програмата на живо с 3–4 подготвени входа, включително един граничен и един, на който греши | втори |
| Как работи | 1 мин | къде е елементът на AI; откъде са правилата или данните; числото от тестовете | трети |
| Ограничения | 1 мин | два случая на провал с хипотеза защо; за какво не бива да се използва | който и да е |
| Въпроси | 1 мин | от класа и от учителя — отговаря този, чиято е частта | всички |
- Всеки от екипа говори. Който мълчи на представянето, ще бъде питан на въпросите.
- Входовете за демонстрацията се избират днес и се записват — не се измислят на място.
- Резерва: екранни снимки на изхода или кратко видео на телефона, ако компютърът в час откаже.
- Не се показва код на екрана, освен ако някой попита. Показва се какво прави програмата.
Какво трябва да запомниш
- Тест = вход, очакван изход (записан преди пускането), получен изход, ✓/✗.
- Граничните случаи — празен вход, букви вместо число, непокрит случай, друго осветление — са задължителна част от таблицата.
- За модел таблицата е тестовият набор; ✗-овете с хипотеза защо са по-ценни от ✓-овете.
- Документацията е справка за външен човек: задача, как работи, как се стартира, резултати, какво не може, кой какво е правил.
- Декларацията се предава винаги, с „как го проверихме“ за всяко генерирано парче.
- Представянето: задача → демонстрация → как работи → ограничения → въпроси; всеки говори.