Кратковременная память и закон Миллера в микроколодах

velkin velkin

Программы интервальных повторений


Если посмотреть в веб-поиске, то программы для метода интервальных повторений не создавал только ленивый.

И это не только популярные программы вроде.
1. Anki.
2. Mnemosyne.
3. SuperMemo.

И прочих по списку включая даже софт для тестирования вроде.
4. MyTestXPro.

Но что ещё интереснее малоизвестный софт.
5. SpacedRepetitionApp.
6. MindVault.

И, конечно же, мой самопал.
7. Kisa Teacher.

Зачем нужна своя программа интервальных повторений


По поводу зачем мне своя программа есть интересные статьи от других людей.

1. Деградация организации заметок одного программиста.
История перехода от папок и текстовых файлов к "крутым" системам вроде Evernote с Anki и последующим возвращением назад.

2. Ричард Хэмминг: Глава 22. Обучение с помощью компьютера (CAI).
Рассуждения про Хоторнский эффект, то есть вера в метод обучения проистекающий из внешней помощи, и крушение метода обучения, когда внешняя помощь пропадает.

Почему это важно? Потому что в моём случае метод обучения должен работать без того кто его разработал. Это относится к основным принципам, которые я бы хотел воплотить в действительность.

Методы и принципы интервальных повторений


Для примера в SpacedRepetitionApp заложили в основу.
1. Метод Эббингауза (Кривая_забывания).
2. Метод Пимслера (Система изучения языка Пимслера).
Я не вижу.
3. Метод Лейтнера (Система Лейтнера).
4. Метод Возняка (20 правил формулирования знаний)
5. Метод Скиннера (Программированное обучение)
И так далее. Кому надо могут посмотреть категорию педагогические технологии

Но больше меня заинтересовали принципы MindVault.
1. Интервальные повторения (spaced repetition).
Интервалы в 1, 3, 7, 14, 30, 60, 120, 240 дней для оптимального запоминания.
2. Интенсивность (intensity).
Помодоро-таймер.
3. Ограничение объема (chunking).
Около 5-10 элементов (7 ± 2 единицы).
4. Многоэтапное запоминание (multi-stage memorization).
Не изученные, Слабые, Средние, Сильные, Повторение.
5. Приоритезация (prioritization).
Приоритет карточкам Повторение, Слабые, Средние, только потом Не изученные.

Методики не являющиеся ключевыми в интервальных повторениях


Интервальные повторения это понятно, но откровенно говоря всё это не сработает. Дело в том, что чтобы нечто подобное работало нужно чтобы карточки уже были и оставалось только идти по ним по расписанию. А хороших карточек нет, что и является основным недостатком всех без исключения программ и даже сервисов интервальных повторений.

Помидор и прочие таймеры это тоже не совсем то, что нужно. Дело в том, что я писал уже статью Система управления временем (19.09.2022). Проблема не в том, что время используется не эффективно, проблема в том, что при эффективном использовании времени очень быстро расходуется запас еды, воды, кислорода, а мозг быстрее устаёт. То есть время как бы сэкономлено, но человек уже измочален и не может дальше работать.

Приоритезация это то, что меня больше всего раздражало в Anki. Я хочу учить или повторять то, что сам хочу, а не что мне подсовывает программа. По сути это одна из основных причин, почему я создал свою программу, мне надоело бороться с Anki, включая перенос карточек в AnkiDroid. Это к вопросу о том, когда метод Лейтнера попросту вредит, но есть нюанс и он касается третьего пункта.

Деление объёма колод для использования кратковременной памяти


Ограничение объёма или разбиение на кусочки. По большому счёту все эти принципы были украдены до нас. Возможно многие слышали про
*. Закон Миллера (Магическое число семь плюс-минус два).

Я про него слышал, как и слышал где звон, да не знаю где он.

Джордж Миллер во время своей работы в компании Bell Laboratories провёл ряд экспериментов, целью которых было изучение параметров памяти операторов. В результате опытов он обнаружил, что кратковременная память человека способна запоминать в среднем
9. Девять двоичных цифр.
8. Восемь десятичных цифр.
7. Семь букв алфавита.
5. Пять односложных слов.
То есть человек способен одновременно помнить 7 ± 2 элементов.

1. Во-первых, лаборатория Белла эта та в которой сначала создали язык программирования Си, а потом и C++.
2. Во-вторых, Миллер оказывается занимался тем же, чем и я, когда обнаружил этот закон, то есть разбивал операторы и прочее на части.
3. В-третьих, и что самое главное, я лично обнаружил, что больше 5 элементов нет смысла держать в кратковременной памяти и то это много, а закон нужно было бы назвать 3 ± 2.

И когда я удосужился прочитать, а что там на самом деле имелось в виду под 7 ± 2, когда мои опыты показывают не больше 5, и то это уже край, то оказалось, что я не проводил опыты на двоичных или десятичных цифрах, или на буквах алфавита. Я проводил опыты на понятиях, то есть односложных словах и фразах.

Причём, когда я говорю, что 5 это край, я так же могу сказать, что для односложных слов это уже много, но для фраз пусть даже имеющих логическую форму это число можно понижать ещё больше.

И спрашивается, какое это имеет отношение к карточкам интервальных повторений? На самом деле прямое. А что если создавать микроколоды размер которых может поместиться в кратковременную память.

Кратковременная память (КРП) — часть памяти человека, в которой информация поступает из сенсорной памяти, после обработки процессами восприятия

Грубо говоря, кратковременная память может имитировать сенсоры восприятия и являться частью сознания. Тогда как долговременная память является частью подсознания и требует для работы переноса из подсознания в сознание.

В отличие от сенсорной и кратковременной памяти, объекты долговременной памяти непосредственно не доступны сознанию, то есть эта память является частью подсознания.


Примеры деления объёма колод на понятия


Операторы.
1. Сложение
2. Вычитание.

Операторы.
1. Умножение.
2. Деление.

Положение тела.
1. Стоять
2. Сидеть.
3. Лежать.

Это может быть как обучение разговорному языку, перевода на другой разговорный язык, так и обучение языку программирования. Может быть даже не языку, а образам.

Мои опыты показали, что 3 ± 2 это ещё оптимистично в той части, где речь идёт про + 2. Оптимальнее всего сочетать по 1, 2, 3 элемента. И тогда я задумался почему? Причём не забывайте, что это всё проверялось на карточках с запоминанием и извлечением информации.

Взять те же типы C++.
1. Встроенные.
2. Адресные.
3. Определяемые.

Встроенные типы C++.
1. Пустые.
2. Числовые.

Числовые типы C++.
1. Целые.
2. Вещественные.

Причём слово целочисленные я свёл к целым. Это как раз пример односложных слов как в законе Миллера.

Целые типы C++
1. Мыслительные.
2. Символьные.
3. Целые.

Где целые в названии списка integral, а внутри списка integer, что при переводе одно и тоже, но не в данном случае. По сути это заморочки C++, особенно по той части, что разработчики могли поступить проще сразу ориентируясь на размер типа. Как собственно и разработчики Си, откуда это всё и пошло.

Пример микроколоды вещественных типов C++


Я не хочу забивать эту тему карточками, так как это съедает много места, но чисто для примера как выглядит колода.
// путь; название; расшифровка; name; transcript
/*-----------------------
-------------------------
-----------------------*/
//-----------------------

/*-----------------------
типы / встроенные  / вещественные
-------------------------
вещественные типы
///
плавающий вещественный тип
двойной вещественный тип
длинный двойной вещественный тип
-----------------------*/
real types
///
floating real type
double real type
long double real type
//-----------------------

/*-----------------------
типы / встроенные  / вещественные / плавающий
-------------------------
плавающий вещественный тип
///
плавающий
-----------------------*/
floating real type
///
float
//-----------------------

/*-----------------------
типы / встроенные  / вещественные / двойной
-------------------------
двойной вещественный тип
///
двойной
-----------------------*/
double real type
///
double
//-----------------------

/*-----------------------
типы / встроенные  / вещественные / длинный двойной
-------------------------
длинный двойной вещественный тип
///
длинный двойной
-----------------------*/
long double real type
///
long double
//-----------------------

Отношения поделённого объёма колод


Смысл в том, чтобы делать колоды из 3 ± 2 карточек в том числе включая первую карточку колоды не являющуюся шаблоном и представляющую список остальных карточек. Я сейчас не буду заострять внимание на том, что программа могла бы делать эту карточку автоматически на основе уже существующих, да и прочих особенностях относящихся к функционалу программы, а не методу обучения.

И здесь бы открыть книгу "Логика. Учебник для средней школы" Виноградов, Кузьмин.

Отношения между понятиями.

Понятия.
1. Сравнимые.
1.1. Совместимые.
1.1.1. Отношение тождества. (Пушкин, автор книги "Евгений Онегин")
1.1.2. Отношения подчинения. (художественное произведение, рассказ)
1.1.2. Отношение частичного совпадения объёмов. (тракторист, комсомолец)
1.2. Несовместимые.
1.2.1. Отношение соподчинения. (берёза, сосна, ель)
1.2.1. Отношение противоположности. (высокий, низкий)
1.2.1. Отношения противоречия. (высокий, не высокий)
2. Несравнимые. (квадрат, желание)


Это если глубоко копать, то есть пытаться понять, почему понятия легли в одну группу и какая между ними связь, то есть отношения.

1. Например, сложение это операция противоположная вычитанию.
2. И наоборот, вычитание это операция противоположная сложению.

Работает ли метод микроколод


По предварительным опытам да.

Основное преимущество.
1. Колоду можно запоминать в долговременную память, а извлекать сразу в кратковременную память.

У него так же есть косвенные преимущества.
1. Создавать и усовершенствовать микроколоду проще и быстрее, чем большую.
2. Сосредоточение на микроколоде усиливает концентрацию на входящих в неё понятиях, что увеличивает качество результата.

Никакое дело не покажется невыполнимым, если разбить его на мелкие части и забить на него. (Генри Форд)

VladFein
VladFein
04.05.2025 08:52
Здравствуйте, velkin, Вы писали:

V>И, конечно же, мой самопал.

V>7. Kisa Teacher.

Если Вам интересно, на Mac OS не открывается:

“Teacher.app” Not Opened
Apple could not verify “Teacher.app” is free of malware that may harm your Mac or compromise your privacy.

velkin
velkin
05.05.2025 12:54
Здравствуйте, VladFein, Вы писали:

VF>Если Вам интересно, на Mac OS не открывается:

VF>“Teacher.app” Not Opened
VF>Apple could not verify “Teacher.app” is free of malware that may harm your Mac or compromise your privacy.

По идее так и должно быть. Для всех платформ установочные пакеты созданы без сертификатов. То есть их нет не только в MacOS, но и в Windows, и в Android. Для GNU/Linux сертификаты вроде как не нужны, там не установщик, а портативная версия. Кроме того, мне лень было делать установщик последней версии для GNU/Linux и MacOS, поскольку я хочу серьёзно улучшить программу, а пока занят созданием русско-английских карт для C++ и Assembler.

Для Android я написал упоминание, что надо отключить Google Play и возможно что-то ещё во время ручной установки из apk. Эти искусственные ограничения начались в Android 14, чтобы нельзя было устанавливать программы для более старых версий Android. Впрочем проблема в том, что Android версия как таковая ещё и не делалась, точнее не должно быть Android версии, должна быть одна версия, которая работает корректно везде.

А что касается MacOS, то при создании использовалась MacOS 10.15 (Catalina) с обновлением до 10.15.4 включая XCode на хакинтош от Intel в VirtualBox. Предполагается, что люди знают, какую галочку нажать, чтобы запустить программу без сертификатов. Там надо было куда-то зайти, и что-то там включить. Я видел много раз подобные статьи, некоторые ещё даже хвастались в комментариях, что это само собой.

Причём недавно была тема Неподписанное приложение перестало запускаться (24.04.25)(apple.os). Раз уж у меня нет учётки разработчика Apple, да и в принципе я не могу двинуться дальше Qt 5.9.9 без существенных затрат ресурсов включая деньги, время и людей, то я естественно максимум мог бы написать инструкцию как запускать программу, но опять же не точную, так как компьютеров с маком у меня никогда не было.

А поскольку программа в моей голове претерпела существенные изменения с тех пор как она была в начале создания Суперобучение с помощью карточек (07.11.2024), то есть пол года назад, то я и так разрываюсь, то ли делать карточки чтобы стать умнее, то ли внедрить расширяемые микроколоды с переводом, то ли реализовать обновление микроколод и прочих элементов вроде перевода программы с частных серверов включая центральный, то ли сделать наконец уже нормальный интерфейс и так далее.

И на фоне всего этого стоят такие проблемы, как отсутствие сертификата для MacOS и нет даже инструкции как запустить в обход. Причём сертификатов нет и для Windows, а люди ведь тоже покупают их за деньги. Впрочем из России я теперь уже ничего не смогу купить как раньше картой Visa, даже если бы захотел.

Я собираюсь поддерживать два основных языка русский (Россия) и английский (США). Именно в США наиболее распространены макбуки и прочие компьютеры от Apple, но поддержка есть не потому что я хочу что-то такое поддерживать, а потому что могу. А ведь чисто теоретически эту программу можно было бы собрать под iPhone, то есть сборка для iPhone в Qt 5.9.9 есть, только по куче причин связанных с Apple ничего у других работать не будет.

У меня это выглядит как на снимке экрана ниже, но да, без сертификатов от Apple будут проблемы со всеми вытекающими при установке на MacOS. Но по большому счёту версии начинающиеся с нуля 0.* это не более, чем прототип, то есть по сути только для проверки работают или нет принципы заложенные в программу.

Потому мне больше интересен вопрос могут ли пользователи MacOS потыкав галки "безопасности" в принципе запустить эту программу, и если могут, то на каких версиях это делалось. Потому что по чужим статьям я вижу, что с каждым годом гайки закручивают всё сильнее, и то что запустить так просто нельзя и так понятно.

Ведь по нормальному, если бы я разрабатывал что-то коммерческое для MacOS я по идее должен был бы засунуть туда сертификаты от Apple и сделать версии не только для x64, но и для новых Apple M1 и выше. Но по причинам указанным выше, то что я мог сделать малыми силами я сделал. Те же сертификаты я малыми силами сделать не мог, как и версию для Apple M1 и выше.

Ещё было такое соображение, что может быть нативную программу для MacOS на x64 без сертификатов проще запустить, чем ту же версию для Windows. Я просто читал ещё такое, что люди запускают нужные им программы для Windows на MacOS через что-то там. Мне в связи с этим вспоминается GNU/Linux и как там всё неудобно устроено в Wine.

[img=large]http://files.rsdn.org/99832/kisa_teacher_0.5_macos_vbox.jpg[/img]