분류 전체보기

    프로그래머스 전화번호목록 (C++)

    1. 문제 설명2. 트러블슈팅c++에서 해쉬맵을 사용안한지 오래 되어, 관련해서 다음 게시물을 참고하였다.https://hanyeop.tistory.com/80 [C++] Map과 Hash Map(unordered_map) 차이 (STL)Map과 Hash Map(unordered_map) 차이 (STL) 맵과 해시맵은 key와 value를 pair 형태로 가진다는 점은 같으나 맵은 자동으로 정렬( key를 기준으로 정렬하며 오름차순으로 정렬)을 해주며 해시맵은 정렬하지 않hanyeop.tistory.comhttps://life-with-coding.tistory.com/305 [C++][STL] map 사용법 정리인트로 안녕하세요. 오늘은 C++ STL 연관 컨테이너 중 하나인 map에 대해 알려드리겠습..

    Practical Aspects of Deep learning (1주차) 정리

    *다음 내용은 Andrew ng의 Deep Learning Specialization 과정 중 일부 강좌를 정리한 강의 노트입니다. 틀린 내용이 있다면 말씀해주세요.  5개의 강좌중 두번째 강좌의 시작이다. 첫번째 강좌에서는 기본적으로 딥러닝을 구축하는 방법을 배웠다면. 이번 강좌에서는 구축한 딥러닝의 성능을 어떻게 끌어올릴 지에 대해 다룰 것이다. Train / Dev / Test sets 딥러닝 관련 경험이 풍부한 사람들 조차도, 한번의 시도만에 하이퍼 파라미터 (learning weight, layer의 개수, hidden unit의 개수, 활성화 함수 선택 등등..)를 정확하게 설정하는 것은 불가능에 가깝다. 따라서 실제로 머신러닝은 iterative process(반복적인 과정)이다. 따라서, ..

    프로그래머스 조이스틱 (C++)

    1. 문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/42860# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr그리디 문제 유형인데, 그리디 유형은 다른 유형처럼 어떠한 풀이법이 정해져있는 것이 아니어서, 더 어렵게 느껴진다. 처음에 문제를 풀었을 때 자꾸 반례가 발생해서 결국 다른 사람들의 풀이법을 참고하고 다시 풀었다.  2. 트러블 슈팅처음에 내가 짠 코드는 굉장히 복잡하고 긴데, 잘못 짠 부분은 다음과 같다.이 문제는 크게 두 가지를 고려해야 한다. (1) 방향키 위 아래 (2) 방향키..

    Deep Neural Networks (4주차) 정리

    *다음 내용은 Andrew ng의 Deep Learning Specialization 과정 중 일부 강좌를 정리한 강의 노트입니다. 틀린 내용이 있다면 말씀해주세요.  이번주차는 DNN에 대해 배우는데, 사실상 지금까지 배운 shallow neural network를 반복한 것이기 때문에 지금까지 배운 것의 반복이라고 보아도 무방하다. Deep L-layer Neural Network 이번 주차의 목표: 3주차동안 배운 아이디어를 묶어서 나만의 심층 신경망을 구현하는 것 logistic regression : very "shallow" model1 hideen layer = 2 layer NN (hidden layer, output layer) L ← 네트워크의 레이어 수를 나타낸다.n ← 특정 레이어의..

    Shallow Neural Network (3주차) 정리

    *다음 내용은 Andrew ng의 Deep Learning Specialization 과정 중 일부 강좌를 정리한 강의 노트입니다. 틀린 내용이 있다면 말씀해주세요.   Neural Network Representation윗첨자 대괄호 : 어떤 레이어에서 왔는지 명시적으로 나타낸다. a[0] = X (input layer)a[1] (hidden layer) → n * 1 행렬 형태=> layer을 의미하는 것은 위 첨자인 []이고, 한 layer에서 순서를 의미하는 것은 아래 첨자이다. a[2] → 실수 위 이미지에 있는 것을 2 layer NN이라고 한다. 왜냐하면 신경망에서 보통 레이어를 계산할 때 입력층은 계산하지 않기 때문이다. 그리고, hidden layer와 output layer에서는 연관된..

    Logistic Regression as a Neural Network (2주차) 정리

    *다음 내용은 Andrew ng의 Deep Learning Specialization 과정 중 일부 강좌를 정리한 강의 노트입니다. 틀린 내용이 있다면 말씀해주세요. (네트워크 문제로 자꾸 글이 날아가서 다소 짧습니다..) 신경망을 계산할 때, forward pass (순방향) 이 있고, backward pass (역방향) 전달이 있다. 이번주에는 왜 전파가 되는지, 왜 역방향 전파가 되는지에 대해 소개해보도록 한다. logistic regression을 통해 이를 설명할 예정이다. 이미 알고 있는 개념이라고 해도 새로운 아이디어를 몇가지 얻을 수 있을 것이다. Binary Classification  Notation (이 강의에서 사용할 몇 가지 표기법 정리) (x, y)x = x차원을 가진 특징 벡터..

    RNN,LSTM,GRU 개념 정리

    자연어처리와 같은 순서 데이터를 처리하기 위한 딥러닝 모델 구조인 RNN과,RNN의 단점을 개선한 버전인 LSTM과 GRU에 대해 살펴보도록 하겠다.  1. RNN1-1. RNN이란? RNN : Recurrent Neural Network의 약자로, Sequence data를 처리하기에 좋은 구조이다.여기서 Sequence data는 어떠한 순서를 가진 데이터를 의미한다.  (참고) Sequence data와 관련된 NLP task 활용 예시는 다음과 같다. 입력과 출력이 모두 sequence data이지만 길이가 다른 경우 : e.g. machine translation길이가 같은 경우 : e.g. name entity recognition입력과 출력 중 하나만 sequence data인 경우 : e...

    Introduction to Deep Learning (1주차) 정리

    *다음 내용은 Andrew ng의 Deep Learning Specialization 과정 중 일부 강좌를 정리한 강의 노트입니다. 틀린 내용이 있다면 말씀해주세요.  what is a neural network? 집의 크기가 X축이자 입력, 집의 가격을 Y축이자 출력이라고 하자. 그리고 뉴런은 그 사이 과정에 있는 선형 함수이다. 보통 활성화 함수로 ReLU (Rectified liner unit) 함수를 사용하는데, 이에 대해서는 추후에 더 자세히 살펴볼 것이다. 이러한 하나의 뉴런이 레고 블럭이라면 신경망은 이러한 레고 블럭의 집합(stacking)이라고 할 수 있다. 그 예시는 다음과 같다.  실제 상황에서는 집의 크기만 고려하는 것이 아니라 침대의 개수, 위치 등등의 정보를 이용해서 가격을 예측..