본문 바로가기

Archived(IT)/배경지식_챗봇

(8)
챗봇과 관련된 기술 기반 내용(AI, 검색엔진) #1 챗봇의 AI는 왜 필요할까? #2 챗봇의 검색엔진은 왜 필요할까?
Inverted Index(역색인) Inverted Index(역색인) 주어진 키워드에 대해서 해당 키워드가 포함된 데이터의 위치를 추적해내는 것을 의미한다. 쉽게 말해서 데이터베이스 내의 데이터들로부터 키워드를 뽑아내는 과정이라면, 역색인은 특정 키워드에대해 요청(Request)이 들어왔을때 해당 키워드들을 포함하고 있는 데이터들을 찾아내는 것을 의미한다. 색인(Index)을 책 맨 앞의 목차라고 한다면, 역색인(Inverted Index)은 책 맨 뒷 부분의 색인이라고 할 수 있다. 이러한 역색인은 검색 엔진에 있어 성능향상을 위해 필수적으로 활용되는 부문이다. 검색 엔진(Elasticsearch, Apache Solr 등)에서 각 문장의 단어(term 또는 token이라고도 한다)를 분리하고 정렬한 다음, 각 단어가 어느 docume..
Apache Solr(아파치 솔라) Apache Solr(아파치 솔라) 오픈소스 정보검색 라이브러리인 루씬의 엔터프라이즈 버전이다. 엔터프라이즈 검색 서버인만큼 다양한 기능을 지원한다. 기본적인 텍스트 검색, 다면적 검색, 실시간 인덱싱, 클러스터링, 데이터베이스 통합, 다양한 문서처리 및 검색, 솔라 분산 인덱싱 등의 기능을 지원하고 있다. Apache Solr 아키텍처 및 기술용어 클러스터(Cluster) : 하나 이상의 노드로 이루어진 가장 큰 시스템 단위(독립적인 형태로 유지되며, 한 서버를 여러대의 클러스터가 구성할 수 있으며, 여러 대의 서버가 한 클러스터를 구성할 수도 있다) 스키마(Schema) : 색인할 문서의 필드, 필드 타입 정의 인덱스 복제(Index Replication): 마스터 인덱스의 전체 복사본을 하나 이상의..
챗봇과 관련된 오해 챗봇은 최근 빠르게 많은 분야들에서 상용화되고 있다. 단순문의 응답용부터 고객에게 맞춤 추천 서비스 등의 다양한 서비스를 지원하고 있는 챗봇은 빠르게 일상 속에 스며들고 있다. 그런데 챗봇에 대한 정보는 현재 상용화된 바에 비해 부족한 실정이다. 그래서 많은 사람들은 챗봇과 관련하여 크고 작은 오해들을 하고 있을 지도 모른다. # CheckPoint 1. 챗봇은 사람과 달리 모든 질문에 답할 수 없다 고객 : 월요일에 영업하나요? 직원 : 월요일이요? 영업하죠. 네네. 고객 : 월요일에 영업하나요? 챗봇 : 당사 영업시간은 아래와 같습니다. 평일 10:00 ~ 20:00 주말, 공휴일 휴무 챗봇과 관련하여 가장 자주 거론되는 오해이다. 아래와 같이 간단한 문의는 챗봇이나 상담원이나 마찬가지로 원하는 답을..
자연어 이해(Natural Language Understanding, NLU) 자연어 이해 , NLU NLU란 자연어 표현을 기계가 이해할 수 있는 다른 표현으로 변환시키는 것을 뜻한다. 형태소 분석이나 구문 분석과 같은 자연어 처리 (NLP)와 혼용해서 사용되는 경우가 많으나 자연어 이해 (NLU)가 더 큰 개념으로 단순히 단어나 문장의 형태를 기계가 인식하도록 하는 것이 아닌, 의미를 인식하도록 하는 것을 의미한다. 자연어 이해 (NLU) 기능의 예를 들자면 "문장의 의도 분류" , "서로 다른 언어간 번역 문장 생성", 자연어 질문에 대한 답변 추출 등이 있다. 딥러닝 (Deep Learning)기술의 발전 덕분에 전통적인 통계 및 룰 기반의 자연어 이해 (NLU)기법이나 머신러닝(Machine Learning)방식의 자연어 이해 (NLU) 기법의 한계를 해결할 수 있게 됐다..
검색 엔진(Search Engine) 검색 엔진(Search engine) 인터넷 초기에는 모든 웹 서버를 하나의 목록으로 만들어 관리할 만큼 자료의 양이 많지 않았기 때문에 그 중에서 원하는 자료를 찾는 것이 어렵지 않았다. 하지만 인터넷 환경이 점점 발달함에 따라 웹 상에는 엄청난 양의 자료들이 넘쳐나기 시작했고, 이 방대한 자료 중에서 자신이 원하는 자료를 찾는 것은 매우 힘든 일이 되었다. 웹에 존재하는 많은 양의 정보 중에서 사용자가 원하는 정보만을 여러 웹 사이트나 웹 페이지 등에서 검색해 주는 시스템이나 프로그램 등을 통틀어 검색 엔진(search engine)이라고 한다. 이러한 검색 엔진은 사용자가 원하는 정보를 웹에서 찾는데 걸리는 시간을 최소화할 수 있게 도와준다. 검색 엔진의 동작 원리 검색 엔진은 크게 웹크롤링(Web..
기계독해 MRC(Machine Reading Comprehension) 기계독해(MRC)란? 기계독해(MRC)는 인공지능(AI) 알고리즘이 스스로 문제를 분석하고 질문에 최적화된 답안을 찾아내는 기술을 말합니다. 사람이 텍스트를 읽고 질문 답변을 추론하듯이 AI가 문장 속에서 의미를 찾고 답변할 수 있습니다. 추론은 불가능하지만 사람이 관련 정보를 찾기 위해 정보를 일일이 확인하지 않아도 답을 찾아낼 수 있습니다. 단순한 과거의 기계독해로부터 AI로 발전되기 까지 과거 기계독해는 알고리즘을 일일이 컴퓨터에 주입하는 방식으로 이뤄졌습니다. 우리는 무의식적으로 익숙해지고 변화되어가는 사고방식을 지녔지만 기계는 그렇지 않았습니다. 우리가 익숙해지는 패턴을 그대로 기계에 명령을 내리고 주입을 해야만 했습니다. 이러한 과정 자체가 많은 비용을 나아냈고 효율성에 대한 회의로 이어지게 ..
STT(Speech-to-Text) STT 사람이 말하는 음성 언어를 컴퓨터가 해석해 그 내용을 문자 데이터로 전환하는 처리 STT(Speech-to-Text), Voice Recognition 또는 인공 청각이라고도 표현합니다. 뜻 그대로 사람의 음성 인터페이스를 통해 텍스트(문자) 데이터를 추출해내는 것이죠. 현재는 다양한 플랫폼과 서비스들에 상용화되어 있기에 보다 쉽게 접할 수 있는 기술입니다. 그렇지만 STT 기술은 어느 날 갑자기 툭 하고 나타난 것이 아니며, 음성인식의 역사는 1950년대까지 거슬러 올라가야 합니다. 미국에서는 사람이 말하는 모습을 X레이로 촬영하고 목소리의 구조를 조사하는 연구가 활발히 진행되었습니다. 소리를 낼 때의 변화를 확인 하고 그것을 수학적으로 기술하고자 한 것입니다. 여기서 나온 수식 모델에 소리를 ..