파이썬

    [백준/boj/알고리즘/파이썬(python)/C++/DFS]#11724:연결요소의 개수

    https://www.acmicpc.net/problem/11724 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주 www.acmicpc.net 그래프이론_너비우선탐색, 깊이우선탐색 BFS DFS 문제 나는 DFS를 이용하여 풀었다. (BFS까지 나중에 풀어봐야지!) 파이썬 코드에서 계속 시간초과가 나서 그 원인을 보니 input() 이었다. 백준에서는 input()함수가 시간초과가 잘 난다고 하니 참고하시길..! sys 라이브러리 import해서 입출력하면 해결된다. 그리고 ..

    [백준/boj/알고리즘/파이썬]#9655:돌 게임

    https://www.acmicpc.net/problem/9655 9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 백준 풀이가 너무 오랜만이라 쉬운문제인데도 한참을 고민했다. 예제가 5와 7인 경우 쭉 트리로 그려보았다. 베스킨라빈스31게임이랑 같은 원리다. 상대방이 해당 숫자가 걸리면 내가 무조건 이기거나 지거나. remain = int(input()) if remain % 2 == 0: print("CY") else: print("SK")

    [딥러닝/인공지능]MNIST(필기체 손글씨)

    딥러닝구조를 이용하여 MNIST, 즉 필기체손글씨를 인식할 수 있습니다. np.loadtxt()함수를 이용하여 트레이닝데이터행렬을 만들 수 있습니다. Train Data Set 과 Test Data Set 을 활용해보겠습니다. 학습데이터인 Train Data Set에는 총 6만개의 이미지데이터가 있습니다. 하나의 이미지는 28*28개로 총 784개의 숫자로 이루어져 있습니다. 위 Train Data Set 파일에서 처음 5라는 숫자는 정답 숫자에 대한 정보이고 그 이후로 784개의 숫자가 이미지를 나타내는 정보입니다. 픽셀 하나의 밝기값이라고 볼 수 있습니다. 0에 가까울수록 검은색이고 255에 가까울수록 밝은(흰)색입니다. 학습데이터에서는 하나의 이미지가 784개의 숫자를 가진 1차원 배열로 표현되지만..

    [머신러닝/인공지능] 선형회귀_분류(Classification)

    분류(Classification) 이산적인 값 True False로 출력값을 내주는 Classification는 선형회귀의 한 타입이다. 시그모이드(Sigmoid)함수 Cross-entropy 연속값을 가지던 선형회귀의 손실함수와는 다른 (이산값을 가지는 선형회귀를 위한) 손실함수가 필요하다. 활성화 함수(Activation Function) Sigmoid와 같이 분류작업을 하는 함수에는 RelU, Tanh도 존재한다. 머신러닝에서 세 가지 모두 잘 쓰인다. 활성화함수는 비선형함수(non-linear function)으로 입력값에 대해 비선형적 대응(분류)를 한다. 그리고 임계값(threshold)(0.5,1값 등)을 기준으로 분류를 가능하게 한다. 분류(Classification) 예제 예제를 통해 분..

    [머신러닝/인공지능] 선형회귀 예제 _단일변수/다변수

    입력변수가 1개인 선형회귀 예제 앞서배운 회귀개념따라서 선형회귀를 구현하려면 y=Wx+b값을 구하고, 오차가 최소가 되는 W와 b를 구해야한다. 이를 실제로 구현할 때는 일반곱셈형식이 아니라 입력값x와 가중치W를 행렬로 변환후 y=W*x+b를 행렬곱으로 구한다. import numpy as np #트레이닝 데이터 준비.초기화 x_data=np.array([1,2,3,4,5]).reshape(5,1) y_data=np.array([2,3,4,5,6]).reshape(5,1) #임의의 W가중치, b바이어스 준비,초기화 W=np.random.rand(1,1) #0~1사이의 값으로 (1*1)행렬 생성 b=np.random.rand(1) #0~1사이의 값 #손실함수 LossFunction def loss_func..

    [딥러닝/머신러닝]논리게이트 XOR문제(XOR problem)

    Logistic Regression(미분)을 이용했을때 (추후에 Logistic Regression 게시글도 게시예정) XOR 게이트를 구현이 불가능하다. AND, OR, NAND게이트는 1개의 분류 시스템만으로도 구현가능하지만 XOR게이트는 여러개의 분류시스템을 조합해서 구현해야한다. 그래서 미분을 사용했던 머신러닝이 아닌 (머신러닝의 다른 한 분야인) 딥러닝을 이용한다. 딥러닝의 핵심 아이디어가 여러 분류 시스템을 조합하여 데이터 특성과 상관관계를 분석하는 것이다. 기본적으로 우리가 알고 있는 AND OR NAND XOR게이트의 정답 데이터는 AND: 0001 OR:0111 NAND:1110 XOR:0110 이다. 입력데이터는 각각 ([0,0],[0,1],[1,0],[1,1])이다. (입력 데이터는 ..