데이터가 기업의 성공에 그 어느 때보다 중요해지면서, ‘파이썬’이 데이터 전문가를 넘어 비즈니스 애널리틱스 및 기타 비-기술 사용자로 확산하고 있다. 파이썬을 비교적 처음 사용한다면 어떤 기회가 있으며, 성공을 위해 어떤 모범 사례를 알아야 할까?
ⓒ Getty Images Bank
많은 기업에서 비즈니스 요구 사항이 데이터 팀의 리소스와 역량을 초과하고 있는 가운데, 데이터 전문가는 찾기 힘든 유니콘과도 같다. 동시에 비즈니스 애널리스트는 BI 도구로 할 수 있는 작업의 한계에 부딪히며 더 고급 애널리틱스를 수행할 수 있는 방법을 모색하고 있다. 여기서 파이썬은 성공의 열쇠다.
파이썬 사용이 빠르게 증가하고 있다. 올해 초 2만 명 이상의 개발자를 대상으로 한 슬래시데이터(SlashData)의 설문조사(State of the Developer Nation)에 따르면 파이썬이 인기도(popularity) 측면에서 자바스크립트에 이어 2위를 차지했으며, 아울러 파이썬은 지난 6개월 동안 330만 명의 순 신규 사용자를 추가해 전 세계적으로 1,570만 사용자에 도달했다.
최근 몇 년 동안 파이썬 커뮤니티는 고급 애널리틱스, 머신러닝, 앱 개발을 위해 비-전문가가 이 언어에 쉽게 접근할 수 있는 새 프레임워크와 패키지를 만들었다. 예를 들면 수치 데이터용 오픈소스 파이썬 라이브러리 넘파이(NumPy), 예측 실행을 위한 프로펫(Propet), (우버(Uber)에서 시작된) 지리 공간 데이터를 다루는 H3 프로젝트 등이다.
비전문 개발자 사이에서의 파이썬 확산이 전례 없는 일은 아니다. 셀프서비스 BI 도구의 등장과 함께 현업 부문의 사용자가 엑셀(Excel) 매크로를 스크립팅하는 방법을 배우면서 비슷한 패턴이 나타난 바 있다. 사용 확대는 언어 자체가 매우 유용하기 때문에 앞으로 더 커질 전망이다.
파이썬 애널리틱스 시작하기
현업 사용자는 전문 개발자보다 비즈니스 부문에 유용한 특정 인사이트가 무엇인지 더 잘 알고 있다. 다음은 파이썬을 활용할 수 있는 기본 사용 사례 3가지다.
상관행렬(Correlation matrices) 상관행렬은 다양한 변수에 관한 상관계수를 보여주는 표다. 이를 통해 데이터세트의 다른 차원을 분석할 수 있다. 예를 들면 A 행동을 보이는 사람이 B 행동을 보일 가능성이 있는지 확인할 수 있다. 또 상관행렬은 이를테면 식료품점에서 어떤 제품을 서로 가까이 배치할 지 결정하는 데 유용하다.
주성분 분석(Principal component analysis) 두 번째 사용 사례는 노이즈가 많은 데이터세트의 크기를 줄이고, 주어진 결과에서 가장 예측 가능한 속성을 결정할 수 있는 주성분 분석이다. 예를 들어 주택담보대출을 한다면 주성분 분석을 통해 소득, 사는 곳, 결혼 여부 등 어떤 인구통계학적 요인이 구매 가능성이 높은지 파악하고, 이에 맞춰 캠페인 및 제안을 타기팅할 수 있다.
예측(Forecasting) : 기업의 또 다른 문제는 예측이다. 모든 기업이 수행해야 하는, 고객 수요, 판매 또는 수익 예측을 생각해보라. 예측 작성은 파이썬에서 프로펫 또는 사이킷-런(Scikit-Learn) 등의 오픈소스 라이브러리를 사용하여 예측 애널리틱스를 탐색하는 방법이다.
한편 큰 힘은 큰 책임을 수반하며, 새로운 파이썬 사용자가 구축하는 애플리케이션이 탄탄하고 안전하려면 고려해야 할 모범 사례가 있다.
파이썬 관리
한 가지 문제는 종속성이 적절하게 관리되도록 파이썬 패키지를 유지관리하는 것이다. 여기서 아나콘다(Anaconda)는 패키지 관리 및 배포를 간소화하기 때문에 유용하다. 스노우플레이크의 스노우파크 포 파이썬(Snowpark for Python)을 사용하면 아나콘다 기본 채널에서 가장 인기 있는 파이썬 패키지를 파이썬 런타임에 사전 설치하기 때문에 수동으로 설치할 필요가 없다. 또 콘다 패키지 관리자를 스노우파크에 통합하여 파이썬 패키지와 해당 종속성을 관리할 수 있다.
모든 데이터 프로젝트와 마찬가지로 보안 및 거버넌스 문제가 있긴 하지만 최신 클라우드 데이터 플랫폼은 미리 설정 및 구성된 런타임을 제공하며, 사용자는 해당 플랫폼에 내장된 보안 및 거버넌스 기능을 활용할 수 있다. 예를 들면 스노우파크의 파이썬 런타임은 데이터 유출 등의 일반적인 보안 문제를 보호하기 위해 기본적으로 외부 네트워크 액세스를 허용하지 않는다. 스노우파크와 같은 사전 구성돼 있으며 보안을 갖춘 파이썬 런타임을 사용하는 것이 초보 파이썬 사용자에게 훨씬 더 쉽다.
아직 초창기이긴 하지만 시간이 지남에 따라 전문가가 아닌 개발자를 대상으로 하는 추가 파이썬 도구와 리소스가 등장하리라 예상된다. 또 발전해야 할 부분은 파이썬 사용자가 이 언어를 모르는 동료와 작업 결과를 공유할 수 있는 방법이다. 부분적으로 이 문제를 해결하기 위해 스노우플레이크는 스트림릿(Streamlit)을 인수했다. 오픈소스 도구를 활용하면 데이터 팀이 기술 지식 없는 사용자를 위해 데이터에 ‘시각적으로’ 생명을 불어넣는 애플리케이션을 구축할 수 있다. 파이썬 자체는 애플리케이션 구축을 위한 강력한 언어이기 때문에 최종 사용자를 위한 데이터 애플리케이션 구축에 파이썬을 사용하면 언어는 더욱더 널리 사용될 것이다.
리얼파이썬(RealPython)은 파이썬 초보 가이드를 제공한다. 또 파이썬 소프트웨어 재단(Python Software Foundation)에는 조언을 구하고 질의응답을 할 수 있는 활성화된 커뮤니티가 있다. 스노우플레이크 사용자라면 이곳에서 파이썬 개발을 지원하는 스노우파크 개발자 환경에 대해 살펴볼 수 있다. 전 세계의 많은 스노우플레이크 커뮤니티 사용자 그룹에 가입할 수도 있다.
* Torsten Grabs는 스노우플레이크의 제품 관리 부문 이사다.
ciokr@idg.co.kr
원문보기:
https://www.itworld.co.kr/news/268743#csidxb9b534248a8ea6db0932a72430a2c7b
'IT 뉴스' 카테고리의 다른 글
“오픈소스 커뮤니티에서 '코드형 인프라' 관심 높아져” 깃허브 보고서 (0) | 2022.12.22 |
---|