삼성SDS 테크토닉 2019

DEVIEW 2019에 신청을 못하게 되어 아쉬운 마음에 다녀왔다. 동종업계 머신러닝 엔지니어들이 어떻게 일하는지 궁금하기도 했다.

감상

기조연설부터 AI와 클라우드를 강조했다. 부사장님 발표 이후에 두 상무님이 나와서 발표했는데 두 상무님이 모두 올해(1월, 5월) 입사셨다. 각각 AI와 클라우드를 했던 분들. 타임테이블을 봤다. 클라우드, AI 두 세션이 위주였다. 나는 AI 세션만 보고 갔는데, 방향성이 분명해보였다. 그래서 점심시간에 삼성SDS 작년 재무재표를 열어봤다. 반기 보고서의 6조 자산 중 유형자산이 1조, 단기금융상품이 1.6조, 무형 자산이 0.6조를 차지하고 있었다. 단기 금융상품이라 함은 기업이 현금성 자산을 쌓아놓는 것을 의미하는데, SDS의 자산 중 약 20%가 단기금융상품이다. 유동성을 확보해둔 것. 그래서 올해 움직임이 어떤지 궁금해졌다.

작년 기사를 찾아보니 물류 BPO 포션이 커지고 IT 솔루션이 정체됐다. 기업 영업이익은 작년 최고였다. 그렇지만 매출의 대다수를 차지하고 있는 삼성 계열사 외주의 포션이 줄어들고 있어서 스핀오프가 필요한 상황. 따라서 기조연설의 두 날개를 클라우드와 AI전문 상무님을 선택한 것은 앞으로 SDS가 초점을 맞출 비즈니스 영역을 표출한 것으로 해석된다.

예전엔 이런 고민 없이 순수한 개발의 즐거움으로 개발자 컨퍼런스를 찾았다면, 올해부터는 회사의 방향성도 함께 바라보게 된다. 한편 이런 생각이 드는 이유는 컨퍼런스가 탑다운 형태로 진행된다는 느낌 때문이다. 컨퍼런스 연사는 외부 인사가 없었다. SDS 직원 아니면, SDS가 투자한 랩의 사람들. 모두가 모두를 ‘프로’라고 부르는 등. 외부인들과 교류하는 자리에서 자신들이 단단하게 사용하는 용어를 공유받은 것 같은 기분이었다.

앞서 단기 금융상품 유동성 확보는 작년 말 이야기였고, 올해는 확보한 유동성을 어떻게 사용하여 IT 분야의 정체를 극복하려는지 궁금했다. 클라우드 상무님은 데이터 센터를 하나 더 신설하고 있으며, 이곳은 고속 데이터 연산이 가능한 더욱 특별한 데이터센터가 될 것이라고 강조했다. 이것을 대지와 클라우드에 투자한다는 의미로 해석했다. 또한 클라우드 상무님은 물류 BPO를 모두 클라우드화하겠다는 목표도 이야기했다. 즉, SDS의 IT솔루션과 BPO 매출을 모두 한 데이터센터에서 관리하여 점유를 확고히 하고, AI나 블록체인, 데이터 분석 등을 통해 효율을 추구하겠다는 의미다. 그는 BPO 모니터링 시스템이나 프라이빗/퍼블릭 클라우드 혼용 시스템을 도입하겠다는 점을 공약처럼 말했다.

이같은 배경 아래 이번 발표에는 플랫폼 산업을 확고히 구축하기 위한 SaaS, PaaS 이야기를 특히 강조했다. 학생들을 위해서 인공지능 관련 강좌도 몇 개 준비했는데, 그 자체로 매력이 있다기 보다는 자사 클라우드에서 잘 작동하는 텐트폴을 만들기 위한 노력처럼 느껴졌다. 다행인건 그 텐트폴을 만들기 위해서 사내 벤처를 만들고, 투자나 M&A를 하고 있다고 했다. 자본을 투자하여 텐트폴을 만드려는 노력은 그래도 삼성SDS가 자사 서비스에 올릴 사례를 어느 정도 비중있게 바라보고 있음을 느낄 수 있게 했다.

아마도 삼성SDS는 구글 클라우드의 모델을 국내에서 따라 할 수 있는 형태로 모양을 탈바꿈하려 할 것 같다. 이것은 필자의 추측이고 뉘앙스이기때문에 분명하지 않지만 올해 서비스 했던 대표적인 사례가 글로벌 쇼핑 기업, 그리고 국내 물류기업의 데이터를 클라우드에 올렸다는 것이고(아마도 삼성 로지스틱스가 아닐까, 재무재표를 더 자세히 들여다보진 못했다), 이론은 우버의 분산 기계학습 논문이나 커머스 서비스 SRE(Site Reliability Engineering), 데브옵스, 프라이빗 클라우드임을 보면서 추론했다.

부디 필자의 해석이 정답이라 생각지 않길 바라며, 나 역시도 성급한 해석이 아니길 바란다. 아래는 키워드 요약이다. 산발적, 키워드성 정보기때문에 도움이 될 지 모르겠다.

키워드

자동레이블링과 분삭학습을 통해 딥러닝을 쉽고 빠르게. 레이블링 자동화

Auto labeling

  1. 대표적인 클러스터를 사람에게 묻는다
  2. 사람이 라벨한다
  3. 모호한 영역에 있는 클러스터를 사람에게 묻는다
  4. 일정 성능 이상이 되면 라벨링을 종료한다

주제를 이끌어내기까지 너무 오래걸림.

데이터 수집, 전처리, 라벨링, 모델선정, 모델학습, 모델평가, 모델 추론

  1. 전처리
  2. 모델학습 에서 자동화를 만들어냈다
  3. autolabeling A. brightics AI로 데이터를 선별하고 학습효과가 가장 큰 이미지를 선정하고 자동 레이블함 B. Active Learning이라는 기법을 기반으로 한다 a. 전체 데이터 중 5% 선별 b. 모델을 학습시킴 c. 모델을 가지고 나머지 95% 데이터로 레이블을 만들어 봄
  4. 90% 확실,
  5. 5% 불확실.
  6. 5%씩 사람이 레이블을 하게 되면
  7. 다시 한 번 모델이 학습하고
  8. 5% 불확실 등을 계속해서 찾아냄 C. 클러스터링 후 대표건을 사람에게 질의 D. 학습후 불확실건 질의 E. 목표 정확도 달성시 라벨로 출력

처음엔 랜덤으로 클래스 출력 문제는 현장데이터들이 각 클래스별로 균등하게 분포되어있지 않은 문제가 있었음. 지금은 위에서 말한 샘플링 기법으로 문제를 해결하기 시작함.

공개데이터 STL10로 20% Label 정보로 오토레이블링 정확도 98% 달성했다.

이 경우 세그멘테이션이나 디텍션에 대한 영역도 올해말을 기점으로 레이블을 공개할 예정임.

분산 모델 학습(distributed model training)

feed forward netowrk와 backpropagation이 반복적으로 일어날때

  1. 모델 패러랠리즘 A. 모델이 멀티플 지피유에 분산된다
  2. 데이터 패러랠리즘 A. 모델 패러랠리즘보다 더 나은 분산 처리 방식이다 B. 각 지피유에 독립적으로 모델(0 weights)을 분산한다 C. 이때 각 디바이스에 학습된 웨이트와 결과는 다르다 이 일어난다.

분산 학습에서는 그라디언트를 평균내고 웨이트에 참여한다.

  1. 분산되면 각자 다른 gradients를 갖는다
  2. 이때 average its gradients하고
  3. update all models한다

기법

  1. parameter server를 두어 학습한다 A. multiple workers를 관장하는 parameter server를 둔다 B. parameter server는 central cache space다 C. 문제는 bottleneck이 발생한다는 것. D. parameter server를 여럿 두어도 sendback / forward가 발생해서 bottleneck을 일으킨다
  2. horovod(ring all reduce) A. 우버가 만든 테크닉 B. 센트럴 캐시같은건 없고 C. 클러스터 커넥트를 이용해서 워커간 노드 정보를 보낸다. D. 클러스터가 a가 b로, b가 c로, c가 a로 동시에 weights를 보낸다. E. 그리고 모든 weights를 더한다. F. 그 다음 모두 더하는 과정이 끝났다면 더한 결과를 각 클러스터 abc에 보내어 업데이트한다 G. 이렇게하면 parameter server의 bottleneck이 없다 모로리딕 소프트웨어는 사라지고 있고 작은 마이크로 서비스가 늘고 있다. 따라서 모든 서비스가 마이크로서비스이고 restAPI로 작동한다. 이때 분산 학습은 학습에서 이점을 갖는다고.

클라우드

Platform as a Service(PaaS)가 클라우드 유행인데, 현재는 SRE(Site Reliability Engineering, 구글이 발표함. 데브 옵스 조직 프로세스 통합 관리)로 초점을 맞춰서, 지역별 인프라 구성 설정 인프라를 표준화/자동화하고, 애플리케이션 설치 배포를 고도화.

데이터 분석

수요예측, 금융분석, 마케팅 등에 사용하고 있음. 현재 공정데이터 만이 아니라 시장데이터까지 함께 분석해서 품질 향상을 만들 수 있을까? 공정 데이터만 분석했을때는 결함 찾기에 한계가 있음. 이때 우리는 시장 데이터를 결합함. 제품이 출시돼서 나갔을때 결함이 나는 것, a/s센터 접수된 데이터를 함께 결합해서 불량 예측 알고리즘을 만들었음. 이 알고리즘을 배포해서 실시간 출하검사를 이용하도록 함. 적용한 세트와 적용하지 않은 세트를 비교했더니 반품률이 8% 감소 했고, 33배 이상 빠른 분석 성능을 보였다고.

생산성 향상을 위한 accelerated AI

처음 데이터는 55% 정확도였다. 그런데 여기에 pix2pixGAN 적용해서 정확도를 88%로 상승시켰다. 다량 인조 이미지를 만들었다. pix2pix는 소량의 frames of images를 복제하는 기술이다. (의문이 좀 있다)

라벨링 자동화: active learning. 기계랑 사람이 협업.

  1. 클러스터링후 대표적인 건을 사람에게 질의
  2. 학습후 불확실한 건을 사람에게 질의 반복
  3. 목표 정확도 달성시 라벨로 출력
  4. 데이터 정제기간 80% 절감

제조불량 패턴이미지 10만장 2명-25일 이 하던 일을 1명이 10일로.

클라우드와 AI기술을 융합한 VoC 리드타임 효율화

Voice of Customer의 줄임말로, 고객의 소리. 즉 내 외부 고객의 요구 사항을 표현하는 언어.

Voice of Business의 줄임말도 있다. 이것은 회사, 사업, 팀 단위의 사업 전략, 경영 계획의 목표 달성을 위한 경영진의 요구사항.

아마존 14 leadership principles

  1. Customer Obsession
    Leaders start with the customer and work backwards. They work vigorously to earn and keep customer trust. Although leaders pay attention to competitors, they obsess over customers.
  2. Ownership
    Leaders are owners. They think long term and don’t sacrifice long-term value for short-term results. They act on behalf of the entire company, beyond just their own team. They never say “that’s not my job.”
  3. Invent and Simplify
    Leaders expect and require innovation and invention from their teams and always find ways to simplify. They are externally aware, look for new ideas from everywhere, and are not limited by “not invented here”. Because we do new things, we accept that we may be misunderstood for long periods of time.
  4. Are Right, A Lot
    Leaders are right a lot. They have strong judgement and good instincts.  They seek diverse perspectives and work to disconfirm their beliefs.
  5. Learn and Be Curious
    Leaders are never done learning and always seek to improve themselves. They are curious about new possibilities and act to explore them.
  6. Hire and Develop the Best
    Leaders raise the performance bar with every hire and promotion. They recognise people with exceptional talent and willingly move them throughout the organisation. Leaders develop leaders and are serious about their role in coaching others.  We work on behalf of our people to invent mechanisms for development like Career Choice.
  7. Insist on the Highest Standards
    Leaders have relentlessly high standards – many people may think these standards are unreasonably high. Leaders are continually raising the bar and driving their teams to deliver high quality products, services and processes. Leaders ensure that defects do not get sent down the line and that problems are fixed so they stay fixed.
  8. Think Big
    Thinking small is a self-fulfilling prophecy. Leaders create and communicate a bold direction that inspires results. They think differently and look around corners for ways to serve customers.
  9. Bias for Action
    Speed matters in business. Many decisions and actions are reversible and do not need extensive study. We value calculated risk taking.
  10. Frugality
    Accomplish more with less. Constraints breed resourcefulness, self-sufficiency and invention.  There are no extra points for growing headcount, budget size or fixed expense.
  11. Earn Trust
    Leaders listen attentively, speak candidly, and treat others respectfully. They are vocally self-critical, even when doing so is awkward or embarrassing.  Leaders do not believe their or their team’s body odour smells of perfume.  They benchmark themselves and their teams against the best.
  12. Dive Deep
    Leaders operate at all levels, stay connected to the details, audit frequently, and are sceptical when metrics and anecdote differ. No task is beneath them.
  13. Have Backbone; Disagree and Commit
    Leaders are obligated to respectfully challenge decisions when they disagree, even when doing so is uncomfortable or exhausting. Leaders have conviction and are tenacious. They do not compromise for the sake of social cohesion. Once a decision is determined, they commit wholly.
  14. Deliver Results
    Leaders focus on the key inputs for their business and deliver them with the right quality and in a timely fashion. Despite setbacks, they rise to the occasion and never compromise.

구글 클라우드 사례 적용기

포켓몬고는 나이앤틱(Niantic)이라는 회사가 만들었다. gcp사용해서 pokemon go를 만들었음.

  1. 나이앤틱으로부터 예상 고객 규모 예상, 클라우드 준비를 해야 했다
  2. 오리지널 런치 타겟을 문의받고
  3. 워스트 케이스로 ~5배를 준비했다
  4. 자원을 준비했다. 그런데 론칭했을 때 50배가 들어왔고, 워스트 케이스보다 5배 컸다.
  5. 구글 클라우드에서 세 가지 해결책을 만들었다
    1. 5명 나이앤틱 개발자, 50명 gcp 개발자 모여서 2주동안 밤새면서
    2. 데이터 이전, 쿠버네티스 로드 수준 제한이 있어서 코드 버전 올리고
    3. 래리페이지에게 연락해서 문제 해결. 구글 클라우드는 당시 90% 이상 자원을 활용중이었음. 꼭 필요한 자원 외에는 자원을 끌어 모았음

글로벌 기업의 클라우드 활용률 약 84% : 하이브리드 58%, 멀티퍼블릭 17%, 멀티 프라이빗 9% 삼성SDS 클라우드 부서는 브라이빗 클라우드와 퍼블릭 클라우드를 인테그레이트 하는 클라우드를 만드는 것이 목표.

소고

장미라는 이름을 바꾸어 불러도 향기는 그대로 남는다

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중