IT Diary 54

[ Dev Dairy ] 006. 연관어 네트웍크 분석 Networkx 사용해보기

어제 공부했던 textrank 로 했을 때, 결과값이 만족스럽지 않아서 다른걸 찾아보기로 했다. 결과값이 만족스럽지 않다는거는 단어 추출은 잘되는데, 연관된 단어일 경우 분리되서 나와서 하나의 단어로는 그렇게 데이터로써 큰 가치가 없었다. 예를 들면 내가 원하는거는 "성과 창출" 인데 실제로 textrank 를 돌려서 나온값은 "성과" "창출" 각각의 단어로 나오니까 하나의 단어로는 데이터로써 효용가치가 별로 없었다. 그래서 다른 좋은게 있는지 찾아보던중 , NetworkX 를 발견했다. 실제로는 다른분들은 그래프 형식으로 결과값을 도출해서 많이 사용하시던데 내가 원하는건 연관단어들의 텍스트형식의 결과물이었다. NetworkX는 네트워크분석을 기본으로 하고 있고 네트워크 분석은 개인과 집단들 간의 관계를..

[ Dev Dairy ] 005. krwordrank 사용해보기

원래는.. 리뷰들을 모아서 그 리뷰에 대한 긍정적인 부분/ 부정적인 부분을 추려서 프로젝트를 하려고 했다. 기존에 나와있는 긍/부정 감성분석은 리뷰의 평점에 따라 좋은평점에서 긍정적인 단어를 추리고 나쁜평점에서는 부정적인 단어를 추리는 방식이었는데 내가 하고있던거는 미리 긍/부정도 단어사전을 만들고 단어 사전을 통해 긍정/부정을 추출하는 방식이었다. 암튼, 그 긍/부정도에 대해서는 못하게되어 다른 아이디어를 찾고있던 중 .. 발견하게 된거는 krwordrank 이다. text에서 핵심 문장/단어를 추출하는 알고리즘이다. WordRank 알고리즘은 구글의 PageRank 나 HITS 같은 Graph Ranking을 자연어처리에 적용한 알고리즘 이다. 이거를 한국어의 어절 개념을 적용한게 KR-WordRan..

[ Vue ] 001. Vue의 정의

소개 Evan You가 만들었으며, 2014년 릴리즈를 시작으로 꾸준히 발전하고 있는 자바스크립트 프레임워크입니다. 컨트롤러 대신 뷰 모델을 가지는 MVVM(Model-View-ViewModel) 패턴을 기반으로 디자인되었으며, 재사용이 가능한 UI들을 묶어서 사용할 수 있습니다. Mode - View - ViewModel의 줄임말으로 로직과 UI의 분리를 위해 설계된 패턴입니다. 웹페이지는 돔과 자바스크립트로 만들어지게 되는데 돔이 View 역할을 하고, 자바스크립트가 Model 역할을 합니다. 뷰모델이 없는 경우에는 직접 모델과 뷰를 연결해야 합니다. 그러나 뷰모델이 중간에서 연결해 주는 것이 MVVM 모델입니다. 가상돔(Virtual DOM) 돔 요소가 많아지면 자바스크립트로 돔을 핸들링하는 일이 ..

IT Diary/# Vue 2021.07.27

[ Dev Dairy ] 004. Flask API 만들어보기

JSP 단에서 GET 방식으로 요청을 보내고 그걸 Python Flask 로 받아서 처리한 값을 다시 JSP로 돌려주는걸 해보고싶었다. 쉽게 말하면 Flask 로 API를 만들어서 만든 API 에 요청을 쏴서 잘 처리되는지 해보고싶었다. 우선은 간단하게 JSP 에서 ajax 로 get 방식으로 API 호출하는걸 만들었다. JAVA - index.jsp 1 2 3 4 5 6 7 8 9 10 11 12 13 $.ajax({ method: "GET", // url: "https://dapi.kakao.com/v2/search/blog", url: "http://127.0.0.1:8080/plus", // flask 서버로 던진다. // data: { review : ["리뷰1","리뷰2","리뷰3"]} dat..

[ JAVA ] 캡슐화란?

캡슐화 : 기능의 구현을 외부에 감춤 ( 정보은닉 : Information Hiding ) : 캡슐화를 통해 기능을 사용하는 코드에 영향을 주지 않고 ( 또는 최소화) 내부 구현을 변경할 수 있는 유연함 캡슐화를 위한 규칙 1. Tell, Don`t Ask : 데이터 달라 하지말고 해달라고 하기 샘플) * 변경 전 if ( acc.getEmpAuth() == MANAGER ) { ...운영자 권한 } * 변경 후 if( acc.hasManagerAuth()){ ...운영자 권한 } 2. Demeter`s Law : 메서드에서 생성한 객체의 메서드만 호출 : 파라미터로 받은 객체의 메서드만 호출 : 필드로 참조하는 객체의 메서드만 호출 샘플) acc.getExpDate().isAfter(now) -> ac..

IT Diary/# JAVA 2021.07.11

[ JAVA ] try catch 문

Error(에러)와 Exception(예외의 차이) 에러(Error)란 컴퓨터 하드웨어의 오동작 또는 고장으로 인해 응용프로그램에 이상이 생겼거나 JVM 실행에 문제가 생겼을 경우 발생하는것을 말합니다. 이 경우 개발자는 대처할 방법이 극히 제한적입니다. 하지만 예외(Exception)은 다릅니다. 예외란 사용자의 잘못된 조작 또는 개발자의 잘못된 코딩으로 인해 발생하는 프로그램 오류를 말합니다. 예외가 발생하면 프로그램이 종료가 된다는것은 에러와 동일하지만 예외는 예외처리(Exception Handling)을 통해 프로그램을 종료 되지 않고 정상적으로 작동되게 만들어줄 수 있습니다. 자바에서 예외처리는 Try Catch문을 통해 해줄 수 있습니다 여러가지 예외들 예외 구문 이유 ArithmeticExc..

IT Diary/# JAVA 2021.07.09

[ Python ] 장바구니 알고리즘 ( apriori ) 구현해보기 #2

어제 한 내용을 이어서 하자면, 데이터프레임으로 변경을 완료했는데 이 데이터프레임의 내용은 대략적으로 글로 쓰자면 1번째 행은 : JAVA, JSP 2번쨰 행은 : CSS, JAVA, JSP 을 표로 표시한 내용이다. 이제 aprior 알고리즘을 사용해서 어떻게 나오는지 보자 1 2 3 itemset = apriori(df, min_support=0.1, use_colnames=True) itemset print(itemset,'\n') Colored by Color Scripter cs 소스를 돌려보면.. 아래와 같이 값이 나오는데 support에 해당하는 값은 어떻게 나온걸까.. 짱구를 굴려봐도 답이 안나온다.. 이럴땐 구글링! 간단한 샘플을 통한 통계척도 구해보기 역시 구글! 없는게 없다 😄 맞는지..

IT Diary/# Python 2021.07.08

[ Python ] 장바구니 알고리즘 ( apriori ) 구현해보기 #1

연관분석의 대표적인 알고리즘 중 하나인 Apriori를 사용해서 연관분석을 진행해보려고 한다. 장바구니 분석 장바구니 분석은 보통 몇 가지 모델링 기법으로 이루어진다. 판매자들과 전자상거래 사이트에서 일반적으로 사용하는 장바구니 분석과 거래 분석을 통해 소비자들이 가장 많이 사는 제품에 대한 정보와 특정 제품이 가장 많이 팔리는 시기에 대한 정보를 알아내려고 한다. 데이터 기반 의사결정 만들기 장바구니 분석의 결과는 자주 같이 구매되는 아이템 혹은 물건들의 집합이다. 이제 연관도를 향상시키는 강한 지지도, 신뢰도, 향상도로 인해 이런 일들이 가능하고, 소비자들은 그것들을 구매하려 할것이며, 또한 판매자들은 가게나 그들의 웹사이트에 관련 있는 제품들을 같이 진열해 놓을 것이다. 하지만 강한 연관성은 항상 ..

IT Diary/# Python 2021.07.08