본문 바로가기

머신러닝,딥러닝

(18)
opencv 입문하기 1편 - 이미지 reading 요즘 opencv를 주말마다 공부하고 있는데 내용을 정리 차원에서 포스팅 하겠습니다. opencv 설치는 다른 포스팅에서 다룬적 있으니 참고해주세요 :) 시작하겠습니다. 이미지까지 통칭해서 '영상'이라고 부르겠습니다. 영상 = 동영상 or 이미지 임을 사전에 정의하고 시작하겠습니다. 1) cv2.imread(filename, flags =None) - filename: 불러올 영상 파일 이름 - flags : 영상 불러오기 옵션 - 위 메서드의 결과는 numpy.ndarray 로 됩니다. flags 의 옵션은 아래와 같습니다. 함수 설명 cv2.IMREAD_COLOR BGR 컬러 영상으로 읽기 (defalut) cv2.IMREAD_GRAYSCALE 그레이스케일 영상으로 읽기 cv2.IMREAD_UNCHA..
checkpoint , tensorflow1과 2에서의 차이점 (NLP pretrained model) ; difference in checkpoint of Tensorflow version checkpoint 개념은 텐서플로우를 공부하셨다면 다들 아실 겁니다. 헌데, tensorflow 1 과 2 에서의 출력되는 파일들의 형태가 조금 다르다는 걸 최근에 알게 됐습니다. 먼저 tensorflow 1 에서 보겠습니다. The concept of checkpoint is familiar to anyone who has studied TensorFlow. However, I recently noticed that the output files in tensorflow 1 and 2 are slightly different. Let's look at tensorflow 1 first. epoch를 돌 때마다 data , index , meta 확장자를 가진 파일 각각 하나씩 그리고 + checkpo..
how to use docker image and container in ML,DL? today , I'm going to do a simple exercise with docker image and container. If you are a non- major in Data Science and you are interested in deep learning or machine learning, I think you should know. anyway, I'll start explaining right away. I'm not going to explain the principle about docker. The name of the image used by Docker basically consists of a repository name/image name: tag. for exam..
numpy reshape(-1,1) numpy에서 reshape 를 할 때 -1을 인자로 넣는 것을 자주 보게 됩니다. 이를 정리해보겠습니다. 우선 reshape 은 numpy array 의 배열을(=행과열) 재구성하는 겁니다. 아래와 같은 행렬이 있다고 한다면, 이를 reshape 하겠습니다. 행 부분에 -1 을 넣었을 때의 reshape 형태입니다. -1을 통해서 좀 더 간편하게 reshape 이 됩니다. 위에서처럼 열 부분이 3열이기만 하면 된다면 (=물론 속성 전체 갯수에 맞춰서 행x열로 인수분해가 되야합니다) 그냥 -1을 넣어주면 됩니다. 열 부분에 -1을 넣어보겠습니다. 행 부분처럼 똑같습니다. 자, 그러면 reshape 을 해줄 때 m*n 부분이 원소의 전체 갯수와 맞아야만 reshape 이 되는데요. 이를 지켜주지 않는다면 ..
사이킷런 TFIDF 와 코사인유사도 로 문서 유사도 구하기 이번 시간에는 위키 데이터를 이용해서 문서 유사도를 구해보겠습니다. scikit-learn 의 TFIDF API 를 써서 구해보겠습니다. train 시키는 건 간단한데 이걸 저장하고 로드하는법도 알면 편합니다 :) 위키에서 문서를 크롤링 한뒤, 정규표현식을 써서 한글,숫자,영어 이외에는 제거했습니다. 일본어나 한자 같은게 들어가 있는 경우도 있는데 중요한 feature 라고 보기 힘들다고 생각했기 때문입니다. 그리고 mecab 을 활용해서 토큰나이저를 따로 만들었습니다. mecab 사전을 보면 나와있는 태그들을 보고 명사,동사,형용사 등의 말만 추출하도록 만들었고, 한 음절로 되는 텍스트들은 정보가치가 떨어질 것으로 판단했습니다. 그리고 별도로 불용어 100개 사전을 참고했습니다. (출처는 맨 아래 있으..
conda 가상환경 명령어 모음(생성,제거,확인,활성화,패키지 설치) 요즘 vscdoe 로 이런저런 작업을 자주 하고 있습니다. 그리하여 따로 기록해두긴 했지만 가상환경 관련 명령어들을 정리해보겠습니다. # 현재 가상환경 목록 확인 $ conda info --envs # 가상환경 삭제 $ conda remove -n 가상환경이름 --all 저의 경우에는 2개의 가상환경이 있는데...예전에 이러저러한 실습한다고 한건데 기억이 잘 안나서 그냥 깔끔하게 지우기로 했습니다. 모두 지우고 나니 더이상 가상환경이 안 보이는 걸 확인 할 수 있습니다. vscode 로 와서도 확인해보겠습니다. vscode terminal 에서도 안 보이네요! # 가상환경 생성 - 'py36' 부분은 가상환경 이름이니깐 원하는 이름으로 해주시면 됩니다. - python 버전은 아래처럼 숫자 변경해주셔서 ..
Keras 입문 01- 모델 만들기 + IMDB 예제 딥러닝 라이브러리인 keras 입문을 시작하겠습니다. 이 글은 딥러닝에 대한 기초적인 이론 이해와 컨셉에 대한 개념을 잡았다는 전제 하에 쓰도록 하겠습니다. 코드 위주로 진행하려고 합니다. 코드 위주로 하면서 설명을 곁들이도록 하겠습니다. 하나의 인강과 책을 참고했습니다. (포스팅 제일 하단에 링크 걸었습니다 :) 1) 모델 만들기 우선 기초적인 그림을 보겠습니다. 딥러닝을 공부하시는 분이라면 너무나 익숙한 뉴럴네트워크의 그림입니다. 이제 간단한 레이어들을 구성해보겠습니다. 케라스는 사실 layer를 쌓는데 굉장히 직관적으로 코딩을 할 수 있게 되어 있습니다. 그래서 어느정도 익숙해졌다면 pytorch 나 tensorflow 로 모델을 구성하는 것이 맞습니다. keras 의 경우, 모델을 만드는데 자유도..
word2vec 이해를 위한 개념 정리 part1 word2vec 을 이해하기 위한 개념들을 모아서 정리하는 포스팅입니다. part 몇까지 진행될지는 모르겠습니다. gensim 튜토리얼을 공부하다가 word2vec 개념을 정리할 필요가 있다고 느껴서 정리하는 포스팅입니다. 출처는 제일 하단에 밝혔으며, 개인적으로 자연어처리 공부하시는 분들은 한 번 이상 보는 자료들이라고 생각합니다. 이를 정리하는데 초점을 두었고, 좀 더 자세한 내용이 궁금한 분들은 출처에 있는 링크나 책을 통해 더 학습하시면 좋을 것 같습니다 1. 희소 표현(Sparse Represents) 희소행렬(sparse matrix)은 행렬의 값이 대부분 0인 경우를 가리키는 표현이다. 희소 표현은 희소행렬에서 나온 개념으로 보시면 됩니다. 원-핫 인코딩을 통해서 나온 원-핫 벡터들은 표현하..