본문 바로가기

분류 전체보기

(56)
[Pycharm] 쥬피터 노트북 사용하기 파이참에서 Jupyter Notebook을 사용하기 위해선 Anaconda를 설치해야한다. 아래 링크를 참고하자. https://nicola-ml.tistory.com/38 파이참에 ipynb를 올리면 상단에서 Jupyter 노트북 서버를 구성 할 수 있다. 로컬에서 구동 할거라면 파이참 local Terminal에서 jupyter notebook을 입력해주면 Jupyter 서버 구성 정보가 나온다. 아래 2개의 token이 포함된 url 중에 1개를 골라 쓰면된다. 외부에 쥬피터 서버 사용 있을 경우 서버 terminal에서 jupyter notebook를 사용하거나 jupyter notebook list 를 사용해서 token url 정보를 찾아준다. terminal 키기 귀찮으면 !jupyter n..
[Pycharm] ssh interpreter 사용해서 서버 연결하기 + (python interpreter 위치 찾는법) 1. 우측 하단에서 add Interpreter를 누른다. 2. 원하는 Interpreter를 선택한다. 여기선 SSH Interpreter를 통해 서버에 연결 할거다. 3. 서버 정보를 입력해준다. 잘모르겠으면 그냥 이것저것 넣어본다. Pem key를 이용하므로 Key pair를 사용한다. 4. 서버 관련 정보를 다 입력하고 Test Connection을 눌러보자 5. 이제 서버랑 연결됐다. 서버에서 interpreter를 가져오자. (next를 누르다보면 interpreter창이 나온다) 5-1) 빨간 동그라미 부분이 코드를 실행 할 때 사용할 interpreter다. 올바를 위치를 찾아서 알맞은 버전의 Interpreter를 선택해주자. 본인은 python3.8로 선택을 했다. (몇개 없으면 다해보..
[3주차 부캠]pytorch 필수과제 1 index_select() index_select(tensor, 차원, 뽑을거) >> 차원 : 기준이 되는 차원 (0이면 y 기준 1이면 x기준) / 뽑을거 : 뽑을 index들 dim 파라미터를 0,1 중에 어떤걸 선택하느냐에 따라서 아래 그림에서 파랑, 빨강이 같이 뽑을 방향이 결정된다.
2주차 강의 정리 월 - 딥러닝 기본 (용어 설명 / 뉴럴 네트워크 - MLP) 화 - 최적화 (Optimization) / 도메인 특강(NLP / CV) / 마스터 클래스 (데이터 시각화) 수 - CNN / github 특강 (버전 관리 > commit, push, pull ... ) 목 - RNN / github 특강 (협업 관리 > 브랜치, merge) 금 - Generative Model (조퇴 - 아직 학습하지 못함) Optimization: ======================== Sgd > gradient 이용 W_t+1 N을 정하기 힘듬 ======================== Momentum > SGD에서 ηg_t대신 momentum(관성)이 적용된 gradient값을 빼줌 a_(t+1) 조흔 생각..
[부스트캠프] (1주차) 필수 과제 1~5 관련 정리 1주차의 과제에선 문자열을 다루었다. 필수과제에선 전체적으로 .join() 과 split() 위주의 사용법을 익힐 수 있었다. 과제 하나가 구현은 어렵지 않았으나 입출력 형식이 명확하지 않아서 의도치 않게 테스트 환경에서 디버깅을 하는 법을 익혔다. 출제자 의도와는 달랐지만 split 대신 removeall(직접구현)와 정규표현식(re라이브러리)를 이용했다. 그러면서 그동안 제대로 이해 못했던 lambda에 대해 알아보게 됐다. 오히려 좋아 join 정리 : 파이썬 list에서 removeall 구현: lambda 및 관련 함수: 좌우 공백을 없애주는 strip() 함수와 비슷한 함수: zip과 딕셔너리: (애용하지만 막상 쓰려하면 항상 기억이 잘안난다) 딕셔너리에서 value로 key에 접근하는 방법:..
[프로그래머스] 베스트앨범 python/파이썬 이 문제의 핵심은 해쉬의 정렬에 있다. 파이썬의 Dictionary는 key값으로 해쉬를 이용하기 때문에 마치 주머니에 정보를 담듯이 순서가 없다고 한다. 그런데 정렬을 해야되는 문제가 나와서 처음엔 당황을 했다. 찾아보니 딕셔너리를 정렬하여 저장하는 방법은 나오지 않았지만 딕셔너리의 key, value 중 하나를 기준으로 정렬하여 추출하는것이 가능했다. 처음 접근: Dict은 정렬이 불가하다 생각했기에 max1, max2 키를 추가로 만들어 정보를 담을 play[]를 순회하며 비교하여 정보를 담으려했다. 또 정답 출력시 필요한 장르의 총 재생횟수를 위해 cnt 키도 추가했다. 이 또한 구현이 가능할거 같았지만 Dict에 중복되는 정보가 담기고 구현이 복잡해지는거 같아 정렬이 가능하지 찾아보았다. Dic..
[프로그래머스] 전화번호 목록 python/파이썬 (해시 사용) 해시를 이용한 코드 phone_book을 정렬해준다. i번째가 i+1, i+2...의 접두사가 될 순 있지만 i-1의 접두사가 될 순 없다. 따라서 우리는 i, i+1만 비교해서 i가 i+1의 접두사인지 확인해주면된다. i가 접두사이기 위해선 i+1보다 길면 확인 할 필요가 없다. => continue i가 i+1보다 작을 경우 해당 번호(phone_book[i])를 키값으로 dictionary에 초기화 값을 넣어준다. i가 i+1의 접두사인지 확인하기 위해 i+1을 앞부터 len(i) 만큼 잘라 일치하는지 확인해준다. (in을 이용해 dic에 값이 있는지 확인한다.) 사실 startwith을 이용하거나 단순히 문자열을 자르고 같은지 비교하는게 더 편한거 같고 가장 빠르게 생각이 났다. 하지만 해시를 이..
[프로그래머스] 완주하지 못한 선수 python/파이썬 (4가지 솔루션) 첫번째 솔루션 배열 정렬 할 수 있다는 특성을 이용했다. participant과 completion 배열을 정렬 할 경우 완주하지 못한 참가자를 제외하면 completion과 일치해야한다는 점을 이용했다. 완주하지 못한 선수가 1명 이상이더라도 위의 개념을 이용해서 해결 할 수 있다. python 내부 함수 sort 정렬 과정에서 O(N log N) 반복문 O(N) def solution(participant, completion): participant.sort() completion.sort() for i in range(len(completion)): if participant[i] != completion[i]: return participant[i] return participant[len(pa..