본문 바로가기

전체 글

[GitLab]소스코드 관리, GitLab으로 완벽 해결하기 보통 여러 인원과 함께 프로젝트를 진행할때, 구성원간 유기적이고 신뢰성있게 코드를 관리하는것은 매우 중요하다. 오늘은 gitlab을 활용해서 손쉽게 코드 및 업데이트 내용을 관리하고, 소스코드의 히스토리를 확인, 공유할 수 있는 협업 방식에 대해 포스팅해보려 한다. 먼저, Git과 GitLab에 대해서 간단히 알아보자. Git이란? git 은 소스 코드 버전 관리 시스템으로 로컬에서 변경 사항을 추적하고 원격 리소스에서 변경 사항을 푸시하거나 가져올 수 있다. GitLab 이란? GitLab은 깃 저장소 및 CI/CD, 이슈 추적, 보안성 테스트 등의 기능을 갖춘 웹 기반의 데브옵스 플랫폼으로 개인 또는 조직이 Git repository 의 내부 관리를 제공하는데 상용할 수 있는 Github 으로 즉 비.. 더보기
2023.05월 회고 주제 회고내용 라벨링 도구 [API 개발] 단순 API 개발 진행중에는 큰 문제가 없었다. 그리고, 다른 부서와 API를 연동하면서 여러 변동 상황에 취약해졌고, 각자의 API 및 관련 개발정책의 변경사항이 있을때, 서로간의 공유와 커뮤니케이션이 얼마나 중요한지 깨닫게 되었다. 여러변 변경사항이 발생할때, 너무 휘둘렸다. > 뭐, 이 부분은 관련 TF채널에서 좀 더 소통을 강화할 필요가 있겠고, 구두로 전달하기 보다는 업데이트 된 명세서로 소통할 수 있도록 정리하자. [슬슬 대두되기 시작한 서비스의 속도문제] 첫번째, 우선, 바인딩할 데이터의 물리량이 늘어났다.. 수천, 수만장의 이미지를 로드할때, 물리적으로 시간이 오래걸린다. 이럴때, 비동기로 처리하는것 외에는 방법이 없을까..? > 우선 전체 데이터.. 더보기
컨텐츠 기반 추천 vs 협업 필터링 최근, 머신러닝이 활용되는 분야 중, 어떻게 보면 가장 많은 빈도로 활용되고있는 추천 시스템에 대해서 정리해보려 한다. 추천 시스템이란? 간단하게 말하자면, 사용자의 취향이나 필요성을 파악해서 그에 맞는 아이템을 추천해주는 시스템이다. 넷플릭스에서 볼 영화 추천받거나, 쇼핑몰에서 살 물건 추천받는 거라고 생각하면 이해하기 쉬울듯하다. 검색과는 약간의 차이가 있는데, 검색이 사용자가 직접 구하고자 하는 내용을 찾는 행위라면, 추천시스템은 사용자가 찾기전에 가장 유용할 것으로 예상되는 정보를 먼저 제시하는 개념이다. 이런 추천 시스템은 수 많은 방법론을 가지고 있는데, 그 중 가장 대표적으로 두 가지 방법론으로 나눌 수 있다. 바로 '컨텐츠 기반 추천'과 '협업 필터링'이라는 방법이다. 가장 대표적인 고전 .. 더보기
[Linux] 서버 접속 비밀번호 변경 서버 접속 시, 3개월에 한번씩, 비밀번호를 변경하라는 번거로운 안내가 출력된다. 다만, 이 비밀번호 생성 규칙이 너무 번거로운 탓에 겨우 규칙에 맞춰 한번 설정하고나면, 까먹고 비밀번호를 기억하지못할때가 많다. 그래서, 3개월 주기로 출력되는 비밀번호 변경안내에 따라 변경 한 후 로그인된 상태에서 비밀번호를 변경하면, 별도의 규칙(물론 보안에 대한 경고는 노출되지만 사뿐히 무시하고)없이 원래 사용 하던 비밀번호로 변경할 수 있다. 아래 과정을 확인해보자! 1. 일단 규칙에 맞춰서 기억하지못할 비밀번호로 임시설정을 완료한다.(그냥 Qwer1234!@#$) 2. 변경된 비밀번호로 로그인! 3. "passwd"를 통해 다시 비밀번호를 변경하자 4. 현재 비밀번호를 입력한다.(Qwer1234!@#$) 5. 새.. 더보기
[파이참] django를 활용한 App setting시 자잘한 체크리스트 1. app root directory 내부에 가상환경(venv)이 생성되어있는지 확인 2. 현재 가상환경 연결이 잘 되어있는지 확인 (source venv/bin/activate) 3. Preferences setting 확인 Languages & Frameworks > Django Django project root 에 root directory설정이 잘되어있는지 확인 settings에 settings.py 경로가 잘 셋팅 되어 있는지 확인 Project: [서비스폴더(root folder명)] python interpreter : 파이썬 인터프리터 설정 제대로 되어있는지 확인(가상환경 내 python 경로) 4. Configuration Environment > Environment variable.. 더보기
[AI/ML] 좋은 논문 찾는 법! Data Scientist에게 가장 중요한 역량중 하나는 최신 알고리즘 및 방법론에 대한 논문을 빠르게 이해하고, 그 중 양질의 논문을 이해하고, 내가 진행하는 Task에 적절히 녹여낼 수 있는 능력일 것이다. 그래서 오늘은 AI분야에서는 매일 쏟아지는 새로운 논문들 중 양질의 논문을 찾는 방법에 대해 정리해보려한다. Conference paper? Journal paper? 논문을 찾다보면, 컨퍼런스 or 저널 이라는 워딩을 많이 볼 수 있다. 먼저, conference와 journal은 논문이 발행된 곳을 의미한다. 그렇다면, conference에서 발행된 paper와 journal에서 발행된 paper은 어떻게 다를까? 1) Conference paper conference는 학계, 연구자, 전.. 더보기
[Linux]파일 또는 디렉토리 권한/소유자 수정하기(chown, chmod) 로컬서버에 파일을 올리려고 했는데, 권한관련 에러가 난다. 원인은 파일을 옮기려는 서버 디렉토리에 대한 권한이 '없어서'이다. 그래서 오늘은 리눅스에서 파일 또는 디렉토리의 사용권한을 수정하는 방법에 대해서 간단히 정리해보려한다. 1) 현재 유저의 권한 확인해보기 먼저 파일을 이동하려는 서버 및 디렉토리에 접속한 뒤 파일 또는 디렉토리의 권한상태를 확인할 수 있다. ls -l # or ls -al # [output] drwxr-xr-x 2 user group 4096 Mar 29 12:34 example_directory output으로 출력되는 내용을 보고 파일 또는 디렉토리의 권한을 확인할 수 있는데, 아래와 같이 이해하면된다. d: 디렉토리임을 나타낸다. 파일의 경우 -로 표시됩니다. rwxr-xr.. 더보기
[Flower]Celery웹 모니터링 도구 'Flower'을 분해해보자. Flower는 'Celery'의 웹 모니터링 도구로, 작업 큐를 추적하고 관리하는 도움이 되는 Tool이다. 최근에는 celery 사용 시 필수적으로 사용되는 도구로, 오늘은 Flower Dashboard의 각 항목을 분해해보려한다. Flower 대시보드 화면 Flower의 dashboard에서는 위와 같이 각 worker들의 상태와 작업량, 작업부하등의 정보를 보기쉽게 담고있다. 대시보드의 각 컬럼들이 의미하는바에 대해 정리해보자. (1) 'Worker Name' 워커의 고유한 이름으로 이 이름은 각 워커를 식별하는데 사용된다. 각 worker name은 celery가 실행되어있는 docker container id를 표시하고 있다. (2) 'Status' worker의 현재 상태를 표현하는것으로 일반.. 더보기