우수사례 Lose It!은 ML Kit를 사용하여
영양 성분 라벨에서 데이터를 추출
하고 사용자 경험을 개선합니다
영양 성분 라벨에서 데이터를 추출
하고 사용자 경험을 개선합니다
2008년부터 Lose It!은 3,000만 명이 넘는 사용자가 5,000만 파운드를 감량하는 데 도움을 주었습니다. 이 앱은 식단을 최대한 쉽게 기록하여 사용자가 식단을 관리하는 데 도움을 주고 있으며, 제품팀은 항상 더 간편한 방법으로 생활할 수 있는 새로운 방법을 모색하고 있습니다.
Lose It!의 개발팀은 사용자가 사진 촬영만으로 좋아하는 음식을 기록할 수 있도록 고안된 사물 인식 알고리즘인 Snap It을 도입했습니다. 하지만 높은 알고리즘 연산 비용이 필요하여 GPU 서버를 사용해야 했기 때문에 실시간으로 경험을 제공할 수 없었습니다.
그와 동시에 Google은 영양 성분표 스캔 기능도 추가하고 싶었지만, 사용자가 직접 정보를 입력하는 경우보다 서버 분석 시간이 다소 빨랐습니다. 또한 가변적인 셀 네트워크 속도와 신호로 사용자 환경이 개선되거나 중단될 수 있기 때문에 일관된 성능을 보장할 수 없었습니다.
Lose It! 팀은 사용자가 두 기능을 모두 원할 것이라는 것을 알고 있었지만, 그러한 경험을 실시간으로 제공할 수 있을 만큼 빠르게 만들 수 있는 경우에만 가능합니다. 그렇다면 이 비즈니스의 속도를 높이기 위해 무엇을 할 수 있을까요?
진행한 작업
팀은 속도 문제를 해결하기 위해 ML Kit를 선택했습니다. “ML Kit는 음식 인식 기능인 Snap It을 배포하는 데 매우 유용하다는 사실을 입증했습니다. 압축된 퀀트 TF Lite 모델을 사용했기 때문입니다.”라고 에드워드 W. Lowe, Jr. 박사 Lose It! 데이터 과학 및 AI 부문 이사 이전에는 Snap It 알고리즘이 서버에 배포되어 추론을 위해 음식 이미지를 서버로 전송해야 했습니다. Lowe는 “ML Kit에서 호스팅하는 커스텀 모델을 통해 양자화한 Snap It 모델을 기기에서 원활하게 구현할 수 있었습니다. 덕분에 사용자가 데이터 연결 없이 이 기능을 실시간으로 활용할 수 있게 되었습니다. "또한 기기 내 텍스트 인식 API를 활용하여 영양 성분 라벨을 읽을 때 이미지 분석 시간을 크게 줄일 수 있었습니다."
“중요하며, ML Kit를 사용하면 Firebase에서 모델을 호스팅할 수 있습니다.”라고 Lowe는 덧붙입니다. 이를 통해 앱을 업데이트하지 않고도 기기에서 모델을 원활하게 업데이트하고, 앱 크기를 줄이고, 모델 버전의 A/B 테스트를 진행할 수 있게 되었습니다. 앱 출시에서 모델 배포를 연결 해제하면 변화하는 사용자 행동에 빠르게 대응하고 드리프트에 더 잘 대처할 수 있습니다.”
결과
ML Kit 덕분에 Lose It!은 널리 사용되는 고성능 영양 라벨 리더를 출시할 수 있었습니다. 이제 영양소 라벨을 스캔하여 새로운 영양소 정보를 즉시 입력할 수 있습니다. 영양 성분 스캐너는 대부분의 경우 1초 이내에 정보가 인식됩니다. 사용자가 사진을 찍지 않아도 됩니다. 앱이 카메라 뷰에서 실시간으로 정보를 바로 가져올 수 있기 때문입니다.