기업에서 프로젝트 진행 시 가장 손이 많이 가는 부분은 쿼리를 만드는 작업입니다. 데이터를 아무리 구조적으로 잘 만들어놓고, 화면을 삐까번쩍하게 만들었다고 하더라도 데이터를 조회하는 쿼리가 잘못되면 아무 소용이 없습니다. 잘못된 데이터는 잘못된 의사결정으로 이어지고 기업의 손실로 이어집니다. 그래서 프로젝트 진행 시 무언가를 설계하고 만드는 작업도 중요하지만 데이터를 검증하는 작업이 무척 중요합니다. 현업들이 참여해서 하는 일의 대부분은 데이터 검증이 아닌가 싶기도 하구요.
뭔가 알아서 만들어준다는 솔루션들을 보면 대부분 쓸데없는 코드를 자동으로 생성해주는 역할을 합니다. 개발자들이 반복적으로 하는 작업이지요. 어느 정도 불필요한 부분은 지속적으로 줄여나갈 수 있기 때문에 뭔가 지능적인 작업이 아닌 패턴이나 룰에 따른 자동화에 불과합니다. 알아서 만들어준다기보다는 패턴에 따라 자동화한 솔루션인거죠.
Photo by Caspar Rubin on Unsplash
데이터를 분석해서 비슷한 화면까지 만들어줄 수는 있지만 데이터를 조회하기 위한 쿼리는 개발자의 손을 거쳐야 합니다. 그런데 이제는 인공지능 기술을 가지고 개발자의 도움 없이 쿼리를 만들어낼 수 있다고 합니다.
...프로그래밍을 전혀 모르는 사람도 데이터베이스(DB)에 정보를 요청하는 ‘쿼리’를 짤 수 있게 될 전망이다. 미국 소프트웨어(SW) 업체 세일즈포스가 말(자연어)로 질문하면 DB 관리 프로그래밍 언어인 ‘SQL’로 전환해 주는 시스템을 개발 중이다...
http://www.zdnet.co.kr/news/news_view.asp?artice_id=20170831082744
기사에 연결된 링크를 보면 3명의 작성자가 있습니다. 3명 모두 공통점을 가지고 있는데 전 직장이 메타마인드라는 곳입니다. 메타마인드는 2016년 세일즈포스가 인수한 인공지능 스타트업입니다. 인수금액은 공개되지 않았지만 메타마인드가 가지고 있는 기술이 이런 결과를 만들어낸 것이 아닌가 싶습니다.
메타마인드의 인공지능은 아래와 같은 식으로 결과값을 도출한다고 합니다. 마치 문제적남자에 나올법한 퀴즈 같은 건데 이런식으로 수집된 데이터를 분석하고 답을 찾아낸다고 합니다. 쿼리를 만들때도 개발자들은 현업의 요구사항을 확인하고 실제 데이터를 다양한 관점에서 확인한 다음 쿼리를 만드는데 인공지능이 동작하는 방식과 비슷하다고 볼 수 있죠.
Statements fed into the system:
Jane went to the hallway.
Mary walked to the bathroom.
Sandra went to the garden.
Daniel went back to the garden.
Sandra took the milk there.
Question:
Where is the milk?
Answer:
Garden.
* 공개된 문서 링크와 개발자 사이트
https://einstein.ai/static/images/layouts/research/seq2sql/seq2sql.pdf