식품을 추가하면, 해당 식품이 어떤 종류인지 사람은 쉽게 유추할 수 있다. 예를들어, 우유, 치즈 같은 제품은 유제품으로 분류할 수 있고, 사과, 바나나, 딸기 같은 제품은 과일로 분류할 수 있다. 이렇게 같은 특성을 지닌 부류나 범위를 범주 , 또는 카테고리 라고 한다. 사용자가 새로운 식품을 추가하면, 해당 식품이 어느 범주에 속하는지를 분류해서 입력값으로 넘겨준다면 좋겠지만, 너무 많은 입력을 요구하면 View가 복잡해지고 사용자 편의성이 떨어지게 된다. 따라서, 입력되는 식품명을 기반으로 해당 식품의 범주가 어디에 속하는지 분류해준다면 편리할 것이다. 식품명에 따른 범주화해주는 로직은 다음과 같다. 사용자로부터 식품명을 입력받는다. 사전에 분류해둔 키워드 데이터들과 입력받은 식품명의 유사도를 측정한다. 측정된 유사도 결과값 중에서 가장 유사한 키워드의 범주를 반환한다. 예를들어, {사과, 바나나, 딸기} 는 "과일" 이라는 집단으로 분류하고, {우유, 치즈, 요거트} 는 "유제품" 이라는 집단으로 분류한다. 사용자가 입력한 식품명이 "맛있는 사과 5kg (23과내)" 라고 주어졌을 때, "사과" - "맛있는 사과 5kg (23과내)" 와 유사도를 측정하고, "바나나" - "맛있는 사과 5kg (23과내)" 와 유사도를 측정하고, "딸기" - "맛있는 사과 5kg (23과내)" 와 유사도를 측정한다. 같은 방식으로 유제품의 키워드들과도 유사도를 측정한다. 키워드 각각 주어진 식품명과 유사도를 측정해서 나온 결과 값이 가장 높은 키워드의 범주값을 반환한다. 키워드 데이터와 주어진 문자열 사이의 유사한 정도를 측정하기 위해서 자카드 유사도 라는 알고리즘을 사용한다. 자카드 유사도( 자카드 지수 )는 두 집합 사이의 유사도를 측정하는 방법이다. 자카드 유사도 알고