Codong's Development Diary RSS 태그 관리 글쓰기 방명록
공부 (2)
2021-01-15 12:06:08

챗봇의 구현 방식


출처 : https://www.slideshare.net/healess/python-tensorflow-ai-chatbot

1) 규칙 기반 모델(Rule-based Model)

  • 사람들이 미리 응답을 설계해 놓으면, 사용자의 입력 메시지를 분류해 후보 응답들 중 적합한 것을 출력하는 모델이다. 적합성은 사전에 정해진 시나리오에 따라 판별되며 이에 따라 출력될 응답이 결정된다. 미리 정의된 시나리오에 따른 결과가 도출되어 오류가 적다는 장점이 있다. 그러나 시나리오를 설계하는 것이 어렵고 작성에 소요되는 시간과 노동력이 필요하고, 다양한 상황에 유연한 대응을 하지 못한다는 단점 존재.

2) 학습 기반 모델(Learning-based Model)이 있다.

  • 빅데이터를 기반으로 인공지능 모델을 학습해 사용자의 입력에 따라 대답을 예측하는 모델이다. 이 모델은 챗봇과의 자유로운 대화가 가능하다는 장점이 있지만 주제를 제어하기 어렵고 사용자의 질문이나 요구사항에 적절히 대응하지 못하는 오류가 발생할 수 있다.

심리 상담에 규칙 기반 모델을 사용하는 이유

  • 심리 상담은 일상적인 대화와는 다르게 내담자와 합의된 목표 도달을 위한 과정이다. 그러나 목표 도달을 위해 내담자의 이야기를 이끌어내야 한다는 점에서 대화의 효율성을 지향하는 과업지향 대화 시스템과는 거리가 있어 챗봇으로 분류되는 것이 적합하다. 심리 상담은 전체적인 방향성을 잡아주는 상담 이론에 기반하고, 전문적인 기술을 갖춘 상담사에 의해 단계적으로 진행될 때 실질적인 변화를 이룰 가능성이 높다. 학습 기반 모델은 사용자가 대화를 주도하기 때문에 상담의 방향성을 유지하는 것이 어렵다. 그에 반해 규칙 기반 모델은 주로 버튼 및 선택 방식을 차용하여 사전에 설계된 시나리오에 따라 대화가 진행되기 때문에 일관성 있는 대화 흐름을 유지할 수 있다.

참고 자료

'공부' 카테고리의 다른 글

추천시스템 정리  (0) 2021.01.15
2021-01-15 11:18:56

알고리즘 종류

1. 콘텐츠 기반 필터링(Contents-based Filtering)

  • 각각의 사용자와 아이템에 대하여 프로필 작성, 이를 기반으로 추천.
  • 특징은 사람들 간을 비교하지 않고, 아이템 특성만을 비교한다는 점입니다. 사용자가 적은 초반의 추천 시스템의 경우 사용

1.1 가장 기본적인 것이 코사인 유사도( 코사인 각도 기반의 벡터 유사도)

  1. 직각(90도)이면 0
  2. 다른방향(180도)이면 -1
  3. 같은방향(0도)이면 1

1.2 사용되는 머신러닝 기술

  • KNN Classification (nearest neighbor)
  • Linear Classification

※ 한계점

  • 데이터 셋 구성하기가 어렵다. ex. 영화-> 모든 영화에 대한 일일이 프로필 작성 불가능.
  • 개인적 주관에 영향이 크다. -> 추천의 객관성 떨어짐.

2. 협업 필터링(Collaborative Filtering)

  • 다른 사용자들을 통해 현재 사용자의 취향을 추측. 프로필 데이터 없이, 사용자의 과거 행동 데이터만 가지고 추천

2.1 최근접 이웃 협업 필터링

  1. 사용자 기반 : 비슷한 평점 부여한 사용자 찾아 추측
  2. 아이템 기반 : 비슷한 평점을 받은 아이템 찾아 추측

2.2 잠재 요인

  • 잠재요인을 토대로 행렬 분해해서 추측
  • 잠재 요인은 알 수 없는데, 장르가 될 수도 있고 키워드가 될 수도 있다.

※ 한계점

  • 신규 사용자의 경우, 관찰된 행동 데이터가 없거나 적다. -> 추천의 정확도가 급격히 떨어지는 cold start 문제 발생

대표적인 모델

1. Prediction Version

  • Matrix Completion Problem
  • 사용자와 아이템 간의 평가 점수를 예측하는 것입니다.
  • m명의 user, n개의 item이 있을 때, m x n matrix를 계산하는 방식입니다.

2. Ranking Version

  • Top-k Recommendation Problem
  • 특정 유저에게 k개의 적합한 아이템을 추천해주는 방식입니다.

최신 알고리즘

1. hybrid 추천 시스템

  • 위 두가지의 한계점을 보완하기 위해 함께 사용.
  • 데이터가 일정 수 이상 쌓이는 시점을 기준으로 추천 알고리즘을 다르게 적용

1.1 Combining Filtering 기법

  • 두 가지 알고리즘을 모두 적용하고, 이의 가중 평균(Weighted Average)를 구함.

1.2 Collaboration via Content 기법

  • 평점 데이터와 아이템 프로필을 조합하여 사용자 프로필을 만들어 추천

2. 머신러닝 추천 시스템(Machine Learning Recoomender Systems)

  • 사용자에게 추천할 후보군을 먼저 보여주고 기계가 그에 대한 사용자 반응을 학습하며 점점 더 정교한 결과를 도출해내는 방식

  • 사용자의 단순한 콘텐츠 소비를 넘어서, 상품 조회 및 페이지 클릭 등 사소한 행동까지 학습.


참고자료

'공부' 카테고리의 다른 글

챗봇 정리  (0) 2021.01.15