분류 전체보기29 Servlet과 Tomcat의 개념 [참조 문헌] https://medium.com/stackademic/internal-architecture-and-working-of-apache-tomcat-4a0b1800627d https://jeongwhanchoi.medium.com/introduction-to-servlets-aff4abc76ed9 https://medium.com/app-dev-community/complete-introduction-to-java-servlets-d445cec67ce2 https://velog.io/@rudwhd515/Tomcat%EC%9D%98-%EB%8F%99%EC%9E%91-%EC%9B%90%EB%A6%AC Servlet? 자바 서블릿은 HTTP 요청을 처리하고 동적 응답을 생성해내는 java-base.. Programming 2024. 2. 5. REST API, RESTful 정의 [참조 문헌] https://mannhowie.com/rest-api https://medium.com/ 💡개요 REST는 Representational State Transfer, API는 Application Programming Interface의 약어라고 한다. 웹을 통해 클라이언트와 서버 애플리케이션 간 통신 및 데이터 교환을 가능케 하는 도구이다. REST API는 웹 서비스들이 어떻게 통신해야 할지를 정의한 설계 규칙이다. 이를 위해 엔드포인트, 리소스, HTTP 메소드, 요청 및 응답 형식과 상태 코드 등의 정보들을 이용한다. 자원을 JSON, XML 등으로 표현하기 때문에 Representational이라는 수식어가 붙는다. API는 프로그래머들이 서로 다른 소프트웨어 애플리케이션 간 연.. Programming 2024. 2. 5. Python vs Java [참조 문헌] https://medium.com/ https://www.analyticsvidhya.com/blog/2023/04/java-vs-python/ https://bloofer.net/114 https://monkey3199.github.io/develop/python/2018/12/04/python-pararrel.html 특징적 차이점 타이핑 시스템 Python이 동적 타이핑이라면, Java는 정적 타이핑이다. 쉽게 말해, Java는 변수 선언 시 타입 지정 등 지켜야 할 규칙이 따른다. 동적 타이핑은 런타임 시 인터프리터가 타입을 해석해야 하므로 정적 타이핑보다 느리다. 그 뿐만 아니라, Java가 컴파일 언어라는 점도 속도 차이에 기인한다. 파이썬은 인터프리터 언어로 컴파일 단계가 없이.. Programming 2024. 2. 5. iGraph란? https://link.springer.com/article/10.1007/s11704-016-5485-7 Incremental (data) processing Incremental processing은 처리 기법으로 이미 처리된 기존 데이터를 다시 처리하는 것보다 데이터 셋에 새로 추가된 데이터 파티션(또는 레코드)에 대해서만 처리하는 것을 말한다. 이런 기법으로 이미 처리된 데이터에 대한 재처리로 인한 시스템 오버헤드를 없앰으로써 효율성을 증진시킬 수 있다. 예로, 분석 테이블 내 데이터는 1일 당 summarized 되어야 한다고 하자. 다음 테이블은 summarization script가 실행될 때 데이터 셋이 어떻게 처리되는지 나타낸다. 대표사진 삭제 사진 설명을 입력하세요. Summarizat.. 카테고리 없음 2023. 12. 15. 음악 추천 프로젝트 https://0equal2.tistory.com/133 유사 음악 추천 알고리즘 프로젝트 https://ieeexplore.ieee.org/abstract/document/8662028 T-RECSYS: A Novel Music Recommendation System Using Deep Learning https://www.aicrowd.com/challenges/spotify-million-playlist-dataset-challenge https://www.youtube.com/watch?v=MqxsdbIJzzc&t=650s https://www.recsyschallenge.com/2018/ https://medium.com/double-pointer/system-design-interview-re.. 카테고리 없음 2022. 12. 28. [신뢰성] 모델 설명 및 구현 선형회귀를 통한 지도학습 모델의 종류를 활용한다. 독립변수들을 입력으로 받은 선형 함수가 종속변수를 예측하는 선형 모델이다. 선형회귀는 최적의 w와 b를 찾아서 cost function을 최소화한다. Cost function은 아래처럼 계산한다. 독립변수가 적은데 학습 및 검증 데이터에서 성능이 낮다면 under-fitting(Train-set도 학습을 못함) 문제이다.독립변수가 많은데 검증 데이터에서 성능이 낮다면 over-fitting(Train-set에만 성능이 좋은) 문제이다. 릿지와 라쏘 회귀는 모델 복잡도를 낮추고 over-fitting 문제를 방지하는 모델이다. 비용함수 링크: (미분을 해야 기울기가 어느 방향으로 기울어졌나 판단하고 어디로 이동해야 최적화할지 판단할 수 있음)https://.. 신뢰성 머신러닝 프로젝트 2022. 12. 25. [신뢰성] 머신러닝 개요 및 성능 평가 * 모델 목록 및 라이브러리 라쏘 from sklearn.linear_model import Lasso OLS from sklearn.linear_model import LinearRegression 릿지 from sklearn.linear_model import Ridge K-NN from sklearn.neighbors import KNeighborsRegressor LDA from sklearn.decomposition import LatentDirichletAllocation 데이터는 numpy 데이터프레임 활용 * Model Input Parameters(감성 분석 및 영향력으로 구분) - 감성분석 자기 감성 분석(감성 편차 관점에서 분석) 타인 감성 분석(Retweet, Reply, Menti.. 신뢰성 머신러닝 프로젝트 2022. 12. 21. [신뢰성] 확인할 파일(영향력) * Java Clear * Python KNN_feat_imp.py KSDN.py TopicCalc.py WeightedKS.py Database.py sentiment_train.py CreateCSV.py 신뢰성 머신러닝 프로젝트 2022. 12. 20. [트위터] 토픽 할당 (사용자) https://towardsdatascience.com/twitter-topic-modeling-e0e3315b12e2 https://www.codestates.com/blog/content/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EB%94%A5%EB%9F%AC%EB%8B%9D%EA%B0%9C%EB%85%90 https://coredottoday.github.io/2018/09/17/%EB%AA%A8%EB%8D%B8-%ED%8C%8C%EB%9D%BC%EB%AF%B8%ED%84%B0-%ED%8A%9C%EB%8B%9D/ https://towardsdatascience.com/latent-dirichlet-allocation-lda-9d1cd064ffa2 http://ethen81.. 사용자 영향력 프로젝트 2022. 12. 20. [트위터] 데이터베이스 코드 Neo4j 특징 그래프 데이터를 저장 및 관리하는 그래프 DB이다. 1. 자바 기반의 그래프 DB이며 임베딩 방식과 REST 방식을 지원 2. 트랜잭션을 지원하며 JTA를 지원 3. 인덱스 및 노드 탐색을 지원 4. 이중화를 통한 고가용성을 지원 5. 백업 및 복구를 지원 6. 다양한 그래프 알고리즘을 지원 7. 관계 데이터베이스는 엄격한 스키마를 따라야 하며 JOIN 연산이 필요한 반면, Neo4j는 JOIN이 없고 모든 데이터는 Node와 Relation으로 표현되며 탐색에 최적화 8. Node에는 Label이 존재하며 9. 집계 연산에 취약하다. 10. Label(Table)은 노드 분류 방법으로 하위 그래프를 신속하고 효율적으로 작성 가능. 노드 당 레이블 여러개 설정 가능한 반면, 관계는 하나의.. 사용자 영향력 프로젝트 2022. 12. 19. [트위터] Main 함수 코드 특성 1. 본래 Neo4j를 활용했으나 데이터를 넣는 것이 Bulk Insert로도 너무나 오래 걸려 그냥 text file의 정보를 사용. 텍스트 파일은 "팔로위 팔로워"처럼 공백으로 나뉜 정보들이 줄로 구분됨. 2. 그래프를 구축할 때는 씨드 사용자들을 일일히 선별함. 약 300명으로 구성된 씨드 사용자들을 선정했으며 토픽의 다양성을 위해 다양한 매체에서 선정한 토픽 별 인플루언서들을 참고함. 토픽마다 어느정도 사용자 수가 수집되면 멈춘다. 3. 정답 셋은 spread score를 기준으로 계산함. Spread score는 참고 논문 중 IC 모델들과 매우 흡사한 결과를 낳는다는 것이 증명되어 정답 셋으로 활용하기 타당함. 4. 전체 데이터 셋은 8만명 이상의 사용자와 1700만개의 관계 수로 구성됨.. 사용자 영향력 프로젝트 2022. 12. 19. [트위터] 데이터 수집기 * 전부 Java로 구현함. * tweepy와 커스텀 파이썬 크롤러는 API와 속도 차이가 너무 커서 포기함. * 트위터는 bearerToken을 받아서 인증해야 API 사용 가능 * 아래는 API 호출 예시 static String bearerToken = "AAAAAAAAAAAAAAAAAAAAAFJoWQEAAAAAtGXgIPTy1xrcTE5sXcVLmRU1KZ8%3DgdvzO1icW2UsKz0r6srlwfN8Cbu1Cl6eYLLKrgQUmBpY01zG0O"; static HttpClient httpClient = HttpClients.custom() .setDefaultRequestConfig(RequestConfig.custom() .setCookieSpec(CookieSpecs.STANDARD)... 사용자 영향력 프로젝트 2022. 12. 17. 이전 1 2 3 다음