본문 바로가기

분류 전체보기61

Walk - Foo Fighters walk뮤비 Foo fighters 의 walk 란 곡이다. 뮤직비디오는 폴링 다운(falling down)이란 영화에 영감을 받아 만들었다고 한다. 한참 스트레스를 받고 있던 주인공이 더운날씨에 차가 막히자 차를 버리고 걸어서 집에 가는데, 그 사이 자신을 화나게 하는 것들을 다 때려 부수고 가는 영화였다. 사람도 예외는 아니었다. 재미있게 봤던 기억이 있고, 생각할 것도 남겨주는 영화였다. 그나저나 데이브 형님 저 역할 잘 어울리는 것 같다. 가사 A million miles away Your signal in the distance To whom it may concern I think I lost my way Getting good at starting over Every time that I r.. 2021. 3. 26.
Python에서 Glob으로 파일 혹은 폴더의 경로 불러오기 Python에서 Glob으로 파일과 폴더경로 불러오기¶ import glob 폴더 구조는 아래와 같다. data폴더와 파이썬 노트북이 하나 존재한다. data폴더엔 abc.tiff파일하나와 train,test 두개의 폴더가 있다. train,test폴더엔 tiff, json파일이 두개씩 존재한다. !ls ./ -R ./: data glob.ipynb ./data: abc.tiff testtrain ./data/test: ccc.json ccc.tiff ddd.json ddd.tiff ./data/train: aaa.json aaa.tiff bbb.json bbb.tiff 현재 폴더에 있는 폴더와 파일의 경로들을 받는다. glob.glob('./*') ['./glob.ipynb&#39.. 2021. 3. 26.
Pytorch Tensor(텐서) 만들기 Pytorch의 Tensor(텐서) 조작하기 1¶ import torch import numpy as np Tensor(텐서) 를 만드는 다양한 방법¶ empty¶주어진 크기의 아무값으로도 초기화되지 않은 텐서를 만든다. 텐서 성분의 값들은 쓰레기값들이다. torch.empty(4) tensor([ 1.6751e-37, -1.9427e-13, 1.6751e-37, -1.9427e-13]) torch.empty((4,5)) tensor([[0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00], [0.0000e+00, 0.0000e+00, 0.0000e+00, 1.4013e-45, 0.0000e+00], [0.0000e+00, 0.0000e+00, 0.0.. 2021. 3. 23.
Kaggle에서 Pytorch로 간단한 Mnist 숫자 분류기 만들기 Pytorch로 간단한 Mnist 숫자 분류기 만들기¶캐글에서 Mnist 숫자를 분류하는 연습을 여기서 할 수 있다. Kaggle에서 제공하는 데이터와 환경으로 간단하게 Mnist 숫자를 분류하는 연습을 해보자. import numpy as np import pandas as pd import matplotlib.pyplot as plt import torch import torch.nn as nn import torch.nn.functional as F from torch.utils.data import Dataset,DataLoader 사용할 경로와 epoch, 배치사이즈, learning rate를 한곳에서 쉽게 조정하여 사용할 수 있도록 하였다. class PATH: TRAIN = '/ka.. 2021. 3. 16.
Pytorch로 선형 회귀(Linear Regression) 구현하기 Pytorch로 선형회귀 구현하기¶ import numpy as np import matplotlib.pyplot as plt import torch import torch.nn as nn from torch.optim import SGD 데이터 생성¶y = 2*x + 10에서 약간의 오차를 준 데이터를 사용하였다. # y = x*2 + 10 data_x = np.random.randint(1,20,20) data_y = np.array([1*np.random.randn() + x*2 + 10 for x in data_x]) data_x = torch.FloatTensor(data_x).unsqueeze(dim=1) data_y = torch.FloatTensor(data_y).unsqueeze(dim=.. 2021. 3. 15.
C/C++서 양수 정수 나눗셈 결과의 올림 구하기 math.h의 ceil을 쓰면 간단하게 구할 수 있지만, 다르게도 한번 해보자. c = (a+b-1)/b; 확인해보자. #include int main(void){ int a[7] = {5,6,7,11,100,65,99}; int b[7] = {2,2,5,5,5,13,30}; for(int i=0;i 2021. 3. 1.
Scanf의 형식지정자에 대하여 scanf는 c언어를 배울 때 처음 배우는 입력 함수이다. 정수 하나를 입력받는다고 하자. int i; scanf("%d",&i); 위와 같을 꼴로 int 정수 하나를 입력받을 것이다. scanf에서 우리가 첫 파라메터로 입력한 값을 형식지정자라고 한다. 이 값을 잘 조정함으로 우리는 다양한 입력을 여러가지 방법으로 받을 수 있다. 예를들어 123456789 라는 입력이 있을 때 이 입력을 9자리의 정수가 아닌 3자리의 정수 3개로 받을 수 있다. #include int main(void){ int a,b,c; scanf("%3d%3d%3d",&a,&b,&c); printf("a:%d, b: %d, c: %d\n",a,b,c); } 이때 출력은 다음과 같다. > a:123, b: 456, c: 789 형.. 2021. 2. 26.
.py를 .ipynb으로, 또 그 반대로 ipynb-py-convert 를 사용하여 파이썬 스크립트를 노트북파일로 변환하고, 노트북 파일도 스크립트로 변환이 가능하다. 설치법 pip install ipynb-py-convert 사용법 - abc.py를 def.ipynb로 바꿀때 ipynb-py-convert abc.py def.ipynb - abc.ipynb를 def.py로 바꿀때 ipynb-py-convert abc.ipynb def.py 위처럼 입력하면 끝이다. 스크립트를 노트북으로 바꿀때 셀구분이 하고싶을것이다. # %% 로 셀구분이 가능하며, ''' 을 사용한 주석으로 마크다운을 적용할 수 있다. https://pypi.org/project/ipynb-py-convert/ 2020. 10. 17.
Python에서 c,c++ 코드 사용하기 python의 ctypes를 이용하면 c혹은 c++에서 작성한 코드를 사용가능하다. a.cpp 에서 작성한 단순 곱셈함수 mul을 python에서 사용해보자. //a.cpp #include extern "C"{ int mul(int a,int b){ return a*b; } } 위 파일을 공유라이브러리로 만들어 주어야한다. g++로 a.cpp를 liba.so로 만들어주자. g++ -shared -fPIC a.cpp -o liba.so liba.so 파일이 생성되었다. a.py에서 liba.so의 mul을 사용해보자. #a.py import ctypes a = ctypes.CDLL("./liba.so") mul = a.mul print(mul(13,43)) a.py를 실행시키면 559가 출력된다. 2020. 10. 4.
MFC frame 초기 스타일 지정하기 frame의 PreCreateWindow에서 스타일을 지정해주면 된다. BOOL CFrameWnd::PreCreateWindow(CREATESTRUCT& cs) 가 본체이며, 만약 CFrameWnd 를 상속하여 만든 frame이 CMainFrame라면 BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) 에서 cs.style을 건드려 주어야 한다. 만약, 프레임을 마우스로 크기조절되는것을 막고싶다면, WS_THICKFRAME 을 제거해주어야한다. 제거는 not, and연산으로 해준다. cs.style &= ~(WS_THICKFRAME); 로 할 수 있다. 만약 창에서 최소화, 최대화 박스도 같이 없애버리고싶다면 다음과같이 해주면 된다. cs.style &= ~(WS_.. 2019. 4. 21.