Содержание к диссертации
Введение
1 Аналитический обзор
1.1 Актуальность разработки программного комплекса для синтеза нейро-нечетких моделей для производственных процессов
1.2 Обзор зарубежного и отечественного рынков ПО разработки нейро-нечетких систем моделирования
1.2.1 Обзор возможностей пакета нечеткой логики "fuzzy
toolbox" в составе «MATLAB»
1.2.2 Система PolyAnalyst
1.2.3 STATISTICA Neural Networks
1.2.4 Программный пакет «Конструктор нечетких моделей»
1.2.5 Lab VIEW
1.2.6 Анализ рассмотренных программных продуктов
1.3 Постановка задачи исследования
2 Методические основы решения задач
2.1 Предварительная обработка данных
2.1.1 Нормировка данных
2.1.2 Интервальное масштабное преобразование
2.1.3 Автомасштабное преобразование
2.2 Искусственные нейронные сети
2.2.1 Искусственный нейрон
2.2.2 Нейро-нечеткие сети
2.2.2.1 Сеть Такаги-Сугено-Канга
2.2.2.2 Сеть Ванга-Менделя
2.2.2.3 Нечеткие сети с самоорганизацией
2.3 Обучение нейронной сети
2.3.1 Генетический алгоритм
2.3.2 Алгоритмы обратного распространения ошибки
2.4 Кластеризация для идентификации нечетких лингвистических переменных
2.4.1 Применяемые метрики
2.4.2 Методы кластерного анализа
2.5 Проверка адекватности модели
3 Алгоритмы и программы построения нейро-нечетких моделей
3.1 Подготовка входных и выходных данных
3.2 Автоматизация предварительной обработки данных
3.3 Выбор количества нейронов и слоев
3.4 Реализация нейро-нечетких сетей
3.5 Алгоритмы оптимальной настройки параметров искусственной нейронной сети
3.5.1 Реализация генетического алгоритма для обучения сети
3.5.2 Реализация алгоритма обратного распространения ошибки для обучения сети
3.6 Описание программного инструментария (программный комплекс «Синтез нейро-нечеткой модели»)
3.6.1 Модуль «Синтез нечеткой лингвистической переменной»
3.6.2 Модуль «Предварительная обработка данных»
3.6.3 Модуль «Создание нейро-нечеткой сети»
3.1 Тестирование программного комплекса «Синтез нейро-нечеткой модели»
3.7.1 Тестирование программного модуля «Синтез нечеткой лингвистической переменной»
Ъ.1.2 Тестирование программного модуля «Предварительная обработка данных»
3.7.3 Тестирование программного модуля «Создание нейро-нечеткой сети»
4 Использование профаммного комплекса «Синтез нейро-нечеткой модели»
4.1 Постановка задачи для создания программного комплекса интеллектуального тестирования знаний и обучения специалиста
4.2 Описание процесса модификации сорбента
4.3 Нечеткая продукционная модель процесса модификации сорбента
4.4 Разработка нейро-нечеткой сети при помощи программного комплекса «Синтез нейро-нечеткой модели»
4.4.1 Подготовка данных при помощи модуля Синтез нечеткой лингвистической переменной»
4.4.2 Разработка нейро-нечеткой сети при помощи модуля «Создание нейро-нечеткой сети»
4.5 Разработка программного продукта «Интеллектуальный тренажер оператора установки производства сорбента» на основе разработанной нейро-нечеткой модели
4.6 Постановка задачи для создания советчика оператора бетонно-смесительного узла
4.7 Описание технологии изготовления пенобетона
4.8 Нечеткая продукционная модель управления процессом производства пенобетона
4.9 Разработка нейро-нечеткой сети при помощи программного комплекса «Синтез нейро-нечеткой модели»
4.9.1 Подготовка данных при помощи модуля «Предварительная обработка данных»
4.9.2 Разработка нейро-нечеткой сети при помощи модуля «Создание нейро-нечеткой сети»
4.10 Разработка программного продукта «Советчик оператора производства пенобетона» на основе разработанной нейро-нечеткой модели
Выводы
Список использованной литературы
- Обзор зарубежного и отечественного рынков ПО разработки нейро-нечетких систем моделирования
- Автомасштабное преобразование
- Алгоритмы оптимальной настройки параметров искусственной нейронной сети
- Разработка нейро-нечеткой сети при помощи программного комплекса «Синтез нейро-нечеткой модели»
Введение к работе
При создании математических моделей промышленных процессов часто приходится сталкиваться с элементами неопределенности в данных. Не все неточности описания можно списать на ошибку измерений или эксперимента, зачастую неопределенность неустранима, является неотъемлемой частью процесса или контрольно-измерительной аппаратуры. Неполная, фрагментарная или противоречивая информация порождает неопределенность. Закономерности в реальных моделях сложны и складываются из огромного числа отдельных фактов и явлений. Поэтому введение элемента неопределенности в модели позволяет более эффективно строить математические модели. Нейронные сети, как универсальные аппроскиматоры, являются мощным средством математического моделирования. Их сочетание с нечеткой логикой дает дополнительную гибкость и функциональность разрабатываемым моделям.
Отсутствие априорной информации о причинно-следственных связях в виде уравнений того или иного типа или логических (лингвистических) правил наталкивает разработчиков на использование моделей «черного ящика» типа системы регрессионных уравнений или искусственных нейронных сетей (ИНС). Повысить уровень значимости метода ИНС может использование априорных знаний (несмотря на модель «черного ящика») о входных и выходных переменных как о нечетких лингвистических переменных. Именно это сочетание - нейронная сеть в пространстве нечетких входных и выходных переменных - является базовой идеей представляемой работы и лежит в основе разработанного программного комплекса.
Целью настоящей работы является создание универсального программного комплекса «Синтез нейро-нечетких моделей», позволяющего строить нейро-нечеткие модели для построения задач классификации, прогнозирования, настройки параметров и тестирования созданных нейро-
7 нечетких сетей, используемых при построении моделей для статических технологических процессов типа «черный ящик».
Для практической реализации поставленной цели были решены следующие задачи:
Во второй главе разработана методика и алгоритмы конструирования нечетких лингвистических переменных. Методика учитывает варианты синтеза НЛП при различной априорной информации: от полной невозможности экспертом указать границы и количество термов до самостоятельного конструирования экспертом НЛП;
В третьей главе адаптированы алгоритмы создания, настройки, обучения и тестирования нейро-нечетких сетей;
В четвертой главе разработаны тестовые примеры применения разработанного программного комплекса;
Осуществлена программная реализация вышеназванных алгоритмов в составе пакета модулей под управлением операционной системы класса Windows.
Проведены испытания предложенных методик, алгоритмов и программ методом реализации практических задач моделирования с помощью разработанных программных средств для иллюстрации их работоспособности.
Данные для работы программы берутся либо у эксперта, специалиста в конкретной предметной области, либо материалы эксперимента в форме результатов опытов. Инженер знаний, с учетом полученных данных от эксперта, должен создать адекватную модель процесса. В этом ему поможет описанный в данной работе универсальный программный комплекс. Он поможет пройти весь процесс разработки модели от обработки первичных данных до внедрения сконструированной модели нейро-нечеткой сети в программный код приложения заказчика за счет генерации исходных текстов обученной нейро-нечеткой сети на языке C++.
Ни один из рассмотренных в обзоре программных инструментариев не поддерживает в полной мере процесс приобретения экспертных знаний о лингвистических переменных. Это в свою очередь снижает шансы построить адекватную модель. Поэтому предложен целый ряд дополнительных алгоритмических и программных решений, которые оправдывают создание совершенно нового универсального программного пакета для машинной поддержки диалога с пользователем в процессе приобретения знаний.
Текст диссертации включает в себя четыре главы, выводы, список литературы и четыре приложения.
В первой главе приведено краткое описание известных программных средств моделирования нейронных сетей. Все они не обладают средствами, реализующими в полной мере достоинства нейро-нечеткого моделирования. В них отсутствует комплексное решение проблемы построения нейро-нечеткой среды и ее внедрения на практике. Они не учитывают размытость данных, а это в свою очередь очень существенно не только из-за погрешности контрольно-измерительной аппаратуры, но и из-за наличия существенно нечетких переменных, обусловленных физической или химической природой.
В заключительном разделе главы сформулирована развернутая постановка задачи исследований.
Во второй главе приведено краткое описание известных стратегий и методик предварительной обработки данных, дан обзор нейро-нечетких сетей и методов их обучения.
В третьей главе представлены, разработанные автором алгоритмы предварительной подготовки данных, рассмотрены реализованные нейро-нечеткие сети и методы их обучения. Описано созданное программное, приведено алгоритмическое решение этапов тестирования модели, генерации тестовых массивов и создания конечного продукта в виде автоматически сгенерированного программного кода.
9 Четвертая глава посвящена описанию разработанного прикладного программного комплекса для иллюстрации работоспособности предлагаемых алгоритмов, методики и инструментальных программных средств.
В качестве первого иллюстративного примера решена задача «Интеллектуальный тренажер оператора установки производства сорбента» (HI II1 «Полихим» г. Сосновый Бор, Ленинградская область). Для этого были решены следующие задачи:
Разработана система опроса с оптимальным количеством вопросов, касающихся производственного процесса;
Разработана модель процесса производства сорбента при помощи программного пакета «Синтез нейро-нечетких моделей»',
Реализован программный комплекс обучающей системы с тестами, удобный для использования персоналом;
Разработанное программное обеспечение внедрено на производство.
Общим недостатком большинства подобных программных средств является их ориентация на тестирование, а не на обучение персонала. В связи с этим особую актуальность приобретает разработка программного инструментария для обучения персонала не только формальным операциям управления, но и логике происходящего производственного процесса, в чем помогает нейро-нечеткая модель процесса.
Вторая задача, служащая подтверждением эффективности разработанного программного пакета - «Советчик оператора бетонно-смесительного узла» (КЖБИ 211 г. Сертолово, Ленинградская область). Ее цель - проиллюстрировать преимущество использования нейро-нечеткой сети для управления реальным процессом производства изделий из пенобетона.
Обе задачи доведены до уровня прикладных оболочек, которые являются полноценными Windows-приложениями с развитым графическим интерфейсом и с заложенными в них функциями параметрической и структурной перестройки в процессе тестирования и эксплуатации.
10 Основные положения, выносимые на защиту:
Методика поддержки инженера знаний в процессе построения нейро-нечетких моделей от обработки исходных данных до построения исходных текстов модели, готовых для встраивания в приложение заказчика;
Структура программного комплекса и принципы взаимодействия трех его модулей от обработки исходных данных, до создания и обучения нейро-нечеткой сети;
Алгоритмы идентификации нечетких лингвистических переменных при различной априорной информации;
Алгоритм и функции модуля автоматизированного извлечения знаний эксперта в пространстве нечетких лингвистических переменных;
Алгоритм и программа создания нейро-нечеткой сети, ее настройка, обучение, тестирование;
Методика интеллектуального тренажера и программа «Интеллектуальный тренажер оператора установки производства сорбента»;
Методика советчика оператора и программа «Советчик оператора бетонно-смесительного узла».
Для апробации результатов исследований материалы диссертации докладывались и обсуждались на международных научных конференциях: ММТТ-18, Казань, ММТТ-19, Воронеж.
По теме диссертационной работы опубликовано 5 работ, в том числе одна работа опубликована в журнале из перечня ВАК.
Разработанный программный инструментарий используется в качестве учебного комплекса по изучению основ нейро-нечетких сетей при проведении лабораторных работ по курсу «Нечеткие интеллектуальные модели ХТС» для студентов кафедры САПРиУ Санкт-Петербургского государственного технологического института (технического университета).
Обзор зарубежного и отечественного рынков ПО разработки нейро-нечетких систем моделирования
Существенное число моделей управления, контроля качества, прогнозирования и диагностики можно отнести к классу задач с «размытыми данными». Наряду с этим может отсутствовать аналитическая априорная информация в виде систем уравнений, правил, либо она имеется лишь частично.
Для преобразования имеющихся на производстве выборок данных в системы, описанные на формальном языке для нейро-нечеткого моделирования, необходимы большие затраты времени. Зачастую эти данные конвертируются человеком, поэтому велика вероятность ошибки. Несмотря на огромное количество пакетов разработки нейронных сетей (см. 1.8), в действительности отсутствует комплексное решение проблемы построения нейро-нечеткой среды и ее внедрения на практике. Отсюда следует, что вопрос создания программного комплекса ускоряющего и автоматизирующего процесс создания и внедрения нейро-нечетких моделей очень актуален для современного производства. Такой комплекс должен сопровождать весь процесс создания нейро-нечеткой модели, от обработки первичных данных до готовых решений быстро и эффективно.
Программный продукт «Синтез нейро-нечетких моделей» предназначен для создания нейро-нечеткой сети и применения ее в конкретном проекте. Он помогает инженеру знаний в тесном взаимодействии с экспертом предметной быстро и эффективно пройти весь путь от первичной обработки данных, до применения нейро-нечеткой сети на практике.
Для полноценной машинной поддержки инженера знаний в процессе построения нейронной сети необходимо наличие дополнительных функций, таких как первичная обработка данных, уточнение параметров выявленных знаний, анализ экспериментальных данных, умение вести диалог с носителем знаний (экспертом), а не только с инженером знаний и др.
Наиболее известные пакеты и среды моделирования нейронных сетей представлены в следующей таблице:
Система MATLAB представляет собой интегрированную программную среду для выполнения численных расчетов, компьютерного моделирования и вычислительных экспериментов, охватывающих в том или ином объеме различные области классической и современной математики, а также широчайший спектр инженерных приложений [34].
Архитектурно система MATLAB состоит из базовой программы и нескольких десятков пакетов расширения, которые в своей совокупности обеспечивают исключительно широкий диапазон решаемых задач.
В пакете Fuzzy Logic Toolbox системы MATLAB гибридные сети реализованы в форме так называемой адаптивной системы нечеткого нейронного вывода ANFIS. С одной стороны, гибридная сеть ANFIS представляет собой нейронную сеть с единственным выходом и несколькими входами, которые представляют собой нечеткие лингвистические переменные. При этом термы входных лингвистических переменных описываются стандартными для системы MATLAB функциями принадлежности, а термы выходной переменной представляются линейной или постоянной функцией принадлежности.
С другой стороны, гибридная сеть ANFIS представляет собой систему нечеткого вывода типа Сугено нулевого или первого порядка, в которой каждое из правил нечетких продукций имеет постоянный вес, равный 1. В системе MATLAB пользователь имеет возможность редактировать и настраивать гибридные сети ANFIS аналогично системам нечеткого вывода.
Редактор ANFIS позволяет создавать или загружать конкретную модель адаптивной системы нечеткого нейронного вывода, выполнять ее обучение, визуализировать ее структуру, изменять и настраивать ее параметры, а также использовать настроенную сеть для получения результатов нечеткого вывода.
Ключевое преимущество нечеткой логики состоит в том, что она позволяет описывать необходимое поведение системы простыми условиями «Если - То». Но этот метод обладает преимуществами, если знания о предметной области состоят из наборов данных. Это означает то, что проектировщик системы порой обязан работать с наборами данных большой размерности. Для этих целей и рекомендуется использование нейронных сетей, которые способны самообучаться на имеющихся наборах данных. Совместное использование нечеткой логики и нейронных сетей дает пользователю большие преимущества в проектировании.
Автомасштабное преобразование
Система STATISTICA Neural Networks полезна не только экспертам по нейронным сетям (предоставляя им широчайший выбор типов нейронных сетей и алгоритмов обучения), но и новичкам в области нейросетевых вычислений (для них предусмотрены такие инструменты, как Мастер решения, который проведет пользователя через все необходимые этапы создания нейронной сети).
STATISTICA Neural Networks предоставляет следующие возможности:
1. Обработка данных, включая выбор данных, кодирование номинальных значений, нормализация, удаление пропущенных, регрессия и задачи временных рядов;
2. Мастер решений проведет пользователя через все этапы создания различных нейронных сетей и выберет;
3. Самые современные, оптимизированные и мощные алгоритмы обучения сети (включая методы сопряженных градиентов и
Левенберга-Маркара); полный контроль над всеми параметрами, влияющими на качество сети, такими как функции активации и ошибок, сложность сети;
4. Поддержка комбинаций нейросетей и нейросетевых архитектур практически неограниченного размера;
5. Богатые графические и статистические связи, предоставляющие интерактивные разведочные анализы;
6. Полная интеграция с мощными автоматическими инструментами STATISTICA; запись полноценных макросов для любых анализов; создание собственных нейро-сетевых анализов и приложений с помощью STATISTICA Visual Basic, вызов STATISTICA Neural Networks из любого приложения, поддерживающего технологию СОМ (например, автоматическое проведение нейро-сетевого анализа в таблице MS Excel или объединение нескольких пользовательских приложений, написанных на C++, С#, Java и т.д.).
Перед тем, как данные будут введены в сеть, они должны быть определенным образом подготовлены. Столь же важно, чтобы выходные данные можно было правильно интерпретировать. В STATISTICA Neural Networks имеется возможность автоматического масштабирования входных и выходных данных (в том числе шкалирование по минимальному/максимальному значениям и по среднему/стандартному отклонению); также могут быть автоматически перекодированы переменные с номинальными значениями. STATISTICA Neural Networks содержит также средства работы с пропущенными данными. Реализованы такие функции нормировки, как "единичная сумма", "победитель получает все" и "вектор единичной длины". Имеются средства подготовки и интерпретации данных, специально предназначенные для анализа временных рядов.
В системе STATISTICA Neural Networks реализованы все основные типы нейронных сетей, используемые при решении практических задач, в том числе: многослойные персептроны (сети с прямой передачей сигнала); сети на радиальных базисных функциях; самоорганизующиеся карты Кохонена; вероятностные (байесовские) нейронные сети; обобщенно-регресионные нейронные сети; сети главных компонент; сети для кластеризации; линейные сети.
Для улучшения производительности в пакете STATISTICA Neural Networks представлены многочисленные опции настройки сети.
После того, как сеть обучена, нужно проверить качество ее работы и определить характеристики. Для этого в пакете STATISTICA Neural Networks имеется набор экранных статистик и графических средств.
В заключение, все функциональные возможности системы STATISTICA, включая STATISTICA Neural Networks могут быть использованы в качестве СОМ объектов (Component Object Model) в других приложениях (например, Java, MS Excel и т.д.).
Алгоритмы оптимальной настройки параметров искусственной нейронной сети
Интервальное масштабное преобразование (ИМП) производится следующим образом [8]. Минимальное значение каждой переменной помещают в начало отсчета и делят на интервал данных х тах - mjn, так чтобы максимальное значение каждой новой характеристики было 1,0: xik= X/ mi" , (2.3) хіктгх Amin где 0,0 лі 1,0.
При отсутствии какой-либо априорной информации данные должны быть масштабированы так, чтобы все переменные несли одинаковую информацию об их дисперсиях.
Автомасштабное преобразование (АМП) [9] устраняет любое неумышленное взвешивание, которое возникает благодаря произвольности единиц, но не так чувствительно к выбросам, как ИМП.
АМП на единицу дисперсии имеет отношение к среднецентрированному, за которым следует деление на стандартное отклонение 5д переменной из базиса переменных: = Z5., (2.4) ч где sk = - , - )2 N - общее число образцов. При отсутствии какой-либо информации, которая могла бы препятствовать использованию АМП, он рекомендуется в большинстве приложений.
Современные цифровые вычислительные машины превосходят человека по способности производить числовые и символьные вычисления. Однако человек может без усилий решать сложные задачи восприятия внешних данных с такой скоростью и точностью, что мощнейший в мире компьютер не справится с этой задачей. Архитектура биологической нейронной системы совершенно не похожа на архитектуру машины фон Неймана, существенно влияет на типы функций, которые более эффективно исполняются каждой моделью.
Подобно биологической нейронной системе ИНС является вычислительной системой с огромным числом параллельно функционирующих простых процессоров с множеством связей. Модели ИНС в некоторой степени воспроизводят «организационные» принципы, свойственные мозгу человека. Моделирование биологической нейронной системы с использованием ИНС может также способствовать лучшему пониманию биологических функций [5].
Представим некоторые проблемы, решаемые в контексте ИНС [16].
1. Классификация образов. Задача состоит в указании принадлежности входного образа (например, речевого сигнала или рукописного символа), представленного вектором признаков, одному или нескольким предварительно определенным классам. К известным приложениям относятся распознавание букв, распознавание речи.
2. Кластеризация. При решении задачи кластеризации, которая известна также как классификация образов «без учителя», отсутствует обучающая выборка с метками классов. Алгоритм кластеризации основан на подобии образов, и размещает близкие образы в один кластер. Известны случаи применения кластеризации для извлечения знаний, сжатия данных и исследования свойств данных.
3. Аппроксимация функций. Предположим, что имеется обучающая выборка представленная парами данных вход-выход, которая генерируется неизвестной функцией, искаженной шумом. Задача аппроксимации состоит в нахождении оценки неизвестной функции. Аппроксимация функций необходима при решении многочисленных инженерных и научных задач моделирования.
4. Прогнозирование. Прогнозирование имеет значительное влияние на принятие решений в бизнесе, науке и технике. Предсказание цен на фондовой бирже и прогноз погоды являются типичными приложениями техники прогнозирования.
5. Оптимизация. Многочисленные проблемы в математике, статистике, технике, науке, медицине и экономике могут рассматриваться как проблемы оптимизации. Задачей алгоритма оптимизации является нахождение такого решения, которое удовлетворяет системе ограничений и максимизирует или минимизирует целевую функцию.
6. Память, адресуемая по содержанию. В модели вычислений фон Неймана обращение к памяти доступно только посредством адреса, который не зависит от содержания памяти. Более того, если допущена ошибка в вычислении адреса, то может быть найдена совершенно иная информация. Ассоциативная память, или память, адресуемая по содержанию, доступна по указанию заданного содержания. Содержимое памяти может быть вызвано даже по частичному входу или искаженному содержанию. Ассоциативная память чрезвычайно желательна при создании мультимедийных информационных баз данных.
7. Управление. В системах управления с эталонной моделью целью управления является расчет такого входного воздействия, при котором система следует по желаемой траектории, диктуемой эталонной моделью.
Разработка нейро-нечеткой сети при помощи программного комплекса «Синтез нейро-нечеткой модели»
Разработка любой нейро-нечеткой сети начинается с идентификации исследуемого объекта. Множество входных и выходных переменных необходимо описать множеством нечетких лингвистических переменных. Для перевода «сырых» данных в обучающую выборку, необходимо воспользоваться каким-либо автоматическим методом идентификации данных. Методы кластерного анализа [67] позволяют разделить изучаемую совокупность объектов на группы схожих объектов, называемых кластерами, разнести записи в различные группы, или сегменты. Его удобно использовать на начальных этапах исследования, когда, например, требуется определить границы термов для формирования входных нечетких лингвистических переменных. В большинстве методов обработки данных исследование начинается, когда данные уже предварительно как-то расклассифицированы, хотя бы на обучающее множество данных и данные, по которым проверяется найденная модель или для которых надо предсказать целевую переменную.
Кластерный анализ позволяет рассматривать достаточно большой объем информации и резко сокращать, сжимать большие массивы информации, делать их компактными и наглядными.
Методы автоматического разбиения на кластеры редко используются сами по себе, просто для получения групп схожих объектов. Анализ только начинается с разбиения на кластеры. Когда кластеры обнаружены, естественно использовать другие методы soft computing, чтобы попытаться установить, а что означает такое разбиение на кластеры, чем оно вызвано.
Задача кластерного анализа [67] заключается в том, чтобы на основании данных, содержащихся во множестве X, разбить множество объектов G на m кластеров (подмножеств) Qb Ch, ..., Qm, так, чтобы каждый объект Gj принадлежал одному и только одному подмножеству разбиения и чтобы объекты, принадлежащие одному и тому же кластеру, были сходными, в то время, как объекты, принадлежащие разным кластерам были разнородными.
Решением задачи кластерного анализа являются разбиения, удовлетворяющие некоторому критерию оптимальности. Этот критерий может представлять собой некоторый функционал, выражающий уровни желательности различных разбиений и группировок, который называют целевой функцией. Например, в качестве целевой функции может быть взята внутригрупповая сумма квадратов отклонения: ( „ \2 (2.38) У=1 j=\ п где Xj - представляет собой измерения j-ro объекта. Для решения задачи кластерного анализа необходимо определить понятие сходства и разнородности.
Понятно то, что объекты 1-ый и j-ый попадали бы в один кластер, когда расстояние (отдаленность) между точками X, и Xj было бы достаточно маленьким и попадали бы в разные кластеры, когда это расстояние было бы достаточно большим. Таким образом, попадание в один или разные кластеры объектов определяется понятием расстояния между Xt и Xj из Ер, где Ер - р-мерное евклидово пространство. Неотрицательная функция d(X„ Xj) называется функцией расстояния (метрикой), если: а) d(Xj, Xj) 0, для всех Х( и Xj из Ер б) d(Xj, Xj) = 0, тогда и только тогда, когда Xt = Xj в) d(Xb Xj) = d(Xj, Xt) г) d(Xj, Xj) d(Xj, Xk) + d(Xk, Xj), где XJ; XJ и Xk - любые три вектора из Ер. Значение d(Xj, Xj) для Xj и Xj называется расстоянием между Xj и Xj и эквивалентно расстоянию между Gj и Gj соответственно выбранным характеристикам (Fi, F2, F3,..., Fp). Наиболее часто употребляются следующие функции расстояний: [67] а) Евклидово расстояние d2(Xj, Xj) А=1 (2.39) б) Квадратичное Евклидово расстояние di(X; , Xj) = k=\ (2.40) Ёх /- А/ =1 в) Манхеттен d\(X\, Xj) = (2.41) г) Канберра d\(X\, Xj) = /,) - kj (2.42) Евклидова метрика является наиболее популярной. Метрика Манхеттен наиболее проста в вычислении.
Существует большое число методов кластеризации. Наибольшее распространение получили различные модификации метода /(Г-средних, методы минимальной дисперсии и аггломеративные методы.