전체 글 43

캡슐화

캡슐화는 객체지향프로그래밍에서 중요한 개념이다.말 그대로 중요한 정보는 캡슐에 넣어놓는다는 뜻이다.캡슐에 넣는 이유는 코드 유지보수가 쉽기 때문이다. (객체지향을 쓰는 이유이기도 함) 예시 코드는 다음과 같다.class Cat{ public: std::string getSpecies(void){ return species; } private: std::string species; // 고양이 종 이름} 캡슐화는 다른 사람들의 코드를 많이 보고, 많이 해보아야 아는 경험의 영역이다.많이많이 경험해보자.

c++ 2025.04.22

CNN

사진에서 고양이를 판별할 때,2차원 사진을 1차원으로 바꿔야했다.데이터가 일자가 되었기 때문에 공간적인 관점이 사라진다.하지만 사람은 공간적으로 물체를 인식한다.그래서, AI도 공간적으로 인식할 수 있게 하려고 CNN을 구상해냈다. CNN의 주요 아이디어는 사진에서 선, 모서리를 우선 인식하고, 입과 눈을 인식하고, 마지막으로 전체적인 인상을 보는 것이다.사람은 작은 영역의 특징을 인식하는 "수용장"이라는 시각 처리 방식을 가지고 있다.수용장을 이용해서 점진적으로 크게 인식하는 사람의 방식을 모사한게 CNN이다.위와 같이 "필터"가 있다.한 사진에 저 작은 필터들을 대조해본 후에 필터패턴이랑 비슷한 부분을 추출한다.그 부분이 특징부분이 된다.필터에는 저런 것도 있고, 뭉게지는 것처럼 사진을 바꿀 수 있는..

딥러닝 2025.04.18