안녕하세요 피터입니다.

오늘은 머신 러닝(Machine Learning)개념기본적인 원리에 대해서 설명드리겠습니다.


인공지능을 구현하기 위해서 빼놓을 수 없는 기술중에 하나가 바로 머신 러닝.

즉, 기계 학습입니다.



머신 러닝 이란?

머신 러닝은 기계가 데이터로부터 스스로 학습하여 실행할 수 있는 알고리즘을 개발하는 분야를 말합니다.


머신 러닝과 데이터 마이닝(Data Mining)은 얼핏 들어보면 같은 얘기를 하는 것처럼 들릴 때가 있습니다.


대부분의 내용은 비슷하지만 차이점이 있습니다.


데이터 마이닝은 데이터 안에서 알려지지 않은 속성을 찾는 것이 주 목적인 반면에

머신 러닝의 주 목적은 데이터의 알려진 속성들을 학습하여 예측 모델을 만드는 데 있습니다.


데이터 마이닝 뿐만 아니라 컴퓨터 과학(Computer Science)통계학(Statistics)에서도 비슷한 개념들을 다룹니다.

그도 그럴 것이 머신 러닝이라는 분야가 이 세 가지 학문 분야에 모두 걸쳐있기 때문입니다. 아래 그림처럼요.

따라서 머신러닝은 컴퓨터 과학(Computer Science), 통계학(Statistics), 데이터 마이닝(Data Mining) 세 분야의 학문 모두에 속해있다고 볼 수 있습니다.


머신러닝 종류

머신러닝은 학습 방법에 따라 크게 세가지로 분류할 수 있습니다.

아래 그림처럼 지도 학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning)이 바로 그것입니다.



지도형 학습(Supervised Learning)

지도형 학습은 이미 정답을 알고 있는 데이터(Labled data)를 학습해서 새로운 데이터에 대해 결과를 예측하는 학습 방법을 말합니다.

아래 그림에서처럼 다양한 오리 이미지과 오리가 아닌 이미지들을 학습해서 모델을 만들고

이 모델을 활용해서 이전에 접해보지 못한 새로운 이미지가 오리인지 아닌지 예측하는 것이죠.


학습의 주 목적은 예측(Predict)이며 다양한 케이스의 데이터를 학습할 수록 적중률의 상승합니다. 

대부분의 경우 학습 데이터가 많을 수록 성능도 좋아지는 경향이 있습니다.

알파고(AlphaGo)가 수많은 인간의 기보를 학습하여 승리하는 방법을 배운 것 처럼요.


주요 알고리즘은 회귀(Regression)와 분류(Classification) 입니다.

  • Linear Regression

  • Logistic Regression (Binary Classification)

  • Multinomial Classification

  • Decision Tree

  • Random Forest

  • KNN (K-Nearest Neighbors)



비지도형 학습(Unsuperviesed Learning)

비지도형 학습은 정답이 존재하지 않는 데이터들을 학습해서 데이터를 분류하는데 주 목적이 있습니다.

주로 군집화(Clustering)에 활용이 되는데요, 기존에 알지 못했던 새로운 특징을 추출하거나 서로 관련이 높은 그룹끼리 자동으로 분류할 수 있습니다.

예측이 주 목적이 아니다 보니 주로 지도형 학습을 진행하기 전에 전처리 하는 과정에서 많이 사용되는 학습법입니다.


주요 알고리즘은 아래와 같습니다.

  • K-means

  • Apriori



강화 학습(Reinforcement Learning)

강화 학습은 미리 학습 데이터를 준비할 필요가 없는 학습 방법입니다.

학습을 수행할 주체인 에이전트(Agent)를 생성하고 에이전트가 활동하게 될 환경(Environment)를 구성한 다음

에이전트의 행동(Action)을 관찰하여 적절한 보상(Reward)를 주는 방식으로 에이전트의 행동을 더 나은 방향으로 개선시키는 학습 방법입니다.

인간이 학습을 하는 것과 매우 유사하다고 볼 수 있습니다.



에이전트의 행동에 대해 좋지 못한 결과가 나오면 패널티를, 좋은 결과에 대해서는 적절한 보상을 주면서 행동 패턴을 점점 더 좋은 방향으로 개선시키면 데이터 없이도 학습을 시킬 수 있습니다.

실제로 고전 오락실 게임(아타리)을 강화 학습 이용해 학습한 결과 50여개의 게임 중 3~5개를 제외하고는 모두 강화 학습으로 학습한 AI가 사람보다 우수한 성적을 거두었습니다.

정말 놀라운 일이죠!


이전 포스팅에서 소개드렸던 알파고 제로(AlphaGo Zero)가 인간의 기보 없이 강화 학습을 이용해 학습한 버전입니다.


주요 알고리즘은 아래와 같습니다.
  • Markov Decision Process




-Peter의 우아한 프로그래밍

여러분의 댓글은 저에게 크나큰 힘이 됩니다. 오류 및 의견 주시면 감사하겠습니다.

블로그 이미지

친절한 Peter Ahn

IT 정보 공유, 프로그래밍 지식 공유

댓글을 달아 주세요


[미래의 속도]라는 책은 맥킨지 경제연구소리처드 돕스, 제임스 매니카, 조나단 워첼이 25년간 세계 경제를 추적하며 연구한 결과를 바탕으로 쓰여진 책입니다.


그래서인지 책을 읽으면서 책 자체가 경제학자가 만든 리포트 같다는 느낌을 받았습니다.


이전에 읽었던 [기술의 충격]이란 책이 제게 기술이란 본질적으로 무엇인가에 대한 생각을 하게 만드는 계기가 되었다고 한다면,

이번 주제인 미래의 속도는 저에게 빠르게 변화하는 시대에 어떤 시야를 갖고 살아가야 하는지 방향성을 제시해주었습니다.


저자들은 네 마리의 메가 트렌드(Mega Trend)가 이끄는 사두마차에 올라타 있는 우리가 변화에 적응하지 못하고 기존의 오래된 관습에서 벗어나지 못할 때,

마치 달리는 마차에서 떨어지듯이 부지불식간에 도태될 수 있다는 점을 경고하고 있습니다.


이러한 변화의 충격에는 일반적으로 안정적이라고 평가할 수 있는 세계 500대 기업들도 예외는 아니었습니다.

아니요, 오히려 변화에 더 빠르게 대응할 수 있고 폭발적인 수요층이 있는 신흥국신생기업들과 경쟁해야 되며 심지어 미래에는 경쟁에 뒤처질 위험이 크다고 얘기합니다.


지금의 시대는 지금껏 성공적인 경험을 토대로 형성된 직관과 오래된 트렌드들이 와해되고 있으며,

새로운 가치 판단의 기준과 급변하는 트렌드에 빠르게 반응할 수 있는 민첩함이 더 중요한 시대이기 때문입니다.


얼마전 대한민국 최초 단독, 무기항, 무원조 요트 세계 일주를 성공했던 김승진님의 강연을 들을 기회가 있었는데

얼마전까지만 해도 미래에 대한 생각을 할 때마다 당시 강연에서 인상깊었던 장면이 떠올랐습니다.


그것은 김승진님이 남극해 부근을 지날 때 마주쳤던 암담했던 상황입니다.

요트에 부딪히면 치명적인 손상을 안기지만 레이더에도 잡히지 않는 유빙들이 계속해서 스쳐 지나가고, 물안개로 인해 한치앞도 보이지 않아서 육안으로 보고 피할 수도 없는 그런 상황이죠.

즉 시시각각 치명적인 위험이 다가오지만 할 수 있는게 아무것도 없고 그저 에 맡겨야 하는 상황이었습니다.


완전히 동떨어진 주제라고 할 수 있는 자율주행차인공심장의 연관성을 예측한다는 것은 레이더에 잡히지 않는 유빙을 피하는 것만큼이나 어려운 일입니다.


하지만 4차 산업혁명 시대에서 핵심 기술들이 서로 융합되면서 위 두가지 명제는 깊은 관련이 생길 수도 있습니다.


자율주행차가 보편화되면 사고율이 감소하게 되고 자동차 사고로 인한 장기 기증자가 줄어들게 되기 때문에 인공심장 기술의 가치가 더 오르게 될 것이란 예측입니다.

이런 일들을 예측한다는 것은 기존의 트렌드를 버리고 통념을 깨지 않는다면 정말 쉽지 않은 일이죠.


그렇지만 아무리 한치앞도 알기 어려운 미래라고 하지만 손 놓은 채 모든걸 운에 맡길 수는 없습니다.

항상 변동성을 예의 주시하며, 기존의 관습을 내려놓는 훈련을 해야 합니다.

사소한 변화에 발맞춰 먼저 내딛는 한걸음이 최종 목적지를 바꿀 수 있다고 생각합니다.


끈임없이 배우는 자세변화를 수용하고 폭넓은 시야를 가지며,

미래의 위기보다 기회에 초점을 맞춰서 빠르게 적응할 수 있는 민첩성을 기른다면

언젠가는 트렌드에 적응하는 것 뿐만 아니라 새로운 트렌드를 만드는 주역이 될 수 있다고 믿습니다.



미래의 속도
국내도서
저자 : 리처드 돕스(Richard Dobbs),제임스 매니카(James Manyika),조나단 위첼(Jonathan Woetzel) / 고영태역
출판 : 청림출판 2016.11.09
상세보기




-Peter의 우아한 프로그래밍

'독서' 카테고리의 다른 글

리처드 돕스의 [미래의 속도]를 읽고  (0) 2018.05.17
케빈 캘리의 [기술의 충격]을 읽고  (0) 2018.05.09
블로그 이미지

친절한 Peter Ahn

IT 정보 공유, 프로그래밍 지식 공유

댓글을 달아 주세요


안녕하세요 피터입니다.

오늘은 인공지능(Aritificial Intelligent)에 대해서 설명드리겠습니다.


요즘들어 4차 산업혁명이라는 말을 굉장히 많이 들어보셨을 텐데요. 4차 산업혁명을 이야기할 때 항상 빠지지 않는 것이 바로 인공지능입니다. 


인공지능 이란?

인공지능.

영어로는 Artificial Intelligent. 줄여서 AI 라고 부르죠.


그렇다면 인공지능의 정의는 무엇일까요?

인공지능이란 기계에 의해서 표현되는 지능을 말합니다.

이를테면 영화 아이언맨에서 등장한 쟈비스처럼 학습, 지각, 추론을 할 수 있는 기계를 인공지능이 있는 기계라고 말할 수 있겠죠.


영화 her 에서 스칼렛 요한슨(Scarlett Johansson)이 목소리 연기를 맡았던 OS도 인공지능이라고 볼 수 있습니다.


인공지능의 역사

인공 지능(AI)의 탄생

첨단기술을 논할 때 빠지지 않는 이 AI 라는 개념은 사실 그 역사가 굉장히 오래된 기술입니다.


처음 인공지능이란 개념을 논하기 시작한 시점은 1940~1950년대로 거슬러 올라갑니다.

이 당시에 수학, 철학, 공학, 경제 등의 분야에서 다양한 학자들로부터 인공적인 두뇌에 대한 가능성이 논의되고 있었습니다.


1950년에 영화 이미테이션 게임의 실제 모델인 앨런 튜링(Alan Turing)생각하는 기계의 구현 가능성에 대한 내용이 담긴 논문<Computing machinery and intelligence> 발표했습니다.

이 논문에서 현재 튜링 테스트라고 불리고 있는 인공지능 실험을 제안했죠.


텍스트로 주고받는 대화에서 기계가 사람인지 기계인지 구별할 수 없을 정도로 대화를 잘 이끌어 간다면, 이것은 기계가 "생각"하고 있다고 말할 충분한 근거가 된다는 것이었습니다.


그러다가 1956년에 다트머스 컨퍼런스(Dartmouth Conference)에서 뉴얼과 사이먼이 세계 최초의 AI 프로그램논리 연산가(Logic Theorist)를 발표했습니다.

if then rule 을 이용해서 논리적인 문제를 해결하는 프로그램이었는데 현재의 AI 연구에 영향을 주는 중요한 개념들이 제시되었습니다.

존 매카시는 컨퍼런스에 모인 여러 학자들에게 현재 진행되고 있는 연구들을 Artificial Intelligent로 호칭할 것을 설득했습니다.


비로소 인공지능(Artificial Intelligent)이란 개념이 처음 탄생한 것입니다.


그 후 1970년대 초반까지 인공지능 관련 연구는 황금기를 맞이하게 됩니다.

대수학 문제를 풀고 기하학의 정리를 증명하는 등 사람들을 놀라게 만드는 지능을 갖춘 프로그램들이 개발되었고,

관련 연구도 활발하게 진행되었으며 많은 연구가와 학자들이 인공지능 낙관론을 펼쳤습니다.

당연하게도 이 시기에 많은 정부 기관 등에서는 인공지능 연구에 많은 예산을 쏟아부었습니다.


첫번째 AI의 겨울 (First AI Winter: 1974 ~ 1980)

황금기를 뒤로하고 70년대에 들어서 인공지능은 여러 재정적 위기를 맞이하게 됩니다.


많은 연구가들이 주장했던 엄청난 낙관론들이 대중들로 하여금 인공지능 연구에 대한 기대치를 굉장히 높게 갖게 만들었는데,

막상 AI 연구가들이 기대만큼의 성과를 보여주지 못하자 AI에 대한 자금 투자가 대부분 사라지게 된 것이죠.


최초의 인공 신경망(Artificial Neural Network)퍼셉트론(Perceptron)에 대한 연구도 마빈 민스키(Marvin Minsky)의 신랄한 비판에 의해 막을 내리게 되었습니다.

1969년 민스키와 페퍼가 퍼셉트론이 비선형 문제를 다룰 수 없다는 한계와 관련 연구가 과장되었다는 내용의 책을 낸 이후 10년간 인공 신경망에 관련한 거의 모든 연구가 중단되었습니다.


전문가 시스템의 붐이 일다

1980년대 암흑기를 겪던 인공지능은 전문가 시스템(Expert System)이라는 프로그램이 등장하기 시작하면서 다시 호황기를 맞게 됩니다.


전문가 시스템이란 특정 지식의 범위에 대해 문제를 해결해주거나 질문에 대답해주는 프로그램으로 전문가의 지식을 기반으로 개발되었습니다.


이 시기에 꺼져가는 불씨와 같았던 인공 신경망 연구가 다시 되살아나는 계기가 있었습니다.

바로 오류 역전파 알고리즘(Backpropagation)으로 다층 퍼셉트론의 학습을 실질적으로 가능하게 되면서 비선형 문제를 해결할 수 있게 된 것이죠.


하지만 여전히 다층 퍼셉트론의 hidden layer를 깊게 구성할수록 폭발적으로 증가하는 연산량을 감당하기에는 당시 컴퓨팅 파워(Computing Power)에 한계가 있었고 이로 인해 인공 신경망 연구는 뚜렷한 성과를 내지 못하고 있었습니다.


두번째 AI의 겨울 (Second AI Winter: 1987 ~ 1993)

애플, IBM에서 생산하는 데스크탑 컴퓨터들의 하드웨어 성능이 비약적으로 발전하면서 고가의 하드웨어를 사용하는 전문가 시스템이 설 자리를 잃어갔습니다.


전문가 시스템을 유지하기 위해 부담하는 금액이 너무 비싸다는 것이 증명되었고 업데이트도 어려웠습니다.

게다가 일반적이지 않은 질문에는 황당한 행동을 하는 전문가 시스템에 사람들은 의구심을 갖기 시작했습니다.


결과적으로 전문가 시스템은 특별한 경우에서만 유용한 시스템이라는 낙인과 함께 몰락했습니다.

AI의 붐을 주도하던 전문가 시스템의 몰락으로 인공지능 관련 연구는 다시 침체기를 맞게 됩니다.


AI의 재도약

1990년대에 들어서 인터넷을 통해 기존에는 상상하기 힘들었던 수많은 데이터가 생성되기 시작했습니다.


그와 더불어 직접회로의 성능이 24개월마다 2배로 증가한다는 무어의 법칙(Moores' Law)에서 처럼 하드웨어 성능이 비약적으로 발전하면서 이전에 비해 비교가 되지 않는 컴퓨팅 파워를 인공지능 연구에 활용할 수 있게 됩니다.


그리고 병렬 컴퓨팅(Parallel Computing)GPGPU(General-Purpose on GPU)기술이 등장하면서 여러 겹의 hidden layer를 갖는 인공 신경망을 효과적으로 학습할 수 있게 되면서 이른바 딥러닝(Deep Learning)의 시대가 열리게 되었습니다.


딥러닝은 기존에 수십년간 진행해왔던 수많은 인공지능 연구들의 기록을 송두리째 갈아치우며 무섭게 성장하였고 이제는 딥러닝 = 인공지능이라고 할 수 있을 만큼 인공지능에서 빼놓을 수 없는 기술이 되었습니다.


알파고(AlphaGo) 바둑을 평정하다

인공지능 기술이 발전하면서 인공지능과 인간과의 대결로 연구 결과를 증명하려는 시도가 계속됐습니다.


1997년 IBM의 Deep Blue 가 체스 챔피언을 상대로 승리하였으며,

2011년에는 Jeopardy! quiz show에서 IBM의 Watson이 우승을 하게 됩니다.


그리고 우리는 2016년에 인공지능과의 세기의 대결을 목격하게 되죠.

바로 알파고(AlpahGo) vs 이세돌 9단과의 바둑 대결입니다.


이 대결에서 알파고가 압승을 거두게 되면서 100년은 걸릴거라 예상했던 바둑을 정복한 딥러닝이라는 기술에 많은 사람들이 관심을 갖게 되는 계기가 되었습니다.


아시는 분들은 아시겠지만 사실 알파고는 버전이 여러 개가 존재합니다.

판후이 2단과 대결했던 알파고 판(Ver 13: AlphaGo Pan)

이세돌 9단과 대결했던 알파고 리(Ver 18: AlphaGo Lee)

그 후에 여러 기사들을 포함헤 커제 9단과의 대결까지 압승한 알파고 마스터(AlphaGo Master)


알파고 여러 버전들과 인간 프로 기사와의 공식 대결 전적은 13전 12승 1패로 인간 중에 유일하게 이세돌만이 알파고에게 패배를 안겨주었습니다.


2017년에 발표된 알파고 제로(AlphaGo Zero)는 기존의 알파고 버전들이 인간의 기보를 바탕으로 학습을 했던 것과 달리 기본적인 바둑의 룰을 바탕으로 스스로 학습하는 강화 학습(Reinforcement learning)을 기반으로 만들어졌습니다.


이 알파고 제로는 이세돌 9단과 대결했던 알파고 리 버전과의 전적이 100승 무패, 알파고 마스터와의 대결에선 89승 11패를 기록했습니다.


사실상 이제 인간이 인공지능을 바둑으로 이길 수 있는 가능성은 없어진 셈입니다.

마치 달리기로 자동차를 이길 수 없듯이요.


인공지능과 딥러닝

딥러닝이 인공지능의 대명사처럼 쓰이고 있지만 인공지능이란 용어는 좀 더 포괄적으로 쓰이는 용어입니다.


인공지능은 수학, 과학, 철학 등의 분야에서 다뤄지는 개념이고 인공지능을 구현하는 기술 중에 머신러닝(Machine Learning)이라는 기술이 존재하는 것입니다.



딥러닝은 여러 가지 머신러닝 기법 중에 하나에 불과하죠.


그러나 그 어떤 머신러닝 기법도 딥러닝과 같은 성과를 내지 못하고 있기 때문에 현재 인공지능 분야에서는 딥러닝이 필수적으로 사용되고 있는 것입니다.





-Peter의 우아한 프로그래밍

여러분의 댓글은 저에게 크나큰 힘이 됩니다. 오류 및 의견 주시면 감사하겠습니다.

블로그 이미지

친절한 Peter Ahn

IT 정보 공유, 프로그래밍 지식 공유

댓글을 달아 주세요


기술이라는 단어는 사실 기술의 내포하고 있는 수 많은 함축적인 의미들을 나타내기에는 한정적이며 지역적이기에 저자는 우리 주변에서 요동치는 더 크고 세계적이며 대규모로 상호 연결된 기술계를 가리키는 단어를 테크늄이라고 부르기로 했습니다.

테크늄은 하드웨어를 넘어 문화, 예술, 사회 제도, 모든 유형의 지적 산물들을 포함합니다.


이러한 테크늄이 진화해온 과정을 보면 마치 살아있으며 의지를 갖고 있는 생명체와 같다고 느껴질 때가 있습니다.


삼엽충과 악기 코넷의 진화 과정이 매우 비슷한 양상을 보이는 것처럼 말이죠.

하지만 테크늄의 진화에는 몇 가지 차별화된 점이 있습니다.

그것은 수직적인 생물의 진화와 다르게 테크늄은 수평적으로 진화했으며

점진적인 생물의 진화와 다르게 테크늄은 혁명적인 단계의 진화를 이뤄냈다는 점입니다.


언어를 발명함으로써 사피엔스가 다른 생물들을 제치고 지구 전역에 영향을 끼치는 독보적인 생물 개체가 될 수 있었던 것 처럼 테크늄은 지금도 계속 진화하고 있습니다.


테크늄의 힘은 자신을 변형하는 특성을 자신에게 되비침으로써 무한정 증가시킬 수 있다는데 있습니다.

테크늄이 하드웨어와 물질 장치를 우리에게 가져다 놓긴 하지만 이제 가장 형태가 없고 비물질적인 과정속에 있으며 이것은 세계에서 가장 강력한 힘인 것이죠.


IT업계에서 일하고 있는 필자에게 요즘 가장 큰 화두는 미래의 먹거리라고 볼 수 있는 신기술들이었습니다.

블록체인, 머신러닝, 클라우드 등등

이러한 기술들은 나타난지 얼마 되지 않아 온 세계의 모든 영역에 걸쳐 막대한 영향을 끼치고 있습니다.


바야흐로 4차 산업 혁명시대에 들어 내가 느끼기에도 최근 몇 년간 제가 몸담고 있는 분야의 관련 기술들이 진화해나가는 속도를 쫓아가기가 벅찰 정도로 각각의 기술들은 서로 보완하고 융합하여 더 높은 단계로 도약하고 있습니다.


개인적으로 많은 고민이 들었습니다.

하루가 다르게 쏟아지는 신기술들의 홍수속에서 나는 어디에 목적지를 둬야 하는가.

무엇을 이정표 삼아야 하는가.


그렇지만 테크늄의 본질이 세계를 좀 더 나은 방향으로 이끄는 데 있다고 한다면

기술을 어떠한 수단이나 방법으로만 바라보지 않고 본질적인 가치 구현의 토대로 여기는 게 좋겠다는 생각이 들었습니다.



기술의 충격
국내도서
저자 : 케빈 켈리(Kevin Kelly) / 이한음역
출판 : 민음사 2011.05.27
상세보기





- Peter의 우아한 프로그래밍


'독서' 카테고리의 다른 글

리처드 돕스의 [미래의 속도]를 읽고  (0) 2018.05.17
케빈 캘리의 [기술의 충격]을 읽고  (0) 2018.05.09
블로그 이미지

친절한 Peter Ahn

IT 정보 공유, 프로그래밍 지식 공유

댓글을 달아 주세요

안녕하세요 피터입니다.

오늘 소개해드릴 호텔은 조금 특별한 닛산의 호텔입니다.

사실 호텔이 아니라 료칸(Ryokan)이군요.
료칸은 일본식 숙박시설 중 하나로 일반적으로 온천과 다다미가 있는 여관을 떠올리시면 됩니다.

아래 사진처럼요.


이 료칸에서는 슬리퍼, 방석, 리모컨, 탁자 등의 물건들이 알아서 제자리로 찾아가는 마법같은 경험을 선사합니다.

바로 닛산(Nissan)이 자사의 반자동 주행시스템 프로파일럿(ProPILOT) 기술을 적용하여 이러한 기능을 구현하였습니다.


닛산 자동차에 탑재된 자동 주차 기능을 활용하여 사람들이 직접 물건들을 정리할 필요 없이 알아서 제자리를 찾아가게 만든 것이죠.



정말 보는 사람들을 깜짝 놀라게 만드는 장면이 아닐 수 없습니다.


닛산은 지난 2016년에도 이와 같이 프로파일럿 기술을 적용하여 자동으로 움직이는 의자를 개발했습니다.

이 의자는 식당 같은데서 줄을 설 때 이 의자에 앉아서 대기하면, 앞 사람이 빠지면 자동으로 앞으로 이동해주는 기능이 있었습니다.

이 사례는 자동차 회사에서 개발한 자동차 관련 기술이 일상적인 상황에서도 효과적으로 적용될 수 있다는 점을 잘 보여주고 있습니다.

앞으로 점점 스마트한 기술들이 우리 일상 생활을 더욱더 편리하게 만들어 줄 것 같은 생각이 듭니다.




- Peter의 우아한 프로그래밍



블로그 이미지

친절한 Peter Ahn

IT 정보 공유, 프로그래밍 지식 공유

댓글을 달아 주세요