Как фиксировать, моделировать, изучать и обрабатывать концепции

Категоризация против классификации

Одна из моих любимых книг, которые я недавно прочитал, - Поверхности и сущности: аналогия как топливо и огонь мышления » Дугласа Хофштадтера . В этой книге центральный тезис автора состоит в том, что категоризация занимает центральное место в мышлении, а построение аналогий - это ядро ​​познания. Главный тезис Хофштадтера состоит в том, что концепции не являются жесткими, а плавными и размытыми, и не могут быть строго иерархическими. Он утверждает, что познание происходит благодаря постоянному потоку категоризации, в отличие от классификации (которая направлена ​​на то, чтобы поместить все вещи в фиксированные и жесткие ментальные рамки).

Концепции не похожи на вложенные блоки, где любое данное понятие жестко определяется в терминах точного набора ранее усвоенных концепций, а концепции всегда приобретаются в фиксированном порядке. (…) Зависимости размыты и затенены, а не точны, и нет строгого смысла выше или ниже в иерархии, поскольку зависимости могут быть взаимными. Новые концепции трансформируют концепции, которые существовали до них и позволяли им возникать; таким образом, новые концепции включаются в их родителей, а также наоборот. (Цитата из Поверхности и сущности: аналогия как топливо и огонь мышления)

Аналоги и классические тесты интеллекта

Хофштадтер также подверг критике, что многие люди используют слово «аналогия» как название определенного очень узкого класса предложений, кажущихся математическими по своей точности, следующего вида: «8 равно 4, поскольку 10 равно до 5 дюймов или «Запад находится на востоке, а левое - вправо». Это можно сделать еще более похожим на математическое утверждение. если он записан в квазиформальной записи:

запад: восток :: слева: справа

В тестах интеллекта часто используются головоломки, выраженные в таком виде. Например, они могут создавать проблемы такого рода: «помидор: красный :: брокколи: X», или, возможно, «сфера: круг :: куб: X», или «стопа: носок :: рука: X», или «Сатурн. : Ring :: Юпитер: X »или« Франция: Париж :: Соединенные Штаты: X »- и так далее, и так далее. Утверждается, что утверждения этой формы составляют пропорциональные аналогии, термин, который сам основан на аналогии между словами и числами, а именно на идее, что уравнение выражает идею о том, что одна пара чисел имеет одно и то же ratio, как и другая пара, (A / B = C / D) может быть перенесено непосредственно в мир слов и понятий. Таким образом, можно резюмировать эту аналогию в ее собственных терминах: аналогия относится к понятиям, как пропорциональность к количествам.

Пропорциональность: Количество :: Аналогия: Концепции

Можем ли мы кодировать концепции?

Хотя мы все еще очень далеки от общего определения интеллекта и способности манипулировать концепциями гибким, нежестким способом, можем ли мы по-прежнему кодировать концепции таким образом, чтобы это могло быть полезно для решения пропорциональных аналогий?

Автокодеры

Автокодировщики - это семейство алгоритмов, состоящих из двух частей: кодировщика и декодера. Кодер преобразует данные большой размерности в представление более низкой размерности, обычно более простое для обработки. Декодер преобразует нижнее представление обратно в исходное высокое измерение. В идеале у нас должен быть декодер, полностью воссоздающий исходные данные без потери информации.

В идеале мы хотели бы иметь: Decoder (Encoder (x)) = x

Легко провести аналогию между автокодировщиками и модемной технологией (аббревиатура от modulator-demodulator). Модулятор принимает цифровые данные и выдает сигнал с определенными физическими свойствами перед передачей. Демодулятор, с другой стороны, декодирует принятый сигнал для воспроизведения исходных цифровых данных.

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

Ответ основан на преимуществах посылки определенного сигнала посередине, а не посылки непосредственно исходного сигнала (например, если модулированный сигнал посередине имеет лучшую устойчивость к шуму).

Шум (Модулятор) + Шум (большое расстояние модулированного сигнала) + Шум (Демодулятор) ‹-------------------------------- Шум (большое расстояние исходного сигнала)

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

Причина этого явно бессмысленного и расточительного двойного преобразования (повышение, затем понижение) заключается в том, что общие потери из-за преобразований и транспортировки электроэнергии при высоком напряжении намного ниже, чем потери, возникающие при прямой передаче низкого напряжения. Напряжение.

Loss (повышение) + LossToTransfer (при высоком напряжении) + убыток (понижение)

Возвращаясь к нашим автокодировщикам, они следуют той же логике. Как правило, обработка данных большого размера обходится очень дорого. Вот почему мы можем получить преимущество, обучая кодировщик преобразовывать данные в представление более низкой размерности, которое легче обрабатывать. Когда мы закончим обработку, мы можем вернуться к исходному представлению таким образом, чтобы общая стоимость обработки была ниже:

Кодирование (данные большой размерности) + Обработка (представление) + Декодирование (представление) ‹-------------------------------- Обработка (данные высокой размерности)

Word2Vec

Word2Vec - это интересный метод преобразования слов естественного языка в плотное векторное представление, при этом пытаясь каким-то абстрактным образом сохранить «значение» слова. Word2Vec достигает этого путем поиска весов, связанных с каждым словом в многомерном пространстве, таким образом, чтобы сохранить расстояние между словами, которые появляются в одном контексте друг с другом.

Word2Vec - это автоматический кодировщик, поскольку мы можем кодировать и декодировать каждое из миллионов слов языка до нескольких сотен размерных векторов. Например, Google удалось обучить 3 миллиона слов кодировке всего по 300 функций в каждом! Это уменьшение размеров в 10 000 раз, и гораздо выгоднее обрабатывать векторы из 300 измерений, чем векторы из 3 миллионов измерений !!!

Это векторное представление очень хорошо отвечает на вопросы пропорциональной аналогии вида a для b как c для ? . Например, мужчина для женщины, как дядя для ? (тетя) . Мы можем добиться этого, используя простой метод векторного смещения, основанный на косинусном расстоянии. Word2Vec может удивительно выразительно фиксировать отношения между словами.

Например, если мы обозначим вектор для слова i как vec (i) и сосредоточимся на отношении единственного / множественного числа, мы увидим, что: vec (яблоки) -vec (яблоко) ≈ vec (автомобили) -vec (автомобиль) ≈ vec (семейства) -vec (семейство) ≈ vec (автомобили) -vec (автомобиль) и т. д.

Это позволяет нам буквально выполнять некоторую арифметику над концепциями! Все, что нам нужно сделать: это закодировать слова в векторы, выполнить арифметику (сложение, вычитание) в векторном пространстве, затем декодировать результат обратно до ближайшего исходного слова et voilà. Например, вот векторные смещения для трех пар слов, иллюстрирующих гендерные отношения:

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

Генеративные состязательные сети (GAN)

Возможно, аналогичный алгоритм word2vec для естественного языка в области обработки изображений - это генеративные состязательные сети. Эти сети захватывают концепции, закодированные в изображениях, в терминах (де) сверточных матриц. Эти нейронные сети способны улавливать и изучать суть таких понятий, как «лето» или «зима», а затем могут использоваться для преобразования летних изображений в зимние изображения или наоборот.

GAN также являются особым типом автокодировщиков в области обработки изображений. Они состоят из генераторных и дискриминаторных сетей. Цель генератора - научиться обманывать дискриминатор, создавая, казалось бы, убедительные изображения концепции, которую мы пытаемся закодировать. Цель дискриминатора - научиться определять реальные изображения по сравнению с сгенерированными изображениями. В конце процесса обучения генератор хранит в своих матрицах деконволюции знания, необходимые для успешного представления определенной визуальной концепции (в терминах распределений вероятностей).

Вот несколько волшебных демонстраций силы GAN:

GAN могут создавать программное обеспечение, которое может создавать фотографии из картин, превращать лошадей в зебр, выполнять перенос стилей и многое другое. (Отметьте: https://hardikbansal.github.io/CycleGANBlog/)

От обработки данных до обработки концепций

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

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

Если вам понравилось читать, подпишитесь на нас в: Facebook, Twitter, LinkedIn