proveyourdream의 등록된 링크

 proveyourdream로 등록된 티스토리 포스트 수는 60건입니다.

Dementia diagnosis, functional MRI [내부링크]

The use of neuroimaging techniques in the early and differential diagnosis of dementia Leonidas Chouliaras & John T. O’Brien Molecular Psychiatry (2023) of Nature Functional MRI Functional MRI measures blood flow changes to determine which parts of the brain are engaged when performing a test or at rest and can study brain networks that are functionally connected [76]. The default mode network (..

자바 기초 Basic of Java | Class Variable, Instance Variable 클래스변수와 인스턴스변수의 형태 [내부링크]

Class Variable (클래스 변수) 공통적인 속성을 가진 것은 CV로 함. ex) 표현 형태: static int width = 100; ex) Card.width = 200; //Card는 클래스 이름 Instance Variable (인스턴스 변수) 개별적인 속성을 가진 것은 IV로 함. ex) 표현 형태: int number; ex) c.number = 5; //여기에서 c는 참조변수 CV(class variable)의 객체 생성 Class variable(클래스 변수)은 객체가 자동 생성된다. 즉, 객체생성 없이 사용한다. Card.width 만 적어주면 됨. IV(instance variable)의 객체 생성 객체를 직접 생성해줘야 함. Card c1 = new Card(); c1.num..

자바 기초 Basic of Java | Type of Variable by location, 위치에 따른 변수의 종류 [내부링크]

Type of Variable by location 선언 위치에 따른 변수의 종류 1. Class Variable (클래스 변수) = static + Instance Variable(IV) 2. Instance Variable (인스턴스 변수) 3. Local Variable (지역 변수) static int cv; //Class Variable (static이 붙는다.) int iv; //Instance Variable int lv = 0; //Local Variable //------------------------------------- class Variables { int iv; //Instance Variable static int cv;//Class Variable //----------- ..

자바 기초 Basic of Java | 클래스 작성 규칙, The rule of writing class in Java [내부링크]

The rule of writing multiple classes in one source file 하나의 소스파일에 여러 클래스 작성 규칙 0. 1개의 소스파일에 여러 클래스 작성 가능 1. public class는 1개만 존재 가능 2. public class가 없고 그냥 class만 존재할 때는 아무 클래스 이름으로 파일명 가능 3. public class가 있는 경우에는 public class 이름으로 파일명 해야 함 4. class or public class의 클래스 이름의 첫 글자 대문자 그대로 파일명도 첫 대문자로 해야 함 + 1개의 소스파일에 1개의 클래스만 작성하는 것이 좋음 + main Method가 있는 클래스 이름을 파일 이름으로 지정해야 실행 됨 public class Hello..

자바 기초 Basic of Java | What are Class and Object? 클래스와 객체 [내부링크]

Relationship class and object 클래스와 객체의 관계 Why the class exists? 클래스는 객체를 만들기 위해 존재함. What is the composition of the object? 객체는 Variable(변수)와 Method(메서드)로 구성됨. Variable(변수)은 속성을 담당. Method(메서드)는 기능을 담당. class Tv { String color; boolean power; int channel; //Variable(변수): 속성 담당 void power() {power = !power;} void channelUp() {channel++;} void channelDown() {channer--;} //Method(메서드). ex)println()..

자바 기초 Basic of Java | 객체지향언어 Object-oriented language [내부링크]

What is object-oriented language? 객체지향 언어는 도대체 정체가 무엇인가? 80년대 초반, 기술의 빠른 변화에 따라 C언어의 대체 언어가 필요해짐. C언어 : 절차적 언어 --> C++ : 객체지향(어려움) --> Java : 객체지향(C++보다 쉬움) 결국, 효율성을 높이기 위해 객체지향 언어 Java를 사용하게 됨. What is OOP? => Object-oriented programming OOP의 핵심(Java의 특징) 캡슐화(Encapsulation) 상속(Inheritance) 추상화(Abstract) 다형성(Polymorphism)

파이썬 기초 | How to change string to a variable, 문자열을 변수로 바꾸는 방법 [내부링크]

How to change a string to a variable 스트링을 변수로 바꾸는 방법 값의 위치(순서)에 상관없이 변수에 값을 대입할 수 있는 방법으로 사용하는 것이 좋음. 변수의 순서를 모두 기억해서 순서대로 나열해야 하는 방법은 비효율적이기 때문. String 상태 그대로 출력됨 def string_variable_test(country, food): return "I'm living in country and my favorite traditional food is food" sv_test = string_variable_test("Korea", "lemonade") print(sv_test) >>> I'm living in country and my favorite traditional ..

파이썬 기초 | How to use function and print, 함수와 프린트 사용방법 [내부링크]

How to write a Function in Python 파이썬에서 함수를 작성하는 방법 다른 언어들처럼 body 부분을 { } 대괄호 등으로 묶어서 표현하지 않는다. 들여쓰기 (Tab)하여 function을 작성하면 된다. print("How to write a function in Python") print("This is not working") 첫번째 줄에 작성된 것처럼 들여쓰기를 해야 함. 두번째 줄처럼 Tab하지 않고 작성하면 작동하지 않음. How to create Function in Python 파이썬에서 함수를 만드는 방법 my_test() 괄호 ()가 Function의 실행 기능을 함. How to write print function in Python 파이썬에서 프린트 함수를 작..

자바 기초 | do while, switch, case, if else, for, else if, break, random 활용한 연습문제 스스로 풀기 [내부링크]

do while, switch, case, if else, for, else if, break, random, continue 활용한 연습문제 스스로 풀기 1. 메인 메소드 포함한 실행용 클래스 작성 package logic.test; //TestMain 에서 Menu 사용 import logic.view.Menu; public class TestMain { public static void main(String[] args) { System.out.println("- 변수/연산자/제어문 연습 -"); // // TestMain 클래스의 main() 메소드에 구현 내용 // => Menu 클래스의 displayMenu() 메소드 실행되게 작성함 Menu.displayMenu(); } } 2. do whi..

자바 기초 | 변수와 연산자 연습문제 스스로 풀기, 합차곱나누기몫, 면적둘레, 문자열문자추출, if else 합격불합격, 삼항연산자 [내부링크]

변수를 이용해서 사칙연산 수행 프로그램 짜기 메인 메소드 포함한 실행용 클래스 생성 기능제공용 클래스 생성 [문제 1] 메소드명 : public void example1(){} 실행내용 : 정수 두 개를 입력받아, 두 수의 합, 차, 곱, 나누기한 몫과 나머지 출력 => 입력예 첫번째 정수 : 23 두번째 정수 : 7 => 출력예 계산식 더하기 결과 : 30 --> (값1 + 값2) 빼기 결과 : 16 --> (값1 - 값2) 곱하기 결과 : 161 --> (값1 * 값2) 나누기한 몫 : 3 --> (값1 / 값2) 나누기한 나머지 : 2 --> (값1 % 값2) ---------------------------------- [문제 2] 메소드명 : public void example2(){} 실행내용..

자바 기초 | 이클립스, 패키지, 클래스 생성, 메인메소드 [내부링크]

이클립스 작업 순서 상위 --> 하위 순서로 생성 project생성 --> src --> package생성(실행형(메인패키지), 기능제공형(메소드) 각각 생성) --> class생성(여러 단어 조합해서 무엇인지 알 수 있도록 이름 정하기. 단어의 첫글자 대문자 규칙) 클래스 이름 정하기 예시1) Main 예시2) VariableSample 메인 메소드의 시그니처(signature of main method) public static void main(String[] args) { } public static void : 메소드 main : 메소드 이름 String : 클래스 [ ] : 배열 args : 변수 { } : 바디

자바 기초 Basic of Java | this() 생성자와 참조변수 this, this( ) constructor & Reference variable this [내부링크]

this( ) 생성자 ( this( ) constructor ) 생성자에서 다른 생성자 호출시 사용 메서드 구현부의 첫 줄에만 사용 가능함. 상기. 생성자(constructor)가 하는 일: iv(instance variable) 초기화 Why? 코드의 중복 제거. Car ( ) { this ("white", "auto", 4) ; } ------------------------------------------------ Reference variable(참조변수) this Instance method(인스턴스 메서드)에서 사용가능. local variable(지역변수), instance variable(인스턴스변수)을 구분할 때 사용함. 인스턴스 자신을 가리키는 Reference variable(참조변..

자바 기초 Basic of Java | What is Constructor? 생성자란? [내부링크]

Constructor (생성자) iv(instance variable) 초기화 메서드(method) 규칙 1. 클래스 이름과 같아야 함 2. void를 안 붙임 (return 값이 없음) 3. 모든 클래스는 1개 이상의 생성자가 있어야 함 Default Constructor (기본생성자) 매개변수가 없다. 직접 입력해주어야 한다. ex) Point() {} //==> Point 클래스의 기본생성자임 (Point는 클래스 이름) 참고. 기본생성자가 없는데도 오류가 나지 않을 경우와 그 이유: 클래스 안에 생성자(Constructor)가 하나도 없을 때는 컴파일러가(compiler) 자동으로 기본생성자(default constructor)를 추가해준다. 고로, 오류가 나지 않는다. Parameter Cons..

자바 기초 Basic of Java | How to use Overloading? 오버로딩 사용법 [내부링크]

Overloading(오버로딩) = Method Overloading 규칙) 매개변수 타입은 달라야 하며, 같은 기능을 수행하는 것이 오버로딩이다. --------------------------------------------------------------- ex) class MyMath3 { int add (int a, int b) { } long add (long a, long b) { } int add (int [ ] a) { } } add : 메서드 이름이 동일하니, 같은 기능을 수행한다. int long int [] a 각각 다른 매개변수 타입을 가진다. --------------------------------------------------------------- println() 메서드..

자바 기초 Basic of Java | What is 'Method'? 도대체 메서드란 무엇인가? [내부링크]

Method 메서드 메소드 메서드 그놈의 Method는 도대체 정체가 무엇이냐!! 영어에서 똑같은 단어를 반복하는 것을 싫어하듯이, 코딩에서도 똑같은 코드를 반복하는 것을 싫어한다. 고로, 코드의 중복을 없애기 위해서 코드 블럭을 하나로 묶어서 Method(메소드)라는 명칭으로 부르고, 각각 개별 Method의 이름은 내 맘대로 붙여준다. ex) 이게 Method(메소드)다. static void printArr (int [] numArr) { for (int i = 0; i

자바 기초 | 배열의 출력, Print of array in Java [내부링크]

배열의 출력 int[ ] arr = {1, 2, 3, 4, 5}; 예시1) System.out.println(arr); ===> I@132524bb 형식으로 출력됨 예시2) char[ ] ch = {'a', 'b', 'c', 'd', 'e'}; System.out.println(ch); ===> abdce로 출력됨 (문자형식일 때만 문자그대로 출력됨) 배열의 값을 그대로 출력하려면 아래와 같이 해야 함. 방법1. for (int i=0; i

자바 기초 | 배열의 초기화, Array initialization in Java [내부링크]

배열의 초기화 (Array initialization) : 각각의 배열에 처음으로 값을 저장 기본적으로 0으로 초기화되지만, 특정 초기값이 필요할 경우 직접 초기값을 저장해 줌. 방법1. int[ ] score = new int[5]; score[0] = 50; score[1] = 60; score[2] = 70; score[3] = 80; score[4] = 90; 방법2. ===> 규칙이 있을 경우, 아래와 같은 방법으로 만들 수 있다. for (int i=0; i 규칙이 없을 경우, 아래와 같이 더 간단하게 만들 수 있다. int[ ] score = {50, 70, 40, 19, 30};

자바 기초 | 배열의 길이, Length of arrangement in Java [내부링크]

배열의 길이 구하는 방법 ex) int [ ] arr = new int [5]; int temp = arr.length; temp에 arr배열의 길이 5가 저장된다. 왜 배열의 길이를 구해야 하나? 아래와 같은 경우 배열의 길이를 활용하면 실수를 줄일 수 있다. -------------------------------------------- int[ ] score = new int[5]; for (int 1=0; i 아래와 같이 배열의 길이로 변경 for (int 1=0; i

자바 기초 | 배열 기본개념, Arrangement of Java [내부링크]

배열 (arrangement) : 같은 타입의 변수들을 하나로 묶어 다룸 예시) int [ ] score = new int[3]; (배열의 선언과 생성을 한 번에 한 것) 배열 작성방법 1. 배열 선언하기 (참조변수 선언) 1) 타입[ ] 변수이름; ex. int[ ] score; 2) 타입 변수이름[ ]; ex. int score[ ]; 2. 배열 생성하기 (저장공간 생성) 변수이름 = new 타입[길이]; ex. score = new int[5]; * 참조변수: reference variable

DATABASE | 오라클 알아보고 설치하기 Oracle Install [내부링크]

오라클(Oracle) 오라클은 비싸다. 개인이 사용하기 부적절하다. BUT. 오라클을 사용하는 기업에 들어가 일을 하기 위해서 사용해 보고 공부를 해야 한다. 어도비 체험판 비슷한 느낌으로 생각하면 적절할 듯하다. 오라클이 제공하는 버전이 여러 가지가 있는데, 공부용으로 사용하기에 Express edition이 적절하다고 한다. 'oracle express edition 18c' 이라고 구글에 검색을 하면, 오라클 사이트가 나온다. 파일을 다운로드 받아서 압축을 풀어준다. (다운로드 받으려면 오라클 계정을 만들어서 로그인을 해야 할 거다.) setup.exe 파일을 실행해서 설치해주면 된다. 비밀번호 설정은 내 마음대로 하면 된다. 작업표시줄 윈도우 메뉴에서 Oracle 폴더를 찾을 수 있다. 설치가 정..

DATABASE | 데이터베이스란 무엇인가? (What is DATABASE?) [내부링크]

Database : 거대하고 복잡한 데이터를 다루기 편리하게 하기 위해서 만들어진 개념이다. (거대한 데이터를 파일 몇개로 관리할 수 없잖아?) 데이터의 입력과 출력이 필요함 Input: Create, Update, Delete Output: Read C -> R -> U -> D 2021 DB Ranking 구글에 검색하면 랭킹을 알려주는 사이트들이 나온다. Oracle 비싸다. 국가지자체나 큰기업에서 쓴다. 엄청 중요한 데이터를 다룬다면 써야겠지? 무료 버전도 있다.(기능제한있음) MySQL 무료 오픈소스. 작은 회사나 개인이 쓰면 좋다. 공통점 : Relational DBMS (관계형 데이터베이스)

DATABASE | Subquery (서브쿼리)란? Select문을 알면된다. [내부링크]

오라클 SQL ------------------ Subquery (서브쿼리) 서브쿼리란? : Select문 안에 Select문을 사용하는 것 SELECT EMP_NAME FROM EMPLOYEE WHERE DEPT_ID = '10'; //--> 소속부서의 ID Subquery (서브쿼리) 사용하여 기술하면 아래와 같다. SELECT EMP_NAME FROM EMPLOYEE WHERE DEPT_ID = (SELECT DEPT_ID FROM EMPLOYEE //--> 소속부서의 ID를 Select문을 사용하여 추출 WHERE EMP_NAME = '정주영'); 메인쿼리 : 기본 Select문 서브쿼리 : 기본 Select문 안에 있는 Select문

DATABASE | SET 연산자에서 IN 연산자 (IN Operator)의 의미 [내부링크]

오라클 SQL --------------------- SET 연산자 (SET Operator) SELECT EMP_NAME JOB_TITLE FROM EMPLOYEE JOIN JOB USING (JOB_ID) WHERE JOB_TITLE IN ('대리', '사원') ORDER BY 2, 1; 여기에서 IN 연산자 (IN Operator) WHERE JOB_TITLE IN ('대리', '사원')은 WHERE JOB_TITLE = '대리' AND JOB_TITLE = '사원' 과 같은 의미임 위 예시에서는 직원테이블에서 직급명이 대리와 사원인 직원의 이름과 직급명을 추출한다.

DATABASE | SET 연산자 Dummy Column(더미칼럼) 사용방법과 사용이유 [내부링크]

오라클 SQL ------------------------- SET 연산자에서 Dummy Column(더미칼럼) 사용방법과 사용이유 Dummy Colum = 가짜 칼럼 : 개수 맞추기용 SELECT EMP_NAME JOB_ID HIRE_DATE UNION SELECT EMP_NAM DEPT_ID NULL NULL : 위에 있는 쿼리와 항목 개수가 맞아야 요류가 나지 않기 때문에, 개수를 맞추기 위해 가짜 칼럼(Dummy Colum)인 NULL을 사용한다.

DATABASE | SET 연산자 UNION, UNION ALL, INTERSECT, MINUS, ORDER BY [내부링크]

오라클 SQL ----------------------- 1. SET 연산자 (SET Operator) UNION 중복 값은 제거하고 합침 UNION ALL 중복 값 포함하여 합침 INTERSECT 중복 값만 표시 MINUS 1에서 2와 겹치는 값을 제거하고 표시 JOIN 과 UNION의 차이점 : JOIN은 열끼리 합치고, UNION은 행끼리 합친다. 2. SET 연산자에서 ORDER BY 사용방법 (SET Operator, ORDER BY) A 쿼리 UNION B 쿼리 ORDER BY 2, 1; --> 마지막 쿼리에서만 ORDER BY를 기술하여야 한다. A 쿼리에서 별칭이 쓰였고, B 쿼리에서 별칭이 안 쓰였을 때 : ORDER BY에 별칭을 못 씀. --> 해결 방법 : 항목의 순번으로 ORDER..

DATABASE | GROUP BY 함수에서 칼럼명과 계산식만 사용 가능한 이유 [내부링크]

오라클 SQL -------------- GROUP BY 함수 칼럼명과 계산식만 사용 가능한 이유 : 실행순서 때문이다. 작성순서 SELECT FROM WHERE GROUP BY ORDER BY 실행순서 FROM -> WHERE -> GROUP BY -> SELECT -> ORDER BY ④ SELECT ① FROM ② WHERE ③ GROUP BY ⑤ ORDER BY

DATABASE | SQL 기본, SELECT 구문의 사용방법 [내부링크]

SQL (Structured Query Language) BASIC SELECT 키워드 (SELECT Keyword) 기본 구문 SELECT * FROM TABLE_NAME WHERE SEARCH CONDITION; (* : asterisk, 모든 칼럼 조회) ex) SELECT EMPLOYEE_NAME, SALARY, EMPLOYY_ID 조회하고자 하는 칼럼을 쉼표로 구분하여 나열. 마지막 칼럼 뒤에는 아무것도 붙이지 않음. (~~정보를 가져오겠다고 알려주는 문장) FROM TABLE_EMPLOYEE SELECT 문에서 조회하고 싶다고 기술한 칼럼이 포함된 테이블 표기. WHERE 찾고 싶은 행을 기술 논리 연산자 사용하여 제한 조건 걸기. 조건에 맞는 데이터만 Result Set에 나온다. ex) 사..

DATABASE | 데이터베이스 기초 개념 잡기 (구조 파악하기) [내부링크]

DATABASE & DBMS 1) 데이터베이스(DATABASE) 공용데이터, 통합데이터, 저장데이터, 운영데이터 등을 통합 저장하고 있는 데이터 집합. 조직 내의 여러 시스템에서 사용할 수 있도록 중복 데이터 최소화. 2) DBMS (Database Management System) Database 관리 프로그램 : DBMS은 Database의 데이터를 관리하는 프로그램이다. (저장, 검색, 수정) ex) Oracle, MySQL 등등 관계형 데이터베이스 특징 1. 2차원 테이블 형태로 데이터를 표현 2. 테이블 간의 비즈니스적 관계(Relationship)를 도출하는 구조 3. 데이터 중복 최소화 가능 4. 업무 변화에 유연한 대응 가능 SQL (Structured Query Language) 관계형 ..

인공지능, 머신러닝, 딥러닝 개념 구분하기 [내부링크]

구글링을 통해 찾는 자료 중에서 가장 처음 접하게 되는 자료의 유형은, 누군지 모르는 사람이 작성한 블로그 글이나 QnA 형식의 글, 혹은 위키피디아 같은 것들이다. 그리고 누군가 만들어 올린 유튜브 영상도 있다. 그런데, 이런 과정에서 유의해야 할 점은 무엇이 맞고, 무엇이 틀린 정보인지 분간을 해야 한다는 것이다. 인공지능, 머신러닝, 딥러닝 분야에 관하여 본인이 이미 어느 정도 지식을 가지고 있는 상태라면, 엉터리 정보는 분간이 갈 것이다. 허나, 아예 지식이 전무한 초심자가 그런 정보의 옳고 그름을 명확히 분간하기에는 어려움이 있다. 내가 5월 경, 처음 머신러닝과 딥러닝의 차이를 알아보기 위해 구글링을 했을 때 보았던 자료들이 엉터리였다는 것을 이제 알게 되었다. 오늘부터 고려대 교수의 딥러닝 ..

카카오뱅크 공모주 청약 마감일 최종 경쟁률, 어느 증권사에 몰렸나 [내부링크]

7월 26일, 27일 양일간 카카오뱅크 공모주 청약이 있었다. 인공지능 기술을 활용해서 주식 수익을 증대할 확률을 높일 수 있는 어떤 것을 만들어보고 싶은 생각이 스쳐 지나간다. 그건 그렇고, 기존에 한국투자증권 계좌가 있었지만 다른 증권사 계좌를 새로 개설해서 청약을 했다. 아무래도 한국투자증권은 개인투자자 비중이 가장 크다 보니, KB증권 다음으로 배정된 물량이 가장 많았지만 개인투자자가 몰릴 것을 예상하면 단지 배정된 수량이 많은 건 경쟁률과 상관이 없을 수 있기 때문이다. 27일 4시까지가 청약 마감이었고, 이제 최종 경쟁률을 알 수 있게 되었으니 살펴보겠다. 아 참고로, 내가 볼 때는 어쨌든 본질은 은행주이기 때문에, 어느 정도 수익에 한계가 있다고 생각한다. 그럼에도 청약을 한 이유는 공모주에..

딥러닝 작동방식과 오버피팅 (How Deep Learning Works? & Overfitting) [내부링크]

Deep Learning Computation Procedure ① Deep Learning Model Setup (딥러닝 모델 만들기) 딥러닝 모델 만들기 단계에 포함되는 내용은 아래와 같다. MLP, CNN, RNN, GAN, Customized Model Hidden Layers, Units, Input/Output Cost Function, Optimizer Selection 이 모델의 Hidden Layer는 4개이고, Unit은 각 레이어 당 7개이다. 레이어와 유닛이 많아질수록 정교한 분류가 가능해진다. 예를 들어, 사과와 체리 같이 분류가 어려운 경우에 정교한 분류가 필요하다. ② Training (모델 훈련하기) 모델에 대량의 데이터를 집어넣는 단계이다. Input: Data, Outpu..

Linear Regression 선형회귀분석의 Learning rate (수식과 그래프) [내부링크]

아래의 순서로 선형분류기를 정리할 것이며, 이번 글에서는 Linear Regression의 Learning rate에 대해 기술한다. 1) Linear Regression (선형회귀분석) 2) Binary Classification (이진분류기) 3) Softmax Classification (다중분류기) 선형회귀분석(Linear Regression)의 기본 구조가 궁금하다면 아래의 글을 참고하길 바란다. Linear Regression 선형회귀분석의 기본 구조 (수식과 그래프) Learning Rate를 구하는 방법 α : Learning rate Learning rate(α)가 너무 크면 Overshooting이라고 하며, 2차 함수의 기울기가 0이 되는 지점까지 도달하지 못하고 튕겨나갈 수 있다. ..

시간을 통제하는 시간관리 (1년 동안 설정한 목표를 다 이루는 법) [내부링크]

약 한 달 만에 글을 작성한다. 공부도 해야 하고, 갑자기 잡일이 많아져서 블로그 글을 쓸 시간이 없었다. 시간이 없다라는 말. 그 속에 있는 뜻을 간파해야 한다. A를 할 시간은 있어도, B를 할 시간은 없다라는 말이다. 인생에 시간은 유한하고, 나의 시간은 나의 성장을 위해 써야 한다. 내가 약 2년 전에 시간관리 매트릭스라는 시간표에 기반해 시간을 관리하는 방법을 알고 난 뒤, 1년 동안 그대로 시간을 사용한 결과, 연초에 설정한 목표를 90% 이상 이룰 수 있었다. 나는 이 방법이 효과가 크다는 것을 체감했고, 나에게 맞게 조금 방식을 수정해서 2021년이라는 시간을 사용하고 있다. 목표를 분명히 설정하고 시간을 사용하는 것과, 목표 없이 시간을 사용하는 것은 엄청난 차이를 남긴다. 목표를 설정하..

Linear Regression 선형회귀분석의 기본 구조 (수식과 그래프) [내부링크]

Linear Functions (선형분류기) 선형분류기에는 Linear Regression, Binary Classification, Softmax Classification 세 가지가 있다. 선형분류기를 기반으로 기본적인 인공신경망을 이해할 수 있다. 그리고 이 인공신경망이 진화한 것이 딥러닝 구조이다. 선형분류기를 먼저 학습하는 이유는, 이론들이 점점 진화하면서 조금씩 발전하여 만들어졌기 때문에 근본적인 구조를 이해하면 Neural Network를 더 잘 이해할 수 있기 때문이다. 아래의 순서로 선형분류기를 학습하며 정리할 것이며, 이번 글에서는 Linear Regression의 기본적인 구조에 대해 기술한다. 1) Linear Regression (선형회귀분석) 2) Binary Classifica..

딥러닝 주요 모델 CNN vs. RNN 개요 및 실생활 예시 [내부링크]

CNN(Convolutional Neural Network) 2차원 이상의 입력을 받기 위해 만들어졌다. 주로 시각 정보 학습(visual information learning)에 사용되는 인공신경망이다. RNN(Recurrent Neural Network) 시간 정보를 가지는 벡터를 다룬다. 시간의 지남에 따른 경과를 담는다. 예를 들어 주식 가격 예측, 비트코인 가격 변동 같은 것이 있으며, 시계열 정보 처리(time-series information learning)를 위해 사용되는 인공신경망이다. CNN이 사용되는 경우(Visual Learning) - Object Recognition : 사물을 알아맞추는 것 (ex. 자동차를 바운딩박스 처리) - Object Identification : 사물..

Tableau Study 12. Tableau에서 Python을 통한 예측 결과 시각화 [내부링크]

데이터 시각화 솔루션인 Tableau에서 Python으로 구현한 머신러닝 모델을 적용한 결과를 대시보드에 나타낼 수 있다. 태블로에서 TabPy라는 패키지를 개발해서 제공한다. (TabPy = Tableau Python Server). Tableau Public에서는 사용할 수 없고, Tableau Desktop에서 사용할 수 있는데, 현재는 Tableau Creator에 Desktop이 포함된 형태로만 제공한다. (현재, Tableau Online에서도 Analytics 확장 프로그램을 추가하면 Online에서도 TabPy를 사용할 수 있다.) Prophet을 통한 예측 결과 태블로 시각화 사례 SARIMAX를 통한 예측 결과 태블로 시각화 사례 (자세히 살펴보니 이거는 SARIMAX가 아니라 SARI..

[Tableau] TabPy와 Python을 사용한 Demand Forecasting [내부링크]

Table of Contents Introduction 환경 준비 TabPy와 Tableau 연결 Tableau에서 Python을 사용한 수요 예측 Conclusion References Introduction Business Intelligence 대시보드를 구축하기 전 단계인 환경 설정부터, SARIMAX 모델을 Tableau에서 사용하여 수요 예측을 하는 단계까지의 과정과 방법을 담았다. 이 글을 보면 다른 자료를 찾아다니지 않아도 수행 가능하도록, 태블로에서 TabPy를 사용하여 모델을 구동하는 과정을 모두 정리하였다. 환경 준비 파이썬 설치 -> 파이썬 가상환경 준비 -> TabPy 설치 -> TabPy와 파이썬 가상환경 연결, 순서로 Python과 TabPy를 사용할 수 있는 환경을 만..

AWS 컨퍼런스 - Amazon SageMaker, Amazon Forecast를 중심으로 [내부링크]

Table of Contents AWS Conference를 통해 느낀 점 Amazon SageMaker에 대하여 Amazon Forecast에 대하여 AWS AI/ML/DL 공부할 수 있는 자료 AI/ML/DL을 다루는 AWS 컨퍼런스에 참여하여 강연을 들었다. 너무 재미있어서 눈을 뗄 수 없었다. 식사를 안 하고 강연을 듣게 되어서 배가 고팠지만, 뭔가에 집중하게 되면 배고픈 것을 잊어버리는 사람인지라 몇 시간을 쭉 강연에 집중했다. 이전에 교육 기관을 통해 인공지능을 공부할 때 가장 비효율적이고 아쉬웠던 점이 이론들이 현실 세계의 현업(실무)에서 어떻게 활용되고 어떤 시스템으로 사용되고 있는지에 대한 정보를 전혀 알 수 없었다는 것이다. 현업에서 어떻게 쓰이는지 물어보아도 대답해 줄 수 있는 사람이..

Python Web Scrapper: 파이썬 웹스크래퍼 구현 (Back-end) [내부링크]

Table of contents 0. Introduction 1. The procedure of scrapping data 2. The main procedure for making a web scrapper 3. Save to CSV file 4. Error history 5. Conclusion 6. References Introduction 비즈니스 영역에서 활용도가 높은 스크래퍼를 직접 만들어보았다. 이번 글은 Python을 사용하여 Web Scrapper를 구현하는 과정 중 Back-end 작업에 해당하는 핵심적인 내용을 정리하였다. The procedure of scrapping data 웹 스크래퍼를 구현하기 위해 스크래퍼가 어떻게 웹사이트에서 데이터를 가져오는지 개념 정리가 필요하다. 우선..

URL Checker | url 유효성 체크 기능을 구현한 코드 탐색 [내부링크]

Table of contents 0. Introduction 1. My codes & The way of more effective coding 2. Conclusion 3. References Introduction 파이썬 외장 라이브러리 중 request의 기능을 공부하는 차원에서 URLs Checker를 구현해 보았다. 사용자에게 url을 입력받아 각 url이 유효한지 유효하지 않은지 판별할 수 있는 코드를 짰다. 이 과정에서 효율적인 코드에 대해서 생각을 해 보게 되었고, 사용자 정의 함수(function)의 유용성에 대한 이해도를 높일 수 있었다. 내가 짠 코드를 보면서 코드를 왜 이렇게 짰는지를 설명해 보고, 더욱 효율적인 코딩을 하는 방법에 대한 인사이트를 탐구해 보겠다. My codes &..

[프로그래머스] SQL 고득점 Kit - STRING, DATE 문제 풀이 [내부링크]

프로그래머스 코딩테스트 문제 중에 SQL 고득점 Kit이라는 문제 세트가 있다. 해당 문제들을 직접 풀어서 결과를 정리해 보겠다. 이번 글은 STRING, DATE를 다루는 문제이다. 문제 1 우선, 이 문제는 문제 지침에 오류가 있는 듯하다. 정렬 순서 예시에 나온 데로 정렬하려면 더 복잡한 코드가 필요하다고 생각되나, 그냥 전체 컬럼을 오름차순으로 정렬하는 게 정답이라고 나온다. 그리고 REGEXP 문을 써도 같은 결과가 나오는데 그건 채점 결과에서 틀렸다고 나온다. 그냥 간단하게 이름을 나열하고 이름이 이 중에서 같은 동물을 찾을 수 있도록 IN을 사용하면 정답이 된다. 문제 2 특정 문자를 포함하는 데이터를 조회하는 문제이다. LIKE '%문자%'를 사용한다. '%문자' 또는 '문자%'를 사용하여..

[프로그래머스] SQL 고득점 Kit - JOIN 문제 풀이 [내부링크]

프로그래머스 코딩테스트 문제 중에 SQL 고득점 Kit이라는 문제 세트가 있다. 해당 문제들을 직접 풀어서 결과를 정리해 보겠다. 이번 글은 JOIN을 활용하는 문제이다. 문제 1 두 개의 테이블 중 하나의 테이블에는 정보가 있고 다른 하나의 테이블에는 정보가 없는 경우를 찾아서 조회하는 문제이다. 어느 테이블을 첫 번째로 지정하냐에 따라 코드 작성 결과는 달라질 수 있고, LEFT JOIN 혹은 RIGHT JOIN 중 어느 것을 사용해도 조회 결과는 같게 만들 수 있다. 문제 2 오기재로 인해 인과관계가 불명확한 데이터를 찾는 문제이다. JOIN 문은 문제 1과 동일한 원리이고, WHERE 절에서 요구하는 조건에 해당하는 데이터만 조회할 수 있도록 하는 코드를 입력하면 된다. 문제 3 한쪽 테이블에 데..

[프로그래머스] SQL 고득점 Kit - IS NULL 문제 풀이 [내부링크]

프로그래머스 코딩테스트 문제 중에 SQL 고득점 Kit이라는 문제 세트가 있다. 해당 문제들을 직접 풀어서 결과를 정리해 보겠다. 이번 글은 IS NULL을 다룬다. 문제 1 특정 컬럼에서 NULL값을 가지는 행을 추출하는 문제이다. WHERE 절에 IS NULL을 사용한다. 문제 2 특정 컬럼에 값이 채워진(NULL이 아닌) 행을 조회하는 문제이다. WHERE 절에 IS NOT NULL을 사용한다. 문제 3 특정 컬럼의 값 중에서 NULL 값이 존재하는 경우 다른 값으로 치환하여 출력하는 문제이다. SELECT 절에 IFNULL(컬럼명, '치환할 값')을 사용한다.

[프로그래머스] SQL 고득점 Kit - GROUP BY 문제 풀이 [내부링크]

프로그래머스 코딩테스트 문제 중에 SQL 고득점 Kit이라는 문제 세트가 있다. 해당 문제들을 직접 풀어서 결과를 정리해 보겠다. 이번 글에서는 GROUP BY를 활용하는 문제들을 풀고 정리한다. 문제 1 그룹별로 데이터의 개수를 집계하는 문제이다. SELECT 절에서 COUNT()를 사용하고, GROUP BY를 통해 Cat과 Dog로 그룹을 만들어주면 그룹별로 데이터의 개수를 출력할 수 있다. (마지막에 ORDER BY 지정해주어야 한다. 당연히 알파벳 순서라 Cat -> Dog 순서로 출력되니까 ORDER BY 지정하지 않아도 되는 줄 알았는데 ORDER BY 적어주지 않으면 채점 결과에서 틀렸다고 나온다.) 문제 2 NULL인 값을 제외하고 2번 이상 쓰인 이름이어야 하고, 그 이름에 해당하는 데이..

[프로그래머스] SQL 고득점 Kit - SUM, MAX, MIN 문제 풀이 [내부링크]

프로그래머스 코딩테스트 문제 중에 SQL 고득점 Kit이라는 문제 세트가 있다. 해당 문제들을 직접 풀어서 결과를 정리해 보겠다. 이번 글에서는 SUM, MAX, MIN을 활용하는 문제를 풀어 정리했다. 문제 1 해당 컬럼 값 중에서 최댓값을 조회하는 문제이다. SELECT 시, MAX(컬럼명)을 사용해서 컬럼의 최댓값을 조회하도록 한다. 문제 2 해당 컬럼 값 중에서 최솟값을 조회하는 문제이다. SELECT 시, MIN(컬럼명)을 사용해서 컬럼의 최솟값을 조회하도록 한다. 문제 3 고유값을 가지는 컬럼을 지정하여 고유값의 개수를 조회하는 문제이다. ANIMAL_ID는 중복 값이 없는 고유값이기 때문에 동물의 마리 수를 세는 데 적합하다고 판단하였으며 SELECT COUNT(컬럼명)을 사용하였다. 문제 ..

[프로그래머스] SQL 고득점 Kit - SELECT 7문제 풀이 [내부링크]

프로그래머스 코딩테스트 문제 중에 SQL 고득점 Kit이라는 문제 세트가 있다. 해당 문제들을 직접 풀어서 결과를 정리해 보겠다. 문제 1 ANIMAL_INS 테이블에서 여러 컬럼 조회하기 문제이다. 해당 테이블의 모든 값을 조회하면 되는 것이라 SELECT * 을 사용해도 같은 결과가 나온다. 문제 2 특정 컬럼을 기준으로 역순으로 정렬하여 조회하는 문제이다. ORDER BY DESC 사용. 문제 3 특정 조건에 해당하는 값을 조회하는 문제이다. WHERE 구문을 사용한다. 문제 4 특정 조건에 해당하는 값을 제외한 값만 출력하는 문제이다. WHERE 구문에서 !=을 사용한다. 문제 5 특정 컬럼들만 조회하는 문제이다. ANIMAL_ID 순으로 조회하라는 지침이 있는데 SQL 기본 세팅이 오름차순이라 ..

Django(장고)는 무엇이며 어떠한 경우에 사용하는 것인가 [내부링크]

한 줄 요약 : Django는 파이썬으로 만들어진 무료 오픈소스 웹 애플리케이션 프레임워크이다. Table of the contents 0. Introduction 1. What is the Django? 2. What is the appropriate case for using Django? 3. Conclusion 4. References Introduction 프로그래밍 언어인 Python으로 만들어진 웹 프레임워크(web application framework) Django가 무엇인지 알아보고, 어떠한 경우에 사용하면 가장 효율적이고 빠른 작업을 수행할 수 있는지 공부해 보겠다. What is the Django? Django는 쉽고 빠르게 웹사이트를 개발할 수 있도록 돕는 구성요소로 이루어진 웹..

[딥러닝] 가위 바위 보 판별 Accuracy 높이는 방법 탐구 [내부링크]

딥러닝 기술적 측면 중심의 글을 발행하게 되면서, '왜 작성하게 되었나'에 대한 서론이 깁니다. Accuracy 높이는 방법만 궁금하신 분은 스크롤을 내려 해당 부분만 참고하시고, 서론을 읽고 싶은 분은 얼마든지 환영입니다. 서론 내가 인공지능 교육을 통해 머신러닝과 딥러닝을 공부하는 동안 비즈니스 실무 분야를 선택할 것인가, 딥러닝 연구 분야를 선택할 것인가에 관한 고민이 있었다. 공부를 하다 보니 엔지니어 영역은 기존에 컴퓨터공학을 제대로 전공했던지, 아니면 프로그래밍 능력이 출중하다던지 둘 중 하나가 우선 갖춰져야 하는 것이라는 걸 깨닫게 되었다. 그래서 나는 엔지니어 영역보다는 비즈니스 영역에 중점을 두고 직업인으로서의 진로를 집중하게 됐다. 그러다 보니 비즈니스 실무 영역에 더욱 도움이 될 만한..

ARIMA 모델의 학문적 정의와 비즈니스 활용에 관한 탐구 [내부링크]

0. Introduction 1. The academic definition of the ARIMA Model 2. The cases of the ARIMA model used in business areas 3. Conclusion Introduction 필자는 개인 프로젝트의 결과물을 도출하는 과정에서 Time-Series Data Forecasting을 위해 ARIMA 모델을 사용하였다. 데이터의 양이 충분하지 않았고, 일정 주기의 계절성을 가진 데이터, 그리고 날씨, 공휴일 등 환경적인 요인들의 영향을 많이 받는 비즈니스 데이터였기 때문에, 궁극적으로 이러한 요소들을 종합적으로 반영할 수 있는 SARIMAX 모델을 통해 수요(매출)예측을 하고 싶었다. 앞으로 데이터 필드에서의 전문성을 향상하기 위..

Demand Forecasting | SARIMAX 모델 공부 자료 모음 [내부링크]

SARIMAX 1. statsmodels 튜토리얼 SARIMAX: Introduction — statsmodels This notebook replicates examples from the Stata ARIMA time series estimation and postestimation documentation. ARIMA Example 1:..

모두의연구소 AIFFEL(아이펠) 인공지능 교육의 실체를 까발립니다. [내부링크]

인간이란 참 간사한 존재다. 나는 현재 모두의연구소에서 운영하는 AIFFEL(아이펠) 강남캠퍼스에서 AI를 공부하고 있다. 모두연에서 운영하는 아이펠에 오고 싶었던 가장 큰 이유 두 가지는 '문화'와 '진짜 AI 교..

파이썬 기초 | 변수 Variable, str, int, float, bool, none [내부링크]

변수(Variable) number a = 1 string b = 'lovely puppy' True False c = True 파이썬은 첫문자를 대문자로 써야 한다. 변수의 종류(Type of variable) string 문자 (str) number 정수(integer = i..

파이썬 기초 | 주석 넣기 [내부링크]

주석 # (comment) --> 사람을 위한 것. 컴퓨터는 못 읽음. --> 코드의 이해를 돕기 위해 사용. print('안녕') #문자열을 출력 print(12345) #숫자를 출력 print(2 + 3) #계산결과를 출력 >>> print('안녕'..

자바 기초 | 객체지향 언어 자바 이해하기, 메소드, 클래스, 출력 [내부링크]

Java는 객체지향 언어 C언어에서는 함수(function)라고 하는 것을 Java에서는 메소드(method)라고 한다. 그 이유는 자바(Java)는 객체지향 언어이기 때문이다. 객체지향 언어이기 때문에 클래스(Class)를 사용한다..

파이썬 기초 | 여러줄문자열, 출력끝지정, 이스케이프코드 [내부링크]

여러줄 문자열 '''     ''' """    """ >>> print('''첫 번째 두 번째 세 번째''') 첫 번째 두 번째 세 번째 >>> >>> print("""1 2 3 4 5 """) 1 2 3 4 5 >>> >>> print('''1 2 3 4 5''') 1 2 3 4 5 출력..

파이썬 기초 | 문자가져오기, 문자열분리하기, 메소드 [내부링크]

문자 가져오기 인덱스(Index) : 문자의 위치 인덱싱(Indexing) : 위치를 이용해서 문자열에 있는 문자를 가져오는 것 Python 012345 : 인덱스 abcde 01234 >>> alphabet = 'abcde' >>> print(alphabe..

파이썬 기초 | 문자열, 문자열연산 [내부링크]

문자열 '  ' (작은따옴표), " " (큰따옴표) my_str1 = 'a' my_str2 = '3.14' 작은따옴표, 큰따옴표 안에 숫자가 들어가면 숫자가 아니라 문자열이 된다. my_str3 = 'coding' my_str4 = "coding" 작은따옴표를 사..

파이썬 기초 | 변수, 할당연산자, 복합할당연산자, 변수이름 [내부링크]

변수 값을 저장하는 공간 할당연산자 >>> my_int = 1 >>> my_str = 'Python' >>> my_bool = True >>> my_list = [1, 2, 3] 오른쪽에 있는 값을 왼쪽의 변수에 할당(저장)한다. >>> my_int = 1 >>> print(my_int) 1..

파이썬 기초 | print() 함수, 연산자, 제곱, 몫, 나머지 [내부링크]

print() 함수 >>> print(1) 1 >>> print(3.14) 3.14 >>> print(4096) 4096 정수 혹은 실수 입력 가능 연산자 >>> print(1 + 2) 3 >>> print(3 - 4) -1 >>> print(5 * 6) 30 >>> print(7 / 8) 0.875 더하기 + 빼기..

전문가로 성공하기 | 프루브유어드림 [내부링크]

안녕하세요, 방문을 환영합니다. 개발자 블로그를 보면 독백체로 글을 쓰는 것이 시니컬하고 멋져 보이더군요. 이번 첫 글을 제외하고 앞으로는 저도 독백체로 글을 작성해 나가려고 합니다. 첫 글은 이 블로그에..