В моем последнем блоге Использование вашей базы данных графов знаний для аналитики я обсуждал, как можно использовать графы знаний для обеспечения аналитики и практической аналитики, и объяснял простые вещи, которые мы можем сделать с графом знаний. В этом посте мы увеличим сложность, подняв граф знаний на новый уровень, используя его в качестве источника данных для решений машинного обучения (ML).

Потому что графы знаний могут иметь надежный список свойств и атрибутов, связанных с каждым узлом, что позволяет устанавливать новые связи между узлами. Существует также возможность для типов ребер (отношений) между узлами содержать список свойств, включая временные и геопространственные дескрипторы. Эти связанные данные позволяют нам ответить на вопросы «Что можно экстраполировать из данных?» и «Что мы можем предсказать, основываясь на нашем понимании графика?» Ответ на эти вопросы имеет первостепенное значение для успешного решения ML.

Прежде чем мы начнем с ML с использованием графа знаний, нам нужно убедиться, что все наши объекты в графе знаний устранены неоднозначность и все ассоциации верны (насколько это возможно). Например, если мы ищем кардинала, нам нужно различать птицу, футбольную команду, бейсбольную команду и лидеров католической церкви. Представьте себе связывание данных, связанных с бейсбольной командой, с футбольной командой. Вы быстро потеряете клиентов, потому что ваши факты неверны. Лучше не связать данные вместе, чем связать узлы неправильно. Создание неправильных ассоциаций в графе знаний может негативно повлиять на нашу способность делать прогнозы AI/ML.

Поскольку мы органически расширяем наш граф знаний и получаем новые данные из разрозненных источников данных, нам необходимо найти способ автоматически и точно связать новые данные с существующими узлами. Предсказание связи выявляет узлы, которые в настоящее время не подключены, но могут быть подключены. Мы видим эту облегченную форму машинного обучения каждый раз, когда заходим в Facebook или LinkedIn, когда видим «Людей, которых вы, возможно, знаете» на этих платформах. Эти простые алгоритмы могут легко находить потенциальные отношения на основе других соединений с другими узлами и свойств, расположенных на узлах. Например, вы подключены к вашей средней школе. Основываясь на вашем возрасте, я могу попытаться связать вас с другими людьми, которые связаны со школой и являются того же возраста, что и вы.

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

Вы создали надежный и растущий граф знаний; что теперь? Именно здесь хранение данных в виде графика позволит вам по-настоящему использовать все ваши данные и отношения между объектами. Кроме того, это надежное решение для объектов/связей позволит вам связать неструктурированные данные, такие как документы, аудио и видео, с вашим графиком с помощью машинного обучения, что еще больше расширит возможности вашей базы данных графов.

Теперь давайте обсудим глубокое обучение. Глубокое обучение — это способность алгоритмов имитировать поведение человеческого мозга с помощью нейронных сетей. Эти типы систем помогают сделать возможным уточнение данных, автономные транспортные средства и голосовой ИИ (Siri и Alexa). Представьте, что вы получаете тысячи документов в день. Ваша задача — правильно пометить документ правильными метаданными, связать его с другими подобными документами, извлечь тональность из статьи и при необходимости создать новые теги. Как люди, мы можем делать это… некоторое время, пока нам не станет скучно и мы не наделаем ошибок. При правильном «обучении» компьютеры могут делать это со 100% точностью как для структурированных, так и для неструктурированных данных (документов, изображений, аудиофайлов, видеофайлов и т. д.). Эта автоматизированная функциональность может выполняться без перерывов и без ошибок. Эти алгоритмы глубокого обучения не только могут более точно и эффективно выполнять задачи по тегированию и связыванию, но они также могут масштабироваться для тегирования от тысяч до сотен миллионов записей в день при низких затратах на дополнительный ЦП и память.

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

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

Еще одна важная вещь, о которой следует помнить, — это постоянно пересматривать модель, чтобы убедиться, что она все еще действительна. Часто вы будете сталкиваться с дрейфом модели, который начинается медленно, но может оказать значительное влияние на успех организации. Недавний пример дрейфа этой модели можно увидеть в выпусках Zillow Offers [1]. Поскольку Zillow не проводила регулярную проверку моделей, алгоритмы начали дрейфовать, в результате чего модель переоценивала стоимость домов и делала неудачные инвестиции в покупку, что приводило к значительным финансовым потерям для компании.

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

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

Благодаря гибкой схеме графовой базы данных и способности иметь надежные связи и атрибуты, связанные как с узлами, так и с отношениями, графовые базы данных обеспечивают лучший источник данных для решений AI/ML, чем реляционные базы данных. Если возможно, рассмотрите возможность преобразования вашей реляционной базы данных в графовую базу данных, чтобы найти эти новые связи в ваших данных. Если у вас есть надежное решение для базы данных графов, используйте эту новую информацию в своих интересах с помощью предиктивной и предписывающей аналитики.

[1] Изнутри больших данных, 13 декабря 2021 г. — Разгром на $500 млн с предложениями Zillow — что пошло не так с моделями ИИ?