[AIFFEL 대전 1기] 36일째 날

데이터 여행자·2021년 2월 18일

[일기]

목록 보기
37/105

오늘 스터디가 어제 배운 데이터크롤링 복습시간이기 때문에 어제 밤에 노드를 다시 정리해야 했다. 어제 낮에 마무리 못한 것을 다 끝내고 다시 한 번 보았지만 사실 잘 이해가 되지 않았다. 크롤링이니 API니 1장으로 어떻게 이해를 할까?

크롤링에 대해 더 알고 싶어서 간단히 설명해 주는 사이트(여기)에서 한 번 따라해 보았으나 여전히 이해가 되지 않았다. html문서에서 <P>, <a>, <li>와 같은 것을 잘 찾아야 하고, 순서도 잘 찾아야 하는 것 같은데, 나는 어디를 선택해서 적어야 하는건지 이해가 잘 되지 않았다. 노드에서도 증권회사 이름을 지워줘야 하는데, 사이트에서 회사 이름을 찾을 수 없으니 왜 지워야 하는지도 모르겠고, 아무튼 이해가 전반적으로 잘 안 되었다.

추Node

결국 이해가 안 된채로 스터디에 들어갔다. 문제를 풀고, 지도 API에 대해 살펴보았다. 공간 API에 대해 배울 수 있는 사이트도 배웠다. 그 후 크롤링에 대한 질문이 나왔다. 그리고 나도 어제 해결이 안 된 회사 이름에 대한 질문을 했다. Y님이 금세 찾아주셨고, 위치를 알고보니 왜 회사 이름을 지워주어야 하는지도 알게 되었다. 어리숙한 질문이었지만 해결이 되어서 나는 만족한다. 오늘은 스터디가 조금 일찍 끝났다. 어제 배운 노드 내용이 겉핥기 식이라 그런 것 같다.

Exploration

오늘의 프로젝트는 텍스트 요약 - 추상적 요약/추출적 요약이었다. 이론을 시작으로 모델 설계 부분이 특히 어려웠다. 만들어진 모델을 갖다가 쓰는 것인데도, 코드를 이해할 수 없었다. 그 원리를 알아야 이해가 될 것 같다.

우선 텍스트 요약은 seq to seq으로 컨텍스트 벡터를 만들고 RNN(hidden state만 사용)을 사용하여 인코더와 디코더를 설계한다. 그러나 노드에서는 hidden state와 cell state를 함께 사용하는 LSTM을 사용하였고, 어텐션 매커니즘을 사용하여 문장의 부분(주어, 동사, 목적어 등)에 따라 가중치를 다르게 주어 모델의 정확도를 높인다고 하였다. 그 외에도 복잡한 이야기들이 있었지만 어려워서 아직 이해가 안 된다.

이해하지 않고 그냥 복사-붙여넣기를 하면 금방 할 수 있는 프로젝트지만 모델을 이해하려고 하면 한없이 어려워지는 것 같다. 주말에 조금 더 공부해야 할 것 같다. 유튜브 강의를 듣든, 블로그를 보든 이해할 수 있는 방식을 찾아야 할 것 같다. 퍼실님이 추천해주신 유튜브 강의를 듣고난 후 조금 이해가 되었지만 아직 많이 부족하다.

[딥러닝 기계번역] 시퀀스 투 시퀀스 + 어텐션 모델

오후에 Gather에서 사람들이 게임을 많이 했나보다. 게임하자고 부르는 소리를 들었지만 나는 마음의 여유가 없어서 프로젝트만 했다. 다른 사람들은 게임을 하면서도 프로젝트를 거의 다 할 수 있다는 것이 신기하면서도 부럽다. 나는 그게 잘 안 되던데.

마무리

퇴실 처리를 하고 조원들과 이야기를 나누었다. 이젠 정말 일과가 되었다. 얘기 나누는 중에 우수 프로젝트가 발표되었다. 매번 발표될 때마다 어떻게 다들 그렇게 잘 하는지 감탄이 나온다. 나는 노드 그대로 따라가기도 벅찬데, 그 분들은 자신의 방법대로 코드도 짜시고 정리도 잘하신다. 보면서 나중에 공부해야지 하지만 시간이 부족해서 결심만 하고 만다. 그래도 우수 프로젝트를 보면서 자극도 되고 배우는 점이 많다. 생각도 못했던 부분도 발견하고, 배워야할 코드도 많고.

조원들과 헤어지려는 찰나에 프로젝트 9번 캐글의 하이퍼파라미터 튜닝에 대한 이야기가 나왔다. 두 분께서 조언을 해주셔서 정말 마지막으로 다시 한 번 해야겠다 싶었다. 지난주 수요일부터 일주일째 붙들고 있는데, 점수가 진짜 안 떨어진다. 도대체 뭐가 문제인걸까? 세밀하게 튜닝한다는 의미도 잘 모르겠고, 어떤 것을 선택해야 하는 건지도 모르겠다. 튜닝을 하면 점수가 떨어져야 하는데, 왔다갔다 난리가 난다.

어떤 프로젝트를 하든 하이퍼파라미터를 조정하는 것은 어렵다. 오늘의 우수 프로젝트에서도 하이퍼파라미터 조정을 잘 해서 MF모델의 점수가 높게 나온 것을 보았다. 나는 50%밖에 나오지 않았다. 하이퍼라파미터 조정을 잘 못해서 일정 점수 이상 혹은 이하로 맞추는 프로젝트는 항상 2점대로 받은 것 같다. 하이퍼파라미터를 자동으로 조정해주는 프로그램이 나오면 얼마나 좋을까? AutoML이라는 것이 있다고는 하지만 아직 잘 모르는 분야이다.

아무튼 프로젝트 9는 포기했다. 일주일을 붙들고 있었는데도 안 되는 거면 안 되는 거겠지. 주말에 시간이 나면 하이퍼파라미터 튜닝에 대해 공부해봐야겠다. 오늘의 마무리는 '무한루프에 빠진 수학' 스터디이다. 오늘 배울 내용은 역행렬과 연립방정식이고, 강의 노트를 보니 소거법과 고유치에 대해서 배우는 것 같다. 소거법은 분명 배웠을텐데 기억이 하나도 안 난다. (하긴 내가 기억하는게 있기는 하나.  ( Ĭ ^ Ĭ ) ) 스터디에 갔다가 오늘의 프로젝트 조금 하고 자자.

0개의 댓글