반응형

전체 글 174

django management 시스템 안에서 내 명령어 만들고 사용하기

django 프로젝트를 만들다보면, 테스트를 위해 필요할 때마다 django shell을 통해서 일시적인 코딩이 필요할 때가 많다. 게다가 그 코딩을 반복적으로 사용해야 할 경우가 많은데, 그 때마다 django shell에서 같은 코드를 실행시키는 것이 꽤나 불편하고 비효율적일 수 있다. 이 글에서는 django management 시스템에 내가 필요한 명령어를 만들고 사용하는 법을 정리한다.사용할 코드DB에서 뭔가를 빼와서 그 내용을 출력하는 작업을 예제로 삼겠다. DB에 아이템을 하나씩 추가할 때마다 그 아이템을 확인하고자 하는 상황이다. django shell을 통해서 다음과 같은 코드를 통해 테스트를 할 수 있을 것이다. $ python manage.py shell >>> from myapp.m..

Programming/Python 2016.10.09

10월의 초대장 나눔

마감되었습니다.현재 1장 남아있습니다. 빨리 한 분 드리고 폭파하겠습니다!어느덧 10월이 왔네요! 초대장 나눔합니다.꼭 비밀 댓글로 써주세요 -- 여러분의 개인정보 보호를 위해 비밀 댓글이 아닐 시 바로 삭제합니다. 블로그 주제 써주세요.초대장 받으실 이메일을 적어주셔야 합니다.신청하시는 분들이 많기 때문에 초대장 발송 후 하루가 지나면 취소 후 다음 분께 드립니다. 중복 신청하지 말아주세요. IP 확인합니다.존대말 등의 일반적인 예의를 지켜서 댓글 작성해주시면 감사드리겠습니다.위 사항들만 지켜주시면 선착순으로 초대장 드립니다. 좋은 휴일 되세요:)

In Real Life 2016.10.06

Python Celery with Redis: 비동기 작업 큐(queue)

비동기 작업 큐(queue)를 python에서 활용할 수 있는 celery를 소개한다. 웹서버가 처리하기엔 무거운 연산(e.g. pdf 변환, 과학적 계산 프로세스 등)을 그냥 서버에 집어넣으면 사용자는 웹서버의 처리가 다 끝날 때 까지 빙빙 돌고있는 웹브라우저를 하염없이 바라보고만 있어야 할 것이다. 왜냐하면 웹서버의 작업은 동기적(synchronous)이기 때문이다. 반대로 비동기적 (asynchronous)인 작업이라는 것은 어딘가에 작업을 던져주고 그 작업이 끝나길 기다리지 않고 다른 일을 할 수 있다는 것이다. 그 예로 태생부터 비동기적인 javascript가 있다. 그리고 작업이 끝났는 지 지속적인 체크를 하다가 끝나면 그 결과물을 받으면 된다. celery는 메시지 브로커(message br..

Programming/Python 2016.09.25

redis 설치 (리눅스, 윈도 환경에서)

redis는 데이터베이스, 캐시, 메시지 브로커 등의 용도로 사용되는 오픈소스 데이터 저장 매체라고 하는데, 나는 python celery의 메시지 브로커로써 사용해 본 경험만 있기 때문에, 자세한 스토리를 설명할 수는 없다. 따라서 여기서는 묻지도 따지지도 않고 redis를 설치하는 것만 정리하겠다. (메시지 브로커에 대한 이야기는 celery를 정리하면서 설명할 것이다) 리눅스 환경일 때와 윈도 환경일 때의 설치 방법을 따로 설명한다. 1. linux 환경에서 설치공식 가이드를 보며 설치하면 된다. 최신 버젼을 받아서 아래 명령어를 통해 설치하자. ### wget 대신 다운로드 페이지에서 최신 버젼을 직접 받아도 된다 $ wget http://download.redis.io/redis-stable.t..

etc 2016.09.25

리눅스 shell 명령어 히스토리 빠르게 사용하기

윈도 운영체제의 cmd, 리눅스의 bash 터미널 등의 shell을 사용하는 사람이라면 대부분 위, 아래 화살표 키를 이용해 전에 썼던 명령어를 다시 불러올 수 있다는 사실을 알 수 있을 것이다. 아마 대부분의 CLI (command line interface) 환경을 제공하는 프로그램에서 기본적으로 제공하는 기능일 것이다. ipython shell을 사용할 때도 역시나 같은 기능이 있으며, 거기에 더해서 첫 몇 글자를 입력한 후에 위아래 키를 통해 그동안 썼던 명령 중에서 방금 입력한 글자로 시작하는 명령을 찾아주기도 한다. 굉장히 설명이 장황한데, 예를 들어 다음과 같은 명령들을 썼다고 해보자. $ man apt $ sudo apt-get update $ sudo apt-get upgrade $ su..

GNU-Linux 2016.09.21

2-3. Least Squares와 kNN 사이의 짧은 이야기 (DEPRECATED)

안내 사항 이 시리즈는 더 이상 업데이트 되지 않습니다. 대신 새롭게 제 github 레포에 jupyter notebook을 기반으로 다시 정리하고 있습니다. 이 작업이 다 끝나고 스스로 이해한 것을 한글로 정리하게 될 때가 오기를 바랍니다. 우리는 지금까지 supervised learning의 대표적인 방법인 least squares와 kNN을 알아보았다. 다시 두 방법이 만들어내는 decision boundary를 흘끗 보자. least squares를 이용한 선형 모델은 매우 매끄러운 decision boundary를 만들어내며, 데이터에 맞추기에 일관적인 면모를 드러낸다. 딱 봐도 좋아보인다. 다만 우리는 least squares가 적합한 방법이라는 믿음을 가지고 있기 때문에 사용을 했다는 점을 ..

Machine Learning 2016.09.17

9월 티스토리 초대장 나눔

마감되었습니다.1장 남아있습니다. (9월 16일 오전 10시 51분 기준)초대장 보내드렸는데 며칠 동안 안 받아주시면 취소하고 다음 분에게 갑니다. 1장 남아있습니다 (9월 7일 오후 3시 26분 기준)9월 초대장 나눔합니다.꼭 비밀 댓글로 써주세요 -- 비밀 댓글이 아닐 시 바로 삭제합니다. 블로그 주제 써주세요.중복 신청하지 말아주세요. IP 확인합니다.초대장 받으실 이메일을 적어주셔야 합니다. 존대해주세요.위 사항들만 지켜주시면 선착순으로 초대장 드립니다. 굳밤 되세용

In Real Life 2016.09.16

구시대 명령어, shell script 기본 사용법

GUI vs. CLI윈도 운영체제가 있기 전 DOS 환경에서 컴퓨터를 이용해본 사람들은 cd나 dir과 같은 명령어를 기억할 것이다. 조선컴처럼 오로지 명령어를 통해 작업을 할 수 있는 환경을 CLI (command line interfaces)라고 한다. 시간이 지나 윈도와 같은 GUI (graphical user interfaces)가 등장한 이후, 리눅스 환경에서도 ubuntu desktop이나 mint 등 멋진 GUI를 통해 편하게 리눅스를 사용할 수 있다. 폴더를 더블 클릭해서 열고, ctrl+c ctrl+v로 파일을 복사할 수 있다. 마우스를 통해 모든 것을 할 수 있지만, 그렇다고 해서 CLI를 잊어선 안된다. 명령어에 익숙해지게 된다면 같은 일을 GUI보다 훨씬 빠르고 효율적으로 처리할 수..

GNU-Linux 2016.09.12

Google Adsense 승인 가능성을 높여보자

"제 블로그는 왜 안되나요?""세 번째로 까였네요."구글 애드센스 가입을 승인 받지 못한 분들이 보시고 체크해 볼만 한 사항들을 적어본다. 아래 내용이 구글에서 정한 절대적인 기준은 아니고 나의 조사와 경험을 토대로 쓰는 것이다. 애드센스 승인의 가능성을 높이는 노력 정도로 생각하시길. 1. 충분한 양과 충분한 수의 글 나도 구글님에게 몇 번 까였었다. 블로그 만든 지 얼마 되지도 않았고, 글도 몇 개 안 써 놓은 상태에서 호기심에 신청해봤었는데, 거절 사유는 역시나 "콘텐츠 불충분". 이 경우에는 내가 더욱 많은 정보를 내 블로그에 집어넣어야 해결된다. 글의 개수도 중요하지만, 각각의 내용과 길이도 신경을 써야 하는 것 같다. 특히 다른 곳에서 그대로 복사해서 붙여넣는 정보를 구글이 알 수도 있기 때문..

etc 2016.09.07

2-2. k Nearest Neighbor (DEPRECATED)

안내 사항 이 시리즈는 더 이상 업데이트 되지 않습니다. 대신 새롭게 제 github 레포에 jupyter notebook을 기반으로 다시 정리하고 있습니다. 이 작업이 다 끝나고 스스로 이해한 것을 한글로 정리하게 될 때가 오기를 바랍니다. 주의이 글의 내용은 Hastie, Tibshirani 등이 쓴 책 "The Elements of Statistical Learning"의 순서와 내용을 기반으로 정리한 글입니다. 따라서 잘못된 내용이 있을 수도 있으니 그럴 경우 제보해주시면 감사드리겠습니다. 이전 글2-1. Least squares k-Nearest-Neighbor (kNN) 이전 글에서 선형 모델로 맞추듯(fit), kNN을 통한 fitting \(\hat{Y}\)을 다음과 같이 나타낸다.\[\h..

Machine Learning 2016.09.05