분류 전체보기 461

[논문 리뷰] SRGAN - Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network

0. Abstract  더 깊고 더 빠른 CNN을 사용하여 빠르고 정확한 single image SR이 가능함에도 불구하고, 한 가지 큰 문제점이 있다.큰 upscaling factor에서 어떻게 미세한 텍스쳐 디테일을 복구할 것인가에 대해서다.최근 연구는 대부분 MSE(mean squared reconstruction error)를 최소화 하는데 초점을 맞추고 있다.그 결과는 PSNR(peak signal-to-noise, 높을 수록 좋음, MSE와의 반비례)를 높이지만, 세부 정보(high-frequency detail)가 부족하고, 더 높은 해상도에서 시각적으로 기대되는 충실도와 일치하지 않는다는 것이 불만족스럽다.즉, 해당 논문은 MSE, PSNR이 SR을 측정하는데 절대적으로 정확한 측정법이 아..

[논문 리뷰] VGGNET - very deep convolutional networks for large-scale image recognition

Abstract 우선 초록에서는 해당 논문이 convolution network depth가 대규모 이미지 인식에 있어서 얼만큼 영향을 끼치는지 조사했다고 설명합니다. 해당 연구팀은 기존의 CNN 모델에서 3 x 3 Conv Filter를 16~19 층을 쌓음으로써 상당한 성능 향상이 있었다고 합니다.. 이러한 발견은 이미지넷 챌린지 2014에서 localisation에서는 1등, classification에서는 2등을 기록하였다고 합니다. 또한 결과물이 다른 데이터셋에 대하여 일반화가 잘되어 최고의 결과를 내었다고 합니다. 1. Introdution 서론에서는 이미지넷과 같은 대규모 이미지 저장소와 GPU의 발전이 Convolutional network의 대규모 이미지, 비디오 인식을 성공시킨 역할이라..

버티컬 마우스 구매 후기 - STORMX VM3

어디서부터 말을 해야 하지 중간고사 기간에 빔 타고 가는 길에 길바닥에 어떤 아저씨가 자고 있었는데, 그거 보다가 담벼락에 부딪혔다.. 근데 세게 부딪힌 것도 아니고 진짜 콩 하고 부딪혔는데, 평소에 손목이 많이 약했었나 보다 당일에 손목 엄청 아프고, 다음날은 아예 손목을 못 쓸 정도로 아팠다...ㅠ 병원 가니까 건초염 증상이라길래 약 먹고 손목 쓰지 말랬는데, 으아 컴공이라 어쩔 수가 없이 손목을 써버렸다...ㅜㅜ 현재 상태는 손목을 못 쓸 정도로 아픈 건 아닌데, 그래도 많이 쓰면 아프다.. 특히 오른쪽 손목이 너무 .. 아무튼 그래서 마우스를 바꿨다. 버티컬 마우스가 도움이 된다길래 바꿨다. 뭐 살지 고민하다가 그냥 쿠팡에서 제일 많이 팔린 거 샀다. STORMX - VM3라는데, VM2도 되게 ..

나의 일상 2022.06.21

[Matplotlib - Python] Plotting with pandas and seaborn

Line Plots s = pd.Series(np.random.randn(10).cumsum(), index=np.arange(0, 100, 10)) s.plot() Series 데이터를 plot한 모습입니다. df = pd.DataFrame(np.random.randn(10, 4).cumsum(0), columns=['A', 'B', 'C', 'D'], index=np.arange(0, 100, 10)) df.plot() DataFrame을 그려넣은 모습입니다. Bar Plots fig, axes = plt.subplots(2, 1) data = pd.Series(np.random.rand(16), index=list('abcdefghijklmnop')) data.plot.bar(ax=axes[0], ..

[Matplotlib - Python] A Brief matplotlib API Primer

import matplotlib.pyplot as plt import numpy as np data = np.arange(10) data plt.plot(data) Figures and Subplots figure을 사용하여 matplotlib 객체를 넣을 수 있습니다. fig = plt.figure() ax1 = fig.add_subplot(2, 2, 1) ax2 = fig.add_subplot(2, 2, 2) ax3 = fig.add_subplot(2, 2, 3) fig add_subplot에서 해당 파라미터(n, x, y)의 의미는, n x n의 격자에서 x, y에 넣어라 라는 뜻입니다. ax3.plot(np.random.randn(50).cumsum(), 'k--') fig 3번째에 해당 그림을 ..

[Pandas - Python] Pivot Tables and Cross-Tabulation - pivot_table(), crosstab()

데이터는 다음과 같습니다. tips[:6] total_billtipsmokerdaytimesizetip_pct 016.991.01NoSunDinner20.059447 110.341.66NoSunDinner30.160542 221.013.50NoSunDinner30.166587 323.683.31NoSunDinner20.139780 424.593.61NoSunDinner40.146808 525.294.71NoSunDinner40.186240 이후 pivot_table을 day와 smoker에 대해 설정하고, 함수를 적용하면 tips.pivot_table(index=['day', 'smoker']) sizetiptip_pcttotal_bill daysmoker FriNo2.2500002.8125000.151..

[Pandas - Python] 지금까지의 예시 + 코드에 대한 설명

s = pd.Series(np.random.randn(6)) s[::2] = np.nan s 0 NaN 1 0.050009 2 NaN 3 0.852965 4 NaN 5 -0.023493 dtype: float64 랜덤으로 6개의 숫자를 생성한 후, s에 Series로 할당했고, 2배 간격으로 0, 2, 4의 row에 NaN을 넣었습니다. s.fillna(s.mean()) 0 0.293160 1 0.050009 2 0.293160 3 0.852965 4 0.293160 5 -0.023493 dtype: float64 s의 평균을 fillna를 통해 넣었습니다. 또 다른 예시를 봅시다. states = ['Ohio', 'New York', 'Vermont', 'Florida', 'Oregon', 'Nevad..

[Pandas - Python] Data Aggregation - agg() (데이터 종합)

df key1key2data1data2 0aone-0.2047081.393406 1atwo0.4789430.092908 2bone-0.5194390.281746 3btwo-0.5557300.769023 4aone1.9657811.246435 이때 key1을 기준으로 그룹화 한 뒤, data1에 해당하는 데이터를 연산할 수 있습니다. grouped = df.groupby('key1') grouped['data1'].quantile(0.9) key1 a 1.668413 b -0.523068 Name: data1, dtype: float64 grouped.describe() data1data2 countmeanstdmin25%50%75%maxcountmeanstdmin25%50%75%max key1 a3.00..

[Pandas - Python] GroupBy Mechanics - groupby() (그룹으로 묶기)

우선 데이터를 생성하겠습니다. df = pd.DataFrame({'key1' : ['a', 'a', 'b', 'b', 'a'], 'key2' : ['one', 'two', 'one', 'two', 'one'], 'data1' : np.random.randn(5), 'data2' : np.random.randn(5)}) df key1key2data1data2 0aone-0.2047081.393406 1atwo0.4789430.092908 2bone-0.5194390.281746 3btwo-0.5557300.769023 4aone1.9657811.246435 이때 data1열을 key1을 기준으로 그룹으로 묶겠습니다. grouped = df['data1'].groupby(df['key1']) grouped ..