본문 바로가기

AI 빅데이터73

[데이터분석] Feature Engineering 7가지 팁 머신러닝을 수행하는데 가장 오랜 시간을 쓰는 것은 어처구니 없게도 데이터 준비다. 데이터를 EDA하면서 주요한 Feature를 Selection해 학습하게 되는데 그것만으로 충분하지 않은 경우가 있다. 데이터가 한쪽으로 치우쳤거나 Missing Value가 많은 경우가 그러한데, 이를 어느 정도 바로 잡아주는 것을 Feature Engineering이라고 한다. 아래 블로그는 기본적으로 많이 쓰이는 7가지의 Feature Engineering 기법을 소개한다. 7 Feature Engineering Techniques | Feature Engineering for ML Feature enginnering techniques are a must know for machine learning professi.. 2021. 1. 11.
[파이썬 팁] Apache Arrow로 Dataframe 빨리 읽기 Arrows는 Apache에서 만든 Python 도구로 Multi Thread로 파일을 읽어들인다고 한다. 상식적으로 여러 Thread에서 I/O를 병렬적으로 진행하면 오히려 느려질 것 같은데, 아무튼 빠르다. Columnar 저장 방식을 활용하고 기본 포맷으로 Parquet를 사용한다. 여러 포스팅들에서 다루고 있지만, row-based 방식에 비해 columnar는 컴퓨터가 다루기 쉬운 형태로 저장한다. Parquet는 사실상의 빅데이터 표준으로 자리 잡았고, 속도와 압축률이 무척 뛰어나다. 간단히, Arrow와 Pandas의 읽기 성능을 비교해보면 아래와 같다. 둘다 데이터분석에 활용하기 위한 Dataframe 형식으로 Load하였고, Arrow는 Parquet형식으로 읽어 dataframe으로 변.. 2021. 1. 7.
[Apple M1] Rosetta Terminal 실행과 Conda 설치 아직 M1에서는 많은 파이썬 라이브러리를 지원하지 않는다. Pandas를 포함해서.. 지난 포스팅에서 tensorflow와 jupyter 설치를 소개했는데, 결론적으로 안타깝게도 pandas는 tensorflow와 아직 함께 사용할 수 없다. tensorflow를 사용하지 않으면 rosetta와 conda를 이용해서 별도의 파이썬 환경을 실행하면 되는데, 딥러닝을 사용하지 않는 머신러닝 환경은 구성할 수 있다. 아니면 colab을 이용하든가. rosetta를 이용해 conda를 설치하려면 우선 rosetta용 터미널을 실행해야 하는데, 우선 Finder의 '이동' 메뉴로 간다. '유틸리티'를 선택하면 터미널이 있는데, 이를 오른 버튼을 눌러 '복제' 메뉴 선택으로 하나 더 만든다. 이름을 바꾸고(예. 로.. 2020. 12. 30.
[Apple M1] Apple 실리콘용 Tensorflow 실행하기 요 글로 유입이 많아서, 안내 드립니다. Apple에서 M1 Silicon에 맞추어 Tensorflow를 공개했고, 아래 포스팅을 이용하여 설치 가능합니다. 다만, tensorflow_text라든가 일부 패키지는 apple이 지원하지 않아 아직 사용 안되는 듯 합니다. [Apple M1] M1 칩용 Tensorflow 설치 (tistory.com) [Apple M1] M1 칩용 Tensorflow 설치 M1 Air를 사고 아래와 같이 삽질하면 Tensorflow를 설치하는 데 까지는 성공했으나, 성능에서 만족은 느낄 수 없었다. [Apple M1] Apple 실리콘용 Tensorflow 실행하기 높으신 분의 은혜로 출시일에 맞춰 주 magoker.tistory.com ------------ 높으신 분의 .. 2020. 12. 22.
[파이썬 팁] Dictionary 행들을 DataFrame으로 바꾸기 가끔씩 컬럼 내의 데이터가 아래와 같이 Dictionary 형태의 String으로 된 경우가 있다. 컬럼의 데이터들을 Dictionary의 Key값으로 Column을 만들고, Value들을 각각의 Row로 만든다면 분석이 한결 편리해진다. 이럴 때는 간단히 key값만 column으로 뽑고, values들만 모아서 list로 만들어 준 다음에, 이 둘을 DataFrame 생성시 인자로 넘겨 주면 된다. import json import pandas as pd # Dictionary로 보이는 값들은 사실 String이다. Dictionary로 읽어들인다. df = data.apply(lambda x:json.loads(x['loc']), axis=1 ) df = pd.DataFrame(df, columns=.. 2020. 12. 7.
[데이터분석] 비전을 이용한 식물 분류 비전 기술은 불량을 찾아내기 위한 공정 검사에 많이 쓰인다. 비전 기술을 쉽게 따라하기 위해 Kaggle의 식물 분류 과제를 잘 정리한 노트북을 따라 실습해 보았다. Plant Seedlings Classification Determine the species of a seedling from an image www.kaggle.com 과제는 주어진 학습데이터를 12종의 식물분류로 학습하고 테스트 이미지 데이터가 어떤 식물인지 맞추는 것이다. MNIST의 이미지 인식 버전이고 식물 종류가 좀 더 많아졌다고 생각하면 된다. 참조한 노트북은 아래와 같이 잘 정리되어 있다. Plant Seedlings with CNN and Image Processing Explore and run machine learni.. 2020. 11. 8.