전체 글

CS/Software Engineering

[SE] 소프트웨어 프로세스

이 글은 충남대학교 김현수 교수님의 소프트웨어 공학 수업을 듣고 작성한 글입니다. 이번 시간엔 소프트웨어 개발 프로세스와 이때 사용하는 모델에 대해 알아보자 1. 소프트웨어 개발 프로세스- 프로젝트를 소규모 작업으로 구성하는 일반적인 접근 방법- 관리자와 팀원들이 다음 사항을 결정하는데 도움(무엇을 어떤 순서로 할 것인가)- 모델은 작업 방식을 엄격하게 규정하기 보다는 생각하는데 도움을 주어야 함- 각 프로젝트는 고유의 계획을 가지고 진행되어야 함. 즉흥적으로 프로세스를 개발할 수도 있다. 그러면 어떤 문제가 발생할까? 1. 구현하기 전에 요구나 설계 등의 중요성을 인식하지 못함2. 설계가 잘 되지 않으면 소프트웨어의 질이 떨어질 수 있음3. 목표 없이 일하게 됨4. 테스트나 품질 보증 같은 작업의 필요..

CS/Software Engineering

[SE] 소프트웨어 공학의 개요

이 글은 충남대학교 김현수 교수님의 소프트웨어공학 수업을 듣고 작성한 글입니다.소프트웨어공학 시험을 앞두고 암기를 어떻게 할까 고민하다가 블로그에 쓰기로 했다. 아마 그래서 다른 글보단 좀 자유로울걸...? 1. 소프트웨어란?과목의 이름이 소프트웨어공학이다. 컴공 전공생이라면 자주 들어봤을 소프트웨어라는 단어의 의미는 무엇일까? - 소프트웨어란 프로그램과 프로그램의 개발, 운용, 보수에 필요한 관련 정보 일체를 말한다. - 엔지니어링(공학) 작업의 결과는 프로그램 이외의 정보도 중요하며 S/W가 복잡해지면서 설계가 중요해졌다.   # 소프트웨어의 특징소프트웨어는 6가지 특징을 가진다.1. 손에 잡히지 않는다.  - 소프트웨어의 구조를 파악하기 쉽지 않다.2. 대량 생산하기 쉽다.  - 비용의 대부분이 개..

AI/MachineLearning

[ML] About Machine Learning

이 글은 충남대학교 양희철 교수님의 수업 내용울 바탕으로 작성한 글입니다. 우리가 본격적으로 분류와 회귀에 대해 알아보기 전에 머신러닝이 무엇인지 간략하게 알아보도록 하자1. 머신러닝이란? 컴퓨터 프로그램이 경험을 통해 과업수행 능력이 상승될 때, 과업의 수행 능력이 경험에 의해 상승하는 것을 말한다. (E : experience, T : task, P : performance)   기존의 프로그래밍은 데이터를 프로그래밍해서 결과를 도출했다면 머신러닝은 데이터와 output을 통해 새로운 데이터에 대한 예측을 하는 것이다! 여기서 Input과 output의 관계는 직접 정해주는 것이 아니라, 데이터를 통해서 학습한다. 즉 특정 모사를 하여 관계를 정의한다. 아까 정의를 설명할 때 task, experie..

CS/Computer Network

[CN] About Network-Layer

이 글은 충남대학교 김기일 교수님의 컴퓨터 네트워크 수업 내용을 바탕으로 작성하였습니다. 데이터 통신에서는 physical layer와 datalink layer에 대해서 배웠다. 컴퓨터 네트워크 시간에는 이들의 상위계층인 network layer에 대해서 학습할 것이다.1. Network layer Service  이 그림이 우리가 배울 내용을 다 나타내고 있다. 데이터 통신 시간에 배웠듯이 같은 네트워크에 있다면  ARP를 보내 MAC 주소를 받아서 직접 통신을 할 수 있다. 하지만 같은 네트워크에 있지 않다면 라우터를 통해 네트워크를 서로 연결해야한다.  어떤 경로로 보내느냐는 내가 데이터를 어느 목적지에 보내느냐에 따라서 달라진다. 다른 네트워크를 찾아갈 때 그리디와 같은 알고리즘을 이용한다.  ..

AI/DeepLearning

[DL] 딥러닝의 구조

이전 시간에 머신러닝 때 학습했던 내용 중 중요한 내용들에 대해서 정리해보았다. 오늘부터는 본격적으로 딥러닝에 대해서 학습해보도록 하자   1. 딥러닝이란? 인간의 두뇌에서 영감을 얻은 방식으로 데이터를 처리하도록 컴퓨터를 가르치는 인공지능 방식이다. 딥러닝은 머신러닝보다 그림, 텍스트, 사운드 및 기타 데이터의 복잡한 패턴을 인식하여 정확한 인사이트와 예측을 생성할 수 있다. 이러한 딥러닝 기술을 자동차, 항공, 우주, 제조, 전자, 의학 연구 및 기타 분야에서 여러 가지 사용 사례에 활용된다.   아래는 딥러닝이 AI의 어떤 범주에 있는지 나타낸 사진이다.    이러한 형식적인 정의를 뒤로 하고 딥러닝이 어떤 구조인지 알아보자!   2. 딥러닝의 구조  딥러닝은 앞에서 다뤘던 퍼셉트론 구조에서 은닉층..

AI/DeepLearning

[DL] 딥러닝을 위한 준비

딥러닝에 대해 본격적으로 알아보기 전에 머신러닝 내용에서 딥러닝에도 필요한 기본적인 내용들에 대해 다시 한번 짚고 넘어가도록 하자. # 퍼셉트론 신경세포뉴런과 비슷하게 입력 받은 데이터를 이용하여 선형 방정식을 통해 값을 계산하고, 계단 함수를 이용해 그 값이 임계치 이상이면 참, 미만이라면 거짓을 반환하는 것을 '퍼셉트론' 이라고 한다!$ 진행 과정1. 입력 신호가 들어오면 가중치(w)를 곱하여 가중합(z)를 계산한다.2.  z값이 양수라면 참, 아니라면 거짓을 반환한다.3. 계단함수를 통과한 값을 토대로 역전파 알고리즘을 이용하여 가중치와 bias를 업데이트한다.  아래의 사진은 3번 과정에 해당한다. 퍼셉트론은 가중치의 업데이트가 계단함수 통과 후에 일어난다. 계단함수를 통과한 값은 1 or -1이..

모각코/24년도 하계 모각코

[모각코] 최종 회고

모각코 6회차까지의 계획이 모두 끝났다. 지난 겨울 모각코는 복학하고 처음 해보는 것이다보니까 뭘 공부해야겠다, 얼마만큼 하겠다라는 목표가 없이 급급하게 하다보니까 머리 속에 남는 것이 별로 없었다.  하지만 이번 하계 모각코는 각오가 작년과는 달랐다. 이번 3학년 1학기를 지나오면서 내가 많이 부족하고 잘못된 방법으로 공부를 했구나, 간절하지 않았구나 생각했다. 그래서 이번 모각코를 기점으로 좀 더 체계적으로 공부를 하고 내가 어떤 분야에 흥미를 가지고 있는지, 뭘 공부하는 것이 맞을지 충분히 고민해보았다. 그 결과 AI 쪽에 대한 공부를 해보자고 마음을 먹었고 머신러닝을 모각코동안 공부해보았다. 먼저 교수님께 이쪽 관련 공부를 하고싶다고 연락을 드려 공부할 수 있는 교재를 대여받았고 이 교재를 보면서..

모각코/24년도 하계 모각코

[모각코] 6회차

학습목표 : 코딩테스트에 활용되는 다양한 알고리즘에 대해 학습하고 실습해보자 출처 : 코드트리 # 먼저 dx, dy 테크닉에 대해 알아보자!! (매우 중요) 1. 완전 탐색 2. DFS   3. BFS 느낀 점: 전공 공부와 내가 하고 싶은 AI를 공부하다보니 알고리즘 및 자료구조에 대해 좀 잊고 있었는데 알고리즘 특강을 통해 다시 공부하면서 공부한 내용을 정리할 수 있어서 너무 좋았다. 이번이 2번째 모각코 참여인데 지난번보다 더 체계적으로 내가 하고자하는 공부를 할 수 있도록 동기부여할 수 있었다는 점이 나에겐 너무 좋았다. 모각코 때의 이 방식을 잘 기억해서 평소 공부할 때도 계획적으로 잘 할 수 있도록 노력해야겠다.

모각코/24년도 하계 모각코

[모각코] 5회차

학습 목표 : 다양한 트리 알고리즘에 대해 학습해보자 # 느낀 점 : 오늘까지 해서 지도 학습에 대해 모두 학습하였는데 확실히 뒤로 갈수록 더욱 발전된 알고리즘이 나오지만 그만큼 내옹이 복잡해져서 어려웠다. 그렇지만 하면서 재미를 느꼈고 이를 어떻게 잘 활용하여 프로젝트를 할 수 있을까에 대해 생각해보는 의미있는 시간이 되었다.

모각코/24년도 하계 모각코

[모각코] 4회차

학습목표 : 다양한 분류 및 회귀 알고리즘, 경사하강법에 대해 학습해보자 # 경사하강법 # 느낀 점경사하강법이라는 단어를 많이 들어봤지만 뭔지는 잘 몰랐는데 공부를 하면서 조금이나마 더 뭔지 알 수 있었던 것 같다.확실히 이해하지는 못했지만 이 부분은 반복적으로 보면서 이해하면 되리라고 믿는다

Cho대뿟다
Dev를Even하게