블로그 · 가이드
내가 찍은 사진에서 App Store까지, 모두 iPad에서
MagicaLCore에서 모델을 훈련하고, Swift Playgrounds에서 앱을 만들고, App Store Connect로 보내세요. Mac 없이 거치는 모든 과정을 단계별로 소개합니다.
MagicaLCore 작성 ·
자체 모델로 무언가를 알아보는 앱을 만들려면, 예전에는 모든 단계에 Mac이 필요했습니다. 훈련 도구, Xcode, 그리고 빌드를 업로드할 컴퓨터까지. 이제는 M1 칩 이상을 탑재한 iPad 하나로 모든 과정을 해낼 수 있습니다. 식물 식별 앱을 예로 들어, 각 단계가 어떻게 맞물리는지 살펴보겠습니다.
아이디어
관심이 있고, 카메라나 마이크, 데이터 표로 담을 수 있는 대상을 고르세요:
- 사진으로 보면 이 실내 식물은 무엇일까?
- 녹음을 들어 보면 어떤 새가 노래하고 있을까?
- 이 문장은 질문일까, 불만일까, 칭찬일까?
- 손 사진으로 보면 가위, 바위, 보 중 무엇일까?
넓은 질문보다 좁은 질문이 더 잘 통합니다. “세상의 모든 식물”보다 “우리 집 발코니의 식물 8가지 중 어느 것일까?“가 더 낫습니다.
1단계. 예시 모으기
iPad로 식물마다 사진을 찍으세요. 각도를 바꾸고, 빛을 바꾸고, 가까이서도 멀리서도 찍습니다. 식물마다 폴더를 하나씩 만들고 그 식물의 이름을 붙이세요. 이 이름이 앱에 표시될 레이블이 됩니다. 테스트용으로 식물마다 사진 몇 장은 따로 남겨 두세요.
2단계. MagicaLCore에서 훈련하기
새 이미지 모델을 만들고, 이름과 작성자를 정한 뒤 폴더를 추가하세요. 처음에는 기본 설정으로 시작하세요. 훈련하는 동안 훈련과 검증의 정확도와 손실을 지켜보세요. 시간이 부족하면 일시 정지하고 나중에 기록에서 이어서 하면 됩니다.
3단계. 어려운 경우 테스트하기
카메라를 식물에 대고 각 예측의 신뢰도를 확인하세요. 어두운 구석, 복잡한 배경 앞의 잎, 목록에 없는 식물도 시험해 보세요. 모델이 틀리면 그와 비슷한 예시를 더 추가하고 다시 훈련하세요. 좋은 모델은 이 반복에서 만들어집니다.
4단계. .mlmodel 내보내기
이름, 작성자, 설명을 담아 모델을 내보내고 파일 앱에 저장하세요. Swift Playgrounds와 Xcode에서 바로 쓸 수 있습니다.
5단계. Swift Playgrounds에서 앱 만들기
Swift Playgrounds는 iPad와 Mac에서 Swift로 코드를 작성하고 SwiftUI로 앱을 만드는 Apple의 무료 앱입니다. 새 앱 프로젝트를 시작하고, .mlmodel을 추가한 뒤 화면을 작성하세요. 입력하는 동안 실시간 미리보기로 확인할 수 있습니다. MagicaLCore의 모델 사용하기 가이드는 모델 유형별 코드를 보여 줍니다. 모델을 불러오는 방법, 사진, 소리, 데이터 한 줄, 문장을 전달하는 방법, 그리고 답을 읽는 방법까지.
간단한 첫 버전에는 세 가지만 있으면 됩니다:
- 사진을 찍거나 고르는 버튼.
- 모델의 답과 그 신뢰도.
- 결과에 대한 짧은 카드. 식물 앱이라면 이름과 돌보는 법.
6단계. 출시하기
앱이 iPad에서 잘 작동하면 Swift Playgrounds에서 App Store Connect로 보낼 수 있습니다. App Store에 출시하려면 Apple Developer Program 멤버십이 필요합니다. 나중에 더 많은 기능이 필요하면 같은 프로젝트를 Mac의 Xcode에서 열 수 있습니다.
알아 두면 좋은 점
- 인식은 기기에서 이루어집니다. 모델이 앱 안에 들어 있어서, 서버 없이 그리고 사진을 어디에도 보내지 않고 답합니다.
- 작게 시작해서 키워 가세요. 몇 개의 클래스로 출시하고, 예시를 모으면서 클래스를 늘려 가세요.
- 사용자에게 솔직하세요. 신뢰도를 보여 주고, 앱이 모르는 것은 모른다고 말하세요.
학생이라면: Swift Student Challenge
Apple은 매년 학생들이 직접 만든 앱 플레이그라운드를 Swift Student Challenge에 제출하도록 초대합니다. 학생이 자기 사진, 소리, 데이터로 훈련한 모델은 그 프로젝트의 중심이 될 수 있고, 오프라인에서도 작동합니다. MagicaLCore는 Challenge의 일부가 아니며 Apple과도 관련이 없으니, 그해의 공식 규칙을 읽고 사용한 도구를 밝히세요.
전체 과정 한눈에 보기
| 단계 | 앱 | 기기 |
|---|---|---|
| 예시 모으기 | 카메라, 음성 메모, 파일 | iPad |
| 훈련하고 테스트하기 | MagicaLCore | iPad |
| .mlmodel 내보내기 | MagicaLCore | iPad |
| 앱 만들기 | Swift Playgrounds | iPad |
| App Store Connect로 보내기 | Swift Playgrounds | iPad |
다른 앱과 서비스에 관한 정보는 글 작성일 기준으로 확인했으며 바뀔 수 있습니다. 모든 제품 이름은 해당 소유자의 것입니다.
MagicaLCore