분류 전체보기 132

기업이 데이터 분석하는 과정

현업에서 머신러닝 모델, 딥러닝(이미지 등) 요청이 들어옵니다. 요구 조건들을 들으면서 문제 인식을 기업이 진행합니다. 요구 조건과 문제가 기업이 처리할 수 있는 능력이 되면 PoC(Proof Of Concept, 개념 증명) 진행합니다.  PoC를 위해 알고리즘의 파라미터를 수정하거나, 알고리즘을 바꿔서 속도를 개선하는 방법이 있습니다. 높은 정확도를 가진 알고리즘과 파라미터를 설정하는데 충분한 시간이 소요됩니다. 이제 만들어진 모델을 바탕으로 현장에 프로그램 설치를 통하여 검증 과정을 진행합니다. 현장 개발 환경과 기업에서 모델을 만들 때 개발 환경이 다른경우도 존재합니다. 이런 경우 개발환경을 맞춰서 다시 진행해야합니다. 프로그램을 다시 설치하고 일정 시간동안 검증 과정을 진행합니다. 여기서 문제점..

머신러닝/기초 2023.06.28

데이터 분석 프로젝트에서 Data Scientist, Data Engineer

Data Scientist(데이터 사이언티스트) : 수학, 통계, 분석Data Engineer(데이터 엔지니어) : 프로그래밍, 분산, 파이프라인 기술 스택이 완전 다르다.분석 후 배포를 하기 때문에 데이터 사이언티스트도 코딩도 어느정도 할 수 있어야 한다.반대로 엔지니어 입장에서도 데이터 사이언티스트의 분야를 어느정도 알고 있어야 한다. 데이터 엔지니어와 데이터 사이언티스트가 알아야 할 카테고리사업 이해 (Business Understanding)데이터 이해 (Data Understanding)데이터 수집 (Data Importing)데이터 정제 & 조작 (Data Cleaning & Manipulation)통계 모델링 & 기계 학습 (Statistical Modeling & Machine Learni..

직무 2023.06.28

머신러닝 공부

(작업형2) 연습문제¶1. 아래는 가상 온라인 축구게임(FIFA)에 등장하는 축구 선수의 주요 특징과 신체 정보에 대한 일부 데이터이다.¶  연습문제1 Solution¶  STEP1. 데이터셋 불러오기¶ In [1]:import pandas as pdX_train = pd.read_csv('data/연습문제/FIFA_X_train.csv', encoding = 'cp949')X_test = pd.read_csv('data/연습문제/FIFA_X_test.csv', encoding = 'cp949')y_train = pd.read_csv('data/연습문제/FIFA_y_train.csv', encoding = 'cp949')  STEP2. 데이터셋 확인하기¶  STEP2-1. 데이터셋 일부 확인¶ In [2..

아나콘다 가상환경 구성(생성, 조회, 활성화, 비활성화, 삭제)

가상환경 생성 conda create -n apple python=3.9 "conda create -n 가상환경이름 python=버전" 'apple'이라는 이름의 가상환경을 생성하였습니다. (파이썬 3.9버전) 가상환경 조회 conda info --envs 'apple' 가상환경 확인할 수 있다. 가상환경 활성화 conda activate apple 가상환경 비활성화 conda deactivate 가상환경 삭제 conda remove --name apple --all 'apple' 가상환경 삭제하였습니다. 가상환경에 kernel 연결하기 python -m ipykernel install --user --name apple ** 이상 가상환경 구성에 대하여 알아보았습니다. 다음 포스팅에 더욱 유익한 정보를..

파이썬 2023.05.17

NSMC 감정분석하기

감정분석의 정의는 무엇일까? 데이터 만드는 자, 데이터 제공자, 데이터 분석가의 주관에 따라 감정이 다르다. 부정/중립/긍정 일반적으로 텍스트 안에 있는 의미를 뽑아낸다. 감정 분석은 디지털 텍스트를 분석하여 메시지의 감정적 어조가 긍정적인지, 부정적인지 또는 중립적인지를 확인하는 프로세스 오늘날 회사는 이메일, 고객 지원 채팅 트랜스크립트, 소셜 미디어 댓글 및 리뷰와 같은 대량의 텍스트 데이터를 보유하고 있습니다. 감정 분석 도구는 이 텍스트를 스캔하여 주제에 대한 글쓴이의 태도를 자동으로 확인할 수 있습니다. 기업은 감정 분석의 인사이트를 활용하여 고객 서비스를 개선하고 브랜드 평판을 높입니다. 크게 감정분석은 Knowledge-based approach, Machine Learning-based ..

Naver sentiment movie corpus(NSMC)를 활용 감정분석

한국어 데이터 중 가장 유명한 감정분석 데이터는 naver sentiment movie corpus이다. google에 nsmc검색하여 github을 들어간다. https://github.com/e9t/nsmc GitHub - e9t/nsmc: Naver sentiment movie corpus Naver sentiment movie corpus. Contribute to e9t/nsmc development by creating an account on GitHub. github.com 간단하게 영화가 긍정/부정을 알려준다. 긍정은 9~10점, 부정은 0~4점으로 나누었다. 총 20만개 리뷰 데이터가 있다. (수집된 64만개 데이터 중 샘플링) 훈련 데이터는 15만, 테스트 데이터는 5만개가 존재한다...

Gensim을 활용하여 토픽모델링 분석하기

토픽 모델링을 적용하기 위해 텍스트 처리를 진행해야 합니다. 이번 시간에는 Gensim 라이브러리를 사용해 보겠습니다. Gensim이란? Gensim은 최신 통계 기계 학습을 사용하여 감독되지 않은 주제 모델링, 문서 인덱실, 유사성 검색 및 기타 자연어 처리 기능을 위한 오픈 소스 라이브러리입니다. 우선 Gensim을 설치하겠습니다. !pip install gensim 토픽모델링을 하기 위해 필요한 라이브러리를 불러오겠습니다. from tqdm import tqdm_notebook # progress bar import MeCab # 형태소 불러오기 import string # 특수문자제거를 위한 전처리 라이브러리 import warnings # 경고 알림 제거를 위한 라이브러리 from gensim ..

머신러닝 엔지니어 로드맵 (주니어, 신입)

머신러닝 엔지니어를 꿈꾸고 있습니다. 통계학과 입학 후, 학부생 도중 군대를 다녀온 후 학과가 데이터과학부로 통합되어서 자연스럽게 데이터 분야에 관한 공부를 하게되었습니다.머신러닝 직군을 선택하기 위해 필요한 로드맵을 유튜브나 블로그를 보면서 간단히 요약해 보았습니다 엔지니어링의 뜻?기술을 활용하여 문제를 해결하고 가치를 만드는 작업 주어진 문제가 가치있는 문제인가?? 한번 확인해 보자가치 + 기술을 활용해야합니다. 머신러닝 엔지니어가 커리어를 위한 회사 선택 기준은?? 핵심 고려사항 1회사의 핵심 역량이 머신러닝인가?회사가 머신러닝을 이용하여 수익을 내는 곳인가? 핵심 고려사항 2핵심 모델을 지속적으로 개선할 데이터가 있나? 핵심 고려사항 3회사는 머신러닝 엔지니어링의 가치를 인식하고 있는지 중요하다 ..

토픽 모델링 정의

토픽 모델링이란? 문서에서 토픽을 찾는 과정 문서를 구성하는 단어 조합으로부터 k개의 단어 묶음을 찾는 과정 베이지안 확률 모델 토픽 모델링의 결과로 각 단어가 각 토픽에 속할 확률이 나옴 토픽 모델링의 역사 LSI pLSA LDA ATM, DTM, CTM, RTM LDA의 모델 가정 각 문서엔 여러 개의 토픽이 포함될 수 있음 (한 문서에 여러 토픽이 존재 가능) 각 토픽에는 여러 개의 단어가 포함될 수 있음 문서에 존재하는 모든 단어는 반드시 어떤 토픽에 포함될 수 있음 사람이 글을 쓰는 과정을 생성 모델로 정의 LDA의 모델 과정 문서들에 사용할 토픽을 고름 (K개의 토픽) 토픽 중 하나의 토픽을 고름 그 토픽에 포함된 단어 중에 하나를 고름 단어를 문서에 추가 (글을 쓴다) 2번 과정부터 반복 L..

형태소 추출기 만들기

이번 시간에는 형태소 분석기를 제작해 보겠습니다. 형태소 뜻을 다시 집어보면, '어떤 대상 어절을 최소의 의미 단위'라는 뜻합니다. 사용할 형태소 분석기 불러오기(import) 텍스트 전처리 하기(작업에 따라 다름) 형태서 / POS tagging하기 import MeCab import re mecab = MeCab.Tagger() 이전에 포스팅 했던 형태소 분석기 코드를 가져오겠습니다. def mecab_nouns(text): nouns = [] # 우리가 원하는 TOKEN\tPOS의 형태를 추출하는 정규표현식. pattern = re.compile(".*\t[A-Z]+") # 패턴에 맞는 문자열을 추출하여 konlpy의 mecab 결과와 같아지도록 수정. temp = [tuple(pattern.mat..