형태소 분석을 하기 위해서는 당연히 형태소 분석기를 돌리면 되지만, 형태소 분석기를 교차검증 해야 될 필요도 있고 다른 형태소 분석기는 어떻게 분석을 하는지 알아야 될 때도 있다. 각설하고, 우리나라에는 대표적으로 형태소 분석을 확인할 수 있는 사이트가 여럿있지만 여기서는 2가지를 설명해보고자 한다. 엑소브레인(Exobrain) 엑소브레인은 한국전자통신연구원(ETRI, 에트리)와 국내 인공지능 및 검색업체와 같이 프로젝트를 한 사업으로 참여한 업체는 와이즈넛(Wisenut)과 솔트룩스(Saltlux) 등이 있다. 와이즈넛과 솔트룩스는 상용 검색엔진을 만드는 업체로 국내 다섯손가락 안에 드는 업체이기 때문에 자연어처리 기술이 매우 잘 발달되어 있다. 엑소브레인은 에트리와 국내 굴지의 업체들이 함께 만들었으..
자연어처리에 관련된 업무를 하기 위해서 가장 필요한 지식은 바로 품사에 대한 이해이다. 우리가 학창 시절에 공부를 했기 때문에 다들 품사가 무엇인지 어느정도 알고 있을테지만, 자연어처리를 더욱 잘 이해하기 위해서는 품사에 대한 이해를 학창 시절 이상으로 끌어올려야 한다. 게다가 자연어처리를 하는 대다수는 컴퓨터 공학을 전공한 이과생들이기 때문에 문과생들보다 품사에 대한 이해가 상대적으로 떨어질 수 있기에 자연어 처리를 할 때 사용하는 품사들의 종류가 무엇인지 조금 더 자세히 알아 볼 필요가 있다. 형태소 분석 품사를 붙이는 행위를 PoS(Part of Speech, 품사) Tagging이라고 한다. 형태소 분석은 의미있는 가장 작은 단위의 말(형태소)을 분석한다라는 뜻을 담고 있기에 Pos Tagging..
콘다 패키지가 오래되어서 더이상 사용하기 힘들 경우 콘다 자체를 업데이트 시켜야 될 것이다. 명령어 conda update -n base conda 위와 같이 명령어를 실행하면 conda의 코어가 업데이트 된다. 실행과정 (base) Jinhooui-MacBook-Pro:~ stevejang$ conda update -n base conda Collecting package metadata (current_repodata.json): done Solving environment: done ## Package Plan ## environment location: /Users/stevejang/opt/anaconda3 added / updated specs: - conda The following packa..
요새 안드로이드(Android) 및 ios 개발에 흥미가 생겨 데탑부터 노트북까지 이것저것 세팅을 하는 와중에 4년전에 산 유물이 되어버린 Dell Gaming 노트북에서 안드로이드 개발을 하는 것은 너무 힘겨워 하는 것보였다. (메모리가 8GB에 ssd도 250GB 밖에 되지 않아서 정말 앱 개발을 할 땐 앱개발밖에 못하고 다른걸 못킬 정도...) 그래서 다른 노트북을 사야하나? 고민을 하다가 앱 개발은 맥북이 최고다라는 사람들의 말에 그냥 원래 있던 맥북 프로를 좀 자주 쓰자로 방향을 전환하면서, 다시 잊고 있었는데 불현듯 업그레이드가 가능한 노트북인가 싶어 사이트[1]를 확인해보았다. DELL 사이트를 들어가니 업그레이드를 하는 방법 그리고 어떤 제품을 사면 되는지까지 안내가 되어 있었고, 그래서..
최근들어 서재 방에서 Study with me에 관련된 영상들(같이 공부하는 컨셉의 영상들)을 보면서 일을 하거나, 공부 혹은 책을 읽고 있는데 어떤 영상에서 특이한 블루투스 키보드를 보면서 이거다라는 생각을 하게 되었다. 나는 사실 애플의 심플하고 날카로운 감성도 좋아하지만 레트로에 환장하는 사람이다보니, 타자기에 대한 감성이 아직도 남아있다. 예전에 전세계의 국민 메신저였던 Icq도 타자기 스타일로 테마를 깔아서 사용하곤 했었다. 그렇게 타자기에 환장했던 사람인데 키보드가 타자기 스타일이니 지름신이 강림해서 최근 며칠간 타자기 스타일의 블루투스 키보드를 상당히 오랜 기간 검색하였다. 위 영상의 키보드는 국내에서 발매된 것은 아닌 것 같고 위에 것과 상당히 디자인이 유사한(거의 95% 이상) 키보드가 ..
크로스 플랫폼 전문적인 앱개발자가 아니라면, 취미 혹은 남는 시간으로 앱 개발을 해야 하는데 안드로이드(android)와 ios를 둘다 개발한다는 것은 정말 쉬운 일이 아니다. 게다가 안드로이드 같은 경우는 자바(java)에서 코틀린(kotlin)으로 넘어가고 있고, ios의 경우는 objective-c에서 스위프트(swift)로 넘어가고 있다. 이렇듯 언어의 변화도 1인 앱개발자에게는 정말 힘든 과정이 될 수 있어서, 한곳에서 개발을 하면 각각의 환경으로 빌드를 해주는 툴 들 즉 크로스 플랫폼들이 자주 등장하고 있는데 리액트 네이티브(react native)라는 프레임워크가 가장 알려지며 큰 역할을 많이 하고 있었다. 하지만 최근 들어서 안드로이드에서 리액트 네이티브같은 프레임워크를 만들었는데 그것이 ..
1. ETL의 개요 가. ETL의 개념 - ETL은 Extraction, Transformation and Load의 약어로 이뤄졌으며 데이터 이동과 변환 절차에 관련된 업계 표준 용어 - 데이터 웨어하우스(DW, Data Warehouse), 운영 데이터 스토어(ODS, Operation Data Store), 데이터 마트(DW, Data Mart)에 대한 데이터 적재 작업의 핵심 구성요소 - 데이터 통합(Data Integration), 데이터 이동(Data Migration), 마스터 데이터 관리(MDM, Master Data Management)등 폭넓게 활용 - ETL을 위한 여러 상용 소프트웨어가 있으며, 일괄(Batch) ETL과 실시간(Real Time) ETL로 구분됨 나. ETL의 3가..
1. 분석 마스터 플랜 수립 프레임워크 - 중장기적 관점의 마스터 플랜 수립을 위해 분석 과제를 대상으로 전략적 중요도, 비즈니스 성과 및 ROI, 분석 과제의 실행 용이성 등 다양한 기준을 고려해 우선순위 설정 - 종합적으로 고려하여 데이터 분석을 실행하기 위한 로드맵 수립 - 분석 마스터 플랜은 정보전략계획(ISP, Information Strategy Planning)을 활용하되 데이터 분석의 특성을 고려하여 계획 수립 ISP 참고 기업의 정보화 전략계획, ISP ISP라는 단어는 인터넷 시장에서 주로 쓰이는 Internet Service Provider라는 말로 보통 인식하지만, 정보화 프로젝트를 구축하고 계획하고, 설계하는 사람들에게는 Information Strategic Planning이라는..
안방에는 구글 크롬캐스트가 내장되어 있는 TV가 있어서 유튜브(Youtube)나 넷플릭스(Netflix)를 보는데 문제가 없지만, 거실에 있는 TV는 BTV랑 연결되어 있고 크롬캐스트가 내장된 것이 아니다보니 여간 불편한게 아니었다. TV를 예능 프로그램 일부를 제외하고 워낙 잘 보지 않다보니, 유튜브 프리미엄과 넷플릭스로만 하루를 생활하고 있었는데 이로 인해서 거실의 TV는 방치해 놓은 상태가 되어버렸다. BTV가 언제쯤 LG유플러스처럼 넷플릭스를 지원할까? 생각만하고 있었는데 넷플릭스랑 사이가 워낙 안 좋다보니, 최근에는 아주 작정하고 애플TV를 밀어주려고 하는 것 같았다. 하지만 컨텐츠가 워낙 부족하여 애플TV는 생각도 않다가 최근 들어서 무슨 바람이 들었는데 애플TV로 유튜브랑 넷플릭스나 볼까?라..
상관관계 이해 일단 피어슨 상관관계를 이해하기 위해서, 간단히 상관관계에 대해서 알아보도록 해보자. 대표적으로 상관관계를 이해할 땐 키와 몸무게의 데이터를 활용하곤 한다. 인간은 키가 커지면, 몸무게 또한 커지기 마련인데 이처럼 두 값이 같은 방향으로 커지는 것을 양의 상관관계라고 한다. 반대로 음의 상관관계는 값이 커지면 다른 값이 작아지는 경우를 뜻하는데 술을 많이 마신다던가, 담배를 많이 필경우 기대 수명이 줄어드는 경우가 있는데 이렇게 두 값이 같은 방향으로 가지 않으면 음의 상관관계라고 한다. 위 그림을 보면, r이 1에 가까울수록 우상향의 선형 모양이 나오게 되며, r이 -1에 가까울수록 우하향의 선형 모양이 나오게 된다. 그리고 0에 가까울 경우 완전히 패턴을 찾기 힘든 모습이 나오게 되는데..
이번 포스팅은 DBSCAN 클러스터링을 구현하는 내용이며, DBSCAN에 대해서 이해를 하고 싶을 경우 이전에 작성한 포스팅을 참고하면 좋을 것 같다. DBSCAN clustering 이해하기 DBSCAN의 개념 DBSCAN은 Density-Based Spatial Clustering of Applications with Noise의 약자로, 한국말로 풀이하면 노이즈를 적용한 밀도 기반 공간 클러스터링이라고 해석할 수 있다. 한마디로 Density-Based.. needjarvis.tistory.com 본 포스팅에 있는 코드는 IBM의 코세라(coursera) 강의 내용과 사이킷런의 데모 페이지의 코드를 섞어서 만든 예제이다. DBSCAN 클러스터링 예제 라이브러리 import numpy as np fr..
DBSCAN의 개념 DBSCAN은 Density-Based Spatial Clustering of Applications with Noise의 약자로, 한국말로 풀이하면 노이즈를 적용한 밀도 기반 공간 클러스터링이라고 해석할 수 있다. 한마디로 Density-Based 알고리즘이기 때문에, "밀도 기반"으로 클러스터링을 하게 된다는 의미이다. K-Means의 문제점 DBSCAN을 이해하기에 앞서, 대표적인 클러스터 알고리즘인 K-Means을 떠올려보자. K-Means은 이상치(outlier)가 있어도 이상치 값을 이해 할 수 없으며, 이상치가 심지어 K-Means를 자신의 주변으로 끌고 와서 centroid값을 바꿔버릴 수 있다. 이는 클러스터의 품질을 심하게 망칠 수 있는 critical risk이다...