수년 동안 소프트웨어 개발은 수동으로 이루어졌습니다.
FORTRAN의 천공 카드부터 Go의 분산 방식 구성에 이르기까지 원칙은 기본적으로 동일하게 유지되었습니다. 문제에 대해 집중적으로 생각하고 현명한 접근 방식 (예 : 알고리즘)을 생성하고 기계에 구현할 지침을 제공합니다.
"명시 적 프로그래밍" 이라고 할 수있는이 접근 방식은 메인 프레임에서 스마트 폰, 인터넷 붐, 모바일 혁명에 이르기까지 모든 것의 핵심이었습니다. 새로운 시장을 창출하고 Apple, Microsoft, Google 및 Facebook과 같은 회사 이름을 만들었습니다.
그러나 뭔가 빠질 것입니다. 고대 컴퓨팅 시대의 작가들이 구상 한 지능형 시스템은 Philip Dick이 George Lucas의 C-3PO로가는 로봇 택시로 계속해서 공상 과학 소설을 이어갑니다. 겉보기에 단순한 작업은 가장 뛰어난 컴퓨터 과학자조차도 자동화를 완고하게 거부합니다. 전문가들은 이러한 도전에 직면 한 실리콘 밸리가 점진적 또는 유행 주도형 기업에 집중하기 위해 기본적인 발전에서 벗어나고 있다고 비난합니다.
분명히 그것은 바뀔 것입니다. Waymo의 자율 주행 자동차는 최근 800 만 킬로미터를 여행했습니다. Microsoft의 번역 엔진은 600 만 가지 형태의 의사 소통에 능통하지는 않지만 중국어에서 영어로 작업 할 때 인간 수준의 정확도에 맞출 수 있습니다. 그리고 신생 기업은 지능형 비서, 산업 자동화, 사기 탐지 등과 같은 분야에서 새로운 지평을 열고 있습니다.
개별적으로 이러한 새로운 기술은 우리의 일상 생활에 영향을 미칠 것을 약속합니다. 총체적으로, 그것들은 소프트웨어 개발에 대해 우리가 생각하는 방식의 큰 변화를 나타냅니다. 또한 명시 적 프로그래밍 모델에서 현저한 출발을 나타냅니다.
이러한 각 발전을 지원하는 심장 돌파구는 딥 러닝이며, 이는 뇌의 구성에 동기를 부여한 인공 지능 전략입니다. 비교적 좁은 데이터 평가 도구로 시작된 것이 이제는 일반 컴퓨팅 시스템에 가까운 역할을합니다. 그것은 광범위한 작업에서 전통적인 소프트웨어를 능가하고 마침내 컴퓨터 과학자들을 피해 온 지능형 시스템을 제공 할 수 있습니다.
그러나 심오한 학습 과대 광고 속에서 대부분의 관찰자들은 미래에 대해 긍정적 인 가장 큰 이유를 간과합니다. 심오한 학습을 위해서는 코더가 코드를 거의 작성하지 않아도됩니다. 사전 설정된 규칙이나 if-then 송장에 의존하는 대신 딥 러닝 프로그램은 이전 예제를 기반으로 원칙을 자동으로 작성합니다. 소프트웨어 개발자는 Tesla의 Andrej Karpathy를 의역 하기 위해 "거친 골격"을 만들고 나머지 작업은 컴퓨터가
이 새로운 세계에서 프로그래머는 더 이상 모든 문제에 대해 특별한 알고리즘을 설계 할 필요가 없습니다. 대부분의 작업은 오히려 원하는 동작을 반영하는 데이터 세트를 생성하고 훈련 프로세스를 관리하는 데 집중합니다. Google TensorFlow 팀의 Pete Warden은 2014 년에 "저는 코더 였습니다"라고 썼습니다. " 나는 컴퓨터가 자신의 앱을 작성하도록 가르칩니다."
다시 말하지만, 오늘날 애플리케이션에서 가장 중요한 개선을 이끄는 프로그래밍 모델은 상당한 양의 실제 프로그래밍을 요구하지 않습니다.
이것은 소프트웨어 개발의 미래에 어떤 의미가 있습니까?
프로그래밍과 데이터 과학은 점점 더 융합 될 것입니다.
대부분의 응용 프로그램에는 가까운 장래에 " 종단 간"학습 프로그램이 포함되지 않습니다. 사용자와 인터페이스하고 결과를 번역하기 위해 핵심인지 능력과 명시 적 논리를 제공하기 위해 데이터 모델에 의존합니다. "이 문제에 대한 AI 또는 기존의 접근 방식을 사용해야합니까?" 점점 발전 할 것입니다. 지능형 시스템을 설계하려면 둘 다 제어해야합니다.
AI 전문가는 아마도 록 스타가 될 것입니다
AI를하는 것은 어렵습니다. 뛰어난 학자 및 연구자뿐만 아니라 순위 및 파일 AI 프로그래머는 나중에 소프트웨어 비즈니스에 가장 가치있는 도구 중 하나가 될 것입니다. 이것은 1950 년대부터 다른 산업에서 자동 작업을 해왔고 현재 자체 작업의 부분적인 자동화에 직면 한 전통적인 코더에게는 약간 아이러니를 전달합니다. 그들의 서비스에 대한 요구 사항은 확실히 줄어들지 않을 것이지만, 최전선에 머물기를 원하는 개인은 건전한 회의론으로 AI의 물을 확인해야합니다.
AI 도구 체인을 구성해야합니다.
Lyft의 기계 학습 책임자 인 Gil Arditi가 가장 잘했다고 말했습니다. "머신 러닝은 이제 원시 시대에 있습니다. 80 년대 초 또는 70 년대 후반의 데이터베이스와 매우 유사합니다. 이러한 항목을 작동 시키려면 세계의 전문가가되어야했습니다. "연구에 따르면 많은 AI 모델이 설명이 간단하지 않고 속이는 것이 중요하지 않으며 편견에 민감합니다. 무엇보다도 이러한 문제를 해결하는 도구는 AI 개발자의 잠재력을 발휘하는 데 필수적입니다.
우리 모두는 예측할 수없는 행동에 익숙해 져야합니다
PC "교육"의 개념은 프로그래머와 사용자 모두에게 적합합니다. 그것은 컴퓨터가 우리가 말하는 것을 정확하게 수행하고 유사한 입력이 지속적으로 유사한 출력을 생성한다는 인상을 강화합니다. 반대로 AI 버전은 호흡, 살아있는 시스템처럼 작동합니다. 새로운 툴링은 특히 안전이 중요한 구성에서 명시적인 프로그램처럼 작동하도록 만들지 만, 가드 레일을 너무 꽉 배치하면 AlphaGo의 "외계인"움직임과 같은 이러한 시스템의 가치를 잃을 위험이 있습니다. AI 소프트웨어가 성장하고 사용함에 따라 확률 적 결과를 이해하고 수용해야합니다.
그리고 AI 인수 가능성이 거의 제로에 가깝기를 바랍니다.