information(7)
-
[딥러닝]
특징점을 추출해서 스스로 학습시키는 모델이 머신러닝이였습니다. 그렇다면 특징점도 스스로 뽑게 할 순 없을까?라는 의문으로부터 시작된 방법이 표현학습입니다. 표현학습은 데이터들로부터 특징점 추출을 자동으로 학습하는 기계학습의 일종입니다. 이러한 표현학습을 좀 더 잘하는 학습을 딥러닝이라고 보면 됩니다. 딥러닝은 인공신경망에 기반하여 특징점을 추출하는 기계학습의 일종입니다. 인공신경망은 생물학적인 신경망에 영감을 받은 것으로 노드 간의 수많은 연결(조합)으로 만들어집니다. 뉴런은 정보를 취합하고 판단하고 출력합니다. 여기에 영감을 받은 인공 신경망이 퍼셉트론입니다. 위와 같이 계단처럼 생긴 함수를 step func이라하고, 입력 신호의 가중치 합이 어떤 임계값을 넘는 경우에만 뉴..
2024.06.26 -
[머신러닝]
초기의 인공지능 연구는 주로 한정된 규칙으로 이루어진 환경에서 성공을 거두었습니다. 컴퓨터는 0,1로 이루어져 있고 어마무시한 속도로 빠르게 계산하죠. 그렇기 때문에 규칙이 정해진 체스, 단순계산은 컴퓨터를 따라갈 수 없습니다. 그렇다 사람이 하는 일상적인 활동들을 컴퓨터가 할 수는 없을까?라는 물음에서부터 시작된 것이 바로 지식베이스를 기반한 접근 방식입니다. 하지만, 지식베이스에 모든 경우의 수를 넣기도 힘들뿐더러 확장한다고 하지만 항상 예외가 발생하고 오류가 발생했습니다. 그렇다면 사람이 모든 규칙을 추가하기에는 한계가 있기 때문에 컴퓨터가 스스로 규칙을 학습하게 하는 기술은 없을까?라는 물음에서 시작된 것이 바로 머신러닝(기계..
2024.06.26 -
[유전자 알고리즘]
우리 인류는 적자생존의 원칙을 기반하여 진화해왔습니다.교차, 돌연변이, 도태 등의 과정을 거쳐 우성 유전자만이 살아남았죠. 이러한 생물학적 개념으로부터 영감을 얻은 알고리즘을 유전자 알고리즘(Genetic Algorithm)이라고 합니다. 유전자 알고리즘은 위와 같은 과정으로 흘러갑니다. 선택 과정에서는 부모 염색체가 될 2개의 염색체를 선택해야합니다.이때, 많이 사용되는 알고리즘은 룰렛 휠 선택입니다.룰렛 휠 선택을 사용하는 이유는 적합도 높은 염색체를 뽑되, 그렇지 않는 염색체도 선별되도록 하기 위함입니다.이 말은 즉슨, 적합도가 낮은 염색체도 최적 솔루션에 해당될 수 있다는 것을 의미하죠. 교차 과정에서는 앞의 단계에서..
2024.06.20 -
[퍼지논리]
파이썬을 접해보신 분이라면 bool논리를 들어보셨을 겁니다.True와 False를 반환하는 논리인데요. 이러한 이진논리는 명확한 결과값을 낼 수 있죠.그렇다면 애매하고 명확하게 정의할 수 없는 지식은 어떻게 표현해야할까요? 이럴때, 사용되는 논리가 바로 fuzzy logic입니다. 흔히, 인간은 모호한 단어를 사용하여서 문제를 해결하거나 지식을 표현합니다.때문에 퍼지논리는 인간에게 꼭 필요하게 되죠.이처럼 퍼지논리는 0.0~1.0까지의 진리값으로 표현됩니다. 퍼지논리를 설명하기 전에 소속함수라는 개념을 알면 퍼지논리를 이해하기가 쉬운데요.소속함수라는 것은 소속 정도를 함수로 나타내는 것을 의미합니다.(저희가 평소에 자주 사용했던 집합은 크리스프 집합입니다.) ..
2024.06.20 -
[전문가 시스템]
초기에 AI는 모든 문제를 '탐색'으로 해결할려고 했습니다. 그 예로는 GPS(general problem solver)로 인공지능 초창기의 대표적인 성과 중 하나로탐색으로 해결하는 시스템입니다.이와 같은 시스템은 매우 제한된 영역에서만 작동하였습니다. 하지만 실질적인 문제를 해결하는데 한계가 있었고 연구자들은 제한된 문제에 역량을 집중시켜야 겠다는 것을 깨닫고 나오게 된 시스템이전문가 시스템입니다. 전문가 시스템은 기존의 절차적 코드(우리가 쓰는 프로그램 코드)가 아니라,'규칙'으로 표현되는 '지식'을 통해 '추론'함으로써 복잡한 문제를 해결하도록 설계되었습니다.전문가 시스템은 인공지능 소프트웨어의 최초의 성공적인 형태라고 할 수 있습니다. 위의 보시는 ..
2024.06.20 -
[파이썬]마름모 별 찍기 쉽게 하는 방법(백준 2444번)
n=3일때, n=5일때, 이런 모양의 마름모가 출력되는 코드를 짜보겠다. 여기서 알아야할 것별의 갯수가 증가하는 for문 하나, 별의 갯수가 감소하는 for문 하나(총 for문을 2개 사용)별의 갯수와 별이 찍히기 전의 공백의 관계성 고려(ex: n이 5일때, 첫번째 줄의 공백은 4개 별의 갯수는 1개, 두번째 줄의 공백은 3개 별의 갯수는 3개,세번째 줄의 공백은 2개 별의 갯수는 5개) 이 두가지만 고려하면별찍기 마스터! 막상 누군가가 코드를 짜놓은 것을 보면 와닿지가 않는다.(내가그랬음)나만 이해가능한 설명하기가 싫기때문에내가 묻는 질문에 직접 고민하면서 읽어줬으면 좋겠다...그게 싫으신 분은 제일 마지막에 코드만 보세요. Q1. for문을 두번 사용한다 했..
2024.06.20