728x90

1.  이미지 타입, 크기 확인하기

import cv2
image_path = "./data/cat.png"

# image read 
image = cv2.imread(image_path)

# image 타입 
image_type = type(image)
print("이미지 타입 >> " , image_type)

# 이미지 크기 확인 
image_height, image_width, image_channel = image.shape
print(image_height, image_width, image_channel)

# 이미지 타입 >>  <class 'numpy.ndarray'>
# 162 310 3

 

2. 이미지 리사이징

import cv2
import matplotlib.pyplot as plt

image_path = "./data/cat.png"

image = cv2.imread(image_path)

image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)  # cv2로 불러오면  BGR을 RGB로 바꿔줘야함
# https://itcreator.tistory.com/141 에 적어둠

# 이미지 크기 조절 
image_resize = cv2.resize(image, (244,244))

# 이미지 크기 확인 
image_height_, image_width_, _ = image_resize.shape


# 원본 이미지 
plt.imshow(image)
plt.show()

 

# 리사이즈 이미지 
print(image_height_, image_width_)
# 244 244

plt.imshow(image_resize)
plt.show()

# 저장하기

import cv2
image_resize = cv2.cvtColor(image_resize, cv2.COLOR_BGR2RGB)  
cv2.imwrite("./data/resize_image.png", image_resize)  # cv2.imwrite로 저장하기

# True라고 뜨면 저장된거

 

3. 이미지 자르기(슬라이싱)

import cv2
import matplotlib.pyplot as plt

image_path = "./data/cat.png"
image = cv2.imread(image_path)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

image_cropped = image[10:,:200]   #  [행시작:행끝, 열시작:열끝]

plt.imshow(image)
plt.show()

 

plt.imshow(image_cropped)
plt.show()

 

 

3-1. 이미지자르기(좌표)

import cv2
import matplotlib.pyplot as plt

image_path = "./data/cat.png"
image = cv2.imread(image_path)
image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)


x1, y1 = 50, 50 # 좌측 상단 모서리 좌표 
x2, y2 = 150,150 # 우측 하단 모서리 좌표 

cropped_image_test = image[y1:y2, x1:x2]   # y가 먼저인 이유는 좌표평면에서 행렬의 행은 y값임
plt.imshow(cropped_image_test)
plt.show()

 

 

 

 

 

 

2. 변환하기

3. 리사이즈

4. 크롭  (슬라이싱,좌표)

 

728x90
728x90

1.  이미지 불러오기 (png파일)

# !pip install opencv-python==4.5.5.64
import cv2
from matplotlib import pyplot as plt 


img = cv2.imread("./data/cat.png")    # cv2 라이브러리의 imread() 함수로 불러옴

# 색상의 문제 발생 -> BGR -> RGB 
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

plt.imshow(img)
plt.show()

2. 이미지 저장하기(.npy)

넘파이를 이용하여 배열로 저장하기

.npy 파일로 저장하는 방법

import numpy as np
np.save("./data/image.npy", img)  #  현재위치에 있는 data 폴더에 image.npy로 이미지만들기


# 만약에 해당폴더가 없으면 폴더생성하는 파이썬 코드
import os

def createDirectory(directory):
    try:
        if not os.path.exists(directory):
            os.makedirs(directory)
    except OSError:
        print("Error: Failed to create the directory.")

2-1. 이미지 저장하기(PIL)

PIL은 간단한 이미지 처리와 변환 작업에 사용하기 좋음 / 컴퓨터 비전 작업에서는 OpenCV를 쓰는게 맞음

#!pip install Pillow
import numpy as np
from PIL import Image

# 이미지 불러오기 
img = Image.open("./data/cat.png").convert('L') # 그레이 스케일 변환
print(img)

img_array = np.array(img)

np.save("./data/pil_image.npy", img_array)  # .npy로 저장
img_array1 = np.load("./data/pil_image.npy")  # .npy 불러오기

# 다시 PIL 이미지로 변환 
img = Image.fromarray(np.uint8(img_array1))    # pil의 Image라이브러리 fromarray()로 변환
img.save("./data/image_numpy.png")            # pil로 png로 변환       


org_size = os.path.getsize("./data/cat.png")
np_save_size = os.path.getsize("./data/pil_image.npy")
pil_save_size = os.path.getsize("./data/image_numpy.png")

# 용량차이 확인하기 
print(org_size, "bytes")
print(np_save_size, "bytes")
print(pil_save_size, "bytes")


# 원본 : 6468 bytes
# .npy로 저장 : 50348 bytes   
# PIL를 활용하여 png로 저장 26808 bytes

 

3. 이미지 불러오기 (.npy)

img_data = np.load("./data/image.npy")  # 넘파이의 load()로 불러옴

plt.imshow(img_data)
plt.show()

 

 

728x90
728x90

 

728x90
728x90

1. 순서가 없는 범주형 데이터

import numpy as np 
from sklearn.preprocessing import LabelBinarizer, MultiLabelBinarizer

feature = np.array((['가나다라'],
                    ['가나다라'],
                    ['아바하자'],
                    ['카나다사']))

print(feature)

# 원-핫 인코더 생성
one_hot = LabelBinarizer()
one_hot.fit_transform(feature) # 특성을 원-핫 인코딩 변환 
# 특성 클래스 확인 
print(one_hot.classes_)

"""
[['가나다라']
 ['가나다라']
 ['아바하자']
 ['카나다사']]
['가나다라' '아바하자' '카나다사']
"""

 

2.  다중 클래스 특성에 대한 처리

multiclass_feature = [('가나다라마','아자바하나'),
                     ('자다가나라','자다나타하'),
                     ('가나다라마','아자바하나'),
                     ('아마자나가','아카나다하'),
                     ('가나다라마','아자바하나'),
                     ]
one_hot_mult = MultiLabelBinarizer()
one_hot_mult.fit_transform(multiclass_feature)
print(one_hot_mult.classes_)

# ['가나다라마' '아마자나가' '아자바하나' '아카나다하' '자다가나라' '자다나타하']

 

3. 문자 타깃 데이터 원-핫 인코딩

from sklearn.preprocessing import OneHotEncoder

str_feature = ([['안녕', 1],
                ['저녁', 2],
                ['안녕', 1],
                ['점심', 3],
               ])

one_hot_encoder = OneHotEncoder(sparse=False)

# One hot encoder -> 입력 특성 배열을 모두 범주형
one_hot_encoder.fit_transform(str_feature)
print(one_hot_encoder.categories_)

# [array(['안녕', '저녁', '점심'], dtype=object), array([1, 2, 3], dtype=object)]

4. 순서가 있는 범주형 특성 인코딩

- 순서가 있는 클래스는 순서 개념을 가진 수치값으로 변환 
- 딕셔너리 사용해서 -> 특성 

import pandas as pd 
# 특성 데이터 생성
dataframe = pd.DataFrame({
    'Score' : ["Low", "Low", "Medium", "Medium", "High"]
})

print(dataframe)

"""
    Score
0     Low
1     Low
2  Medium
3  Medium
4    High
"""


# 매핑 딕셔너리 생성
scale_mapper = {
    "Low" : 1,
    "Medium" : 2,
    "High" : 3
}

print(scale_mapper)
# {'Low': 1, 'Medium': 2, 'High': 3}

data = dataframe["Score"].replace(scale_mapper)
print(data)
"""
0    1
1    1
2    2
3    2
4    3
Name: Score, dtype: int64
"""

4-2. 순서가 있는 범주형 특성 인코딩

from sklearn.preprocessing import OrdinalEncoder

feature_array = np.array((['Low', 10],
                    ['High', 40],
                    ['Medium',3],))

ordinal_encoder = OrdinalEncoder() 
ordinal_encoder.fit_transform(feature_array)
print(ordinal_encoder.categories_)
# [array(['High', 'Low', 'Medium'], dtype='<U21'), array(['10', '3', '40'], dtype='<U21')]

4-3. 순서가 있는 범주형 특성 인코딩

- 특성 딕셔너리 인코딩

from sklearn.feature_extraction import DictVectorizer
# 딕셔너리 생성 
data_dict =[{"Red" : 2 , "Blue" : 4},
            {"Red" : 4 , "Blue" : 3},
            {"Red" : 1 , "Yellow" : 2 },
            {"Red" : 1 , "Yellow" : 2}]


dictVectorizer = DictVectorizer(sparse=False)

feature_dict = dictVectorizer.fit_transform(data_dict)
print(feature_dict)

feature_dict_name = dictVectorizer.get_feature_names()
print(feature_dict_name)

dict_data = pd.DataFrame(feature_dict,  columns=feature_dict_name)
print(dict_data)


"""
[[4. 2. 0.]
 [3. 4. 0.]
 [0. 1. 2.]
 [0. 1. 2.]]
['Blue', 'Red', 'Yellow']
   Blue  Red  Yellow
0   4.0  2.0     0.0
1   3.0  4.0     0.0
2   0.0  1.0     2.0
3   0.0  1.0     2.0
"""

 

 


범주형 데이터 - 누락된 클래스값 대처하기 1

- knn으로 주변 그룹을 활용하여 nan의 값 예측함

from sklearn.neighbors import KNeighborsClassifier
x = np.array([[0, 2.10, 1.48],
             [1,1.18,1.33],
             [0,1.22,1.27],
             [1, -0.20, -1.15]])

x_with_nan = np.array([[np.nan, 0.87, 1.33], [np.nan, -0.67, -0.22]]) # 일부러 nan 생성

clf = KNeighborsClassifier(3, weights='distance')

print(x[:,1:])
print(x[:,0])

"""
[[  nan  0.87  1.33]
 [  nan -0.67 -0.22]]
[[ 2.1   1.48]
 [ 1.18  1.33]
 [ 1.22  1.27]
 [-0.2  -1.15]]
[0. 1. 0. 1.]
"""
train_model = clf.fit(x[:,1:], x[:,0])
imputer_values = train_model.predict(x_with_nan[:,1:]) # 누락된 값의 클래스 예측 

x_with_imputer = np.hstack((imputer_values.reshape(-1,1), x_with_nan[:,1:]))
data = np.vstack((x_with_imputer, x)) # 두 특성 행렬을 연결 
print(data)
"""
[[ 0.    0.87  1.33]
 [ 1.   -0.67 -0.22]
 [ 0.    2.1   1.48]
 [ 1.    1.18  1.33]
 [ 0.    1.22  1.27]
 [ 1.   -0.2  -1.15]]
 """

 

근처의 값을 비교해서 주변 그룹에 많이 있는 라벨을 따라감 

 

 

범주형 데이터 - 누락된 클래스값 대처하기 2

- 누락된 값을 특성에서 가장 자주 등장하는 값으로 채우기

from sklearn.impute import SimpleImputer
x_complete = np.vstack((x_with_nan, x))
print("전")
print(x_complete)

impute = SimpleImputer(strategy='most_frequent')
data_impute = impute.fit_transform(x_complete)
print("후")
print(data_impute)
"""
전
[[  nan  0.87  1.33]
 [  nan -0.67 -0.22]
 [ 0.    2.1   1.48]
 [ 1.    1.18  1.33]
 [ 0.    1.22  1.27]
 [ 1.   -0.2  -1.15]]
후
[[ 0.    0.87  1.33]
 [ 0.   -0.67 -0.22]
 [ 0.    2.1   1.48]
 [ 1.    1.18  1.33]
 [ 0.    1.22  1.27]
 [ 1.   -0.2  -1.15]]
 """
728x90
728x90

PCA 클래스: Scikit-learn의 decomposition 모듈에서 제공되는 클래스 중 하나입니다. PCA는 데이터셋의 차원을 감소시키는 기술로, 데이터셋에서 가장 중요한 특성만 추출하여 새로운 차원 축으로 변환합니다. 이를 통해 데이터셋의 노이즈(noise)를 제거하고, 더욱 빠르고 효율적인 학습이 가능해집니다.

n_components: PCA 클래스의 인자 중 하나로, 추출할 주성분(principal component)의 수를 지정합니다. 여기서는 99%의 분산(variance)을 유지하도록 설정되어 있습니다. 이는 데이터셋에서 99%의 정보가 유지되도록 차원을 축소하는 것을 의미합니다.

whiten: PCA 클래스의 인자 중 하나로, True로 설정할 경우 PCA의 결과로 나오는 주성분들이 서로 독립적인 값이 되도록 백색화(whitening)를 수행합니다. 백색화를 하면 각 주성분의 분산이 1이 되고, 상관 관계가 없는 성분들로 구성된 새로운 특성 공간이 만들어집니다.

fit_transform(): PCA 클래스에는 fit()과 transform() 메서드가 있습니다. fit() 메서드는 PCA 모델을 학습하고, transform() 메서드는 학습된 모델을 사용하여 데이터를 변환합니다. fit_transform() 메서드는 이 두 단계를 한 번에 수행합니다.

위의 같이 PCA이용하면 99%의 분산을 유지하도록 새로운 특성(feature) 공간으로 변환하고 있습니다. 결과적으로, 원본 데이터셋의 특성 개수는 features.shape[1]으로 확인할 수 있고, PCA를 수행하여 감소된 특성 개수는 features_pca.shape[1]으로 확인할 수 있습니다. 이렇게 차원 축소를 수행하면, 모델의 학습 시간을 단축시키고, 과적합(overfitting)을 방지할 수 있습니다.

 

 

from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn import datasets

digits = datasets.load_digits() # 8x8 크기의 손글씨 숫자 데이터 로드 
feature = StandardScaler().fit_transform(digits.data) # 특성 행렬을 표준화 처리 

print(feature)
 [[ 0.         -0.33501649 -0.04308102 ... -1.14664746 -0.5056698
  -0.19600752]
 [ 0.         -0.33501649 -1.09493684 ...  0.54856067 -0.5056698
  -0.19600752]
 [ 0.         -0.33501649 -1.09493684 ...  1.56568555  1.6951369
  -0.19600752]
 ...
 [ 0.         -0.33501649 -0.88456568 ... -0.12952258 -0.5056698
  -0.19600752]
 [ 0.         -0.33501649 -0.67419451 ...  0.8876023  -0.5056698
  -0.19600752]
 [ 0.         -0.33501649  1.00877481 ...  0.8876023  -0.26113572
  -0.19600752]]

pca = PCA(n_components=0.99, whiten=True)  # 99% 분산을 유지하도록 PCA객체 생성 / whiten=True 평균을 0, 표준편차를 1로변경
features_pca = pca.fit_transform(feature) # PCA 수행

print("원본 특성 개수 >> " , feature.shape[1])
print("줄어든 특성 개수 >> " , features_pca.shape[1])

# 원본 특성 개수 >>  64
# 줄어든 특성 개수 >>  54

1. StandardScaler() 
 >> Scikit-learn의 전처리(preprocessing) 모듈에서 제공되는 클래스 중 하나입니다. 이 클래스는 데이터를 평균이 0, 분산이 1인 가우시안 정규 분포(standard normal distribution)로 변환합니다.

2. digits.data : digits 데이터셋에서 숫자 이미지의 각 픽셀 값을 포함하는 배열 

3. fit_transform() 메서드 
 >> StandardScaler 클래스에는 데이터를 변환하는 두 가지 단계가 있습니다. 첫째, 모델을 학습(fit)하고, 둘째, 학습된 모델을 사용하여 데이터를 변환(transform)합니다. fit_transform() 메서드는 이 두 단계를 한 번에 수행합니다. 즉, 데이터를 표준화(normalize)하고, 변환된 값을 반환합니다.
 
따라서 위의 코드는 digits 데이터셋의 특성을 가우시안 정규 분포로 변환한 후, 변환된 값을 featuress 변수에 할당 이렇게 정규화를 수행하면, 모델이 데이터를 더 잘 이해하고, 모델의 예측 성능을 향상 시킬 수 있습니다.

 

 

 

 


 

 

 

 

결과값 비교

 

1. 데이터불러오기

from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score

digits = load_digits()

# 진짜 차이가 있는지 체크 하기 위해서 -> 정규화 하지 않은 데이터로 분류 모델 훈련
print(len(digits.data))   
print(len(digits.target))
x_train, x_test, y_train, y_test = train_test_split(digits.data, digits.target , random_state=777)

print(len(x_train), len(x_test))
print(len(y_train), len(y_test))


"""
8 : 2 
2 -> 1 : 1 
8 : 1 : 1


1. 폴더 생성 (이미지 100개)
2. 폴더 읽고 -> train val test 나눠서 폴더 생성해서 거기에 이미지 저장
"""

# 1797
# 1797
# 1347 450
# 1347 450​

 

2. 모델불러오기

model = LogisticRegression(max_iter=10000)
model.fit(x_train, y_train)
y_pred = model.predict(x_test)

no_standardScaler_acc_score = accuracy_score(y_test, y_pred) # 정답지 예측치
print(no_standardScaler_acc_score)

# 0.9533333333333334

 

3. StandardScaler 적용후 -> ACC

from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()
x_train_norm = scaler.fit_transform(x_train)
x_test_norm = scaler.transform(x_test)
model_norm = LogisticRegression(max_iter=10000)
model_norm.fit(x_train_norm, y_train)
y_pred_norm = model_norm.predict(x_test_norm)

standardScale_acc_score = accuracy_score(y_test, y_pred_norm)
print(standardScale_acc_score)

# 0.9555555555555556 값 상승함
728x90
728x90

마이크로소프트 한국지사상공회의소가 진행하는 AI(CV) 트랙입니다.

 

 

전체 커리큘럼을 확인하면 

 

1개월차

간단한 웹관련 

 

2개월차

AI 기초/ 클라우드 (Azure ai/dp -900을 딸 수 있도록 4일간의 교육과 15달러 약 20만원치의 바우처를 지원합니다)

 

3개월차 

통계 / 전처리

 

4개월차 (데이터 트레이닝을 위한 Azure  공간지원 - aws 지원한다고 생각하면됨)

 AI 심화 / CNN / 이미지분류 프로젝트

 

5개월차 

객체프로그램 

 

6개월차

메인프로젝트

 

순으로 진행되며 자세히 보시면 알겠지만 AI 과정중에서도 NLP(자연어처리) 과정이 아닌 CV(컴퓨터비전) 과정입니다.

이건 분명히 알고 오셔야합니다. 

nlp도 다루긴 하지만 특강 형식으로 인코더/디코더가 뭔지 트랜스포머, rnn이 뭔지, 셀프어텐션 등 키워드 중심으로 이론을 설명하며

간단한 실습 정도로 끝납니다.

 

 

Q : 비전공자가 참여하기 어떤가요?

A : 충분히 따라올 수 있으나, 개발자체가 처음이시라면 많이 힘들 수 있습니다.

기초가 없는 사람들을 위해 커리큘럼상 기초과정이 들어가있긴 합니다. AI 과정은 컴공 + 통계라 생각하시면 됩니다. 

네트워크 기초 파이썬 기초등을 3일 안에 끝내버리고 통계학과 1학기 동안 배우는 내용을 8일안에 끝내는 식입니다.

필자는 6개월간 백엔드 / 4개월간 Devops 및 ml 기초의 국비수업을 이미 들었지만 쉽지 않았습니다. (컴공과 분들도 쉽지않다고 하셨음)

하루 7시간 매일 강의를 듣고, 그것을 흡수하기 위해 하루 3시간 이상의 복습시간 총 10시간 정도는 반드시 확보하셔야 합니다.

* 녹화본 미제공이라 복습 어떻게 하냐? -> 녹화본 스트리밍으로 제공해줍니다. 놓쳤던 부분 따로 공부가능 (특강은 제공x)

 

Q : 지원이후 면접 준비중인데 어떻게 준비하면 좋을까요?

A : 지원이유, 관련경험, 미래계획 을 확실히 말씀하시면 됩니다.

지금까지(1, 2기) 지원경쟁률이 2~5:1로 알고있습니다. 팀플이 있는 만큼 아무생각 없이 오시는분들은 서류 및 면접에서 걸러집니다.

수강생 중 전공자 비율도 30프로 정도가 되고, 학력과 직업등 좋으셨고, 미래계획이 확실하셨던 분들이였습니다.

(20대초반 부터 30대 중후반까지 나이스펙트럼은 다양하며, 대학교수님들도 몇 분 계셨습니다! 대부분 20대 중후반입니다)

 면접준비는 "나는 CV쪽 관심이 많아서 이런것을 구현 해본적이 있고, 팀원들과 이런것을 하고싶고, 미래에는 이런 회사에 취업하기 위해 지원하였습니다" 라고 말할 수 있다면 합격선이라고 생각합니다. 너무 추상적으로 말씀하시면 구체적으로 설명해달라고 물어보시니 준비 잘하세욥! ex 어떤 모델을 쓰셨나요? 로직은 어떻게 되나요? 

 

Q : 다른 AI 과정에 비해 장점이 있을까요?

A : Azure 지원, MS 오피스투어,  Linkedin 컨설팅, 파트너 기업 추천등 강점은 확실합니다.

필자는 네이버 부스트 과정을 준비하다가 MS AI / Aiffel 과정이 먼저와서 둘다 지원 Aiffel 에도 최종 합격하였으나, ms를 선택했습니다 (aiffel 보다 ms가 낫다는건 아닙니다. aiffel 이 더 나을 수도있습니다. hrd에서 aiffel 후기도 참조하시면 될듯합니다.)

국비교육 특히 KDT 과정을 들으면 멘토링, 취업특강, 훈련지원금등 어떤 과정을 듣던 지원받는 공통지원이 있습니다. 

하지만 다른 과정에 비해  MS AI를 선택함으로 얻는 이점은 Azure 지원, MS 오피스투어, 파트너 기업등 확실한 장점이 있습니다.

그 중 가장 마음에 들었던것은 Azure로 공부하고 지원 받는거였습니다. 네이티브 강사분이 직접 Azure를 설명하시고 리눅스 설명 또한 

Azure 가상환경에서 지원받을 수 있었고, Azure 시험을 공짜로 칠 수 있도록 무료 바우처(20만원 상당)를 지원합니다.

AI과정의 경우  AWS/Azure를 반드시 사용하는데 네이티브 환경에서 한다는건 진짜 매력적으로 느껴졌습니다.

마지막으로 Linkedin 컨설팅과 MS 오피스투어등 MS 직원, 강사분들과 네트워크 형성 및 Linked 인 컨설팅으로 해외취업에서도 굉장히 유리한 위치를 선점할 수 있다고 생각합니다.

 

Q : 교육은 추천할만한가요?

A : 전체적으로는 만족하며, 다시 과거로 돌아간다고 하더라도 MS ai school에 입과를 선택했을겁니다.     

필자는 올바른 국비교육에 대해 글을 남긴적이 있는데 (https://itcreator.tistory.com/165) 참고하시길 바랍니다.

국비교육에서는 강사확인이 필수입니다! 

이번 과정 강사는 MS 측 강사와 인피닉스 쪽 강사님들로 배정됩니다.

네트워크 과정/ AI 과정 / Azure 설명/ CV 과정/ CRUD 과정 등 다양한 과정에 각각 다른 강사님이 배정되며

매우 만족했던 강사님 ex) 김영욱 강사님 부터 준비가 많이 아쉬운 강사님도 계셨습니다.

그냥 대학 교수님 생각하시면 됩니다. 많은걸 아시지만 설명능력이 아쉬운 강사님부터 유튜브 운영까지면서 거의 프로MC급 진행능력을 가지신 분들도 계시지만 결국 공부는 혼자 복습하셔야합니다!

하지만 전체적으로는 만족하며, 다시 과거로 돌아간다고 하더라도 MS ai school에 입과를 선택했을겁니다.     

 

Q : 대학원을 가야할지 이 프로젝트를 가야할지 고민입니다

A : 데싸, 연구직 - 석박 추천 /// 데엔 - 프로젝트 추천

본인이 가고싶은 포지션으로 구인검색 하셔서 경력사항 및 우대사항을 보시면 될 듯 합니다.

중간에 대학원 선택을 위해 중도포기 하시는 분들도 많으셨습니다. AI 쪽이다보니 석박을 해야하나 는 많은 질문들이 수업시간에도 올라오는데 현 개발자, 연구자 분들은 데이터 사이언스를 희망 하거나, 연구직 이라면 대학원 추천 ///
데이터 엔지니어라면 프로젝트 추천이라고 하셨습니다. 그러면서 AI 시장은 변화속도가 워낙 빨라서 다른 학문에 비해서 석박과정에서의 학습이 매우 의미가 없을 수도 있다고 하셨습니다. AI는 컴공과 통계쪽 분들이 많이 오시는데 AI 석사이상은 컴공보다는 통계 포지션임을 기억하셔야합니다.

 

 


 

MS ai school 의 교육 환경은 매우 좋으며 강사진은 완벽하지는 않지만 우수한 편입니다.

문제 발생시 피드백이 굉장히 빠른편이며, 수강생들의 열정또한 정말 좋아서 지금 당장 카톡 오픈방에 ms라 치시면 각종 스터디 방 뿐만 아니라 논문, 프로젝트방 따로 모여 공부하시는 방을 쉽게 찾을 수 있습니다. (비번걸려있어서 들어갈 순 없을겁니다)

 

정리를 하자면

 

CV(컴퓨터 비전) 쪽 포트폴리오용 프로젝트를 열정있는 사람들과 함께 하고 싶고, 기본기가 튼튼하신 분들이라면

MS ai school이 좋은 선택이라 생각합니다!

 

추가질문이 있으시면 우측 하단으로 편하게 연락주시면 됩니다

질문 모아서 이곳에 추가합니다.

728x90
728x90

로컬에서 작업할때는 버전관리가 되지않는다 

파이썬 3.11을 쓰다가 호환을 위해 3.7이 필요하다면 3.11을 지웠다가 3.7을 써야한다 -> 불편함

그래서 필요로 하는 라이브러리에 맞게 가상환경을 만들어서 그것을 불러오면 쉽게 버전관리가 된다.

 

 

 

 

 

가상환경 생성 및 삭제

conda create -n 가상환경이름 python= 버전

conda env remove -n 가상환경이름

 

가상환경 리스트확인

conda env list
conda info envs
#  conda info -e 와 동일함

 

가상환경 비/활성화

conda activate 가상환경이름

conda deactivate 가상환경이름

 

필요한 라이브러리 설치/ 확인

conda install 라이브러리명

conda list # 설치된 라이브러리 확인

 

728x90
728x90

딥러닝은 가장 적합한 가중치를 찾는과정

사용용도에따라 다양한 모델이 있다 (CNN, DNN, RNN)

RNN은 주로 시계열 데이터에 사용된다. (시간의 흐름에 따라 이전 결과에 영향을 계속 받음)

CNN은 주로 이미지를 분석할때 사용 (차원감소) 

 

신경망의 종류

시계열데이터에 주로 사용

⦿ 시계열 데이터에 주로 사용됨. 앞의 결과가 뒤의 결과에 영향을 줌

 

 

⦿ 이미지 분석할때 항상 나옴

 

 

신경망 기초

함수로 표현하기

# 신경망 기초

import math
import numpy as np
import matplotlib.pyplot as plt

# 일차함수

def linear_function(x):
  a=0.5
  b=2

  return a*x+b
  
x = np.arange(-5,5,0.1)
y = linear_function(x)

plt.plot(x,y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Linear Function')

 

 

# 2차 함수
def quadratic_fuction(x):
  a = 1
  b = -1
  c = -2

  return a*x**2 + b*x + c
  
  
x = np.arange(-5,5,0.1)
y = quadratic_fuction(x)

plt.plot(x,y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Quadratic Function')

 

# 3차 함수

def cubic_function(x):
  a = 4
  b = 0
  c = -1
  d = -8

  return a*x**3 + b*x**2 + c*x + d
  
x = np.arange(-5,5,0.1)
y = cubic_function(x)

plt.plot(x,y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Cublic  Function')

 

 

 

텐서의 표현

 

Numpy ndarray를 통한 연산

# Tensor의 표현  (스칼라와 벡터)

# Tensor의 표현   # 스칼라와 벡터 

x = np.array(3)  #스칼라
print(x)   
print(x.shape)  # 형태, 모양
print(x.ndim)   # 차원

# 3
# ()
# 0

y = np.array([3])  # 벡터
print(y)
print(y.shape)
print(y.ndim)

# [3]
# (1,)
# 1

 

# 1차원 텐서

a = np.array([1,2,3,4])
b = np.array([5,6,7,8])
c = a + b
d = d + x    # x = 3     d(1차원과) + x(0차원) 합도 가능
print(c)
print(c.shape)
print(c.ndim)

# [ 6  8 10 12]
# (4,)
# 1

print(d)
print(d.shape)
print(d.ndim)

# [4 5 6 7]
# (4,)
# 1

# 차원이 달라서 부족한 값들은 그냥 같은값을 복사해서 연산한다. 브로드캐스팅이라 한다.

# 똑같이 하나의 성분이라도 리스트에 포함시키면 1차원이 되므로 벡터가 된다.

 

# 벡터의 곱

# 벡터의 곱

x = np.array([1,2,0])
y = np.array([0,2,1])
z = np.dot(x, y)

print(z)
print(z.shape)
print(np.ndim(z))

# 4
# ()
# 0

 

 

# 전치 행렬

# 전치 행렬
a = np.array([[1,2,3],[4,5,6]])
print(a)
print(a.shape)

# [[1 2 3]
   [4 5 6]]
# (2, 3)



a_ = a.T    # 전치행렬로 행과 열을 바꿈
print(a_)
print(a_.shape)

# [[1 4]
   [2 5]
   [3 6]]
# (3, 2)

 

# 2차원 텐서

# 2차원 텐서 

matrix = np.array([[1,2,3],[4,5,6]])

print(matrix)
print(matrix.shape)
print(np.ndim(matrix))

# [[1 2 3]
  [4 5 6]]
# (2, 3)
# 2


a = np.array([[1,2],[3,4]])
b = np.array([[10,10],[10,10]])

print(a * b)
# [[10 20]     
   [30 40]]

 

# 3차원 텐서

# 3차원 텐서

x = np.array([[[5,3,2,1],
               [5,5,3,1],
               [6,1,2,3]],
              [[1,1,1,1],
               [3,4,7,5],
               [1,8,3,4]],
              [[10,9,3,9],
               [5,4,3,2],
               [7,6,3,4]]])
print(x)
print(x.shape)
print(np.ndim(x))

#[[[ 5  3  2  1]
   [ 5  5  3  1]
   [ 6  1  2  3]]

 [[ 1  1  1  1]
  [ 3  4  7  5]
  [ 1  8  3  4]]

 [[10  9  3  9]
  [ 5  4  3  2]
  [ 7  6  3  4]]]
# (3, 3, 4)
# 3

 

 

@ 이미지는 가로축, 세로축, 색상값 의 3차원 데이터이다.

@ [w, h, [r,g,b]] 의 형태이다.

@ 시계열 데이터도 3차원텐서를 사용한다. 시계열데이터란 한쪽축이 시간축으로 시간에따른 데이터들의 변화를 나타내는 것을 의미한다. 주식, 기상 등의 값이있다.

@ 영상은 4차원텐서 w, h, f(프레임), [r,g,b] 의 형태

 

[4차원, 5차원 텐서]

 


신경망의 구조

퍼셉트론

 

논리회로

 

# 논리게이트

# AND 게이트

# 논리 게이트

# AND
def AND(a,b):
  input = np.array([a,b])
  weights = np.array([0.4, 0.4])	# 가중치 +
  bias = -0.6				# 편향 강한 -
  value = np.sum(input * weights) + bias

  if value <= 0:
    return 0
  else:
    return 1
    
    
print(AND(0,0))
print(AND(0,1))
print(AND(1,0))
print(AND(1,1))

# 0
# 0
# 0
# 1

가중치와 바이어스를 컴퓨터가 스스로 찾도록 하는것이 딥러닝

 

x1 = np.arange(-2,2,0.01)
x2 = np.arange(-2,2,0.01)
bias = -0.6

y = (-0.4 * x1 - bias) / 0.4

plt.axvline(x=0)
plt.axhline(y=0)

plt.plot(x1, y, 'r--')
plt.scatter(0,0,color='orange', marker='o',s=150)
plt.scatter(0,1,color='orange', marker='o',s=150)
plt.scatter(1,0,color='orange', marker='o',s=150)
plt.scatter(1,1,color='black', marker='^',s=150)

plt.xlim(-0.5,1.5)
plt.ylim(-0.5,1.5)
plt.grid()

(1, 1)만 True가 됨

 

 

# OR 게이트

# OR 
def OR(a,b):
  input = np.array([a,b])
  weights = np.array([0.4, 0.4])	# 가중치 +
  bias = -0.3				# 편향 약한 -
  value = np.sum(input * weights) + bias

  if value <= 0:
    return 0
  else:
    return 1
    
print(OR(0,0))
print(OR(0,1))
print(OR(1,0))
print(OR(1,1))

# 0
# 1
# 1
# 1

 

# NAND 게이트

# NAND
def NAND(a,b):
  input = np.array([a,b])
  weights = np.array([-0.5, -0.5])      # 가중치 -
  bias = 0.7				# 편향은 강한 +
  value = np.sum(input * weights) + bias

  if value <= 0:
    return 0
  else:
    return 1
    
print(NAND(0,0))
print(NAND(0,1))
print(NAND(1,0))
print(NAND(1,1))

# 1
# 1
# 1
# 0
x1 = np.arange(-2, 2, 0.01)
x2 = np.arange(-2, 2, 0.01)
bias = 0.7

y = (0.6 * x1 - bias) / -0.5

plt.axvline(x=0)
plt.axhline(y=0)

plt.plot(x1, y, 'r--')
plt.scatter(0,0,color='black',marker='o',s=150)
plt.scatter(0,1,color='black',marker='o',s=150)
plt.scatter(1,0,color='black',marker='o',s=150)
plt.scatter(1,1,color='orange',marker='^',s=150)
plt.xlim(-0.5,1.5)
plt.ylim(-0.5,1.5)
plt.grid()
plt.show()

(1,1)만 False가 됨

 

# XOR 게이트

def XOR(x1, x2):
  s1 = NAND(x1, x2)
  s2 = OR(x1, x2)
  y = AND(s1, s2)

  return y
  
print(XOR(0,0))
print(XOR(0,1))
print(XOR(1,0))
print(XOR(1,1))

# 0
# 1
# 1
# 0

 

728x90
728x90

하... 진짜 궁금한게 보증보험 드는 과정을 왜 이렇게 복잡하게 만들었는지 도저히 이해가 안된다...

 

HUG 메인 페이지는 폐기했다던 공인인증서를 요구해서 바로 칼차단

갓네이버 전세보증보험으로 우회해서 들어갔는데

 

1. 주소 검색이 안되서  1566-9009 전화를 했는데 한 3시간동안 계속 통화연결 도전했다가 안됨... 빡쳐서 폭풍검색 

우선 주소가 안뜨면 무조건 은행가야함!!

2.알아보니 신한, 국민, 우리, 광주, KEB하나, 기업, 농협, 경남은행에서 바로 신청이 가능하다는걸 알게 되었다. 

(전세대출을 받았다면 대출을 받은 지점으로가서 해야한다!!!!)

 

 

3. 지도를 보니 국민은행이 가장 가까워서 필요한 서류를 알아보기 시작

 

  (1) 본인신분증(주민등록증 등 본인확인증표)  - 전자지갑으로 받으면 프린트 안해도됨
  (2) 확정일자부 임대차계약서 원본(공인중개사 중개)
  (3) 전세보증금 수령 및 지급확인서류(무통장 입금증, 계좌이체 내역 등)

  (4) 대상목적물 건물등기사항전부증명서 (1개월 이내 발급분) 
  (5) 건축물관리대장(단독, 다가구 주택의 경우에만 제출) 
  (6) 주민등록등본(1개월 이내 발급분) 
  (7) 선순위 임차인들의 임차계약서(단독, 다가구주택의 경우에만 제출) 
  (8) 전입세대 열람내역 - 동사무소 가서 받아야함. 현금만 가능하니 천원짜리 챙겨서가셈

  (9) 기타 필요서류 (보증 등에서 필요 시) 

  (10) 확정일자부여현황, 상가건물임대차현황서(목적물에 근린생활시설 등 상가 확인되는 경우) ☞ 단독, 다가구 주택인 경우로 보증심사 완화대상으로 심사하는 경우 개인에 따라 추가 서류 발생될수있습니다

728x90

'글적글적' 카테고리의 다른 글

아이폰 VS 갤럭시  (0) 2024.02.21
국비교육 올바른 선택방법(feat 지원금 꿀팁)  (7) 2023.02.20
728x90

샘알트만 온다는데 안간다고?

 

https://openai.com/form/openai-tour-2023

 

OpenAI Tour 2023

OpenAI wants to hear from our users and developers. Please sign up if you’d like to meet with us!

openai.com

 

 

https://aws.amazon.com/ko/events/summits/seoul/

 

AWS Summit Seoul

국내 최대 규모의 IT 컨퍼런스, AWS Summit Seoul 이 드디어 다시 현장에서 여러분들을 만납니다. 최신 클라우드 기술부터 궁금했던 기술 데모까지 모두 만날 수 있는 곳, AWS Summit Seoul로 여러분을 초

aws.amazon.com

 

728x90

'AI' 카테고리의 다른 글

[ChatGPT] VScode에서 ChatGPT 바로 사용하기  (0) 2023.02.17
728x90

메타에서 SAM(Segment Anything Model)이라는 모델을 무려 오픈소스(Apache-2.0 license) 공개하였습니다. 이미지 개체를 인식하여 영역을 분할하는 모델로 기존 대비 훨씬 많은 데이터로 학습하여 뛰어난 성능을 보여줍니다.

 

SAM 소개 페이지

https://segment-anything.com/ https://ai.facebook.com/blog/segment-anything-foundation-model-image-segmentation

 

 

SAM 깃허브  

https://github.com/facebookresearch/segment-anything

 

 

SAM 데모 써보기

https://segment-anything.com/demo

728x90
728x90

1.  mac alfred 

https://www.alfredapp.com/

진짜 핵강추 어플!!  생산성 확 올라갑니다!
예시) 지도 검색하려면 -> 네이버키고 -> 지도 검색해서 -> 목적지 검색 -> 검색완료라면
알프레드는 opt + space -> ㅈㄷ 시청 (세팅해야함) -> 네이버 지도 검색 끝 


영어사전도 마찬가지 -> ㅇㅅㅈ 사과 -> 네이버 사전에서 검색끝

등등 부터해서 여러가지 꿀기능 많음!!

 

2. maccy

맥북 클립보드 어플 

사진 및 글자 복사한거 모아두기 가능 option + c  로 목록확인  및 command + shift + s 스샷 찍어 리스트에 저장 후 사용(바탕화면 아낄수 있음)

스토어에 10유로에 사지말고 개발자라면 깃허브 오픈소스 쓰자. 

https://github.com/p0deje/Maccy/releases

 

 

3. bettertouchtool

https://folivora.ai/

 

 

4. 압축풀기 keka

https://www.keka.io/ko/

거의 모든 포맷 커버가능

 

5. 영상재생 IINA

https://iina.io/

거의 모든 포맷 재생가능

 

6. 배터리 관리

https://github.com/davidwernhart/AlDente-Charge-Limiter/releases

 

 

728x90
728x90

https://welfare.comwel.or.kr/default/page.do?mCode=B020010000

국취제 :  5만원씩 6개월씩 총 3백만원 지원 받기가능

https://www.kua.go.kr/uaptm010/selectMain.do

 

일경험프로젝트 : 원하는 기업과 직접 컨택도 가능

https://www.kua.go.kr/uapia010/selectJobPrgm.do

 

서울 청년인턴 

https://youth.seoul.go.kr/site/main/content/seoul_youth_intern_occup_camp

 

알뜰교통카드

https://alcard.kr/info/card_guide.do

 

 

직업훈련 생계비 대출금리 1%, 보증료 1% 월최대 250만원 : 6개월간  1500만원 대출가능  (교육을 듣고있을때

https://welfare.comwel.or.kr/default/page.do?mCode=B020010000

 

728x90
728x90

감도가 높을수록 노이즈가 많다고 알고있지? 

SNR 과 ISO 관계 이해하기

 

https://petapixel.com/2017/03/22/find-best-iso-astrophotography-dynamic-range-noise/

 

How to Find the Best ISO for Astrophotography: Dynamic Range and Noise

ISO is one of the three major exposure settings in the exposure triangle of a digital camera -- shutter time, f/number, and ISO. Of the three, it is ISO

petapixel.com

 

 

 

기종별 최적 감도(ISO)

http://dslr-astrophotography.com/iso-dslr-astrophotography/

 

예시) 시뮬레이터

https://www.dpreview.com/reviews/image-comparison/fullscreen?attr134_0=sony_a7iii&attr134_1=nikon_z6&attr134_2=sony_a7iii&attr134_3=nikon_z6&attr136_0=7&attr136_1=7&attr136_2=1&attr136_3=1&normalization=compare&widget=601&x=0.8672117644150164&y=0.14915352500398193

 

Image comparison: Digital Photography Review

 

www.dpreview.com

 

 

728x90
728x90

https://paperswithcode.com/trends

728x90
728x90

ChatGPT로 인해 개발에 문외하더라도 코드를 쉽게 얻을 수 있고, 이미 학습된 정보를 활용하여 다양한 콘텐츠를 개발할 수 있다.

추천 ChatGPT 커뮤니티 

 

- 메이저

https://www.brightics.ai/community/community-forum-detail/1073

 

Brightics AI

 

www.brightics.ai

https://www.facebook.com/groups/aicomunity (영어)

 

https://www.facebook.com/groups/698593531630485 (영어)

 

https://www.facebook.com/groups/chatgptkr

 

네이버 카페는 구라카페가 넘 많다

 

 

- 마이너 (진지하지 않음)

https://gall.dcinside.com/mgallery/board/lists/?id=chatgpt 

 

프롬프트-지니-chatgpt-자동-번역기

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

ChatGPT 관련 플러그인

1. AIPRM 

프롬프트 팁 더 구체적으로 작성하게 해줌

https://chrome.google.com/webstore/detail/aiprm-for-chatgpt/ojnbohmppadfgpejeebfnmnknjdlckgj/related?hl=ko 

 

2. 프롬프트 지니 / web ChatGPT

한국어 -> 영어로 변환해서 찾고 다시 한국어로 (속도, 내용 향상)

https://chrome.google.com/webstore/detail/프롬프트-지니-chatgpt-자동-번역기/lhkgpdljnlplgbkonflbhifackjhjmdj?hl=ko

 

3. GPT for google

크롬창에서 검색한 내용 그대로 chatGPT에서도 나오게 해줌

https://chrome.google.com/webstore/detail/chatgpt-for-google/jgjaeacdkonaoafenlfkkkmbaopkbilf?hl=ko

 

 

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

ChatGPT  활용 이미지 만들기

 

1. 미드저니

위의 (AIPRM)을 활용해서 프롬프트를 만들고 활용하면 일러스트 쉽게 생성가능

https://www.midjourney.com/home/?callbackUrl=%2Fapp%2F 

 

2. Adobe firefly

미드저니와 비슷함 생성형 AI로 이미지 생성가능

https://firefly.adobe.com/

 

3. Stable-diffusion 

이미지 생성 워낙 유명해서 설명 x 

https://stablediffusionweb.com/

 

4. Dalle - 2 (OpenAI)

이미지 생성 워낙 유명해서 설명 x 

https://labs.openai.com/

728x90
728x90

https://www.coursera.org/specializations/machine-learning-introduction

추천강의 

 

 

1) 지도학습

1. 회귀  : 숫자 예측

  • 선형 and 비선형
  • Gradient Descent(경사하강법)
  • Bias and variance trade-off (편향-분산)

2. 분류 : 분류 예측

  • 로지스틱 회귀 and 소프트맥스 회귀
  • SVM
  • DT
  • Linear Discriminant Analysis (LDA 선형판별분석)

3. 앙상블 학습

  • Bagging
  • Boosting

1-2) 비지도 학습

 

1. 차원축소(전처리)

  • PCA
  • SVD

2. 군집화 (분류/클러스터링)

  • K-means
  • Mean shift
  • Gaussian Mixture Model
  • DBSCAN
728x90

'AI > [ML]' 카테고리의 다른 글

[ML] 2. Cross Validation 교차 검증  (0) 2023.02.09
[ML] Scikit-learn 을 활용한 붓꽃 품종 예측하기  (0) 2023.02.08
728x90

 

1. 디자이너 by ms

이제 디자이너들 일하기 편함과 동시에 생업을 걱정해야할듯

 

 

https://designer.microsoft.com/

 

Microsoft Designer - Stunning designs in a flash

A graphic design app that helps you create professional quality social media posts, invitations, digital postcards, graphics, and more. Start with your idea and create something unique for you.

designer.microsoft.com

 

 

 

2. ChatGPT plugin 

ChatGPT로 영상 편집은 물론 주문등... 완전 새로운 세상이 열릴 듯

https://openai.com/blog/chatgpt-plugins

 

 

3.  Copilot X

Copilot 업그레이드 버젼 

 

https://githubnext.com/

 

GitHub Next

GitHub Next investigates the future of software development

githubnext.com

 총 4개의 테마가 있음

 

1. Copilot Docs

공식문서 읽을 필요없다. 그냥 애가 찾아줌

https://githubnext.com/projects/copilot-for-docs/

2. Copilot CLI 

https://githubnext.com/projects/copilot-cli/

3 Copilot Voice

https://githubnext.com/projects/copilot-voice/

4. Copilot pull request

https://githubnext.com/projects/copilot-for-pull-requests/

 

4. 어도비 팟케스트

음질향상

https://podcast.adobe.com/

 

 

 

5. ChatPDF

 

6. Perplexity.ai

 

7. Oras.sh

개인용 커스텀 가능한 AI

 

8. Tome 

PPT AI

 

9. Jenni

글쓰기 도우미 AI

 

10. DeepL

번역 

728x90
728x90

 

 

- 구글 Gemini 1년 무료

https://gemini.google/students/

개인 메일로 로그인하고 연결하면됩니다. 
* 다른 구글원 요금제를 확인하여 나에게 맞는 요금제를 찾아보세요. -> 국가 변경해야합니다.
https://payments.google.com/ -> 설정 -> 한국으로 설정

- 학생복지 스토어 

장비구입 학생할인 / 학생 이메일

https://www.univstore.com/

 

- 피그마 

시각화 툴 , 협업 툴/ 학생 이메일

https://www.figma.com/education

 

- 어도비 

포토샵, 영상, 디자인 툴 60% 할인

https://www.adobe.com/kr/creativecloud/buy/students.html

 

- 미로(슬랩, 아틀라시안등 협업툴 연동가능)

협업용 화이트 보드 학생계정 10명까지 초대가능 + 타이머 + 공유기능 가능 (무료는 3명) 

https://miro.com/education-whiteboard/

- 노션 

블로그, 협업 툴 / 학생 이메일 :

https://www.notion.so/ko-kr/product/notion-for-education

 

- 깃허브 (프로) / 학생 이메일

형상관리

https://education.github.com/pack

 

- 깃허브 (코파일럿) / 학생증 서류 필요

깃 코드 자동 생성

https://github.com/features/copilot/

 

- 젯브레인 : IDE 툴 무료(1년간 업데이트가능)

인텔리제, C라이온, 파이참 

https://www.jetbrains.com/community/education/#students

 

- Perplexity AI 툴 

GPT 대용으로 나쁘지않은듯
/http://www.perplexity.ai

- colour AI

AI 색보정 / 학생증 서류 필요

1년 무료사용가능

https://colourlab.ai/education/

 

- ms office365

https://www.microsoft.com/ko-kr/education/products/office

 

- ms (win10/11)

개인적으로 10을 받는걸 추천 (https://onna.kr/604) 10을 받고 11로 업데이트도 가능

https://knou.onthehub.com/WebStore/Account/VerifyEmailDomain.aspx 

 

- 도서관 학술지 무료 다운로드

과제할때 인용시 +5점씩 (내용은 ChatGPT가 더 좋기는함..)

http://www.riss.kr/index.do

https://www.dbpia.co.kr/member/b2bLogin

http://library.knou.ac.kr/proxyResult

 

-국제학생증 

이전 대학 다닐때 이미 한번 받았는데 또 받을 수 있다네? 유럽갈때 레알 핵필수템

https://www.isic.co.kr/home/univ/knou.jsp

 

 

- 기타

미술관, 박물관, 공연 등 학생 할인

Azure 학생 계정 이용 - 계정 생성 후 매년 100달러 크레딧 제공받을 수 있음

https://azure.microsoft.com/ko-kr/free/students/

한국영상자료원 - 영상도서관 예약 후 보존된 영화자료 이용 가능

무료 심리검사 가능 - 상담실이 설치된 지역대학 학생의 경우 MBTI, MMPI 등 심리검사 예약신청 가능 

Zoom 화상회의 무제한 무료로 사용가능  (더이상 안되네요 ㅠ)

오픽시험 할인 1년 1회 20프로할인

728x90
728x90

- 나도코딩 OpenCV @ https://bit.ly/3AyaDB1
- OpenCV 공식 튜토리얼 (Basics + ObjectDetection & PoseEstimation, 3h) @ https://j.mp/3xlNxKX
- Hand tracking / Gesture volume control / AI Trainer using CPU @ https://j.mp/32L77mU & https://j.mp/3wWGUif
- Python OpenCV4로 배우는 CV & ML (CNN/DNN/SVM/KNN 포함) @ http://j.mp/2WRedpa
- OpenCV 튜토리얼 (유튜브 3h, 문서스캔/차량번호판탐지 포함) @ https://j.mp/39mvKuw
- OpenCV FreeCodeCamp (유튜브 3h, 얼굴탐지/심슨캐릭터분류 포함) @ https://j.mp/2LyqWZy
- 영상처리 OpenCV 강의 @ https://goo.gl/PxfXj3
- [dlib & opencv 기반 프로젝트] 얼굴인식 @ https://j.mp/2JVSzan / 성별&나이인식 @ https://j.mp/2JVSzan / 눈깜빡임 감지 @ https://j.mp/3c91Ub2
- Face detection 예시코드 & 성능비교 (Opencv/dlib/mtcnn/S3FD/retinaface) @ https://j.mp/2FuTFLX
- YOLO v5 커스텀 학습 (빵형) @ https://bit.ly/3Hq8eKv

728x90

+ Recent posts