전체 글
[디자인패턴-생성패턴] 프로토타입 패턴(Prototype Pattern)
# 설명 객체를 만드는데 복잡하거나 여러자원이 소비되는 경우 프로토타입을 만들고, clone하여 사용하는 방식이다. 생성패턴중에 하나이다. 자바의 오브젝트 타입이 지원하는 clone()을 오버라이딩해서 사용한다. 단, super.clone()을 사용할 경우 인스턴스가 새로 생성되지만 얕은 복사가 된다. 그렇기 때문에 다른 곳에서 안에 객체를 수정할 경우 같이 수정 되기 때문에 깊은복사(deep-copy)를 할 수 있도록 재정의 해줘야 한다. # 코드 // Book.java package prototype; public class Book { private String title; private String author; public Book(String t, String a) { title = t; au..
[디자인패턴-생성패턴] 싱글톤 패턴(Singleton Pattern)
# 설명 소프트웨어(프로그램)내에서 하나의 인스턴스만 필요할때 사용한다. 하나의 인스턴스만이 사용되기 때문에 인스턴스 내 데이터를 쉽게 공유할 수 있다. # 코드 package singleton; import java.util.ArrayList; /* 싱글톤 패턴 요약 소프트웨어(프로그램 내) 하나의 인스턴스만을 사용하기 위해서 사용하는 패턴이다. static으로 선언하는 경우 클래스를 생성하지 않고, jvm에 올라가면서 메모리에 잡힌다. 이것을 이용한다. 디폴트 생성자를 private로 바꾸줌으로써 다른 곳에서는 해당 클래스의 인스터스를 생성할 수 없도록한다. getInstance메서드 역시 static으로 선언해야 한다. 왜냐하면 인스턴스 자체를 생성할 수 없기 때문에 static으로 정의하지 않으면..
[컴퓨터비전#2/09-14] 히스토그램, 히스토그램 평활화, 점연산(선형,비선형,디졸브),영역연산(상관,컨볼루션)
본 포스팅은 2022-09-14(수), 국민대학교 김장호교수님의 컴퓨터 비전 수업을 통해 배운내용을 정리하기 위해 작성하는 게시글입니다. [컴퓨터비전#1/09-07] 샘플링과 양자학, PTE, 정밀도(Precision), 재현율(Recall), 정확도(Accuracy) 본 포스팅은 2022-09-07(수), 국민대학교 김장호교수님의 컴퓨터 비전 수업을 통해 배운내용을 정리하기 위해 작성하는 게시글입니다. # 획득과 표현 컴퓨터 비전을 배우기에 앞서, 어떻게 사물이 devforyou.tistory.com # 영상처리 컴퓨터 비전을 사용하는 목적은 다양하다. 그리고 같은 사진을 다른 목적으로 바라보게 되면, 사진에서 필요한 요소도 달라진다. 그렇기 때문에 영상에대한 전처리과정이 필요하다. 영상처리는 이러한 ..
[데이터분석#1/09-14] 판다스, 넘파이, 맷플롯립을 이용해 영화 데이터 분석 및 시각화 하기
본 포스팅은 2022-09-14(수), 국민대학교 허대영 교수님의 소프트웨어융합최신기술 수업을 통해 배운내용을 정리하기 위해 작성하는 게시글입니다. # 시작하며 오늘 수업에서 최종 결과물로는 위 시각화 자료를 만드는 실습을 해봤다. 지금껏 전공수업에서는 이해하기위해서 안간힘을 썼는데, 이번 수업은 그렇지 않아서 나름 힐링 됐다. 수업 중에 실습했던 내용들을 바탕으로 궁금했던 것들을 하나씩 공부해보면서 정리하는 시간을 가지도록 하겠다. # 라이브러리 사용 import pandas as pd import numpy as np from matplotlib import pyplot as plt 판다스, 넘파이, 팻플롯립을 임포트해줘야 한다. 각 라이브러리의 기능을 잠깐 알아보자면, ## pandas 시리즈 및 ..
[인공지능#1/09-07] 인공지능의 정의, 교사학습, 비교사학습, 강화학습, 준교사학습, 모델의 유형
본 포스팅은 2022-09-07(수), 국민대학교 이재구 교수님의 인공지능 수업을 통해 배운내용을 정리하기 위해 작성하는 게시글입니다. # 인공지능(Artificial Intelligence) 정의 인간의 학습, 추론, 지각, 자연언어 이해 등의 지능적 능력을 인공적으로 구현하려는 컴퓨터 과학의 세부분야이다. "A machine that thinks or acts like human"말과 같이, 사람처럼 생각하고 행동하는 기계를 만드는 것이 목적이다. # 인공지능의 역사 초기 인공지능은 실제 뇌의 뉴런을 이용하여 인공지능을 만들기 위해서, 뉴런을 만들었지만 뇌는 매우많은 뉴런들의 유기적인 연결로 이루어지기 때문에 실패했고 현재의 딥러닝까지 발전했다. # 기계 학습 ( Machine Learning) 인간..