janghjun / Backup-File

0 stars 0 forks source link

4주차 머신러닝 #2

Open janghjun opened 6 months ago

janghjun commented 6 months ago
          `import matplotlib.pyplot as plt

import numpy as np import pandas as pd from sklearn.model_selection import train_test_split from sklearn.preprocessing import PolynomialFeatures from sklearn.linear_model import LinearRegression from sklearn.preprocessing import StandardScaler from sklearn.linear_model import Ridge

df=pd.read_csv('http://bit.ly/perch_csv') perch_full=df.to_numpy()

print(np.shape(perch_full))

perch_weight=np.random.randint(5,1000,size=56) perch_weight=np.sort(perch_weight)#random해서 full, weight 순서가 안 맞음, 정렬시켜주기 이차식으로 해주려고 train_in,test_in,train_tar,test_tar = train_test_split(perch_full, perch_weight, random_state=42)

print(np.shape(train_in))

print(np.shape(train_tar))

poly = PolynomialFeatures(degree=5, include_bias=False)#include_bias=False == 결과값 1 없이 나옴 poly.fit(train_in) train_poly=poly.transform((train_in)) test_poly=poly.transform(test_in)

print(train_poly.shape)

lr=LinearRegression() lr.fit(train_poly,train_tar)

print(lr.score(train_poly, train_tar))

print(lr.score(test_poly, test_tar))

ss=StandardScaler() ss.fit(train_poly) train_scaled=ss.transform(train_poly) test_scaled=ss.transform(test_poly)

rg=Ridge(alpha=0.01) rg.fit(train_scaled, train_tar) print(rg.score(train_scaled, train_tar)) print(rg.score(test_scaled, test_tar)) print(rg.score(train_scaled, train_tar)-rg.score(test_scaled, test_tar))`

Originally posted by @janghjun in https://github.com/janghjun/Backup-File/issues/1#issuecomment-2022292463

janghjun commented 6 months ago

`import matplotlib.pyplot as plt import numpy as np

data_size=64 max_snr=13 ber=[]

for snr_db in range(12,max_snr): real_data = np.random.randint(0, 2, data_size) 2 - 1 imag_data = np.random.randint(0, 2, data_size) 2 - 1

qpsk_sym=(real_data+1jimag_data)/np.sqrt(2) ofdm_sym=np.fft.ifft(qpsk_sym)np.sqrt(data_size)

noise_size=10*(-snr_db/20) #평균 노이즈의 크기 noise_real = noise_size np.random.randn(data_size) noise_imag = noise_size np.random.randn(data_size) noise=(noise_real+1jnoise_imag)/np.sqrt(2)

rcv_signal=ofdm_sym+noise

rcv_ofdm_sym=np.fft.fft(rcv_signal)/np.sqrt(data_size)

real_sig_datact=(rcv_ofdm_sym.real,0)=01-1 imag_sig_datact=(rcv_ofdm_sym.real,0)=01-1`