본문 바로가기

분류 전체보기162

[DL] Deep Learning Scratch 목차 순방향 XOR 역전파 ( Loss 함수 ) STEP01 순방향 : 아래의 코드는, 순방향이 어느 것인지 이해를 돕기위한 단순 프로세스이다. 가중치를 랜덤하게 잡을 일은 없다. # numpy에는 sigmoid없으니 직접 함수로 만들어준다. def sigmoid(x): return 1.0 / (1.0 + np.exp(-x)) # 가중치를 랜덤하게 선택하자. (원래는 학습이 완료된 가중치를 사용해야 한다.) # 원래는 양수의 값만 나와서, 2를 곱하고 -1을 해서 음수 값도 만들어준다. # (1,3)은 1,3의 크기를 가지게 하는 것. X하나만 보면 3개의 값이 있어서 W = 2*np.random.random((1,3)) -1 # 추론 # X의 첫번째 줄과 W를 곱한 값. 마지막만 1이니 W의 마지막 *.. 2023. 2. 13.
[DL] CNN CNN - 특징을 찾아내는 특징검출 구간과 그 특징을 사용하여 딥러닝을 돌리는 분류 구간으로 나뉘어져 있다. Conv Filter 의미 - Convolution : 특정 패턴이 있는지 박스로 훑으며 마킹 - 위아래선 필터, 좌우선 필터, 대각선 필터, 동그라미 필터 등등 여러가지 "조각"필터로 해당 패턴이 그림 위에 있는지 확인한다. - Convolution 박스로 밀고나면 숫자가 나온다. 그 숫자를 Activation(주로 ReLU)에 넣어 나온 값으로 이미지 지도를 새로 그린다. Pooling 의미 - MaxPoolinng : 사진을 점진적으로 줄인다. nxn(Pool)을 중요한 정보(Max) 한개로 줄인다. 선명한 정보만 남겨서 판단과 학습이 쉬워지고 노이즈가 줄며서 융통성이 확보된다. - 보통 2.. 2023. 2. 8.
[MySql] 기본 쿼리문 01. USER mysql -u root -p 터미널에 접속하여 해당 문구와 password를 입력하면 접근 가능하다. show databases; 현존하는 database의 list를 보여준다. create database testdb; testdb 이름의 데이터베이스를 create한다. use mysql; mysql 데이터베이스를 사용한다. drop database testdb; testdb를 drop한다. SELECT host, user from user; host와 user 목록을 보여준다. CREATE user 'zzz'@'localhost' identified by ; 'zzz'이름의 'localhost'계정을 만든다. CREATE user 'zzz'@'%' identified by ; 'zz.. 2023. 1. 31.
[MySql] 정의 Database란 ? 여러사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합체 DBMS란 ? (Database Management System) 사용자와 데이터베이스 사이에서 사용자의 요구에 따라 정보를 생성해주고 데이터베이스를 관리해주는 소프트웨어 관계형 데이터베이스란 ? (RDB : Relational Database) 서로간에 관계가 있는 데이터 테이블을 모아둔 데이터 저장공간 SQL이란 ? (Structured Query Language) 데이터 베이스에서 데이터를 정의, 조작, 제어하기 위해 사용하는 언어 SQL 구성 : 데이터 정의 언어 (DDL : Data Definition Language) CREATE, ALTER, DROP 등의 명령어 데이터 조작 언어 (DML : .. 2023. 1. 31.
ValueError: cannot reshape array of size 1 into shape (28,28) import matplotlib.pyplot as plt plt.figure(figsize=(10,8)) for idx, n in enumerate(samples): plt.subplot(4, 4, idx+1) plt.imshow(X_train[n].reshape(28,28), cmap='Greys') plt.title(y_train[n]) plt.show() mnist 데이터를 사용하고, random하게 16개를 뽑아서 그림을 그려보는 도중 위 코드에서 발생한 에러이다. random으로 뽑아낸 samples 데이터를 보면 숫자가 한줄로 나열되어있어서, 그림을 그릴 수 없기에 reshape(28,28)로 잡아주었는데, train 데이터를 보면 맨 앞에 label column이 있는데 X_train 지정시.. 2023. 1. 15.
CONDA ERROR / failed with initial frozen solve. Retrying with flexible solve. terminal에서 conda ~ install 시에 해당 에러가 떴다. conda update --all로 upgrade 해준다. 2023. 1. 15.
[ML] 추천시스템_ 책 추천 알고리즘 - GoodBooks Data Download https://www.kaggle.com/datasets/zygmunt/goodbooks-10k import pandas as pd import numpy as np import os os.listdir('./goodBooks') books = pd.read_csv('./goodBooks/books.csv', encoding='ISO-8859-1') ratings = pd.read_csv('./goodBooks/ratings.csv', encoding='ISO-8859-1') book_tags = pd.read_csv('./goodBooks/book_tags.csv', encoding='ISO-8859-1') tags = pd.read_csv('./goodB.. 2023. 1. 12.
[ML] 추천시스템_ 장르 유사도를 고려한 영화 추천 알고리즘 최근접 이웃 협업 필터링 - 축적된 사용자 행동 데이터를 기반으로 사용자가 아직 평가하지 않은 아이템을 예측 평가 - 사용자 기반 : 당신과 비슷한 고객들이 다음 상품을 구매했다. - 아이템 기반 : 이 상품을 선택한 다른 고객들은 다음 상품도 구매했다. - 일반적으로는 사용자 기반보다는 아이템 기반 협업 필터링이 정확도가 더 높다. - 비슷한 영화를 좋아한다고 취향이 비슷하다고 판단하기 어렵거나, 매우 유명한 것의 경우 취향과 관계없이 관람하는 경우가 많고, 평점을 매기지 않은 경우가 많기 때문이다. 잠재 요인 협업 필터링 - 사용자-아이템 평점 행렬 데이터를 이용해서 "잠재요인"을 도출하는 것이다. - 주 요인과 아이템에 대한 잠재요인에 대해 행렬 분해를 하고 다시 행렬곱을 통해 아직 부여하지 않은 .. 2023. 1. 11.
[ML] GBM GBM - 부스팅 알고리즘은 여러개의 약한 학습기(week learner)를 순차적으로 학습-예측하면서 잘못 예측한 데이터에 가중치를 부여하여 오류를 개선해가는 방식 - GBM은 가중치를 업데이트할 때 경사 하강법(Gradient Descent)를 이용하는 것이 큰 차이 - 일반적으로 GBM의 성능 자체는 랜덤포레스트보다 좋다고 알려져 있으나, sklearn의 GBM은 속도가 아주 느리다. import pandas as pd import matplotlib.pyplot as plt url = "https://raw.githubusercontent.com/PinkWink/ML_tutorial/master/dataset/HAR_dataset/features.txt" feature_name_df = pd.re.. 2023. 1. 10.