본문 바로가기

분류 전체보기

(171)
파이썬 알고리즘 기초 - 이진 탐색(binary search) 이번 포스팅도 프로그래머스의 '어서와! 자료구조와 알고리즘은 처음이지?' 강의의 3강인 정렬과 탐색을 정리하는 내용입니다. 오늘은 이진 탐색에 대해 다뤄볼건데요. 그전에 메서드 몇 가지 알아보겠습니다. 1. 파이썬 정렬 메서드 2가지 1-1) sorted - 파이썬 내장 함수 , 정렬된 새로운 리스트를 얻어냄 sorted() 메서드를 이용하면 위 코드와 같이 정렬한 컬렉션 타입의 자료형을 리턴해줍니다. 1-2) sort() - 리스트의 메서드. 해당 리스트를 정렬한다. 리스트의 메서드인 .sort() 를 써도 됩니다. 이거의 경우 별도로 return 하지 않고 자체적으로 기존 리스트를 정렬한 뒤 그대로 반영합니다. +) 내장 함수와 메서드의 차이가 조금씩 감이 오시나요? reverse = True 위 인..
파이썬 알고리즘 기초 - 선형 배열 (feat. 시간 복잡도) 이번 시간부터 파이썬으로 프로그래밍 알고리즘을 다뤄보려고 합니다. 제가 워낙 약한 부분이라서 공부하면서 정리하고자 하니 첨언이나 조언 있으시면 언제든지 댓글 주시면 감사하겠습니다 :) 지금부터 쓰는 이 글을 프로그래머스에서 하는 '어서와! 자료구조와 알고리즘은 처음이지?' 강의를 듣고 문제를 풀면서 이에 대한 내용들을 정리를 위한 글입니다. 오늘은 선형 배열에 다뤄보려고 합니다. 1) Linked Array 선형 배열은 데이터들이 선 (line) 처럼 일렬로 늘어선 형태를 말합니다. 보통 프로그래밍에서 배열 (array) 이라고 하면 같은 종류의 데이터가 줄지어 늘어서 있는 것을 뜻하는데요, Python 에서는 서로 다른 종류의 데이터 또한 줄세울 수 있는 리스트 (list) 라는 데이터형이 있습니다. ..
install pytorch in ubuntu 18.04 Pytorch 를 우분투에 설치하는데요. 며칠 전 커뮤니티에서 pip 패키지가 업그레이드 된 게 문제가 있다고 해서 conda 로 설치했습니다. 시작하겟습니다! https://pytorch.org/ PyTorch An open source deep learning platform that provides a seamless path from research prototyping to production deployment. pytorch.org 공식문서에 들어가주세요! 본인의 pc 운영체제와 파이썬 버전 맞춰서 선택하시면 거기에 맞는 커맨드가 나옵니다! 주피터 상에서 돌아가는 파이썬 버젼 확인은 위 캡쳐본을 참고해서 보시면 됩니다! 공식문서에서 하라는대로 커맨드를 입력하시구요! $ conda list 명..
install tensorflow 1.15 in colab (20200402 리뉴얼) ( 2020.04.02 기준) 아직 GPU가 없는 저 같은분들은 AWS spot 이나 Colab 을 사용해서 예제들을 돌릴텐데요. 이제 코랩에서 tensorflow 의 디폴트는 2.x 버전이 되었습니다. 1) tensorflow 버전 확인 in colab import tensorflow as tf print(tf.__version__) 이제 코랩에서 tensorflow 는 2점대 이므로 만약 1점대를 원하신다면 제거하고 설치해주셔야 합니다. 2) Uninstall tensorflow==2.x in colab !pip uninstall tensorflow !pip install tensorflow==1.15 #런타임 재실행! import tensorflow as tf print(tf.__version__)..
Keras 입문 01- 모델 만들기 + IMDB 예제 딥러닝 라이브러리인 keras 입문을 시작하겠습니다. 이 글은 딥러닝에 대한 기초적인 이론 이해와 컨셉에 대한 개념을 잡았다는 전제 하에 쓰도록 하겠습니다. 코드 위주로 진행하려고 합니다. 코드 위주로 하면서 설명을 곁들이도록 하겠습니다. 하나의 인강과 책을 참고했습니다. (포스팅 제일 하단에 링크 걸었습니다 :) 1) 모델 만들기 우선 기초적인 그림을 보겠습니다. 딥러닝을 공부하시는 분이라면 너무나 익숙한 뉴럴네트워크의 그림입니다. 이제 간단한 레이어들을 구성해보겠습니다. 케라스는 사실 layer를 쌓는데 굉장히 직관적으로 코딩을 할 수 있게 되어 있습니다. 그래서 어느정도 익숙해졌다면 pytorch 나 tensorflow 로 모델을 구성하는 것이 맞습니다. keras 의 경우, 모델을 만드는데 자유도..
우분투 18.04 MYSQL workbench 에서 csv import 하기 이번 시간에는 mysql-workbench를 통해서 csv 파일을 임포트 하는 법을 소개 해보겠습니다. 1) 첫 번째 이용할 데이터셋은 https://github.com/billyrohh/dataset billyrohh/dataset Contribute to billyrohh/dataset development by creating an account on GitHub. github.com 링크에 나오는 데이터셋입니다. 위 링크에서 dataset3 을 다운받아주세요. 이제 스키마를 먼저 새로 만들겠습니다. SCHEMAS 부분에서 마우스 우측 클릭하고 create schema 를 눌러주시면 위 사진과 같은 창이 뜹니다. mydata 라는 이름의 스키마를 만듭니다. mydata 스키마에서 테이블에 마우스를 ..
우분투 18.04 에 MySQL , MySQL-workbench설치하기 Ubuntu 18.04 에 MySQL을 설치해보겠습니다. Chapter01. mysql 설치 우선, 버젼 확인을 하고 목록을 소프트웨어 목록을 최신으로 업데이트 하겠습니다. $ sudo apt-get install mysql-server 설치 명령어를 통해서 mysql-server를 설치합니다. 그리고 포트를 열어줘야 되는데요. 만약 iptable이 실행되고 있다면 외부에서 접속할 수 있도록 mysql 포트(3306)를 열어줘야 합니다. +) iptable 이란? """ iptables는 시스템 관리자가 리눅스 커널 방화벽(다른 넷필터 모듈로 구현됨)이 제공하는 테이블들과 그것을 저장하는 체인, 규칙들을 구성할 수 있게 해주는 사용자 공간 응용 프로그램이다. 각기 다른 커널 모듈과 프로그램들은 현재 다른..
파이썬 객체 내부 검사 - dir, type, id, __dict__ ,네임 스페이스 파이썬은 클래스와 인스턴스를 알아보기 위해 내장에서 제공하는 함수와 클래스가 있습니다. 1) 객체 내부 검사 dir 함수 - 클래스와 인스턴스 내부에서 사용할 수 있는 정보를 확인한다. id 함수- 클래스와 인스턴스의 레퍼런스를 정수로 보여준다. type 클래스- 클래스와 인스턴스가 누구에 의해 만들어졌는지에 대한 정보를 확인 a 라는 변수에 type 클래스를 입력하면 str 이라고 나옵니다. 보통 이걸 보면 'a 라는 변수는 class 가 str 이구나!' 라고만 생각하실 수 있는데요. 정확히 말하면 a 라는 변수는 RoBeRt 라는 리터럴이 할당되었고, str 이라는 클래스에 의해 만들어졌다. 그리고 a 라는 변수가 사용할 수 있는 메서드가 나옵니다. 저는 upper 라고 하는 메서드를 썼는데 결과는..