일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 2557
- 입출력 패턴
- 엑셀
- 연결요소
- Django Nodejs 차이점
- correlation coefficient
- 알고리즘 공부방법
- 구조체와 클래스의 공통점 및 차이점
- c++
- scanf
- string 메소드
- 자료구조
- 이분그래프
- 프레임워크와 라이브러리의 차이
- EOF
- getline
- 백준
- vscode
- 표준 입출력
- iOS14
- 입/출력
- Django의 편의성
- double ended queue
- string 함수
- k-eta
- 시간복잡도
- 장고란
- Django란
- 매크로
- UI한글변경
- Today
- Total
Storage Gonie
1주차 - Quiz 3까지 본문
# ML에서의 기대하던 것과 현실의 차이(ML Surprise)
[ML에서의 기대하던 것과 현실의 차이]
- 대부분의 사람들이 ML알고리즘을 최적화 하는 데에만 집중하는 경향이 있어서 hyper parameter를 조정하는 것에 힘쓰는 것을 봐왔다.
- 하지만 실제 큰 성공을 거둔경우를 보면 위의 내용과 좀 다르다.
- 실제로 ML 알고리즘을 최적화 하는데는 훨씬 더 적은 노력이 소모된다.
- 이보다 중요한 것은 데이터 수집이고 이에 세심한 주의를 기울여야 한다.
- 그리고 인프라를 구축하는데도 시간을 들여야 한다.
- 모델을 여러번 자동으로 훈련하고, 최종 사용자들에게 규모에 맞게 서비스를 제공할 수 있도록 하는 것이기 때문이다.
- ML은 생각보다 그렇게 중요하지 않지만 ML에 도달하려고 하는 이유는 이 길을 따라가다 보면 많은 가치를 만들어 낼 수 있기 때문이다.
# ML에서 피해야할 10가지 함정(The secret sauce)
[ML에서 피해야할 10가지 함정]
1. ML알고리즘을 훈련시키는 것이 소프트웨어를 작성하는 시간보다 적게 걸릴거라는 착각을 하면 안된다.
- 알고리즘 이상의 훌륭한 ML시스템을 만들기 위해서는 알고리즘이 필요하기 때문에 그에 적지않은 시간이 소요된다.
2. 데이터를 수집하지 않은 상태에서는 ML을 생각하지 마라.
- 데이터가 없는 상태에서 ML에 대해 얘기하는 것은 소용이 없다.
3. 데이터를 사용할 수 있는 상태일때만 ML을 생각할 수 있다.
- 다른 부서에의해 컨트롤되는 시스템에 내가 데이터를 몇년동안 기록해왔는데 한번도 열람해본적이 없다고 가정하자.
- 만약 그동안 한번도 그것을 열람한적이 없다면 그 데이터는 정말로 사용될 준비가 안되었다고 봐도 과하지 않다.
- 해당 데이터를 정기적으로 검토하거나 보고서를 생산하는 사람이 없고, 그 데이터로 가치를 만들어낼 수 없는 상태라면,
- 데이터가 제대로 입력되는지 확인하고, 유지하려는 노력이 이루어 졌다고 볼 수 없다.
- 깨끗한 데이터 수집에 들어가는 노력을 중요하게 생각해야 한다.
4. 사람을 반복적인 루프에 있게 하라.
- 이러한 조직은 위험이 줄어들게 됩니다.
- 루프 안에서 사람들이 하는 것들 중 일부는 데이터를 검토하고, 훈련 데이터를 다루고, ML이 잘 다루지 못하는 사례를 다루는 것이다.
5. 제품을 낼 때 소비자는 ML인지 모르니 ML알고리즘에 포커싱 하지 말아라.
- 우리가 ML 기술을 사용했을 지라도 사용자들은 음.. 이거 새로운 기능이구나 또는 추천기능 좋네! 이렇게만 반응한다.
- 그리고 더 나은 상호작용을 할 수 있도록 데이터를 생성해주는 많은 사용자들이 있어야 한다.
6. 최적화된 ML 시스템이 아닌 적당히 좋은 ML 시스템을 만들어라.
- 구글은 최적화 하는데 주의를 기하며 완벽할 필요가 없고 적당히 좋은 것을 추구합니다.
7. ML알고리즘이 현실세계의 것들을 실제로 개선시키고 있는지에 대해서 측정해야한다.
- 만약 측정을 하지 않으면 얼마나 개선된것인지, 소비자들이 만족하고 있는 것인지 알 수 없다.
- 실제로는 성공의 영향을 상사에게 보고해야하기도 한다.
8. building my own vs. pre-trained ML algorithm
- 비교가 안될정도로 pre-trained ML algorithm 가 사용의 편의성면에서 유리하고 구현 시간도 많이 절약할 수 있다.
- 예를들어 구글 클라우드는 ML API들을 가지고 있는데 우리가 input만 주면 output을 내주는 것을 가져다가 그냥 사용하면 된다.
9. ML 알고리즘 생산이 한번의 훈련만에 끝난다고 생각하면 안된다.
- 한번의 훈련을 했을 때 통과할 확률이 10% 정도일 것이고,
- ML알고리즘이 핵심 비지니스 프로세스의 일부가 된다면, ML모델은 아주 많이 재훈련 되어야 하는 일이 있을 것이다.
- 이로인해서 이 과정을 매우 쉽게 처리하고 완벽하게 만들기 위한 것에 투자하고 싶어질 것이다.
10. 나만의 알고리즘을 만들려고 하는것을 피해라.
- 우리는 이미지 또는 음성 또는 MLP 분류와 같은 알고리즘을 자신만의 알고리즘으로 만들기를 원한다.
- 그러나 다시 연구를 시작하는 것은 매우 비용이 만이 드는 것이므로 이미 만들어져 있는 것을 꺼내 써야한다.
- 이미 만들어 진것들은 학술적 연구로 부터 매우 잘 튜닝되었기 때문입니다.
결론 :
ML이 제품화 또는 내부 프로세스가 가능하게만 되면 사용자들에게 제공될 수 있고, 피드백 루프가 작동하여 더 많은 데이터를 수집할 수 있게되고 계속해서 학습하게 된다. 가치는 모델을 개발하는 과정에서 나오는게 아니라 이럴때 나오는 것이다. 그러니까 시간낭비를 줄여 어떻게든 빨리 최종 목표에 도달하는 길을 택해라.
# ㅁㄴㅇ(ML and Business Processes)
-
'데이터 사이언스 > ML with TF on GCP(Coursera)' 카테고리의 다른 글
1주차 - Quiz 2까지 (0) | 2018.10.05 |
---|---|
1주차 - Quiz 1까지 (0) | 2018.10.02 |