학부 강의(139)
-
2022-10-09 소프트웨어공학_6
1. 프로젝트 계획서 프로젝트 계획서는 프로젝트 진행 과정의 주기적 통제하면서 프로젝트의 중심이 된다. 프로젝트 관리자는 프로젝트 계획서를 작성하기 위해서 아래에 나열된 작업을 수행한다. 프로젝트 task를 파악 각 task를 수행하기 위해 필요한 노력 예측 인적 자원 및 기타 자원을 task에 할당 일정 계획 수립 이후 프로젝트 참여자의 검토를 거쳐 합의 하에 채택한다. 당연히 프로젝트 계획서는 현실적으로 전체 프로젝트 진행상황 파악에 문제가 되진 않아야 한다. 또한 프로젝트 점검 및 통제는 주간, 월간 회의를 통해서 주기적으로 수행한다. 국제 표준으로서 IEEE-Std-1058 프로젝트 계획서 양식을 참고할 수 있다. 2. 프로젝트 팀 구성 프로젝트 참여자로는 프로젝트 팀장, 분석 및 설계자, 개발자..
2022.10.09 -
2022-10-06 데이터마이닝_5
1. Random Forest 기계 학습에서의 랜덤 포레스트는 분류, 회귀 분석 등에 사용되는 앙상블 학습 방법의 일종이다. 훈련 과정에서 구성한 다수의 결정 트리로부터 부류(분류) 또는 평균 예측치(회귀 분석)를 출력함으로써 동작한다. ( 출처 : https://ko.wikipedia.org/wiki/랜덤_포레스트 ) Decision Tree는 overfitting될 가능성이 높다는 약점을 가지고 있다. 가지치기를 통해 트리의 최대 높이를 설정해 줄 수 있지만 overfitting을 충분히 해결할 수 없다. 그러므로 좀더 일반화된 트리를 만드는 방법을 생각해야한다. 이에 Random Forest(랜덤 포레스트)가 사용된다. Random forest는 ensemble(앙상블) machine learnin..
2022.10.06 -
2022-10-05 AI입문_5
1. 인공 신경망의 뉴런 모델 가. 신경망 인간의 두뇌를 모방한 연결주의의 대표적 기술. 안정적인 학습 기능, 병렬 처리와 에러 감내(fault tolerance) 등의 장점. 나. 생물학적 신경망 Hebbian rule : 두 인접 뉴런이 동시에 발화하면 연결 강도 증가. : Fire Together Wire Together! : 그렇지 않으면 연결강도 감소 다. 뉴런의 연산 모델 입력 신호가 생기면 이를 각각의 가중치와 곱한다. 곱한 값들을 모두 더해서 편향 값을 더해 가중 입력합 v를 구한다. 활성화 함수를 통해서 최종적으로 출력값을 구한다. 편향 (bias) : 뉴런의 입력과 별도로 뉴런에 가해지는 값 임계치 (threshold) = (-1)*편향 라. 뉴런 연산의 벡터 표현 입력과 가중치를 행렬..
2022.10.05 -
2022-10-02 소프트웨어공학_5
1. 요구사항 개발 개발에 있어서 고객의 요구사항을 잘 파악하는 것만큼 중요한 것이 없다. 요구사항 개발은 발주자나 고객으로부터 구현될 소프트웨어 제품의 사양을 정확히 도출하여 요구사항을 명세하고, 이를 분석한 결과를 개발자들이 이해할 수 있는 형식으로 기술하는 작업이다. 1.1 요구사항의 분류 기능적 요구사항 : 목표로 하는 제품의 구현을 위해 소프트웨어가 가져야 하는 기능적 속성 (ex. 파일 저장 기능, 편집 기능, 보기 기능 등) 비기능적 요구사항 : 제품의 품질 기준 등을 만족시키기 위해 소프트웨어가 가져야 하는 성능, 안정성과 같은 행위적 특성 (ex. 성능(응답시간, 처리량), 사용의 용이성, 신뢰도, 보안성, 운영상의 제약, 안전성 등) 1.2 요구사항 개발 프로세스 1.3 요구사항 추출 ..
2022.10.02 -
2022-09-28 AI입문_4
1. 머신러닝 전통적 프로그래밍의 한계가 찾아옴. 프로그래밍을 통해 해결할 수 없는 문제가 많다. (ex. 필기체 숫자 인식, 얼굴 인식 등) 머신러닝의 개념 컴퓨터가 경험적 데이터(empirical data)를 학습해서 지능적으로 동작할 수 있는 기능을 갖추게 하는 인공지능의 세부 분야. 머신러닝의 기본 원리 머신러닝은 모델을 학습시켜 활용한다. 원시 모델 → 모델 학습 → 예측 모델 수학적으로 해석하면… 우리가 input(x)에 대하여 output(y)라고 대답하는 상황을 수학적으로 y = f(x)라고 표현해보자. 그리고 우리가 y = f(x)처럼 동작하는 프로그램을 머신러닝을 통해 만들려고 한다. 이 머신러닝은 아래와 같이 수학적으로 표현할 수 있다. 샘플 집합 S = {(x, y)}를 사용해서 f..
2022.09.29 -
2022-09-28 데이터마이닝_4
의사결정 트리 (Decison Tree) 결정 트리(decision tree)는 의사 결정 규칙과 그 결과들을 트리 구조로 도식화한 의사 결정 지원 도구의 일종이다. 모델 학습 시 각 변수마다 중요도(feature importance)를 계산한다. 출처 : https://data-make.tistory.com/75 출처 : https://ko.wikipedia.org/wiki/결정_트리 조건부 추론 트리 (Conditional Inference Tree) 조건부 추론 트리는 의사결정 트리(Decision Tree) + 통계적 유의성 확인(변수의 유의성)이 가능한 수치를 제공해주는 Tree다. 의사결정 나무 알고리즘에서 발생하는 두 가지 단점 해결 통계적 유의성에 대한 판단 없이 노드를 분할하면서 생기는 ..
2022.09.28 -
2022-09-25 소프트웨어공학_4
소프트웨어 프로젝트 프로젝트 : 유일한 제품이나 서비스를 만들기 위해 수행하는 일시적인 행동. 소프트웨어 프로젝트 프로세스 소프트웨어 제품 구상 기능 요구사항, 성능 요구사항 정의 투자 대비 효과를 예측하고 사업에 미치는 영향 파악 소프트웨어 제안 요청서 배포 외주를 줄 경우 개발 업체들에게 제안 요청서(RFP) 발송 제안서 제출 개발 업체들은 제안서를 작성, 제출 제안서 심사 계약서 작성 프로젝트 시작 및 수행 프로젝트 종료 및 제품 인도 소프트웨어 프로젝트 성공 요소 프로젝트 성공 요소 : 비용(Cost), 일정(Time), 품질(Scope/Quality) 이를 만족하는 성공률은 30% 정도로 낮았다. (그렇다네요?) 성공적으로 프로젝트를 마무리하기 위해선 프로젝트를 관리할 필요 있다. 이와 관련해 ..
2022.09.26 -
2022-09-21 데이터마이닝_3
wordcloud 데이터를 시각화하는 패키지 중 하나다. 위와 같은 단어로 이뤄진 이미지를 만들 수 있다. 참고 : https://cran.r-project.org/web/packages/wordcloud/wordcloud.pdf 패키지 설치 install.packages("wordcloud") 패키지 로드 library(wordcloud) 새로 켜서 사용할 때마다 로드해주기. wordcloud 실행 > data1 data2 wordcloud(names(data2),freq=data2, family="AppleGothic") 출처 : https://walkingfox.tistory.com/80 글자에 색상 넣기 > library(RColorBrewer) > palete wordcloud(names(dat..
2022.09.21