사용자 도구

사이트 도구


2018_07

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
2018_07 [2018/07/19 07:50]
ehmoon
2018_07 [2021/04/13 06:54] (현재)
줄 1: 줄 1:
-===== 6일 금요일 =====+===== 06일 금요일 ===== 
 + 
 +[Develop]
  
 웹 페이지를 MHTML 파일로 긁어와 저장하는 프로그램 개발. 웹 페이지를 MHTML 파일로 긁어와 저장하는 프로그램 개발.
줄 17: 줄 19:
 \\ \\
  
-===== 9일 월요일 =====+===== 09일 월요일 ===== 
 + 
 +[Develop]
  
 chilkat 모듈을 이용하면 깨지는 페이지들이 발생. chilkat 모듈을 이용하면 깨지는 페이지들이 발생.
줄 36: 줄 40:
  
 ===== 10일 화요일 ===== ===== 10일 화요일 =====
 +
 +[Develop]
  
 Chrome Extension 사용하여 mhtml 파일 저장하는 작업 완료. Chrome Extension 사용하여 mhtml 파일 저장하는 작업 완료.
줄 60: 줄 66:
  
 ===== 11일 수요일 ===== ===== 11일 수요일 =====
 +
 +[Develop]
  
 기존의 계획상으로는 xlsl 파일로부터 500개 dataSet 읽어와서 mht 파일로 변환하는 작업을 진행하려고 했으나,  기존의 계획상으로는 xlsl 파일로부터 500개 dataSet 읽어와서 mht 파일로 변환하는 작업을 진행하려고 했으나, 
줄 112: 줄 120:
  
 ===== 12일 목요일 ===== ===== 12일 목요일 =====
 +
 +[Develop]
  
 Django 서버에 mainpage 만들어서 DB에 모아두었던 모든 DataSet들 화면에 찍어봄. Django 서버에 mainpage 만들어서 DB에 모아두었던 모든 DataSet들 화면에 찍어봄.
줄 166: 줄 176:
  
 ===== 13일 금요일 ===== ===== 13일 금요일 =====
 +
 +[Develop]
  
 client에서 생성했던 blob 파일을 다시 서버로 보내기 위해 ajax 의 POST request를 구현하던 중 문제가 발생. client에서 생성했던 blob 파일을 다시 서버로 보내기 위해 ajax 의 POST request를 구현하던 중 문제가 발생.
줄 222: 줄 234:
  
 ===== 16일 월요일 ===== ===== 16일 월요일 =====
 +
 +[Develop]
  
 blob 객체를 장고 서버에 업로드하기 위해 기본적인 jquery ajax post 통신으로 시도해 봤지만 500에러 발생. blob 객체를 장고 서버에 업로드하기 위해 기본적인 jquery ajax post 통신으로 시도해 봤지만 500에러 발생.
줄 242: 줄 256:
  
 ===== 17일 화요일 ===== ===== 17일 화요일 =====
 +
 +[Develop]
  
 구글링을 통해 XHR (XML Http Request) 방식으로 ajax 다시 보내봄. 구글링을 통해 XHR (XML Http Request) 방식으로 ajax 다시 보내봄.
줄 276: 줄 292:
  
 ===== 18일 수요일 ===== ===== 18일 수요일 =====
 +
 +[Develop]
  
 FormData 객체가 잘 생성되고 있는지 확인하기 위해 append 함수로 string 값 넣어놓고  FormData 객체가 잘 생성되고 있는지 확인하기 위해 append 함수로 string 값 넣어놓고 
줄 336: 줄 354:
  
 ===== 19일 목요일 ===== ===== 19일 목요일 =====
 +
 +[Develop]
  
 1개의 스레드를 돌려서 500개 mht 파일 생성하는 작업 완료. 1개의 스레드를 돌려서 500개 mht 파일 생성하는 작업 완료.
줄 346: 줄 366:
  
 (1) Django에서 Model 객체에 제공해주는 API 메소드 이용한다. (1) Django에서 Model 객체에 제공해주는 API 메소드 이용한다.
 +
 (2) MySQL 쿼리문을 이용해서 일괄적으로 update한다 (2) MySQL 쿼리문을 이용해서 일괄적으로 update한다
 +
 (3) 수작업으로 복붙한다. (3) 수작업으로 복붙한다.
  
줄 360: 줄 382:
  
 내일은 이 작업 마무리하고 논문 리딩 시작. 내일은 이 작업 마무리하고 논문 리딩 시작.
 +
 +\\
 +\\
 +\\
 +
 +===== 20일 금요일 =====
 +
 +[Develop]
 +
 +쿼리 만들어서 파일 경로 DB에 update하는 작업 진행하다 시간이 너무 많이 소요돼서
 +
 +결국 django 에서 제공해주는 함수 이용하여 작업.
 +
 +view 단에 setMhtFiles() 메소드 만들고 os 모듈 안에 있는 listdor() 함수 사용하여
 +
 +files 폴더 안에 모아놓은 모든 파일의 이름 빼옴.
 +
 +현재 디렉터리의 경로를 알기 위해 os.path.realpath() 함수 사용하였고, 앞에서 구한
 +
 +파일명 앞에 붙여서 500개의 절대경로 만들어냄.
 +
 +각각의 경로들을 DB에 update 하기 위해 모듈 클래스의 save() 함수 이용하여 작업 완료.
 +
 +추가 작업으로 클라이언트에서 시뮬레이션 할때마다 변수값들 바꿔주는 시간 줄이기 위해
 +
 +소스코드 정리한번 하고, startDownload() 함수 안에 strat, end, numberOfTabs, isDownload
 +
 +파라미터 만들어서 쉽게 옵션 변경 가능하도록 함.
 +
 +마지막으로 클라이언트 프로그램 아이콘 만들어서 추가하는 작업 완료.
 +
 +\\
 +\\
 +\\
 +
 +===== 23일 월요일 =====
 +
 +[Study]
 +
 +개발 잠시 접어두고, 인공지능 (Deep Learning) 공부 방법에 대해 알아 봄.
 +
 +일단, 인공지능 공부를 하는 목적을 명확히 하자면 내 연구의 비교 알고리즘으로 
 +
 +구현할 필요가 있을 수 있고, 추후에 있을 CRC 과제에서 딥러닝을 사용한 개발을
 +
 +진행 할 수 도 있기 때문. 그때 가서 공부하기에는 너무 늦기 때문에 지금부터 조금씩
 +
 +진행해 놓을 계획. 공부할 material은 많이 있었지만 나는 실무 위주의 개념이 필요하므로
 +
 +홍콩과기대 김성훈 교수님이 youtube와 github에 공유해 놓으신 강의로 결정.
 +
 +이 강의에는 tensorflow를 실제로 사용하는 예제가 있어서 좋음.
 +
 +오늘은 기본적인 개론과 tensorflow configuration 정도 진행하고,
 +
 +machine learning 의 맨 처음으로 나오는 linear regression 은 수업시간에 하도 많이 했으므로
 +
 +빠르게 진도 뺌. tensorflow 사용해보면서 호기심이 많이 생겼고, 이걸로 뭔가 만들어보고 싶다는
 +
 +욕구가 생겼고 익숙하지는 않았지만 오랜만에 좌뇌를 많이 사용한 것 같아서 쫄깃한 재미가 있었음.
 +
 +\\
 +\\
 +\\
 +
 +===== 24일 화요일 =====
 +
 +[Research]
 +
 +하루종일 논문세미나와 CRC 그룹1 미팅 및 회식하느라 개인시간 거의 없었음. 개발이나 공부는 거의
 +
 +못하고 조만간 있을 논문세미나 준비를 조금 진행. 일단 논문 선정을 어떻게할까 고민했는데, 처음엔
 +
 +비교 알고리즘으로 제시할 Automatic Web Content Extraction by Combination of Learning and Grouping
 +
 +논문을 발표할까 하다가,, Content extraction에서 scoring 방법론과 관련한 논문을 survey 해서 발표하는
 +
 +것이 좋을것 같다고 판단. 이유는 어차피 내 연구를 진행하려면 조사해야하는 부분이기도 하고, (무엇보다 
 +
 +이 논문을 미리 발표하면 교수님의 기대치가 너무 높아질 것 같기때문에.) 내일은 괜찮은 논문 찾아서 
 +
 +서베이 진행해야 함.
 +
 +\\
 +\\
 +\\
 +
 +===== 25일 수요일 =====
 +
 +[Research]
 +
 +Web Content Extraction 에서의 Scoring 방법론 관련 논문을 찾아보니 생각보다 많이 나오지는 않음.
 +
 +google scholar 에서 2개 정도 논문 찾음
 +
 +(1) Evaluating Web Content Extraction Algorithm
 +
 +(2) Evaluation Content Extraction on HTML Documents
 +
 +첫 번째 논문은 스로베니아의 류블랴나 대학교에서 쓴 학위논문이고, 처음 abstrict에서는 web content
 +
 +extraction algorithm을 평가하는 방법에 대해 서베이한다는 것처럼 말하고 있어서 기대했는데
 +
 +막상 읽어보니 서베이라기보단 자신들의 한 가지 방법론을 제시하고 있고 다양한 알고리즘들에 대해서
 +
 +실험해보는 내용임. 여기서 제안하고있는 평가 방법은 Longest Common Subsequence (LCS)
 +
 +즉 HTML code 끼리 text 일치성을 비교하겠다는 의미. python으로 구현했고, 평가는 잘 된다고 나와있음.
 +
 +몇가지 아쉬웠던 점은 아이디어가 그닥 신선하지는 않았고, 정답 Set 만드는 과정이 명확하게 제시돼있지
 +
 +않음. 그리고 여기서 제시하는 것처럼 단순히 text로만 비교를 한다면 생기는 논리적 모순이 발생할 것 같음.
 +
 +예를들어 비슷한 구조를 갖고있는 생뚱맞은 2개의 영역이 있다고한다면 그 2개는 코드가 비슷할테고
 +
 +일치성이 높게 판단될 것. 단순한 LCS 비교로는 이러한 문제를 잡지 못할것임.
 +
 +영역과 면적을 비교한다던지 DOM Tree 를 비교하는 등 구조적인 특징을 잡아야 함.
 +
 +\\
 +\\
 +\\
 +
 +===== 26일 목요일 =====
 +
 +[Research]
 +
 +content extraction evaluating 논문 중 두번째 논문 읽음.
 +
 +이 논문은 독일의 마인츠 대학교에서 쓴 논문이고 content extraction 분야에서 유명한 논문들이
 +
 +reference 했음. 이전 논문에 비해서 좋았던 점은 정답 Set을 정한 기준과 방법에 대해 명확히 제시하고
 +
 +있고, 자신들이 개발한 프레임워크를 설명하는 부분도 있음.
 +
 +아직 다 읽어보지는 못했지만 여기서는 어떤 아이디어를 냈나 대충 읽어보니 여기도 역시
 +
 +text 비교를 하는것 같음. 이전 논문처럼 LCS를 사용했는지는 아직 모르겠지만 비교 단위를 characters, 
 +
 +sequence of words, bag of words, set of words 등으로 분류하는것을 보아 LCS는 아닌것 같음.
 +
 +text를 비교한다는 내용 보고 솔직히 기대는 안되지만 뒤에 실험부분이나 output format 같은 부분은
 +
 +도움이 될 것 같음.
 +
 +\\
 +\\
 +\\
 +
 +===== 27일 금요일 =====
 +
 +[Research]
 +
 +Evaluation Content Extraction on HTML Documents 논문 읽음.
 +
 +어제 대충 읽어봤던대로 이 논문은 content extraction 알고리즘을 평가하는 방법론에 대해 제시하고 있음.
 +
 +인상깊었던 점은 date set을 저장하는 방식이 html 방식이였고, 구체적인 내용을 정의하고있는 meta data를
 +
 +따로 만들었음. 그리고 정답 set을 정의하는 포맷은 text 형식이었음. recall과 precision을 계산하는
 +
 +metric이 text이기 때문에 정답 set 역시 text로 저장해도 무방함.
 +
 +나같은 경우에는 xpath로 저장했었는데 나도 만약 text 비교로 성능을 측정한다면 이와 같이 해도
 +
 +좋겠다는 생각을 함.
 +
 +프레임워크의 아키텍쳐같은 경우는 내가 만들고 있는 방식이랑 거의 유사했음. 다만 이 논문에서는
 +
 +알고리즘별로 연산시간도 뽑아내고 있으므로 단순한 server가 아닌 proxy server를 사용하고 있음.
 +
 +baseline으로 제시한 알고리즘은 Plain, BTE, Crunch, DSC, LQF 로 총 5가지.
 +
 +plain같은 경우는 저자가 proxy 서버에 남아있는 정보를 이용한다는 간단한 아이디어로 구현한것이고
 +
 +나머지 4가지는 기존에 제시된 CE 알고리즘들임.
 +
 +성능은 데이터셋의 종류에 따라 제각각이지만 대부분의 경우에서 DSC가 높게 측정됨.
 +
 +related work로 제시된 논문들은 몇가지 있었으나 딱히 흥미로운 것은 없었음.
 +
 +이 분야에서 성능을 측정하는 방법론에 대해 제시된게 거의 없는 것 같음.
 +
 +사실 이 논문의 저자도 CE 에서의 성능 측정을 IR 에서의 정보 검색률로 생각한 것임.
 +
 +
 +\\
 +\\
 +\\
 +
 +===== 30일 월요일 =====
 +
 +휴가
 +
 +\\
 +\\
 +\\
 +
 +===== 31일 화요일 =====
 +
 +휴가
 +
 +\\
 +\\
 +\\
 +
 +
2018_07.1531986618.txt.gz · 마지막으로 수정됨: 2021/04/13 06:54 (바깥 편집)