본문 바로가기

컴퓨터219

주성분 분석(PCA, Principal Component Analysis)의 개념 및 구현 주성분 분석(Principal Component Analysis, PCA) 은 데이터 집합 내에 존재하는 각 데이터의 차이를 가장 잘 나타내 주는 요소를 찾아 내는 방법이다. 그 구체적인 의미 및 원리, 그리고 이를 C++로 구현해 본다. 주성분 분석에 대한 개념을 위하여 그 의미를 알 수 있는 간단한 몇 가지 예제에 이어 수학적인 원리를 간략히 살펴 본 후, 그것에 대한 C++을 이용한 구현을 다룬다. 실제 C++ 코드는 후반부에 있으므로 그 부분만 필요할 경우 바로 건너 뛰어도 된다. 하지만 될 수 있으면 이 글 전체를 반복해서 읽기를 제안한다. 또한, 독자가 대학 1, 2학년 정도의 기본적인 선형 대수 내용은 알고 있다고 가정한다. '주성분'에 대한 개념에 대한 감을 잡기 위하여 다음과 같은 상황을.. 2018. 3. 20.
공유기를 통해 특정 컴퓨터로 접속하기 (port forwarding) 공유기를 설치했을 경우 외부에서 공유기에 연결된 컴퓨터 중 특정 컴퓨터로 접속하는 방법을 알아 본다. 터미널 접속의 경우에 해당하며 접속당하는 컴퓨터는 모두 CentOS 6.9 버전이다. 만약 다른 경우라면 각 경우에 대응하는 방식으로 해야 할 것이다. 전체적인 상황을 살펴 보자면 다음과 같다. 중요한 부분은 붉은색으로 표시한 1), 2), 그리고 v 부분이다. 기본적인 원리는 공유기에서 설정하는 외부포트:mac address 라고 볼 수 있다. 즉, 공유기에서 특정 외부 포트 번호를 특정 내부 IP로 할당(1번)을 하고, 특정 내부 IP를 특정 MAC ADDRESS로 할당(2번)을 하는 것이다. 그러면 외부에서 접속할 때 사용하는 포트 번호에 따라 그 포트에 할당된 내부 IP로 접속이 되는데 이 때 그.. 2018. 3. 5.
맥북에서 대/소문자 한/영 전환 맥북에서 한영 전환은 일반적으로 Command+Space 혹은 Ctrl+Space 로 한다. 이것은 System Preferences ==> Keyboard ==> Shortcuts 으로 찾아 가서 Input Sources 를 누르면 볼 수 있다. 그런데 2017년도 맥북 한국어 키보드의 경우에는 Caps Lock 키로도 한영 전환이 가능하다. 이 경우 만약 한/영 전환이 아니라 Caps Lock 켜고자 할 경우 저 한/영 키를 길게 누르면 된다. 그러면 저기에 녹색 불이 들어 오고 입력기가 미국 혹은 영국 국기로 바뀌면서 계속 대문자를 쓸 수 있게 된다. 만약 이러한 기본 방식을 변경하고자 할 경우엔 System Preferences ==> Keyboard ==> Input Sources 로 들어 가서.. 2018. 2. 27.
정규 표현식 사용 예제들 실제로 내가 사용했었던 정규 표현식들을 정리해 둔다. vi 와 파이썬에서 주로 사용했기 때문에 이 둘을 구분하여 정리해 둔다. 기본적인 내용은 책 등의 참고 자료를 이용하고, 이 곳은 실제로 사용했던 예를 살펴 보기 위한 것이다. 될 수 있으면 자세히 설명한다. 정규 표현식은 학습 곡선이 급격한 지수 그래프를 이루곤 하는데, 초반에는 너무 복잡해 보이는 것도 어느 정도 익숙해지면 무리 없이 따라갈 수 있다. 예제를 위한 예제가 아니라 실제 사용한 것들을 살펴 보며 익숙해짐과 동시에 그 유용성을 느꼈으면 하는 바램이다. vi/vim 에서 의 정규 표현식 :%s/\(^.\+\tSGM\t.\+$\)/#\1/g SGM 이 포함된 줄의 제일 처음에 # 를 입력한다. 즉, 주석 처리를 한다. 여기서 은 text f.. 2018. 2. 26.