
오늘은 평소에 자주 쓰는 디렉토리 관련 함수들을 포스팅 하려합니다. 현재 디렉토리 반환, 디렉토리 존재 여부, 디렉토리 명 찾기 절대경로 찾기 디렉토리 만들기 경로 만들기 디렉토리 변경 디렉토리 내의 파일 가져오기 등 을 알아보겠습니다. import os import glob # 현재 디렉토리 반환 a = os.getcwd() print("현재 디렉토리는 " + a +'\n') # 디렉토리가 있으면 True, 존재하지 않으면 False 반환 b = os.path.isdir(a) print(a + " 디렉토리가 존재하면 " + str(b)+'\n') # a의 디렉토리 명 -> a의 상위 폴더 c = os.path.dirname(a) print('c는 '+ c +'\n') # a의 절대 경로 -> 현재 디렉..
코틀린에서 사용하는 함수를 간단히 정리합니다. 1. 함수 정의 fun 함수이름( 변수명 : 자료형, 변수명 : 자료형 ...) : 반환값 자료형 { //함수 내용 return 반환값 } 반환값의 자료형이 추론가능한 경우 생략 가능 함수의 내용이 한 줄인 경우 { return 반환값 } 대신 = 반환 값으로 표현가능 fun sum(a:Int, b:Int) = a+b 반환 값이 없을 경우 Unit으로 사용 , 또한 반환값이 없으면 반환값의 자료형도 Unit으로 추론 매개변수에 default 인자를 지정하고 싶은 경우, (변수명: 자료형 = default값) 의 형태로 사용 가능 만약 매개변수의 갯수가 정해져 있지 않다면, 가변 인자(Variable Argument)를 사용할 수 있다. fun 함수명 (var..

Tkinter 등의 파이썬 GUI 라이브러리를 이용해 만든 코드를 exe 실행파일로 만드는 방법을 소개합니다. 먼저 pyinstaller 라이브러리가 필요합니다. 실행창에서 다음과 같은 명령어로 pyinstaller를 설치합니다. pip install pyinstaller 저는 conda를 이용해서 아래와 같은 명령어를 사용했습니다. conda install pyinstaller pyinstaller를 설치 완료했으면 이제 원하는 파이썬 코드가 있는 디렉토리로 이동합니다. 실행창에서 디렉토리 이동은 cd 명령어를 사용합니다. cd folder\projects 등 과 같이 자신의 코드가 있는 디렉토리로 이동하시면 됩니다. 그리고 아래와 같은 명령어를 실행시켜주시면 됩니다. pyinstaller main.p..
이전에 작성한 케라스 코드를 정리하던 도중에 다음과 같이 에러가 발생하였다. tensorflow.python.framework.errors_impl.FailedPreconditionError:Error while reading resource variable SGD/lr from Container: localhost. This could mean that the variable was uninitialized. Not found: Container localhost does not exist. (Could not find resource: localhost/SGD/lr) [[Node: training/SGD/ReadVariableOp_7 = ReadVariableOp[dtype=DT_FLOAT, _dev..

이번 포스트에서는 miniconda3 설치, 가상환경 생성, 그리고 Pycharm에서 가상환경 사용을 해보겠습니다. miniconda3는 이름에서 유추할 수 있다시피 Anaconda3의 축소판이라고 생각하시면 됩니다. 아나콘다에서는 기본적으로 머신러닝과 관련된 라이브러리 등이 포함되어있어서, 간편하게 한번에 설치 가능한 것이 장점이지만, 저는 이번엔 미니콘다를 다운받아서 필요한 라이브러리 등을 직접 설치해보겠습니다. miniconda download : docs.conda.io/en/latest/miniconda.html 위의 링크를 통해 홈페이지를 접속하시면 본인의 OS환경에 맞게 Install 파일을 선택하실 수 있습니다. 본인의 OS에 맞게 설치파일을 다운로드 완료하였으면 실행해줍니다. 그리고 경로..

아마 딥러닝을 공부할 때 가장 먼저 접하게 되는 것이 신경망(Perceptron)일 것이다. 가장 기초가 되는 부분이지만, 대부분의 서적이나 자료를 찾아보면 복잡한 수식과 기호들로 이해하기가 힘든 경우가 많다. 아래는 한개의 은닉층과 각 층마다 3개의 노드를 가진 예시로 델타규칙(Delta rule을 통한 역전파의 원리를 설명한다. 하지만 미분에 대해선 미분 전의 식과 후의 결과만을 표시하였으므로, 미분에 대한 사전 지식이 필요할 것이다. 본격적으로 역전파를 통한 가중치 갱신을 해보기 전에 몇 가지 정해야 할 사항들이 있다. 아래에 사항들의 대해서 자세한 설명은 이 포스트에서는 생략한다. 첫 째로는 활성함수(Activation Function) 인 데, 최근에는 ReLu 등 다른 활성함수를 많이 사용하는..

#include int main() { // 10x10 동적배열 생성 int** arr = new int* [10]; for (int alloc = 0; alloc < 10; alloc++) arr[alloc] = new int[10]; // 배열을 전부 0으로 초기화 for (int index_d = 0; index_d < 10; index_d++) for (int index_w = 0; index_w < 10; index_w++) arr[index_d][index_w] = 0; int a[10] = { 1,1,1,1,1,1,1,1,1,1 }; arr[0] = a; // 배열 출력 for (int index_d = 0; index_d < 10; index_d++) { for (int index_w = ..