Эта статья служит моими личными заметками из курса AI Ethics в Gatech.
Введение
Этот модуль углубит понимание моделей, развернутых в алгоритмах, которые используются в приложениях, и понимание с акцентом на установление добросовестной практики.
В этой статье будут рассмотрены три реальных приложения ИИ:
- Распознавание лиц
- Обработка естественного языка — встраивание слов
- Прогнозное моделирование
при этом помня о социальном и правовом контексте, в котором они действуют.
Для каждого приложения мы рассмотрим текущие сценарии и инструменты, которые позволяют реализовать эти сценарии, после чего проведем анализ выявленных предубеждений и проблем справедливости, а также возможные решения для решения этих проблем.
справедливость
Концепция справедливости/предвзятости стала более важной из-за более широкого использования ИИ в нашей повседневной жизни.
Определение понятия справедливости будет определено по мере прохождения курса.
Встраивание слов (НЛП)
Обработка естественного языка (NLP) — это ветвь ИИ, которая занимается взаимодействием между компьютерами и людьми с использованием естественного языка.
Конечная цель НЛП — читать, расшифровывать, понимать и осмысливать человеческие языки. Для этого можно использовать такие инструменты, как встраивание слов.
Вложения слов используются для выявления сходства между словами в корпусе с использованием модели для прогнозирования совместного появления слов в небольшом фрагменте текста.
Основное внимание встраивания слов уделяется осмысленному преобразованию человеческого языка в числовую форму. С целью позволить компьютерам понимать наш язык.
Подход к представлению слов и документов с использованием встраивания слов и его производных алгоритмов считается одним из ключевых прорывов в области глубокого обучения сложным задачам НЛП.
Вложения слов считаются важными для решения задач словесного НЛП.
Сходство слов и родство
Представление слов стало удобным способом вычисления сходства. Есть два преобладающих способа вычисления подобия; (1) на основе использования словаря и (2) изучения статистики подобия из большого массива данных.
Родственность измеряет семантическое сходство между словами. Более конкретно, связанность включает в себя любую связь между двумя терминами, в то время как измерение сходства между словами представляет собой процесс количественной оценки связи с использованием знаний, полученных из определенных источников информации.
Например, автомобиль похож на грузовик, но также связан с шоссе и вождением.
Машины лучше понимают числа, чем текст, поэтому для вычисления метрики подобия нам нужно преобразовать текст в числовое представление. Процесс преобразования текста в числа называется векторизацией. Это преобразование помогает нам измерить сходство между словами.
Мы можем представлять слова, используя модель векторного пространства. Это алгебраическая модель представления текста в виде вектора идентификаторов, в котором семантически схожие слова отображаются в ближайших точках геометрического пространства.
На изображении выше мы видим векторное представление названий, связанных с различными группами продуктов питания. Здесь мы видим пиццу, более близкую к пасте, или пиццу, далекую от шоколада.
В зависимости от подхода, который мы используем для представления этих данных, векторы будут различаться. Мы обсудим два представления модели:
- Возникновение документа
- Контекст слова
Вхождение документа: это когда мы назначаем идентификаторы, соответствующие количеству слов в каждом документе, в котором слово встречается.
В приведенном ниже примере мы подсчитываем слово шоколад в меню различных магазинов. Мы можем создать модель векторного пространства и обнаружить, что все меню [2, 4, 7, 9, 11] содержат некоторое количество шоколада, позже мы можем обнаружить, что это магазины десертов и, следовательно, в будущем свяжем поиск шоколада. в магазины, которые продают десерты.
Контекст слова: когда мы решаем, что наши идентификаторы соответствуют контексту соседнего слова. Идея состоит в том, чтобы количественно определить совпадение терминов в корпусе путем построения матрицы совпадения. Эта матрица фиксирует, сколько раз термин появляется в контексте другого термина.
Например, если нам предоставлены предложения:
- Шоколад - лучший десерт в мире
- Технологический институт Джорджии - лучший университет в мире
- Мир работает на шоколаде
Затем мы можем использовать эти предложения для определения матрицы следующим образом:
Как мы видим в приведенной выше матрице, вектор, связанный с шоколадом, равен [0,1 ,1,0,2]. Эти числа относятся к частоте встречаемости слова шоколад в том же предложении, что и термин индекса.
Теперь давайте сравним эти две обсуждаемые модели. Предположим, у нас есть крошечный корпус:
- Документ 1: майки Atlanta Falcon
- Документ 2: основные моменты Atlanta Falcon
- Документ 3: майки Лос-Анджелес Доджерс
- Документ 4: основные моменты Лос-Анджелес Доджер
Если мы используем векторы вхождения документов для этих данных. Изображение ниже показывает нам, что результатом этого является то, что два наиболее похожих вектора — это [атланта, сокол] и [лос-анджелес, доджерс].
Если мы применим контекст слова к тем же документам, мы увидим другой результат. Теперь мы видим, что [соколы, доджеры] и [атланта, лос-анджелес] наиболее похожи, если посмотреть на значения векторов для каждого из них.
Эти примеры применения различных моделей представления должны дать вам понимание того, как модель может иметь разную степень понимания.
Косинусное сходство и аналогия слов
Это метод, который позволит нам вычислить сходство между двумя векторами слов. Однако ранее мы видели, что метод, выбранный для представления векторов слов, приводит к различной степени представления.
Косинусное сходство — это скалярное произведение двух векторов, деленное на их длину. Чем ближе угол между векторами, тем ближе косинусное сходство.
То есть, если косинусное сходство близко к 1, это означает, что они связаны, 0 означает, что они не связаны, а отрицательные значения означают, что они похожи, но кодируют противоположные понятия.
В приведенных ниже примерах графиков мы можем увидеть, как это реализовано.
Используя предыдущий пример, мы можем увидеть результаты применения функции подобия косинуса, мы видим связь между [атлантами, соколами] и [лос-анджелесами, доджерс]
Когда у нас есть сходство между словами, мы можем использовать это для вычисления сходства между другими словами. Задания на аналогию слов - это метод, используемый для оценки лингвистического сходства между парами представлений слов.
Проблемы аналогии слов стали одним из стандартных инструментов для оценки векторов слов на основе контекста. Задание состоит из таких вопросов, как «а относится к b так же, как с относится к _»? Где пустое пропущенное слово надо угадать из всего словарного запаса. Чтобы решить проблему аналогии, мы должны найти вектор слов, который наиболее похож на вектор результата [c] + [b] — [a]
Вложения слов (Word2Vec)
Вложения слов используются для захвата контекста слов в документе, а также семантического и синтаксического сходства. В общем случае вложения слов — это векторные представления слов, так что каждое слово хранится в точке пространства. Обычно это представлено 300 измерениями. Размеры представляют собой проекции по разным осям.
Мы обсудим методы изучения встраивания слов, такие как нейронные сети, построенные путем обнаружения/исследования на основе чтения/переноса или разбора огромного массива документов.
Обратите внимание, что встраивание слов работает, основываясь на предположении, что похожие слова с появляются в похожем контексте.
На приведенном выше графике мы видим примеры слов, которые кажутся более близкими, например, поезд/автобус/автомобиль или яблоко/апельсин/банан.
Таким образом, с помощью этих векторных проекций мы можем найти сходство между словами. Подобные слова будут иметь меньшие углы между ними. Теперь мы можем изучить эти сходства, выполняя алгебраические манипуляции с векторами.
Например, мы можем попросить нашу систему дать мне слова, похожие на «хорошо», и мы получим «отлично» (на основе изображения выше).
Ранее мы рассмотрели два других представления модели. Это были «Вхождение документа» и «Контекст слова». Другой способ — предсказать контекст данного слова, изучив вероятности его совместного появления в данном корпусе.
Это означает, что мы можем предсказать контекст слова на основе окружающих его слов. Одним из примеров этого приложения является word2vec.
Word2Vec изучает распределенное представление слов в корпусе. Он принимает в качестве входного текста/корпуса и выводит векторное представление для каждого слова. Это достигается двумя способами:
- CBoW (непрерывный набор слов)
- Скип-грамм
CBoW – это нейронная сеть, обученная предсказывать, какое слово подходит к пробелу в предложении. Учитывая приведенное ниже предложение, NN должна изучить предсказание, чтобы с высокой вероятностью переданное слово попало в пробел.
Еще один пример приведенного ниже корпуса. Я хочу выяснить, если я увижу есть, какие вероятные слова я увижу. Мы могли бы создать список слева, чтобы затем использовать его для прогнозов.
Это позволит делать прогнозы. Я люблю _____ яблоки.
Какова наибольшая вероятность? напиток или сок. Все эти значения основаны на карте совпадения
Skip-gram – это альтернативный метод. На основе набора предложений, также называемого корпусом, по заданному слову он предсказывает, какое слово окружает его, то есть вероятность для каждого слова в словаре.
Если нам дано центральное слово «пройдено», скип-грамма вернет окружающие пары слов. Это студент и экзамен. Этот способ противоположен методу CBoW.
Другой пример: у нас есть предложение, и мы хотим предсказать соседнее слово с помощью скользящего окна, предположим, что это n + 1, n +2, а также n -1 и n -2. На изображении выше мы видим основное слово, выделенное синим цветом, и окружающие слова, связанные с основным словом. Это обучение становится входом в изучение прогнозов.
Смещение во вложениях слов
Теперь, когда мы только что пересмотрели метод, который мы можем использовать для изучения слов, и это самый популярный метод, когда речь идет об обработке естественного языка.
Это позволяет нам понимать все, от понимания до создания интеллектуальных чат-ботов. Эти алгоритмы ML являются равноправными преступниками.
Задача анализа тональности включает в себя понимание тональности слов. Сообщалось, что анализатор настроений Google имеет целый ряд предубеждений. Он считает, что принадлежность к одной религии хуже, чем к другой. В другом исследовании Google Translate переводил гендерно-нейтральные английские слова на одном языке в сочетании с названиями профессий, такими как профессор и доктор, в мужскую форму после перевода слова на английский язык. Исследование также выявило нейтральные в гендерном отношении английские слова при переводе в женскую форму, но только тогда, когда они соответствуют определенным гендерным стереотипам.
Эти проблемы решаются, но они существуют, в первую очередь, потому, что люди добавляют эти предубеждения в корпус, который используется для обучения.
Почему это происходит?
New your times опубликовали некоторые статистические данные из опубликованных статей о том, насколько вероятно, что вы увидите he:she рядом с другими описательными словами. Результаты, показанные ниже, поразительны.
Люди создают эти учебные корпуса, и они по своей сути содержат предубеждения при обучении модели НЛП.
Предвзятость во вложениях включает:
- Культурные предубеждения
- Предвзятое представление о женщине
- Этнические стереотипы
Как решить эти проблемы? Существует метод измерения предвзятости для группы; WEAT или определение направления смещения.
Мы можем определить смещение, измерив разницу в расстоянии между относительными ассоциациями.
Этот метод фокусируется на выявлении предвзятости путем понимания направления, путем вычисления разницы между этими словами. Это позволяет нам проецировать и выравнивать вложения слов для устранения предвзятости.
Наши исторические предубеждения влияют на алгоритмы ИИ, которые, в свою очередь, влияют на нас.
Надеюсь, вы чему-то научились.
-R