Tag Archives: 지식소스

Blackboard pattern은 오늘날 NLU(Natural Language Understanding)이나 차량인식 등에 응용되는 아키텍쳐

블랙보드 아키텍쳐 패턴(Blackboard Architectural pattern)은 Non-deterministic algorithm(비결정성 알고리즘)을 구현하는데 널리 이용되고 있습니다.

Non-deterministic algorithm(비결정성 알고리즘)은 그 다음 단계의 결과가 실행할때마다 다르게 나올 수 있는 알고리즘을 의미합니다. 참고로 Deterministic algorithm(결정성 알고리즘)은 결과가 유니크(Unique)합니다. 즉, 특정 값으로 떨어집니다.

Non-deterministic algorithm(비결정성 알고리즘)의 예는 “오늘 날씨 어떻지?”라는 함수를 호출했을때, 아침에는 “맑음”이었는데, 같은 함수를 오후에 호출하면 “흐림”으로 나오는 것이 그 예라고 할 수 있습니다.

블랙보드 아키텍쳐 패턴은 크게 3개의 컴포넌트로 이루어져 있습니다.

  • 블랙보드(blackboard) – 솔루션(solution space)에서 가져온 객체(object)를 가지고 있는 구조화된 전역 메모리 (structured global memory)
  • 지식소스(knowledge source) – 각각의 표현을 기술한 모듈
  • 컨트롤 컴포넌트(control component) – 상황에 맞게 모듈을 선택/설정/실행 합니다

모든 컴포넌트는 블랙보드를 통해 제어되며, 각각의 컴포넌트들은 백보드의 데이터 객체(data object)로 생성되어, 각각의 패턴에 맞는 지식소스로부터 패턴이 일치하게 되면 정해진 프로세스를 수행하게 됩니다.

Blackboard pattern은 오늘날 NLU(Natural Language Understanding)이나 차량인식 등에 응용되는 아키텍쳐

블랙보드 아키텍쳐 패턴(Blackboard Architectural pattern)은 구문인식(Speech recognition), 차량인식 및 추적(Vehicle identification and tracking), 시그널프로세싱, 단백질 구조 분석(Protein structure identification) 등에 응용되고 있습니다.

마지막으로 블랙보드 아키텍쳐 패턴(Blackboard Architectural pattern)의 장단점을 언급하면, 새로운 애플리케이션을 쉽게 추가할 수 있다는 장점이 있습니다만, 데이터 공간의 구조를 변경은 모든 애플리케이션이 영향을 받기 때문에 하기가 어렵다는 단점이 있어 동기화 및 접근 제어가 필요할 수 있습니다.