Loading the catalog…
Loading the catalog…
1. AI의 발전과정 1) AI의 50년 역사 AI기술의 60년 AI는 두 번의 황금기와 암흑기를 거쳐, 딥러닝 이후 세 번째 황금기를 맞이함 AI의 외부적 성공요인 최근 인공지능의 성공요인은 막대한 컴퓨팅 파워, 공개 SW의 확산, 빅데이터의 보급 AI의 60년 역사 인간 뇌 구조를 닮은 ‘인공신경망’을 만들면서 시작됨 뉴런 세포 + 시냅스 인공지능 분야는 컴퓨터 공학, 뇌과학, 유전학, 심리학, 사회문화적 학문들과도 포괄적으로 관계 앨런 튜링(Alan Turing) : 인공지능의 첫 시작을 연 인물 1956년, 인공지능이라는 용어가 등장 2000년대 초반, 딥러닝 기술이 등장하며 새로운 황금기의 장이 열림 AI의 주요 사건으로 본 발전과정 1943: McCulloch와 Pitts가 신경망의 기초 모델을 정립 ‘뉴런들의 간단한 네트워크를 분석하고 이것이 간단한 논리 기능을 수행할 수 있음을 보여주었다. 나중에 연구자들이 인공 신경망(ANN)이라고 부르게 되었다. 1950: 앨런 튜링이 기계 지능의 테스트 방법으로 튜링 테스트를 소개 튜링은 보편적인 계산 기계(컴퓨터)의 개념도 주창하였지만 인공 지능에도 큰 흥미를 가졌다. 영국의 수학자 알란 튜링은 “기계가 생각할 수 있을까?”라는 질문 대신에 기계와 사람을 구분할 수 없다면 인공 지능이 구현되었다고 봐야 한다고 주장 암호해독기 봄(Bombe) 1955: 다트머스 학술대회에서 ‘인공지능(AI)’이란 용어 탄생 다트머스 학술 회의가 Marvin Minsky와 John MacCarthy 등에 의하여 조직 1965: 오틀날 채팅봇의 원조인 ELIZA가 탄생 Weizenbaum은 심리 치료사의 행동을 모방하기 위해 ELIZA를 개발 ELIZA 라고 하는 이 프로그램은 사용자의 문장에서 특정한 키워드가 발견되면 어떤 규칙이 적용하여 답변을 생성한 후에 반환된다. AI의 두번의 겨울 AI는 발전과정에서 크게 2번의 기술적 부침을 겪었다. 1969, XOR 문제와 1차 겨울 1969년 마빈 민스키와 시모어 페퍼트가 퍼셉트론의 문제점과 한계를 수학적 증명으로 발표 퍼셉트론은 XOR에는 적용불가능 1990s, 기울기 소실 문제와 2차 겨울 다층 퍼셉트론의 제한성과 당시 컴퓨터 성능의 한계점 두 번째 암흑기가 도래하며 AI산업도 침체기에 돌입함. 해결점의 도출 1차 겨울 : 1986에 다층 퍼셉트론을 통해 해결되어 AI의 부활. 1980년대 중반 전문가 시스템 열풍으로 2차 AI의 봄이 옴 2차 겨울 : 컴퓨팅 성능과 딥러닝 기술이 급격히 발전하며 3차 AI의 봄이 옴 1980s: Feigenbaum이 인간 전문가의 의사결정을 흉내내는 전문가 시스템 개발 1997: IBM의 컴퓨터 딥블루가 체스 챔피언을 이김 2009: 구글이 자율주행 자동차를 선보임 2011: IBM의 컴퓨터 왓슨이 퀴즈쇼에서 인간을 누르고 우승 2011~2014: 시리나 구글 나우 같은 음성인식 개인 비서 등장 2016: 알파고가 이세돌을 이김 2) AI의 혁신적 발전 알파고(AlphaGo) 2016년 열린 이세돌 9단과의 대결에서 4승 1패로 승리 인공지능의 발전상을 전세계적으로 각인시킨 사건 알파고는 상대가 놓은 수 다음에 놓일 수 있는 수를 검색하고 승률이 높은 수를 선택하는 과정을 거침 알파고 제로 구글 딥마인드가 알파고 등장 1년 뒤, 2017년 10월 세계적인 학술지 ‘네이처(Nature)’에 소개한 알파고 제로는 알파고를 뛰어넘는 성능을 보였다. 알파고 제로(2017 기술 발표)의 알파고에 대비한 특성 형태 알파고 알파고 제로 전력소비를 큰 폭으로 개선 슈퍼컴퓨터급의 장비 사용 컴퓨터 한 대를 활용해 커제9단과 대결하여 승리 바둑경기를 전혀 학습하지 않은 점 대규모 바둑경기 데이터를 학습해 패턴을 예측하였음 개선된 형태의 강화학습을 도입 기술적 기법 2종의 인공신경망을 활용 1 전문 바둑기사의 착수 선호도를 분석함 2 현재 바둑판의 승률을 근사 알파고의 두 가지 신경망을 하나의 신경망으로 통합해 성능을 개선 최근 AI의 활약 (알파고 외의 주목할만한 사건들) 1997년 IBM의 딥블루 체스시합에서 세계 챔피언을 상대로 최초로 승리한 컴퓨터 2011년 IBM의 왓슨 퀴즈쇼 “제퍼디”에서 우승 차지 2022년 ChatGPT ChatGPT, DALL-E 등장 2. AI의 발전과 우리 삶의 변화 AI사회의 변화 AI의 거센 물결 : 초거대 AI 초거대 AI 1 강력한 컴퓨팅 인프라를 바탕으로 대용량 데이터를 학습해 종합적 추론이 가능함 2 OpenAI의 GPT 시리즈, 국내 IT선두기업들도 초거대 AI개발중 알파고와 차이 알파고는 바둑 분야에만 특화돼 있지만, 초거대 AI는 여러 상황에서 역할을 수행할 수 있다. 마치 인간의 능력을 전부 갖춘 AI를 만들려는 시도이다. ChatGPT의 이전 모델 GPT-3에서 생성된 텍스트의 품질은 너무 높아서 사람이 작성했는지 여부를 판별하기 어렵다고 한다. GPT-3는 2020년 9월 영국 가디언에 칼럼 <A robot wrote this entire article. Are you scared yet, human?>을 기고하기도 했다. 신경망의 파라미터 신경망 안에서 학습을 통하여 변경할 수 있는 연결선의 가중치이다. 가중치가 많을수록 더 정교하게 학습 시킬 수 있다. 사람의 뇌와 비교 뇌 안에 있는 파라미터는 약 1000조 개이고, GPT-3는 약 1750억 개 보유 AI사회의 소득 변화 AI의 발전이 이끌어낸 자동화를 이끌었고, 이 같은 사회변동에서 생겨난 사회적 문제가 대두됨 현상1 : 인공지능이 발전할 수록 사람을 대신해 처리할 수 있는 업무 증가 맥킨지 사의 전망으로 2030년까지 8억명의 전세계적 일자리 감소 전망 현상2 : 일자리를 잃은 사람들의 소득 처리 방법이 사회적 문제로 대두 일자리 감소의 속도가 사회변화의 속도처럼 매우 높음. 인공지능으로 인한 일자리 창출보다 감소가 더 클 것이라는 전망 대규모 실업 관련 대책 마련이 필요 기본소득이란 개념은 이미 50년 넘게 논의되어 온 사회문제이지만 최근 들어 인공지능으로 인한 실업 문제가 확산되면서 새롭게 주목 2020년 민주당 대선후보 ‘앤드류 양(Andrew Yang)’은 모든 국민들에게 매달 기본소득 1,000불을 지급하겠다는 공약을 발표 단순노동이나 위험노동에는 AI가 도입되어야 함 AI로 인한 실업인에 대해 최소한의 생활을 할 수 있도록 지원 AI와 로봇 기업이 이에 대한 책임을 나누어야 함 기본소득 재원 마련 방법으로 부가가치세 도입을 제시 페이스북의 마크 저커버그가 기본생활이 가능한 사회구조의 필요성을 강조 우리는 일의 의미로 평가되어야 한다. 마이크로소프트의 빌 게이츠가 기본 소득의 강조 AI는 부를 창출하며 AI의 사회 침투 흐름을 사람이 따라잡을 수 없기 때문에 기본소득을 도입하고 실업자 재고용을 위한 교육도 확충해야 한다. 실리콘밸리에서도 기본소득에 대한 논의가 활발 기술 개발에만 몰두할 것이 아니라, 파생될 문제에 대한 대책을 마련 AI사회의 다양한 응용분야 다양한 추천시스템 : OTT의 영상추천, 쇼핑몰의 상품 추천, 마케팅 추천 등 AI 챗봇 : Google Assistant 및 Amazon Alexa와 같은 가상 어시스턴트 신약 개발, 생물학, 의료분야 : 유전자 데이터, 케이스 리포트, AI분석의 활용 예술분야의 창작 : ‘미드저나’와 같은 AI창작툴에서 키워드를 입력하여 제작 스페이스 오페라 극장 : 2022년 8월에 미국 콜로라도 주립 박람회의 디지털 예술 부문에서 우승을 차지함. ‘미드저나’에서 제작됨 AI사회에서 교육환경의 변화 2016년 <장학퀴즈> 학생 VS 인공지능 시스템 ‘엑소브레인’ : ‘엑소브레인’은 대결 초반에는 학생들보다 우수하지 않았지만, 녹화가 진행되면서 스스로 학습하고 진화해 학생들을 압도 뇌과학자 샘 해리스 : “로봇의 전자회로와 인공지능을 처리하는 여러 가지 전자부품 회로는 인간의 생화학적 뇌, 뉴런으로 이루어진 뇌 구조보다 100만 배 빠르다” 결국 4차 산업혁명 시대를 대비한 교육의 핵심은 ‘문제해결 능력’과 ‘체계적 사고를 할 수 있는 논리력’ 변화하는 교육환경에 발맞춰 학교와 가정에서 함께 변해야 함 3. C++ 언어의 기초 문법 논리 연산자 #include <iostream> using namespace std; int main() { int x = 10; int y = 20; bool is_x = true; bool is_y = false; if (is_x == true && is_y == true) cout << "is_x && is_y = " << "true" << endl; else cout << "is_x && is_y = " << "false" << endl; if (x == 10 || is_x == false) cout << "x가 10이거나 is_x가 true입니다." << endl; else cout << "x는 10이 아니며 is_x가 false가 아닙니다." << endl; if (!is_y) cout << "is_y 원래 값은 false입니다" << endl; else cout << "is_y 원래 값은 true입니다" << endl; return 0; } is_x && is_y = false x가 10이거나 is_x가 true입니다 is_y 원래 값은 false입니다 논리 연산자에는 세 가지 조건이 있음 A&&B : A와 B가 모두 참이면 참 A||B : A와 B중 하나만 참이어도 참 !A : A논리값의 반대값 Is_y는 false이므로 16번 라인이 수행됨 X==10이 참이므로 19번 라인이 수행됨 #include <iostream> #include <string> using namespace std; int main() { int x = 1; int y = 2; int z = 0; z = x > y ? x : y; // 삼항 연산자 cout << "x와 y 중 더 큰 값은 : " << z << endl; return 0; } x와 y중 더 큰 값은 : 2 12번 라인 : 조건부 연산자(삼항 연산자)를 통해 코드를 간결하게 작성가능 X가 y보다 크다면 : 앞에 있는 수x를 z에 대입함 조건 x>y조건이 true이기 때문에 x값을 z에 할당한 것 조건이 맞지 않는다면 false인 y를 z에 할당함 12번 라인 설명 조건부 연산자 : 조건식? 식1 : 식2 조건식이 만족하면 즉 true이면 식1이 선택됨 조건식이 만족되지 않으면 즉 false이면 식2가 선택됨 #include <iostream> using namespace std; int main() { int goguryeo = 37, baekjae = 18, silla = 57; printf("삼국 건국연도\n"); printf("고구려 bc%d년, 백제 bc%d년, 신라 bc%d년\n", goguryeo, baekjae, silla); return 0; } 삼국 건국연도 고구려 bc37년, 백제 bc18년, 신라 bc57년 쉼표 연산자는 비슷한 의미의 코드를 이어 붙이는데 사용된다. Int형 변수를 여러 번 이어 붙여서 한번에 변수를 선언하고 초기화하였음 비트 연산자 #include <iostream> #include <bitset> using namespace std; int main() { bitset<8> bit1; bit1.reset(); bit1 = 127; bitset<8> bit2; bit2.reset(); bit2 = 0x20; // 32 bitset<8> bit3 = bit1 & bit2; bitset<8> bit4 = bit1 | bit2; bitset<8> bit5 = bit1 ^ bit2; bitset<8> bit6 = ~bit1; bitset<8> bit7 = bit2 << 1; bitset<8> bit8 = bit2 >> 1; cout << bit3 << ", " << bit3.to_ulong() << endl; cout << bit4 << ", " << bit4.to_ulong() << endl; cout << bit5 << ", " << bit5.to_ulong() << endl; cout << bit6 << ", " << bit6.to_ulong() << endl; cout << bit7 << ", " << bit7.to_ulong() << endl; cout << bit8 << ", " << bit8.to_ulong() << endl; return 0; } 00100000, 32 01111111, 127 01011111, 95 10000000, 128 01000000, 64 00010000, 16 비트 연산자의 종류 A & B : A와 B를 and연산 A | B : A와 B를 or연산 A ^ B : A와 B를 xor연산 ~A : A 비트를 반전 A >>B : A의 모든 비트를 오른쪽 시프트 A <<B : A의 모든 비트를 왼쪽 시프트 캐스트 연산자(static_cast) #include <iostream> using namespace std; int main() { int x = 2; double y = 4.4; int i = static_cast<int>(y / x); int j = (int)y / x; double k = y / x; cout << "4.4 / 2 = (static_cast<int>) " << i << endl; cout << "4.4 / 2 = (int) " << j << endl; cout << "4.4 / 2 = " << k << endl; return 0; } 4.4 / 2 = (static_cast ) 2 4.4 / 2 = (int) 2 4.4 / 2 = 2.2 static_cast<> dynamic_cast<> const_cast<> reinterpret<> C++에서 자료형을 변경하는 경우 전통적으로 (double)값은 방법을 활용 하지만 무조건적인 변경은 예상하지 못한 오류가 발생하기도 함. 그러므로 C++에서 4가지 자료형 변환 연산자를 제공함
What RADAR observed and classified to build this opportunity. It is what the source published, not a verification that the offer is still active.
AI컴퓨팅기초-5. 1. AI의 발전과정 1) AI의 50년 역사 AI기술의 60년 AI는 두 번의 황금기와 암흑기를 거쳐, 딥러닝 이후 세 번째 황금기를 맞이함 AI의 외부적 성공요인 최근 인공지능의 성공요인은 막대한 컴퓨팅 파워, 공개 SW의 확산, 빅데이터의 보급 AI의 60년 역사 인간 뇌 구조를 닮은 ‘인공신경망’을 만들면서 시작됨 뉴런 세포 + 시냅스 인공지능 분야는 컴퓨터 공학, 뇌과학, 유전학, 심리학, 사회문화적 학문들과도 포괄적으로 관계 앨런 튜링(Alan Turing) : 인공지능의 첫 시작을 연 인물 1956년, 인공지능이라는 용어가 등장 2000년대 초반, 딥러닝 기술이 등장하며 새로운 황금기의 장이 열림 AI의 주요 사건으로 본 발전과정 1943: McCulloch와 Pitts가…
Open source