ЛР-10:
"Исследование случайной семантической информационной модели при различных объемах выборки"

 

Краткая теория

Любая реальная информация о предметной области содержит как полезную информацию о закономерностях, так и шум. Соотношение между полезной информацией (сигналом) и шумом может быть различное:

– уровень сигнала может быть намного выше уровня шума, тогда шум можно считать несущественным;

– уровень сигнала может быть намного ниже уровня шума, тогда шум может существенно сказываться на свойствах модели.

Поэтому представляет интерес исследование семантической информационной модели, созданной на основе случайной обучающей выборки, в которой принадлежность анкет с описаниями объектов к классам и сам набор признаков в них – случайные.

Какая-то часть валидности обусловлена законами теории вероятностей, а какая-то – наличием закономерностей в предметной области и работой системы распознавания, причем в зависимости от параметров модели (размерности по классам и признакам и объема обучающей выборки).

Например, при увеличении объема выборки результат все ближе к предсказываемому теорией вероятностей. Но модель "борется" за повышение адекватности идентификации. И в результате получается валидность заметно выше, чем по теории вероятностей даже при довольно больших выборках.

Когда анализируешь величину интегральной валидности и оцениваешь ее в категориях "довольно хорошая", или "не достаточно высокая", то надо сравнивать ее с валидностью, получаемой по теории вероятностей. Например, если есть два класса, то валидность даже с неработающей системой распознавания должна быть 50% при равновероятных классах, а если классов 10, то валидность должна быть 10%. И только то, что свыше этого значения, предсказываемого теорией вероятности, можно отнести на счет закономерностей в предметной области и работы модели.

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

Получается, что о выявлении закономерностей в предметной области можно говорить только тогда, когда статистика достаточно велика, т.е. настолько велика, что модель может подавить или отсеять шум. Если бы в предметной области не было закономерностей (а был только шум), то валидность была бы близка с предсказываемой теорией вероятностей, но фактически она значительно выше.

При увеличении объема обучающей выборки:

Во-первых, валидность должна стремиться не к нулю, а к величине, предсказываемой теорией вероятностей для равновероятных событий. Можно, конечно, ввести некую величину (каузальная валидность), как разность фактической валидности в системе "Эйдос" и теоретически предсказанной по теории вероятностей. Вот она уже будет стремиться к нулю.

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

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

Можно исследовать случайную модель с такими же параметрами, как какая-нибудь из реальных моделей (с таким же количеством классов, признаков, анкет) и сравнить их валидность. Получится некая величина. Можно считать, что разница между валидностью в реальном примере и случайной модели обусловлена наличием причинно-следственных связей в предметной области.

 

Задание

1. Исследовать зависимость интегральной валидности семантической информационной модели в зависимости от объема обучающей выборки при различном количестве классов и признаков.

2. Построить графики в Excel и дать их интерпретацию.

 

Пример решения

В системе "Эйдос" в 1-й подсистеме в 5-м режиме встроена 4-я функция, обеспечивающая генерацию случайной модели (классификационных и описательных шкал и обучающей выборки) при заданных в диалоге параметрах модели (рисунок 104).

 

Рисунок 104. Интерфейс режима генерации случайной модели

 

Реальный исходный текст реализации этой функции приведен ниже.

 

******** ФОРМИРОВАНИЕ КЛАССИФИКАЦИОННЫХ И ОПИСАТЕЛЬНЫХ ШКАЛ И ГРАДАЦИЙ, *****

******** А ТАКЖЕ ОБУЧАЮЩЕЙ ВЫБОРКИ СЛУЧАЙНЫМ ОБРАЗОМ ************************

******** Луценко Е.В., 04/16/04 02:01pm *************************************

 

FUNCTION InpRandom()

 

***** БЛОК-1. ОТОБРАЖЕНИЕ ИНФОРМАЦИИ О ФУНКЦИЯХ ПРОГРАММНОГО ИНТЕРФЕЙСА **********************

 

scr23 = SAVESCREEN(0,0,24,79)

 

SET CURSOR OFF

SET DATE ITALIAN

SET DECIMALS TO 15

SET ESCAPE On

 

Titul(.T.)

 

SHOWTIME(0,60,.F.,"rg+/n",.F.,.F.)

 

Mess1 = " === ГЕНЕРАЦИЯ СЛУЧАЙНЫХ КЛАССИФИКАЦИОННЫХ ШКАЛ И ГРАДАЦИЙ === "

Mess2 = " === ГЕНЕРАЦИЯ СЛУЧАЙНЫХ ОПИСАТЕЛЬНЫХ ШКАЛ И ГРАДАЦИЙ === "

Mess3 = " === ГЕНЕРАЦИЯ СЛУЧАЙНОЙ ОБУЧАЮЩЕЙ ВЫБОРКИ === "

@4,40-LEN(Mess1)/2 SAY Mess1 COLOR "rg+/rb"

@5,40-LEN(Mess2)/2 SAY Mess2 COLOR "rg+/rb"

@6,40-LEN(Mess3)/2 SAY Mess3 COLOR "rg+/rb"

 

** БЛОК-3. ЗАДАНИЕ В ДИАЛОГЕ ДИАПАЗОНОВ СТОЛБЦОВ С КЛАССАМИ И ФАКТОРАМИ **********************

 

N_Obj = 2

Mess = "Задайте количество классов  : #####"

@10,40-LEN(Mess)/2 SAY Mess COLOR "w+/rb"

@10,52 GET N_Obj PICTURE "#####" COLOR "rg+/r+"

N_Atr = 10

Mess = "Задайте количество признаков: #####"

@12,40-LEN(Mess)/2 SAY Mess COLOR "w+/rb"

@12,52 GET N_Atr PICTURE "#####" COLOR "rg+/r+"

N_Ank = 100

Mess = "Задайте количество анкет    : #####"

@14,40-LEN(Mess)/2 SAY Mess COLOR "w+/rb"

@14,52 GET N_Ank PICTURE "#####" COLOR "rg+/r+"

 

SET CURSOR ON;READ;SET CURSOR OFF

IF LASTKEY()=27

   RESTSCREEN(0,0,24,79,scr23)

   RETURN

ENDIF

 

USE Setup EXCLUSIVE NEW

N_LogAnk = N_Obj       && Макс. кол-во логических анкет в одной физической

CLOSE ALL

 

** БЛОК-7. ГЕНЕРАЦИЯ КЛАССИФИКАЦИОННЫХ ШКАЛ И ГРАДАЦИЙ ***************************************

 

Mess1 = " === ГЕНЕРАЦИЯ СЛУЧАЙНЫХ КЛАССИФИКАЦИОННЫХ ШКАЛ И ГРАДАЦИЙ === "

@4,40-LEN(Mess1)/2 SAY Mess1 COLOR "rg+*/rb"

 

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

x=0

 

CLOSE ALL

USE Object EXCLUSIVE NEW;ZAP

FOR j=1 TO N_Obj

    APPEND BLANK

    REPLACE Kod  WITH j

    REPLACE Name WITH "Obj_"+ALLTRIM(STR(j,5))

    p=++x/(N_Obj+N_Atr+N_Ank)*100;p=IF(p<=100,p,100)

    @24,0 SAY STR(p,3)+"%" COLOR "w+/r+"

    @24,4 SAY REPLICATE("-",0.76*p) COLOR "rb+/n"

NEXT

 

** БЛОК-8. ГЕНЕРАЦИЯ ОПИСАТЕЛЬНЫХ ШКАЛ И ГРАДАЦИЙ ********************************************

 

Mess2 = " === ГЕНЕРАЦИЯ СЛУЧАЙНЫХ ОПИСАТЕЛЬНЫХ ШКАЛ И ГРАДАЦИЙ === "

@5,40-LEN(Mess2)/2 SAY Mess2 COLOR "rg+*/rb"

 

USE Priz_ob  EXCLUSIVE NEW;ZAP

USE Priz_per EXCLUSIVE NEW;ZAP

 

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

 

FOR i=1 TO N_Atr

    APPEND BLANK

    REPLACE Kod  WITH i

    REPLACE Name WITH "Atr_"+ALLTRIM(STR(i,5))

    p=++x/(N_Obj+N_Atr+N_Ank)*100;p=IF(p<=100,p,100)

    @24,0 SAY STR(p,3)+"%" COLOR "w+/r+"

    @24,4 SAY REPLICATE("-",0.76*p) COLOR "rb+/n"

NEXT

 

** БЛОК-9. ГЕНЕРАЦИЯ ОБУЧАЮЩЕЙ ВЫБОРКИ *******************************************************

 

Mess3 = " === ГЕНЕРАЦИЯ СЛУЧАЙНОЙ ОБУЧАЮЩЕЙ ВЫБОРКИ === "

@6,40-LEN(Mess3)/2 SAY Mess3 COLOR "rg+*/rb"

 

USE ObInfZag EXCLUSIVE NEW;ZAP

USE ObInfKpr EXCLUSIVE NEW;ZAP

 

N_Rec = RECCOUNT()

 

FOR M_KodIst=1 TO N_Ank

 

    SELECT ObInfZag

    APPEND BLANK

    REPLACE Kod_ist  WITH M_KodIst

    R = 1+INT(N_Obj*RANDOM()/65535)              && Код класса

    R = IF(R<1,1,R)

    R = IF(R>N_Obj,N_Obj,R)

    REPLACE Name_ist WITH "Ist-"+STRTRAN(STR(M_KodIst,5)," ","0")+"-"+STRTRAN(STR(R,5)," ","0")

    FIELDPUT(3,R)

 

    ***** Генерация массива кодов признаков в для БД ObInfKpr

    A_Kpr := {}

    FOR j=1 TO N_Atr

        M_KodPr = 1+INT(N_Atr*RANDOM()/65535)    && Код признака

        M_KodPr = IF(M_KodPr<1,1,M_KodPr)

        M_KodPr = IF(M_KodPr>N_Atr,N_Atr,M_KodPr)

        IF ASCAN(A_Kpr,M_KodPr) = 0              && Если признак еще не стречался

           IF LEN(A_Kpr)+1 <= 4000

              AADD(A_Kpr,M_KodPr)

           ENDIF

        ENDIF

    NEXT

    ASORT(A_Kpr)

    ****** Запись массива кодов признаков в БД ObInfKpr

    SELECT ObInfKpr

    APPEND BLANK

    FIELDPUT(1,M_KodIst)

    k=2

    FOR j=1 TO LEN(A_Kpr)

        IF k <= 12

           FIELDPUT(k++,A_Kpr[j])

        ELSE

           APPEND BLANK

           FIELDPUT(1,M_KodIst)

           k=2

           FIELDPUT(k  ,A_Kpr[j])

        ENDIF

    NEXT

    p=++x/(N_Obj+N_Atr+N_Ank)*100;p=IF(p<=100,p,100)

    @24,0 SAY STR(p,3)+"%" COLOR "w+/r+"

    @24,4 SAY REPLICATE("-",0.76*p) COLOR "rb+/n"

NEXT

 

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

GenNtxObj(.T.)

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

GenNtxPro(.T.)

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

GenNtxPrp(.T.)

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

GenNtxOin(.T.)

@24,0 SAY REPLICATE("-",80) COLOR "rb/n"

 

Mess = " ПРОЦЕСС ГЕНЕРАЦИИ ЗАВЕРШЕН УСПЕШНО !!! "

@24,40-LEN(Mess)/2 SAY Mess COLOR "rg+/rb"

 

INKEY(0)

 

RESTSCREEN(0,0,24,79,scr23)

CLOSE ALL

 

RETURN

 

Алгоритм выполнения задания 1:

Шаг 0. Вход.

Шаг 1. Выполнить генерацию классификационных и описательных шкал и градаций, а также обучающей выборки при минимальном объеме обучающей выборки (например, при 2-х объектах).

Шаг 2. Произвести синтез модели.

Шаг 3. Скопировать обучающую выборку в распознаваемую.

Шаг 4. Произвести распознавание.

Шаг 5. Измерить внутреннюю интегральную валидность и занести информацию о параметрах случайной модели в Excel.

Шаг 6. Увеличить объем обучающей выборки на величину "Дельта".

Шаг 7. Если объем обучающей выборки меньше максимума, то перейти на шаг 2, иначе – на шаг 8.

Шаг 8. Выход.

Учащимся предлагается выполнить приведенный алгоритм самостоятельно.

 

Контрольные вопросы

1. Что такое "случайная модель"?

2. Почему необходимо исследовать свойства случайной модели?

3. Какие средства для генерации и исследования случайных моделей есть в системе "Эйдос"?

 

Литература по лабораторной работе

1. Луценко Е.В. Теоретические основы и технология адаптивного семантического анализа в поддержке принятия решений (на примере универсальной автоматизированной системы распознавания образов "ЭЙДОС-5.1"). - Краснодар: КЮИ МВД РФ, 1996. – 280с.

2. Луценко Е.В. Автоматизированный системно-когнитивный анализ в управлении активными объектами (системная теория информации и ее применение в исследовании экономических, социально-психологических, технологических и организационно-технических систем): Монография (научное издание). – Краснодар:  КубГАУ. 2002. – 605 с.