Цель этой статьи — представить цветное гиперпространство, в котором расстояние извлекается не с помощью числовых значений, а с помощью изменения цвета (или колебания). Представьте себе внутреннюю часть сферы; случайным образом добавьте семь цветов радуги в виде точек внутри этой сферы; а затем расширять их все сразу и с одинаковой скоростью (включая сферу).
Семь цветов радуги: красный, оранжевый, желтый, зеленый, синий, синий, фиолетовый; и вместе они образуют бесконечную линию колеблющихся цветов. Мы превращаем семь цветов в круг, по которому можно проходить бесконечно. Чтобы поиграть с этим кругом, мы можем закрасить 25% его черного цвета. Когда наш цикл достигает начала черной области, он сразу же телепортируется в ее конец. Мы также можем покрасить еще 25% круга в белый цвет. Когда наша петля достигает начала белой области, она немедленно смещает свое движение назад и повторяет цикл в обратном направлении, пока не достигнет другого начала белой области, где она снова смещается назад.
В этом круге, помимо цветов, которые мы разместили, мы могли бы использовать методы машинного обучения, чтобы позволить алгоритму структурировать (или сортировать) противоположные концепции на противоположных сторонах. Такие понятия, как: движение (расположено вверху) – статично (расположено внизу); горячий (расположен вверху) – холодный (расположен вниз); изменение (размещено слева) - статично (размещено...внизу?). Машинное обучение — довольно размытая область. Используя алгоритмы расшифровки контекста, мы стремимся классифицировать концепции и идеи на основе их противоположностей и помещать их в спектр разума. А позже искусственный интеллект делает еще более нечеткие вещи, когда этот спектр разума используется для выдачи наиболее точного ответа на полученный ввод.
После длительного обучения концепции четко классифицированы и готовы к использованию. Эта готовность не является фиксированным результатом и может различаться по стоимости, эффективности и точности; на основе качества используемых алгоритмов, качества данных и, возможно, качества пространства, на котором производится сортировка. Когда дело доходит до качества пространства, мы можем взять в качестве примера наш круг и задать несколько вопросов: гибкое ли это пространство? У нас есть черно-белые области, которые позволяют совершить нечто вроде путешествия между измерениями (пропуская части и переворачивая пространство вверх дном); Это однородное (везде одинаковое) пространство? Круга явно нет. Однако если мы возьмем 2D-пространство из плиток 7x7 и заполним его цветами таким образом, чтобы, с какого бы направления и на каком бы выравнивании мы ни смотрели, мы видели цвета радуги, то, полагаю, мы получили однородное пространство (+ -). В этом двумерном пространстве 7x7 мы, по сути, получили 7 развернутых кругов, возможно, каждый со своей уникальной сортировкой и концепциями.
Расширив 2D пространство 7x7 до 3D 7x7x7, где из любого места, через любой выбранный нами ряд мы проходим через все семь цветов радуги, мы получили наше однородное 3D пространство. Чтобы сделать его гибким, нам нужно каким-то образом покрасить некоторые части в черный или белый цвет, чтобы обеспечить более сложное перемещение. Представим, что мы красим средний блок в черный цвет. Теперь, с какой бы стороны мы ни пришли, мы неизбежно «натолкнемся» на нее и будем вынуждены ее пропустить. И, возможно, мы хотим пропустить середину только тогда, когда идем с вершины куба. Как мы могли это сделать?
Один и, пожалуй, единственный возможный способ — отделить внутреннюю часть кубов от их границ. Таким образом, каждый куб будет иметь свои собственные 6 границ, каждая из которых будет учитывать черный/белый цвет/без специального аргумента, и позволит нам вести каждую сторону по-своему.
Теперь вы можете задаться вопросом, почему я решил назвать это пространство «гиперпространством», а не обычным трехмерным пространством. В математике гиперпространство определяется как более чем трехмерное пространство, а в научной фантастике — как пространство, позволяющее путешествовать со скоростью, превышающей скорость света. Перенося эти идеи в наше цветное вычислительное пространство, мы понимаем, что каждый «тик» вычислений учитывает куб (или его границу). Если, например, в нашем пространстве 7x7x7 мы отметим все верхние границы средних кубиков черными, мы мгновенно их все пропустим. Но да, при вычислениях нам обычно требуется проверять каждую границу, чтобы убедиться, что все их можно пропустить. Однако после того, как это пространство было создано, на этом пространстве можно запустить определенный алгоритм, чтобы просто проверить каждую черную и каждую белую рамку, а затем записать на них соответствующий номер. Например, поскольку все наши средние кубы имеют черные верхние границы, границе самого нижнего куба будет присвоен номер 1, поскольку на этом этапе он сам пропускается, на верхней границе второго нижнего куба будет записан номер 2, и так далее. до 7-й верхней границы.
Алгоритм, которому поручено проверять и отмечать границы каждого куба, является промежуточным звеном между созданием гиперпространства и его развертыванием. Что касается создания, давайте предположим, что концепции организованы в гиперпространстве таким образом, чтобы их можно было выражать линейно. Например, если в нижней части пространства есть строки, инкапсулирующие «снаружи», «холодно», «облачно», «погода» и т. д., «линия выражения» (или, может быть, рациональная нить повествования) может выражать «на улице очень холодно из-за пасмурной погоды», а может быть, «Холодная погода на улице обусловлена пасмурной атмосферой» (при условии, что в списке понятий есть «атмосфера»). Возможно, первое выражение менее «рационально затратно» просто потому, что оно следует заданным понятиям в линейной мере, тогда как второе более затратное, но более ясное и детальное. В любом случае, дело в том, что существует четкая связь между тем, как формируется гиперпространство концептов и как оно впоследствии используется.
Теперь, когда мы знаем, как выглядит пространство, давайте попробуем взглянуть на него с точки зрения алгоритма, которому поручено подсчитать повторяющиеся границы, чтобы они в конечном итоге заработали. Давайте представим себя внутри большого кубика Рубика. С каждым шагом мы оказываемся в новом цвете. Допустим, мы каким-то образом видим вокруг себя область кубиков 5х5х5. Либо магией, либо памятью и интуицией, если мы знакомы с пространством. Мы продолжаем идти по цветам и с какой-то точки видим перед собой черную рамку с написанной на ней цифрой 1000. Это значит, что если мы пойдём вперёд, нас отправят на 1000 блоков вперёд. Мы стоим там некоторое время, думаем об этом, а затем решаем идти. Место, куда мы прибыли, очень похоже на то, где мы были раньше; ведь мы заявили, что пространство однородно. Но затем, когда мы поворачиваемся назад, у кубиков нет границ с другой стороны, и поэтому нам нужно пройти все эти 1000 кубиков один за другим, чтобы добраться до начальной точки. Пройдя 10 кубиков, оборачиваемся и видим черную рамку с цифрой 10 на ней. Кажется, мы всегда можем вернуться назад, если найдем для этого вескую причину.
Однако наша цель — исследовать это пространство и увидеть, что мы в нем находим. Где мы находим это определенное понятие, где мы находим его противоположность; и даже со временем узнайте, как сортируются противоположные понятия и как они связаны друг с другом. Даже если пространство организовано более или менее прогнозирующим образом, алгоритм, которому поручено исследовать его, а затем выражать себя через него, может изначально не иметь представления о том, что он там найдет. На мой взгляд, это позволяет проводить своего рода «интуитивное» исследование до такой степени, что можно сформировать и использовать отдельное «пространство памяти», чтобы позволить алгоритму перепрыгивать сотни кубов без необходимости каких-либо заранее установленных специальных граница.
Маленький забавный факт: если мы уберем все концептуальные идеи сортировки и оставим только цветные кубики и их специальные границы, мы могли бы случайным образом перетасовать все гиперпространство и сделать односторонний прыжок из 1000 блоков в определенную сторону. не зная, сколько блоков мы перепрыгнули. Когда нам нужно повернуть назад, границ не будет, поэтому нам придется проходить каждый куб по одному. Поскольку нам не было известно количество пройденных блоков, мы никогда не знали, как точно добраться до самого начала. Если мы хотим найти после 200 блоков пространство, которое является точной копией того, с которого мы начали, у нас нет возможности узнать, находимся ли мы в новом, но похожем пространстве или в самом начальном.