본문 바로가기

전체 글

(54)
[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..
[React] const {} = props 변수 선언 const ListTable = (props)=>{ const {classes} = props } 중략 부분에서 classes.root, classes.table, 같이 classes를 쓰고 있었는데 자세히 이해하지 않고 const {classes} = props를 지우고 classes를 props로 대체했었다. 근데 작동 안하길래 const {classes} = props이 뭔지를 살펴 보았다. const {classes} = props 는 props.classes 가 있을경우 자동으로 const classes = props.classes를 대체해준다. 결국 classes.root, classes.table 은 props.classes.root, props.classes.table 과 같은거다. 우선 ..
[React] route와 saga를 이용한 url 이동 방법 근데 이제 history를 곁들인... 기존에는 화면 이동을 할 때 해당 요소에 link를 걸거나 onclick을 이용한다던가 했던거 같은데 react에서는 component가 여로곳에서 재사용되기 때문에 해당 요소에 주소를 걸어 link나 onclick을 사용한다면 뭔가 깔끔하지 않은거 같아서 다른 방법을 찾고 있었다. 내 기준 action.payload와 saga를 이용해서 관리가 된다 그리고 react-route가 사용됐다. 암튼 그래서 saga에서 원하는 페이지별로 맞는 데이터를 뿌려주므로 이곳에서 link 처리도 하고 싶어서 찾아봤다. 그랬더니 나왔다. 개꿀 제목은 route와 saga를 이용한 url 이동 방법으로 하겠다. 근데 이제 history를 곁들인 saga에서 라우터속에 history를 넣고 이를 이용해 페이지를 이동하는 ..