Такой вот диалог состоялся сегодня. С позволения коллеги опубликую его часть. Спасибо собеседнику за чудный диалог!
Люблю эту задачку, стараюсь ее использовать в работе. Счтаю упущением, что ей не уделяют должного внимания в школе.
Q: ... это гипотеза, и она может стать самоисполняющимся пророчеством, если ее попробовать подтверждать, а не не опровергнуть. Знаешь этот баяс?
A: давай)
Q: Есть загадка. Есть некоторая закономерность. Вот ее три числа из нее: 2 4 8.
Твоя задача:
1) или сказать мне какая закономерность мной задумана
2) или предложить 3 другие цифры ряда чтобы проверить подходит или нет
Я могу только так делиться с тобой инфой
на 1) вопрос "да, это загаданная мной закономерность" или "нет, это не та закономерность что я загадал"
и на второй вопрос "да, эти числа подходят под загаданную закономмерность" или "нет, не подходят"
A: арифметичская прогрессия ?)
Q: нет
A: цифры на numpad в виде ромбика?
Q: нет
A: 16 32 64
Q: подходит под мою закономерность что я загадал
A: чет я изначально подумал там 2 4 6 8, а оказся просто степени двойки)
Q: нет не степень двойки
A: ну я угадал 2 часть? нужно теперь закономерность? просто каждое число это предыдущие 2 помноженные, забыл как называется)
Q: нет это не то что загадано
A: типа фибоначчи только перемноженные. а нет, не подходит
Q: нет не чиса фибоначчи загаданы
A: 32 256 8192
Q: 32 256 8192 - подходит
A: может это просто любые четные числа?
Q: нет, не эту закономерность я загадал
A: я сдаюсь)
Q: я сейчас умничаю чуть, но так же было не просто. потом ты сможешь сделать то же с другими ребятами
A: алгоритмы не мой конёк)
Q: смотри один момент.
можно докзывать гипотезу, пытаться подтвердить ее тестами, которые сразу зеленые.
а можно попробовать опровергнуть гипотезу, и попытаться найти тест, который будет красный
A: то есть мне следовало сначала попробовать неверную комбинацию?
Q: у тебя есть идея, например степень двойки
и вместо того, чтобы ее подтвержать
2 4 8
16 32 64
128 256 512
что все будет да да да, напиши один тест, который опровергнет ее и посмотри что будет
A: а ты как среагируешь - скажешь что подходит?
Q: давай проверим - зависсит от того что я загадал
A: 9 6 3
Q: это не подходит
идея в том, что 1 фейл тест сразу отсекает гипотезу, но 10000 саксес тестов не делают того же
A: ага
Q: а баяс в том, что люди и их метод познания мира заточен by default под подтверждение - сразу выдвинуть гипотезу, посмотреть что она работает и погнали, а она объясняет только часть модели мира, и то очень поверхностно
A: есть вроде какой-то вид тестирования, в основе которого такой принцип
Q: Test Driven Development с его fail first
A: нет, я про сначала все опровержения, т.е. негативные кейсы)
то есть у тебя реальная закономерность
Q: да
A: ну мне только брутфорсом остаётся)
0 2 4
Q: подходит
A: 4 8 3
Q: 16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
A: нечётные - падают
Q: а попробуй опровергни эту гипотезу?
она рабочая у тебя - и сразу могу сказать что это не то что я загадал, но попробуй это тестом покажи
A: опровергнуть гипотезу что все четные - true?)
Q: да, какой тест может ее опровергнуть, ну или набор тестов - ты не ограничен в попытках
A: можно ограничиться 2 тестами
1 1 1
2 2 2
первое упадет второе пройдет
Q: 16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
A: хм
значит и порядок важен?
пробуем 2 3 4
Q: и это тоже гипотеза, опровергни ее
16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
2 3 4 - true
A: 2 4 3
Q: 16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
2 3 4 - true
2 4 3 - false
A: значит не связано с чётностью, а только порядок важен
Q: это гипотеза
или тест, или закономерность
я смогу провалидировать
даешь больше fail тестов!
A: 0 0 1
будет много тестов)
Q: 16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
2 3 4 - true
2 4 3 - false
0 0 1 - false
A: 0 1 0
Q: отлично
16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
2 3 4 - true
2 4 3 - false
0 0 1 - false
0 1 0 - false
A: надо проверять каждую позицию
1 0 0
Q: 16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
2 3 4 - true
2 4 3 - false
0 0 1 - false
0 1 0 - false
1 0 0 - false
A: 1 2 0
Q: 16 32 64 - true
32 256 8192 - true
9 6 3 - false
0 2 4 - true
4 8 3 - false
1 1 1 - false
2 2 2 - false
2 3 4 - true
2 4 3 - false
0 0 1 - false
0 1 0 - false
1 0 0 - false
1 2 0 - false
A: 9 2 3
Q: ...
9 2 3 - false
A: 1 2 3
Q: 1 2 3 - true
A: ну всё я уверен
есть закономерность
каждое число больше предыдущего
я проверил все 3 позиции
Q: верно!
смотри что интересно, когда ты начинаешь генерить тесты которые будут false по твоему ты можешь получить diff между я думал А (false), а на самом деле Б (true)
вот так отсеиваются гипотезы
в этом суть научного подхода
если ты генеришь тесты которые true - то скорее всего ты будешь получать подтверждения гипотезы, что не доказывает ее правдивость
хоть 10000000 раз подтверди
A: ну это примерно как проверяют вакцины
согласен, проще сначала опровергнуть
Q: все потому что одно может включать другое просто
Q: и твоя гипотеза ок, как частный случай
а есть другие люди
и тут двоим ребятам может показаться, что не прав тот кто точно ничего общего не имеет с вашим пересечением
A: и вроде у всех всё сходится, и у каждого своя правда
Q: так и живем
одними и теми же словами описывая разный опыт
потому что у Homo Sapiens есть баясы
их много вообще
Q: А про научный подход есть видео хорошее, очень рекомендую
Если думаешь что что-то правда изо всех сил старайся это опровергнуть, если это не получится как ты не старайся - вероятно ты подобрался/алась близко к истине.
Комментариев нет:
Отправить комментарий