Linguistic Variable

 

fuzzy set 의 중요한 응용중에 computational linguistics 가 있다. 이것은 logic을 logic statement로서 묘사하듯이 computer 에 자연어 문장을 묘사하기 위한 것이다. 즉 fuzzy set 와 linguistic variable 은 조작할수 있도록 자연어의 의미를 정량화하기 위해서이다. linguistic variable은 자연어 또는 인공언어에서의 words, phrases, sentences 같은 표현으로 linguistic value를 갖는다. 다음은 linguistic variable과 linguistic value의 예이다.  

 

Linguistic Variable

Linguistic Value

    키

    dwarf(난쟁이), short, average, tall, giant

    숫자

    almost none, several, few, many

    stage of life

    infant, toddler(걷는 아기), child, teenager, adult

    색깔

    red, blue,green, yellow, orange

    빛

    dim, faint, normal, bright, intense

    디저트

    pie, cake, ice cream, baked alaska

 

이러한 linguistic value로서의 red 와 같은 값은 성질상 매우 주관적이다. 예를들어 색깔 red 는 인간이 red 라고 감지하는 주파수의 범위와 상응한다. 즉 하나의 주파수 값이 아니라는 것이다. aquamarine (남록색) 은 blue 에 가까운가 green에 가까운가?  linguistic variable는 heuristic rule에서 흔히 사용되며 다음은 그예이다.

 

    IF   TV가 너무 어두우면  THEN  밝기를 조정해라 : picture quality

    IF  너무 뜨거우면  THEN  찬 것을 더 넣어라 : water temperature

    IF   압력이 너무 높으면   THEN  relief valve를 열어라

    IF  이자율이 올라가면  THEN  채권 (bond)를 사라

    IF  이자율이 내려가면  THEN  주식 (stock)을 사라

 

위에서 picture quality 는 color, tint, brightness, noise, consistency 등의 value를 가진다. 또한 brightness 등등은 closed interval [0, 1] 의 수치범위를 갖는 linguistic value를 갖는다. 따라서 picture quality는 fuzzy set of order 2 라고 하고 brightness 는 fuzzy set of order 1 이라하며 둘다 linguistic variable 이다. 따라서 linguistic variable는 hierarchy 구조로 표현할수 있다.

 

linguistic variable 의 term-set ,T(L) 은 다음과 같은 value를 갖는다.

T(PIE) = CHOCOLATE + APPLE + STRAWBERRY + PECAT

위의 CHOCOLATE 는 또다른 subset을 구성한다.

CHOCOLATE = SEMI-SWEET CHOCOLATE + MILK CHOCOLATE + DUTCH CHOCOLATE + ...

 

다음과 같은 CHOCOLATE fuzzy set 의 또다른 형태의 정의는 set 의 의미를 변형시키는 hedge를 포함할수 있다.

CHOCOLATE = very CHOCOLATE + very very CHOCOLATE + more or less CHOCOLATE + slightly CHOCOLATE + plus CHOCOLATE + not very CHOCOLATE + ...

fuzzy set, F 와 fuzzy set operator 용어로 표현한 standard hedge는 다음과 같다.

 

Hedge

Operator definition

    very F

    CON(F) =F

    more or less F

    DIL(F) = F

    plus F

    F

    not F

    1 - F

    not very F

    1 - CON(F)

    slightly F

    INT [ NORM (plus F AND not (very F)) ]

 

operator 들을 결합하여 compound hedge들을 만들수 있다. "slightly" hedge에서 보듯이 fuzzy set  plus F 와 not(very F)에서 작용하는 intersection AND (∩) 가 바로 그 fuzzy set operator이다.

 

또한 Appetite linguistic variable을 본다면 LIGHT and HEAVY fuzzy set 들은 S-function을 보이고 MODERATE fuzzy set 는 Π-function을 보인다. 즉 y 축에 membership grade, x 축에 calories eaten per day를 두는 그림을 생각해본다.

 

fuzzy set의 경우는 LIGHT, MODERATE 간의 overlap이 존재할수 있으며, 심지어 LIGHT 와 HEAVY 사이에도 overlap이 있을수 있다. 그러나 crisp set의 경우는 disjoint (분리,해체) 하기 때문에 overlap이 있을수 없다. crisp의 경우는 LIGHT appetite는 도저히 HEAVY appetite일수 없는 것이다.

 

여기서 hedged set은 fuzzy set의 경계선내에서 curve를 그리게 된다. 즉 very 라는 hedge는 linguistic variable에 대한 modifier로서 작용하여 very LIGHT, very MODERATE, very HEAVY 라는 fuzzy set을 만든다.

 

linguistic variable는 fuzzy set or rules로 인식될 수 있는 valid syntax 와 semantics를 가져야한다. syntactic rule 은 T(L) 과 같은 표현양식으로 정의하여보면, 예를들면 term-set  T(age)는

T(age) = {old, very old, very very old,.....}

위의 문장은 다음과 같은 syntactic rule을 사용하여 recursively하게 생성된다

T  = { old } ∪ { very T }

 

T(L) 과 연관된 semantic rule 은 term L 의 의미를 규정한다.

즉 primary term은 young, old, chocolate,strawberry 등등을 의미하며 그 의미는 hedge가 사용되기전에 이미 정의되어 있어야한다. hedge는 very young, very old, slightly chocolate 등등과 같이 primary term의 의미를 변형 (modify) 시킨다.

 

μold(x) = S (x; 60, 70, 80)

 

old에 관한 membership function은 위와같이 주어진다. 이것은 S-function으로 정의된다.

이 경우 hedged fuzzy set의 의미는 적절한 fuzzy set operator를 적용하여 다음과같이 정의한다

 

μvery chocolate = μchocolate

μnot chocolate =  1 - μchocolate

μmore or less chocolate = μchocolate

μnot very chocolate =1 - μvery chocolate

 

기존 언어의 문법을 BNF notation으로 정의할 수 있는 것처럼 fuzzy grammar 로서 표현할수 있다.

이를 사용하여 fuzzy production을 생성하게 된다.

 

linguistic variable 개념을 잘 응용한 예로서 Sugeno 가 만든 fuzzy car 가 있다. 그것은 사각 track을 자동적으로 운행하게 만드는 fuzzy logic 에 기초한 제어시스템을 사용하였다.또한 특정 지역에 스스로 주차할 수 있고 example 로부터 학습한다. linguistic variable은 차의 운동을 제어하는 rule에 사용된다. 이외에 많은 fuzzy logic control system이 제어와 산업공정과정에 사용되었는데 예로 cement를 제조하기위한 cement kiln 과 같은 process 등이다.