전체 글
-
다시 초심으로끄적이기 2021. 8. 17. 22:22
초심은 원래 변하라고 있는거라는 말이 아닌가? 최근 곽튜브 영상을 보면서 크게 공감했던 말이다. 물론 초심을 잘 잡고 그 마음과 자세를 잃지 않고 살아가면 좋겠지만 나는 그렇게 살지 못하고 있다. 반성보다는 후회를 한다. 포기가 쌓여가고 잊혀진다. 하지만 괜찮다. 초심이 무엇이었는지 생각해보고 다시 이어나가면 된다. 돌아왔지만 다시 떠나더라도 다음엔 일찍 돌아오면 된다. 이 블로그의 초심은 무엇이었나? 내가 배운 것들을 마음껏 공유하고 사람들을 모으는 것이었다. 블로그에 질 좋은 글을 올리고 좋은 질문들을 받고 좋은 대답을 해주며 같이 성장하고 싶은 마음에 시작하였다. 대학원 1학기 때 시작하였지만 시간이 지날 수록 바쁘다는 핑계와 함께 잊혀져간 것 같다. 이젠 대학원도 졸업 했고, 취직도 했으니 블로그..
-
AdaBoost란 무엇인가?Machine Learning 2020. 8. 12. 15:35
@ 목차 AdaBoost의 개념과 특징 AdaBoost의 작동원리 참고자료 1. AdaBoost의 개념과 특징 우리는 저번 시간에 Boosting에 대한 개념을 짚어봤다. 오늘은 AdaBoost에 대해서 더 자세히 설명하는 시간을 갖도록 하겠다. 저번 시간에 AdaBoost는 stump라는 개념을 사용한다고 했다. Stump는 Decision tree 개념에서 하나의 node와 두개의 leaf를 가지는 모양을 의미한다(Image 1). Stumps는 하나의 노드를 가지기 때문에 오직 하나의 변수만을 사용한다. 그래서 weak learners라고도 부른다. 여기서 stump는 Random forest와 비교하면 더 의미가 정확해진다. Random forest는 각 트리의 모양은 다르지만 각각 vote 할 ..
-
Git 첫걸음Python 2020. 7. 25. 22:53
@ 목차 1. 다짐 2. Git 시작 2.1 설치 2.2 Commit까지 1. 다짐 Git은 개발자나 데이터사이언티스트에게 필수로 여겨지는 협업 프로그램이지 않나 싶다. 회사에서 포트폴리오로 github 주소를 요구하기도 하고 github을 보고 스카우트도 하기에 코딩하는 사람들이 자신의 작업물을 정리하고 공유하는 데는 참 중요한 요소이지 않나 싶다. 비전공자인 내가 대학원을 들어와서 git을 어떻게 해서든 빨리 시작하고 매일 commit을 하는 것을 꿈꿨지만 바쁜 대학원 생활 속에서 그렇게 하기엔 쉽지 않은 일이었다. Commit을 하더라도 내가 실제로 고민하고 연구하여 나온 결과물들을 commit 하기보다 연습하던 코드를 commit 했던 것 같다. Git에 대한 이해가 잘 안 된 상태라 git을 충..
-
CNN(3) - Augmentation, Pre-trained CNNDeep Learning 2020. 7. 22. 23:41
@ 목차 1. Augmentation 2. Pre-trained CNN 3. Reference 1. Augmentation 문제 : Deep learning에서 CNN을 하다보면 이미지 데이터가 부족해서 validation loss가 크거나 validation accuracy가 작은 경우가 있다(Overfitting). 즉, 추가적인 데이터가 필요한 것이다. 그런데 데이터를 구할 수 없는 상황이라면? 답 : Augmentation으로 해결 가능하다. Data augmentation은 이미지 데이터를 회전시키고, 확대하거나 축소하고, 변형시켜 새로운 데이터를 얻는 과정이다. 실제로 적용하려면 앞 강의에서 살펴본 ImageDataGenerator를 사용하면 된다. from tensorflow.keras.pr..
-
IDLE : Pycharm에서 VSCode로 넘어가기Python 2020. 7. 22. 15:02
@목차 1. 왜 VSCode인가? 2. VSCode 배우기 2.1 installation 2.2 Python 사용법 2.3 테마 변경 2.4 설정 변경 3. Python 쉽게 사용하기 3.1 Format 3.2 Running code 3.3 Jupyter notebook 1. 왜 VSCode인가? Pycharm이 jupyternotebook까지 지원하면서 대학원 연구의 질이 상승했지만 프로그램 자체가 무겁다는 단점은 여전히 존재했다. Pycharm이 python code style에 대한 가이드를 정말 잘 제공해주고 Debugging 또한 훌륭하기에 다른 옵션을 생각하기 어려웠다. 그런데 우연히 대학원 선배가 VSCode를 사용하는 것을 알게 됐고, VSCode가 가벼워서 사용하기 용이하다는 사실을 듣게..
-
텍스트마이닝_LDA란 무엇일까?Text Mining 2019. 12. 18. 18:20
LDA (Latent Dirichlet Allocation)를 그대로 해석해보자면, 잠재, 디리클레, 책정이다. 디리클레는 디리클레 분포에서 따온 말이다. 디리클레 분포는 뒤에서 자세히 설명하도록 하겠다. 그럼 어떤 목적에서 쓰이는 것일까? : 주어진 문서에 대하여 각 문서에 어떤 주제들이 존재하는지에 대한 확률 모형이다. 또한, 토픽별 단의 분포, 문서별 토픽의 분포를 모두 추정한다. 위 그림을 보면 색깔별로 토픽이 나눠져 있다. 노란색 토픽 안에 gene, dna, genetic 등이 있으니까 유전과 관련된 토픽이라고 볼 수 있다. 초록색은 뇌와 관련된 토픽일 것이다. 그리고 단어별로 값이 쓰여져 있는데 이 값들은 토픽에서 등장할 확률을 나타낸다. 그리고 Documents를 살펴보면 확실히 노란색으로..
-
텍스트마이닝_GloVeText Mining 2019. 12. 18. 15:11
GloVe GloVe에 대해 알아보기 전에 GloVe보다 더 상위의 개념인 Embedding에 대해서 알아보고자 한다. Embedding이란 말은 어디서 온 것일까? Embed의 뜻은 끼워 넣다. 박아 넣다. 이런 뜻이다. 벡터의 공간 안에 단어를 벡터로 변환시켜 끼워 넣는 다라고 생각하면 될 것이다. 수학적으로 표현하자면 X라는 공간의 데이터에서 원하는 정보를 잘 저장하여, Y라는 새로운 공간으로 보내는 과정이다. 그런데 X라는 공간의 데이터들은 각 단어별로 높은 차원을 이루고 있다. Y라는 새로운 공간으로 보낼 때는 차원을 축소하게 된다. 차원축소, Dimensionality Reduction는 크게 1) Freature subset selection과 2) Feature extraction으로 나눌..
-
텍스트마이닝_Word2Vec, Doc2VecText Mining 2019. 12. 17. 14:10
Word2Vec Word2Vec에 대해서 알아본다. 이 포스팅은 이영훈 교수님의 비정형데이터분석 수업을 토대로 정리한 글이다. What is Word2Vec? : '단어를 벡터로'라고 해석 할 수 있다. 그리고 텍스트마이닝에서의 정의는 Soft Regression을 사용하여 각 단어의 벡터를 학습시키는 Classifier라고 할 수 있다. 어떤 공식을 사용하여 벡터들을 분류시키고 우리가 원하는 결과를 도출시키는 것이다. Word2Vec은 총 두가지의 분류법이 있다. 1. CBOW : Continuous Bag of Words, 주변 단어들의 벡터를 가지고 빈칸에 있는 단어의 벡터를 도출시키는 방법 2. Skip-Gram : 중심 단어의 벡터를 가지고 주변 단어들의 벡터를 예측하는 법 Word2Vec에서는..