일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- 머신러닝
- 파이썬
- object detection
- Ai
- 논문
- Paper Review
- 논문구현
- optimizer
- opencv
- Segmentation
- Self-supervised
- 코드구현
- 딥러닝
- ViT
- pytorch
- Python
- 알고리즘
- cnn
- 코딩테스트
- programmers
- 인공지능
- Computer Vision
- Convolution
- 논문리뷰
- transformer
- Semantic Segmentation
- 옵티마이저
- 논문 리뷰
- 파이토치
- 프로그래머스
- Today
- Total
목록분류 전체보기 (115)
Attention please
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c8lzW4/btrN4FmQ5Uo/ujewSkCtd42iCLleJLJIsk/img.png)
이번 글에서 알아볼 것은 scatter 입니다. 지난 글까지 알아보았던 plot은 점이 점을 따라가는 형태였지만 scatter은 점들을 연결하지 않을 때 사용하는 함수입니다. 분포를 시각화할 때 많이 사용됩니다. numpy의 uniform을 이용하여 1000x2 행렬을 생성한 후 scatter을 이용하여 시각화를 해보겠습니다. fig = plt.figure(figsize = (4,4), dpi = 100) ax = fig.subplots() data = np.random.uniform(size = (1000, 2)) data[:10] ax.scatter(data[:,0], data[:,1], s=5) 먼저 생성한 데이터의 10번째 행까지 출력해본 결과입니다. 다음과 같이 0 ~ 1 까지의 균등분포로 추출..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9REAx/btrN5jjcHuF/1E7knUJuWKbgSS5YulvKi1/img.png)
이번 글에서는 데이터를 불러다가 plot을 그려보겠습니다. 우선 준비해둔 txt파일을 불러보겠습니다. 데이터를 불러오기 위해 pandas라이브러리를 사용합니다. fig = plt.figure(figsize = (4,4), dpi = 100) ax = fig.subplots() data = pd.read_table('data_1.txt', sep=\t) data X = data['X'] Y = data['Y'] ax.plot(X, Y) 우선 불러온 데이터를 실행하였을 때 결과를 보면 위와 같은 결과가 나옵니다. 다음으로 위 데이터에 대해 시각화를 하게 되면 다음과 같은 결과가 나오게 됩니다. 위와 같이 불러온 데이터를 간단하게 plot으로 시각화를 할 수 있습니다. 이번에는 총 3개의 열에 대해 변화에 대..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yDUb4/btrN2ufShVE/fVG2g2iKLXWTkWE2BRi18k/img.png)
스택 스택이란 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 구조로 되어있는 자료구조입니다. 즉 앞에서 배운 연결리스트와 개념이 비슷합니다. 후입 선출 만약 [1,2,3]이 있었고 4를 추가로 넣었다면 결과는 [1,2,3,4]가 될 것입니다. 이때 데이터를 출력할 때 가장 최근에 넣었던 4가 출력이 됨을 의미합니다. 구조 스택의 구조는 총 3가지로 분류할 수 있습니다. 탑 스택의 가장 위에 있는 원소 가장 최근에 들어온 원소 바텀 스택의 가장 아래에 있는 원소 가장 예전에 들어온 원소 스택의 크기 스택에 들어가있는 데이터의 개수 푸시(push) 푸쉬는 자료를 넣는 것을 의미합니다. 즉 스택에서 기존의 탑 위에 새로운 원소를 추가합니다. 팝(pop) 자료를 삽입하는 푸시와는 반대로 팝은 넣어둔 자료를 꺼..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kEwXV/btrN2vqxUNB/sYsiA9K4NKpYxcutBcxhs1/img.png)
이 카테고리에서 다룰 것은 RNN입니다. 자연어를 처리하기 위해 어떤 식으로 텍스트들을 전처리를 하며, 어떻게 층이 구성되는지 알아보겠습니다. 하지만 이번 글에서 설명할 시소러스는 머신러닝과는 거리가 멀기도 하니, 시소러스에 대해서는 머신러닝이 왜 필요한 것인지 아는 정도로 끝내도록 하겠습니다. 시소러스 시소러스란 단어 사이의 상위와 하위 관계를 트리로 체계화 한것을 의미합니다. 예를 들어 car의 하위관계에 속하는 단어는 SUV가 있을 것이며, 상위관계에 속하는 단어에는 motor vehicle이 있을 것입니다. 다음과 같이 단어들의 관계를 트리구조로 나타냅니다. 시소러스의 문제점 하지만 위 시소러스에게는 큰 문제점이 있습니다. 일단 시소러스는 머신러닝과 같은 기법으로 만드는 것이 아닙니다. 모두 사람..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/tudg6/btrNTeWJoJq/BQq6Be0hcwfDGyUwkMGbak/img.png)
지난 글에서는 plot으로 그래프를 그려보았는데 따로 곡선에 대해 자세하게 다루지 않고 거의 직선그래프에 대해서만 다루었습니다. 이번 글에서는 곡선 그래프에 대해 자세히 알아보도록 하겠습니다. sin 이번에는 sin그래프를 그려보도록 하겠습니다. matplotlib 패키지는 numpy객체를 지원하는데 왜 numpy를 사용하는지 sin그래프를 그리면서 알아보도록 하겠습니다. import math fig=plt.figure(figsize=(6,6), dpi=100) (ax1, ax2)=fig.subplots(2,1) ## without numpy T=range(100) X=[(2*math.pi*t)/len(T) for t in T] Y=[math.sin(value) for value in X] ax1.plo..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dXA4W0/btrNOTGx0aY/Rs0s74kszlv1mKnKKEd0c0/img.png)
제 블로그에서 데이터를 시각화하기 위해서 다루는 언어는 python이며, 사용하는 패키지는 matplotlib입니다. 이번 글에서는 시각화를 하기 위한 가장 밑작업인 figure를 만들고 axes를 만들어 그래프를 그리는 것까지 설명하겠습니다. figure 먼저 matplotlib 패키지를 불러오겠습니다. import matplotlib.pyplot as plt 이제 그래프를 그려보겠습니다. matplotlib으로 그림을 그릴 때 특히 선그래프일 경우 x좌표와 y좌표를 따로 입력하여 그래프를 그립니다. 예를 들어 x = [1,2,4,3], y = [5,6,7,8] 로 설정한 후 그래프를 그리게 되면 좌표가 (1,5), (2,6), (4,7), (3,8) 네점으로 연결하여 그래프를 그립니다. 그럼 직접 저..