(번역) AI 가 우리에게 다가오고 있다
이 글은 AI가 데이터베이스에 직접 접근해 인간 전문가처럼 데이터를 분석하는 새로운 워크플로우를 소개합니다. 단순한 질의응답을 뛰어넘는 이러한 도약은 데이터 분석가의 역할이 근본적으로 재정의될 미래를 암시합니다.
이 글은 AI가 데이터베이스에 직접 접근해 인간 전문가처럼 데이터를 분석하는 새로운 워크플로우를 소개합니다. 단순한 질의응답을 뛰어넘는 이러한 도약은 데이터 분석가의 역할이 근본적으로 재정의될 미래를 암시합니다.
살다보면 이전의 상태로 돌아갈 수는 없겠다 싶은 순간들이 생기기 마련입니다. 저는 10년 전 Gary 가 제게 PowerPivot 을 알려줬던 게 특히 기억에 남고, 데이터를 다루는 게 엑셀을 가지고 노는 것만큼 쉬워지는 날이 올 것이라고 생각했습니다. 또 다른 순간은 이틀 전 제가 Claude Desktop 을 데이터베이스에 연결한 뒤, “너는 뭐라고 생각해?” 라는 질문을 던졌을 때였습니다.
이건 아주 낯선 경험이었습니다. 기존에 겪었던 “데이터를 살펴보고 멋진 차트를 그려줘” 와 같은 게 아니었으니까요. 오히려 사람과 이야기를 나누고 나서 보고서 작성을 요청하는 것 같았습니다. LLM 이 모든 테이블을 나열하더니, 데이터를 살펴보고, 각 데이터셋이 어떤 것인지도 알아냈습니다. 어떤 방식을 썼는지는 모르겠지만, 전력 생산과 관련된 숫자가 MW 단위인 걸 알아냈습니다. 이를 MWh 로 변환하기 위해서는 12로 나눠줘야 합니다.
이런 방식이 전형적인 데이터와 대화를 나누는 워크플로우 (chat with your data workflow) 에 비해 강력한 이유는 단순합니다. LLM 이 데이터에 대한 읽기 권한을 가지고 있기 때문입니다. 이는 여전히 안전하고, 당신이 부여한 접근 대상을 읽을 수만 있습니다. 제가 알기로는, 이러한 LLM 들은 자가 학습을 하거나, 데이터를 학습에 사용하지는 않습니다. 적어도 엔터프라이즈 API 를 사용한다면 말이죠.
또 흥미로운 것이 있었습니다. 비개발자로서 저는 코딩 분야에 있어서 AI 의 진보를 매우 흥미롭게 지켜봤으며, 개발자들에게 크게 공감을 느끼지는 않았습니다. 저는 그들이 위협을 과장하는 줄 알았습니다. 그런데 AI 가 분석 또한 잘 하게 될 것이라는 걸 보고 난 뒤 마음이 바뀌었습니다.
Note: 앞으로는 LLM 을 AI 라고 하겠습니다. Kurt 의 블로그를 한 번 읽어봐주시고, MCP 에 대해 알려준 Pawel 에게도 감사하다는 말씀을 드립니다.
여기서 중요한 부분은 AI 는 여러분의 데이터에 접근 권한이 없다는 것입니다. 여러분은 데이터에 대해 최대한 많은 정보를 모아서, 이 정보와 함께 질문을 AI 에게 보냅니다. 그러면 AI 는 SQL 이나 DAX 를 생성해서 보내주고, 사용자는 이를 자신의 서버에 직접 실행하여 답변을 얻습니다. 만약 질문이 충분히 명확하지 않았다면, 이를 명확하게 하기 위한 질문을 다시 합니다. 예를 들면, ‘세계에서 가장 큰 나라가 어디냐’ 는 질문은 했다면, AI 는 영토를 기준으로 하는 것인지, GDP 를 기준으로 하는 것인지 등을 되물을 것입니다. 실제로는 훨씬 더 복잡하긴 하겠지만, 핵심 아이디어는 이렇습니다.
기본적으로 우리는 AI 가 우리의 데이터를 볼 수 없게 하기 위해 많은 노력을 들입니다. 가끔은 쓰다 보면 왜 이렇게 명백한 질문에도 제대로 답변을 못하는지 의문을 가지기도 할 겁니다. 생각해보세요. 다른 사람이 데이터 분석가인 여러분에게 아무런 숫자를 보지 않고 보고서를 작성하달라고 하면 어떨 것 같나요?
이 환경에서 AI 는 고삐가 풀린 상태입니다. 데이터를 직접 읽을 수 있고 (다시 말씀드리지만, 여러분이 부여한 데이터에 대해, 이상적으로는 읽기 권한만 가지고 있습니다), 쉽게 말해서 대리인의 역할을 하면서, 더 많은 자율성을 가지고 있습니다. 그리고 메타데이터에 제한된 것도 아닙니다.
제 OneLake 에는 아래와 같은 데이터가 있는데, 이는 모두 정제된 데이터입니다.
아직 Fabric 데이터웨어하우스를 위한 MCP 서버가 없어서, DuckDB MCP 서버 를 사용하여 OneLake 에서 데이터를 읽어왔습니다. 편의를 위해 직접 쿼리를 사용하지 않고, 데이터를 로컬 DuckDB 파일로 저장했습니다.
import duckdb
con = duckdb.connect()
con.sql("ATTACH 'aemo_delta.duckdb' AS db; USE db")
for tbl in ['duid', 'summary', 'calendar', 'mstdatetime']:
con.sql(f"""
CREATE OR REPLACE TABLE {tbl} AS
FROM delta_scan('abfss://serving@onelake.dfs.fabric.microsoft.com/datamart.Lakehouse/Tables/aemo/{tbl}')
""")
con.close()
MCP 를 설치하고, Claude Desktop 과 연결 설정을 마쳐야 합니다. 명확히 하자면, 모든 MCP 클라이언트와 사용할 수 있지만, 제가 찾을 수 있는 것들 중 가장 괜찮았던 것이 이것이었습니다. 언젠가는 Power BI Desktop 이 MCP 클라이언트가 될지 누가 알겠어요 (완전히 만들어낸 이야기입니다. 힌트 같은 게 아니에요).
그런 뒤 Claude Desktop 에 아래 설정을 추가해줍니다.
{
"mcpServers": {
"mcp-server-motherduck": {
"command": "uvx",
"args": [
"mcp-server-motherduck",
"--db-path",
"/tmp/llm/aemo_delta.duckdb"
]
}
}
}
제가 느끼기에는 AI 를 위한 OBDC 같았습니다. 모든 사람들이 이 프로토콜을 사용하고 있으니까요.
데이터도 공개되어 있어서 전체 채팅 기록도 공개하겠습니다. 저는 AI 가 문제에 접근한 방식이 매우 마음에 들었는데, 첫 번째로 테이블을 확인한 것이었습니다. 이는 매우 사람 같은 행동이라고 생각합니다.
채팅을 읽어보시면, 완벽하지는 않다는 것을 알 수 있을 겁니다. 재생에너지에 대해 이야기하면서 수력 발전을 생략하기도 하고, 전날에는 맞게 계산했지만 MWh 를 잘못 계산하기도 했습니다.
지금까지 대부분의 모델은 서빙 단계에서는 추가적인 지식을 습득하지 못하고 있지만, 향후 10년 동안 어떻게 바뀔지 누가 알겠어요? 사용자, 그리고 데이터와 상호작용을 하면서 학습하는 AI 를 상상해보세요. 완전히 새로운 질문들을 하게 될 겁니다. 사용자 마다 특정한 모델이 필요한가요? 아직 그 단계는 아니지만, 언젠가는 해결해야할 문제라고 생각합니다.
이 글은 AI가 데이터베이스에 직접 접근해 인간 전문가처럼 데이터를 분석하는 새로운 워크플로우를 소개합니다. 단순한 질의응답을 뛰어넘는 이러한 도약은 데이터 분석가의 역할이 근본적으로 재정의될 미래를 암시합니다.
이 글은 넷플릭스 (Netflix) 에서의 분석 엔지니어링 (Analytics Engineering) 관련 업무의 범위를 공유하기 위한 여러 편의 글 중 두 번째 글이며, 최근에 열렸던 분석 엔지니어링 컨퍼런스에서 발표된 내용이기도 합니다. 더 많은 내용이 궁금하신가요? 첫 번째 ...
듀오링고의 350% 성장의 뒷 이야기, 리더보드, 연속 학습, 알림, 그리고 혁신적인 그로스 모델 들어가기에 앞서
듀오링고의 350% 성장의 뒷 이야기, 리더보드, 연속 학습, 알림, 그리고 혁신적인 그로스 모델 들어가기에 앞서
듀오링고의 350% 성장의 뒷 이야기, 리더보드, 연속 학습, 알림, 그리고 혁신적인 그로스 모델
원문: Meaningful metrics: How data sharpened the focus of product teams
원문: Sequential Testing at Booking.com
가장 좋은 방법은 당연히 영어 밖에 사용하지 못하는 환경에 강제로 처해지는 것이겠지만 그것이 어려우니…
고민의 흔적을 보여주세요
을 찾습니다.
원문: Charts & Accessibility
모수, 큰 수의 법칙, 그리고 중심극한정리에 대하여
그리고 여러분들도 (아마도) 하지 않아야 하는 이유
회사 서비스의 추천 시스템을 개선하기 위해 팀 내에서 (아직까진 두 명이긴 하지만) 지난 두 달 동안 스터디를 진행했습니다. 얼마 전 두 번째 스터디가 끝났고 이에 대한 회고를 해보려고 합니다.
원문: Dark Side of Data: Privacy by Emre Rencberoglu
원문: RStudio Projects and Working Directories: A Beginner’s Guide by Martin Chan
원문: TidyTuesday GitHub Repository
원문: How programming languages got their names
원문: How to Make Meetings Less Terrible 팟캐스트: How to Make Meetings Less Terrible (Ep. 389)
생키 다이어그램 (Sankey Diagram) 은 흐름(Flow) 다이어그램의 한 종류로써 그 화살표의 너비로 흐름의 양을 비율적으로 보여준다.
2년 전 일본어로 책을 내긴 했지만 대부분의 독자들이 이 책을 읽을 수는 없을 것 같았다.
자기회귀 모형이란 무엇인가?
회귀분석을 실행하기 위해 필요한 가정과 조건들에 대해 알아보자.
통계적 검정과 회귀분석에서 자주 사용되는 정규성 가정과 정규성 검정에 대해 알아보자.
여러 통계 검정과 모형에서 사용되는 독립성 가정에 대해 알아보자.
시계열 모형 중 ARMA 모형에대해 알아보자.
시각화에서 주의할 점인 넓이를 표시하는 원칙에 대해 알아보자.
평균 양쪽의 z-값들 사이의 넓이를 구하는 방법에 대해 알아보자.
분산분석의 개념과 방법에 대해 알아보자.
분산분석(ANOVA; ANalysis Of VAriance) 와 회귀분석의 개념을 섞은 공분산분석(ANCOVA; ANalysis of COVAriance)에 대해 알아보자. 이 글을 이해하기 위해서는 아래의 글을 먼저 읽는 것이 좋다.
Akaike’s Information Criterion 의 정의와 이를 구하는 방법에 대해 알아보자.
수정된 R제곱과 그 용도에 대해서 알아보자.
통계 용어 중 정확도(Accuracy)와 정밀도(Precision) 에 대해서 알아보자.
절대 오차와 평균 절대 오차에 대해서 알아보자.
가설 검정이란 무엇이며, 가설 검정의 다양한 방법에 대해 알아보자.
회귀분석이란 무엇이며, 회귀분석 과정에서 사용하는 용어와 다양한 방법에 대해 알아보자.
이 글은 MathJax 를 GitHub Pages Jekyll blog 에 추가하는 방법을 다룬다. 이탤릭체로 된 부분은 본문에는 없고 제가 따라하면서 고치거나 추가한 부분이니 참고하세요.
모집단과 표본집단을 이용하는 경우 통계학에서 말하는 10% 조건이 무엇인지에 대해 알아보자.
여러분의 GitHub 블로그에 Jupyter notebook 을 바꿔서 올릴 수 있도록 도와줄 글입니다. 직접 바꾸는 방법은 1회성 글들을 위해서 추가했고, 변환 과정과 파일 이동, 그리고 여러분의 블로그에 올리는 것까지 한 번에 할 수 있는 자동화 bash 를 만드는 자세한 방법...
68 95 99.7의 법칙이란 무엇인가?
단위근 검정 방법 중 하나인 Augmented Dickey Fuller 검정에 대해 알아보자.
이 자료는 데이터 과학과 관련된 특정 주제에 대한 연재물이며, 다룰 주제는 다음과 같다. 회귀분석, 군집화, 신경망, 딥러닝, 의사결정나무, 앙상블, 상관관계, 파이썬, R, 텐서플로우, SVM, 데이터 축소, 피쳐 선택, 실험 계획법, 교차검증, 모델 피팅 등. 이 글을 계속 받...