중앙아메리카와 남아메리카의 신열대 지역에서는 재규어(Panthera onca)와 퓨마(Puma concolor)가 같은 서식지에 살고 있는데, 이 두 종은 인간 활동으로 인해 멸종 위기에 처해 있습니다. 특정 지역에서 각 종의 존재 여부를 파악하는 것은 효과적인 보존 전략을 수립하는 데 필수적입니다. 이처럼 은밀하고 포착하기 어려운 종들은 야생에서 거의 관찰되지 않지만, 그들이 남긴 발자국은 그들의 존재와 분포를 알려주는 중요한 지표입니다. 그러나 재규어와 퓨마의 발자국은 육안으로 쉽게 구별할 수 없습니다.
본 발표에서는 JMP에 새롭게 추가된 직관적인 현장 도구를 소개합니다. 이 도구를 사용하면 보존 생물학자들이 재규어와 퓨마를 신속하게 구분할 수 있습니다. 먼저 JMP FIT(발자국 식별 기술) 추가 기능을 사용하여 특징을 추출하고 선형 판별 분석을 적용하는 방법을 보여드립니다. 다음으로 JMP에서 통계적 형태 분석을 통해 발자국의 형태를 추출하는 방법을 설명합니다. 마지막으로 형태 좌표를 기반으로 신경망 모델을 구축하여 종을 예측하고, 새롭고 직관적인 형태 프로파일링 도구를 통해 결과를 시각화하고 탐색합니다.
안녕하세요 여러분. 오늘 함께해 주셔서 진심으로 감사드립니다. 이렇게 여러분과 저희 연구 결과를 공유할 수 있게 되어 영광입니다. 이번 발표는 WildTrack의 Sky와 저, JMP의 Caleb King, 그리고 브라질 파라 대학교의 Juarez Pezzuti 박사님과 Dany Felix 박사님이 함께 진행하는 공동 발표입니다. 아쉽게도 두 분은 오늘 참석하지 못하셨지만, Caleb과 함께 발표를 진행할 예정입니다.
이 발표는 세 부분으로 구성됩니다. 먼저 제가 연구의 배경을 설명하고, 스카이가 초기 데이터 분석에 대해 이야기할 것입니다. 그리고 케일럽은 이번 연구에 도움이 될 JMP의 새로운 기능들을 소개할 예정입니다. 많은 관심 부탁드립니다. 발표 제목은 "발자국으로 재규어를 알아본다"입니다. 북미 최상위 포식자인 재규어 두 종을 발자국을 이용해 구별하는 방법에 대한 내용입니다.
와일드트랙에서 저희가 하는 일은 가장 오래된 보존 생물학 기법과 가장 현대적인 기법을 결합한다는 점에서 독특합니다. 전통적인 생태학적 지식과 최첨단 데이터 분석을 통합하여 야생 동물을 보호하기 위한 비침습적이고 지역 사회 친화적인 접근 방식을 제공하고 있습니다. 동물을 방해하지 않으면서도 신속한 데이터 분석을 통해 동물을 보호하는 이러한 접근 방식은 보존 분야에서 흔치 않지만, 점차 확산되고 있습니다. 저희는 이러한 연구로 여러 상을 수상했으며, 전 세계의 훌륭한 사람들과 협력하여 보존 생물학 분야를 개선하고 멸종 위기종을 보호하는 데 기여할 수 있게 되어 영광입니다.
우리 모두가 알고 있는 큰 문제 중 하나는 지구 생물 다양성의 손실입니다. 이는 기후 변화, 오염, 삼림 벌채, 인간과 야생 동물 간의 갈등과 밀접하게 관련되어 있습니다. 이러한 모든 요인들이 복합적으로 작용하여 야생 포유류가 서식할 수 있는 공간을 원래의 약 94%까지 줄였습니다. 즉, 현재 야생 포유류는 전 세계 생물량의 6%만을 차지하고 있으며, 나머지 94%는 인간과 가축이 차지하고 있습니다. 물론 이는 포유류만을 대상으로 한 분석입니다. 포유류 외에도 멸종 위기에 처한 다른 종들이 많이 있지만, 인간 활동으로 인해 야생 동물이 얼마나 심각하게 훼손되고 위협받고 있는지를 보여주는 매우 흥미로운 사례라고 생각합니다.
저는 생물다양성 보존에 영향을 미치는 이러한 위협과 문제들이 우리가 진행하고 있는 프로젝트 중 하나인 '아메리카 대륙의 퓨마와 재규어에 대한 위협'을 통해 잘 드러난다고 생각합니다. 서두에서 말씀드렸듯이, 퓨마와 재규어는 북미에서 가장 상징적이면서도 멸종 위기에 처한 종들입니다. 현재 퓨마는 약 17만 마리, 재규어는 그보다 훨씬 적은 약 5만 마리만 남아 있습니다. 이들은 북미 전역의 서식지에서 공존하는데, 퓨마는 북미 북부에서 남미 최남단까지 분포하고, 재규어는 주로 남미를 중심으로 북미 중부에 서식합니다.
하지만 이 동물들이 직면한 갈등과 문제들은 제가 방금 언급한 문제들과 매우 유사합니다. 인간과 야생동물 간의 갈등, 삼림 벌채, 그리고 재규어의 경우 밀렵이 그것입니다. 재규어는 털뿐만 아니라 전통 의약품 시장에서 사용되는 이빨과 뼈 때문에 밀렵당합니다. 이것들은 정말 심각한 문제입니다. 우리가 가진 문제 중 하나는 개체 수와 분포에 대한 신뢰할 만하고 빈번한 최신 데이터가 부족하다는 것입니다.
현재 우리가 가지고 있는 지도는 마치 붓으로 대략적인 윤곽만 그린 것처럼 불완전합니다. 지역적인 규모에서 상황을 제대로 파악하고 신뢰할 수 있는 데이터를 얻기에는 업데이트가 충분히 자주 이루어지지 않습니다. 개체 수와 분포는 매우 중요합니다. 동물들이 어디에 있는지, 어떻게 보호해야 하는지 알기 위해서는 이러한 정보가 필수적입니다. 이 지도들이 보기에는 좋아 보이지만, 실제로는 매우 거친 렌즈로 보는 것과 같습니다. 동물들이 멸종 위기에 처했을 때 신속하게 대응하기 위해서는 훨씬 더 세밀한 정보가 필요합니다.
현재 재규어와 퓨마를 구별하고 보호 구역을 지정하는 데 사용할 수 있는 기술은 무엇일까요? 사실 많지 않고 충분하지도 않습니다. 야생 동물 보호에 흔히 사용되는 카메라 트랩이 있는데, 이는 정글이나 숲에서 동물들이 다니는 길목에 설치됩니다. 동물이 지나가면 빛이 작동하여 사진이 찍힙니다.
카메라 트랩의 문제점은 통계적 조사를 위해 설치하려면 기술적으로 상당히 까다롭다는 것입니다. 도난당하기 쉽고, 동물들이 설치를 피하는 경향이 있으며, 넓은 지역에 설치하는 데 비용이 많이 듭니다. 순간적인 관찰에는 유용하지만, 광범위한 지역에 대한 정보를 제공하기에는 부족합니다. DNA 분석과 같은 다른 기법은 샘플당 처리 비용이 많이 들고, 동물의 유전자형을 판별하려면 모든 유전체 정보가 필요합니다.
동물을 모니터링하기 위해 계측 장비를 사용하는 다른 접근 방식도 있습니다. 예를 들어 동물에 색깔이나 표식을 부착하고 GPS 데이터를 수집하는 것이죠. 하지만 이러한 방법들도 비용이 많이 들고, 동물 자체에 잠재적인 피해를 줄 수도 있습니다. 저희 연구를 통해 서식지 범위 변화, 번식력 변화, 새끼 수 변화, 사회 구조 변화 등 여러 측면에서 이러한 문제점들이 드러났습니다. 동물을 가까이에서 관찰하고, 표식을 부착하거나, 포획하거나, 마취총을 쏘는 등의 행위를 하면 이러한 변화들이 발생할 수 있습니다.
우리가 할 수 있는 일은 무엇일까요? 이 동물들의 개체 수와 분포를 알고 싶다면, 어떻게 하면 광역 규모의 고해상도 데이터를 얻을 수 있을까요? 오늘 우리가 이야기할 주제는 바로 이것입니다.
와일드트랙(WildTrack)에서는 획기적인 해결책을 제시할 수 있는 발자국 식별 기술을 개발했습니다. 슬라이드 내용이 방대해서 전부 읽어드리지는 않겠지만, 핵심은 발자국이 도처에 있다는 것입니다. 발자국은 자연이 남긴 고유한 신호이며, 실제로 많은 정보를 담고 있습니다. 발자국을 통해 동물의 종, 성별, 개체, 연령 등을 식별할 수 있습니다. 우리가 해야 할 일은 발밑을 살펴보고 발자국 이미지를 수집하는 것뿐입니다. 발자국은 일반적으로 활용도가 매우 낮지만, 보존 상태에 대한 정보를 제공할 수 있는 엄청나게 풍부한 데이터 소스입니다.
이것이 바로 저희 발자국 식별 기술의 핵심입니다. 이 기술의 장점 중 하나는 발자국을 이용하기 때문에 지역 사회 구성원들이 추적에 쉽게 활용할 수 있다는 점입니다. 발자국을 이용한 접근 방식은 전통적인 생태학적 지식과 전문성을 활용할 수 있게 해 주는데, 이는 과학계에서 과소평가되고 있지만 보존 도구로서 매우 강력한 잠재력을 지니고 있습니다. 다시 말해, 이는 고대와 현대의 기술을 결합하여 동물을 더 정확하게 식별하는 데 도움이 되는 도구를 만드는 것입니다.
제가 말씀드렸듯이, 발자국은 일종의 신호라고 할 수 있습니다. 어떤 신호든 될 수 있지만, 환경 속에서 끊임없이 새롭게 나타나는 신호입니다. 발자국은 보통 24~48시간 후면 씻겨 내려가지만, 여전히 그 자리에 남아 우리를 기다리고 있습니다. 마치 세상이 발자국으로 가득 찬 빈 도화지 같아요. 어떤 종의 발자국인지, 어떤 개체가 어디에 남긴 것인지 알아낼 수 있다면, 세계 지도를 데이터로 채울 수 있을 것이고, 이는 생태계 보전에 있어 엄청난 자원이 될 것입니다.
자, 여기서 잠시 멈추고 스카이에게 마이크를 넘기겠습니다. 혹시 환경 보전에 대해 더 자세히 알고 싶으신 분들을 위해 저희 웹사이트에 다양한 자료가 있으니 참고해 주시면 감사하겠습니다. 지난 2년간 발행된 자료들을 모두 찾아보실 수 있습니다. 스카이에게 분석 기능에 대해 좀 더 자세히 설명해 달라고 부탁드리고, 이어서 케일럽이 JMP의 새롭고 흥미로운 기능들에 대해 이야기해 줄 예정입니다.
제 화면이 잘 보이시죠? 저는 스카이입니다. 지금부터 분석에 사용할 변수를 분류하기 위한 특징 추출 방법을 아주 간단하게 설명해 드리겠습니다. 우선, 발자국을 분석할 때는 발자국의 모양과 형태를 어느 정도 파악하는 것이 중요합니다. 앞발, 뒷발, 오른쪽 발, 왼쪽 발을 구분해야 하죠. 그리 어렵지 않습니다. 우리 손과 비슷하거든요. 손가락과 오른손의 모양을 보면 퓨마 발자국의 앞발과 뒷발 모양이 크게 다르지 않죠. 익숙해지면 어떤 발을 보고 있는지 바로 알 수 있습니다.
또 하나 명심해야 할 점은 육식동물이 정상적으로 걸을 때 때때로 발을 헛디디는 경우가 있다는 것입니다. 이를 '등록(registration)'이라고 하는데, 뒷발이 앞발 위로 넘어가는 현상입니다. 이러한 현상은 꽤 자주 발생하기 때문에, 분석 과정을 매우 단순화하기 위해 뒷발만을 사용하게 되었습니다. 특히 왼쪽 뒷발에 집중하는 것이죠. 다시 말해, 많은 연구자들이 쉽게 활용할 수 있도록 분석 방법을 매우 간소화하는 것입니다.
퓨마와 재규어의 왼쪽 뒷발자국을 보면 얼마나 비슷한지 알 수 있습니다. 구별하기가 정말 어렵습니다. 아주 뛰어난 추적 전문가라면 구별할 수 있을지도 모르지만, 대부분은 발자국이 너무 비슷해서 시각적으로 구분하기가 매우 어렵습니다. 물론 우리가 명심해야 할 것은 개체 내 변이, 종 내 변이, 그리고 종간 변이입니다. 이것은 단지 어떤 변이가 나타나는지 보여주기 위한 시연일 뿐입니다. 저는 재규어와 퓨마의 개체별 발자국 변이에 대한 아주 간략한 설명을 배웠습니다.
FIT에서 개발한 프로토콜은 육식동물에 맞춰 표준화된 것입니다. 우리는 발자국에 랜드마크 포인트라고 부르는 지점들을 표시합니다. 보시다시피 번호가 매겨져 있죠. 이건 퓨마 발자국인데, 1부터 25까지 번호가 매겨져 있습니다. 아마 "이 포인트들을 어디에 표시해야 할까요?"라고 궁금해하실 겁니다. 발자국을 자세히 보면 각 발가락의 남북 방향과 동서 방향을 알 수 있습니다. 사람의 지문과 매우 비슷하죠. 여기 첫 번째 발가락이 없으니 네 개의 발가락과 발바닥만 보이시죠. 익숙해지면 이 포인트들을 매우 높은 정확도로 표시할 수 있습니다.
이것은 점을 배치하고 측정값을 추출하는 방식을 도식적으로 나타낸 것입니다. 25개의 랜드마크 포인트가 있습니다. 이 포인트들로부터 15개의 파생 포인트를 생성하고, 이를 통해 거리, 각도, 면적을 자동으로 추출합니다. 그런 다음 개체 식별, 성별 구분, 종 구분, 심지어 경우에 따라 연령대 구분을 위한 FIT 알고리즘을 생성합니다. 물론 여기서는 성별 구분에 초점을 맞추고 있습니다. 이제 FIT에서 특징 추출을 수행하는 방식을 간단히 보여드리겠습니다.
지금 보시는 것은 JMP 창입니다. 메뉴에 FIT를 추가했는데요, 클릭하시면 보시는 것처럼 다양한 종들이 표시됩니다. 코끼리, 사자, 호랑이, 벵골호랑이, 아무르호랑이, 코뿔소, 치타, 퓨마 등 여러 종에 대한 알고리즘과 프로토콜을 개발했습니다.
이게 어떻게 작동하는 걸까요? 자, Jaguar를 실행하면 여기 화면이 나타납니다. 여기가 메인 메뉴인데, 여기서 이미지 특징 추출을 할 수 있습니다. 쌍별 데이터 분석 기능도 있지만, 오늘은 다루지 않겠습니다. 검증된 판별 분석과 매핑 기능도 있습니다. 다시 말해, 이미지를 캡처해서 이 과정을 거치면 이미지의 ID와 위치를 알려줍니다. JMP 내에서 모든 작업이 완료되는 거죠.
저는 이미지 특징 추출에 대해서만 설명드리겠습니다. 해당 애플리케이션을 실행하면 이 창이 나타납니다. 창의 왼쪽은 데모용이며, 아무런 기능도 하지 않는 창입니다. 모든 작업은 오른쪽에서 이루어집니다. 여기가 메인 메뉴이고, 여기에 입력 필드가 있습니다. 그리고 여기 활성화된 버튼들이 있습니다.
아주 간단하게 설명해 드릴게요. 이미지를 하나 불러오겠습니다. 여기 제 이미지가 있습니다. 물론 지금은 보이지 않지만, 이미지 크기를 조절할 수 있는 기능이 있습니다. 자동으로 크기가 조정되고, 비율도 유지됩니다. 이 점이 아주 중요하죠. 여기에는 모든 사용법이 나와 있습니다. 이미지를 드래그 앤 드롭하고, 크기를 조정한 다음, 회전 포인트를 이용해 회전시키면 됩니다.
이미지 크기를 조정했습니다. 여기 회전 지점이 있습니다. 왜 중요할까요? 제가 여기서 회전하라고 하면 이미지가 회전합니다. 그 이유는 우리가 기준점을 시각적으로 배치하기 때문입니다. 발가락의 맨 윗부분은 발자국의 구성이나 배치에 따라 달라집니다. 그런 다음 배율을 입력하는데, 배율은 여기에서 설정할 수 있습니다. 배율은 여기에서 10cm로 설정되어 있습니다. 기판 깊이를 설정하는 기능도 있지만 저는 사용하지 않을 겁니다. 그리고 여기 구동 버튼이 있습니다.
아주 빠르게 진행할게요. 축척은 10cm로 설정했습니다. 제가 설정을 마쳤고, 이제 기준점을 입력하라고 나오네요. 이제 아주 빠르게 입력해 보겠습니다. 제가 어디에 점을 찍는지 보이시죠? 익숙해지면 이 과정은 아주 간단해집니다. 십자선을 잡고 정확하게 점을 찍으면 더 정밀하게 작업할 수 있어요. 모든 점을 찍는 과정을 반복하면… 말씀드렸다시피, 익숙해지면 자연스럽게 하게 됩니다. 저는 이런 작업을 수천 번이나 해봤어요.
25개를 완료했고, 여기에 포인트 계산이 끝났다고 표시됩니다. 그런 다음 '파생' 버튼을 클릭하면 포인트가 나타납니다. 거의 보이지 않지만, 스크립트에 포함된 15개의 포인트가 표시되고, 이 포인트들이 파생 포인트를 생성합니다.
그리고 마지막으로 제가 하는 일은… 여기 있는 기능들은 자세히 설명할 필요는 없겠죠. '행 추가'라고 하면, 해당 발자국에 대한 데이터 행이 생성됩니다. 그러면 모든 XY 좌표가 생성되는데, 총 40개입니다. 파생점 15개와 랜드마크점 25개죠. 그리고 V1부터 시작해서 모든 변수들이 생성됩니다.
이 모든 것들은 스크립트로 작성되어 있어서 실제로 변경하거나 추가할 수 있습니다. 어떤 변수가 두 종을 구분하는 데 중요한 역할을 할지는 아직 알 수 없습니다. 그래서 저는 분석에 기여할 가능성이 높은 모든 거리, 각도, 면적을 파악하는 프로토콜을 만들었습니다. 이것이 제가 최종적으로 얻게 된 결과물입니다.
자, 이제 다시 슬라이드쇼, 데모를 보여드리겠습니다. 이것이 바로 저희가 수집한 데이터입니다. 재규어와 퓨마 데이터에 대한 요약을 보여드리자면, 사육 개체가 21마리의 재규어와 18마리입니다. 야생에서의 발자국도 수집했는데, 야생에서는 발자국 유형이나 지면 상태가 다소 다를 수 있다는 점을 고려한 것입니다. 이러한 데이터도 추가했습니다. 총 500개 정도의 발자국을 확보했는데, 재규어가 261개, 퓨마가 220개입니다. 여기서 발표를 마치고, 데이터 분석 전문가인 케일럽에게 마이크를 넘기겠습니다.
좋습니다. 네, 스카이 님, 소개 말씀 감사합니다. 마법이라고 부르셨으니 그 기대에 부응해야겠네요. 이제 JMP를 이용한 분석 방법에 대해 간략히 설명드리겠지만, 주로 이번 프로젝트에서 새롭게 시도하고 있는 기법에 집중하겠습니다. 스카이 님이 FIT에서 기존에 사용하던 방식에 대해 설명해 주셨는데요, 이번에는 통계적 형상 분석이라는 것을 활용하는 약간 다른 접근 방식을 사용하겠습니다.
먼저, 약간의 배경 설명이 필요합니다. 다시 말해, 여러분이 이 부분을 이해할 수 있다면, 우리는 여기에 있는 겁니다. 도형이란 무엇일까요? 아주 어리석은 질문처럼 들릴지도 모릅니다. 우리는 모두 도형이 무엇인지 알고 있습니다. 어릴 적부터 배우는 가장 기본적인 것 중 하나니까요. 화면에 보이는 저 도형은 삼각형입니다. 우리 모두 저것이 삼각형이라는 데 동의할 겁니다. 사실, 도형을 정의하려고 하면 조금 어려움을 느낄 수도 있습니다. 개념적으로는 이해하기 쉽지만, 도형이 정확히 무엇인지 말로 어떻게 표현해야 할까요?
음, 통계적 형상 분석 분야의 선구자들은 다음과 같은 정의를 내렸습니다. 형상이란 불변하는 모든 정보입니다. 즉, 변환, 크기 조정, 회전과 같은 특정 연산을 수행해도 변하지 않는다는 뜻입니다. 이게 무슨 의미일까요?
자, 이건 삼각형이죠, 우리 모두 동의할 거예요. 제가 이렇게 하면 삼각형이 아래로 이동합니다. 이동 후에도 여전히 삼각형입니다. 모양은 변하지 않았어요. 단지 위치만 옮겼을 뿐이죠. 크기를 키울 수도 있어요. 그러면 큰 삼각형과 작은 삼각형이 생기는 거죠. 모양은 여전히 삼각형입니다. 회전시킬 수도 있어요. 이제 재생 버튼처럼 보이지만, 여전히 삼각형이에요. 바로 이런 의미입니다. 어떤 조작을 하든 모양은 변하지 않는다는 거죠. 이것이 우리가 다루는 정의입니다.
다음으로, 우리는 모양이 무엇인지 안다고 가정해 봅시다. 그렇다면 수학적 틀 안에서 어떻게 모양을 식별할 수 있을까요? 수학적으로 어떻게 접근해야 할까요? 몇 가지 방법이 있는데, 제가 지금 설명드릴 방법은 FIT에서 진행하는 연구와 관련된 것입니다. 스카이가 방금 알려준 기준점 집합에서 시작합니다.
사실, 앞서 보여드렸던 이미지 중 하나를 예로 들겠습니다. 도형의 핵심 부분을 식별하는 데 도움이 되는 점들을 선택하는 것입니다. 기본적으로 어떤 다각형을 정의하는 것으로 생각할 수 있는데, 이 경우에는 숫자와 패드가 있으므로 여러 개의 다각형이라고 할 수 있습니다. 이 모든 것들이 우리가 관심 있는 도형의 주요 특징을 구성합니다. 이제 이러한 랜드마크 점들을 얻었으니, 이 데이터 포인트 모음에서 도형 정보만 어떻게 추출할지 결정해야 합니다.
그러기 위해서는 정렬 절차라고 하는 것을 해야 합니다. 형태와 관련 없는 모든 형태 변화를 제거할 것입니다. 어떻게 할까요? 스카이가 FIT에서 사용하는 한 가지 접근 방식을 보여드렸는데요. 저는 좀 더 일반적인 접근 방식에 대해 이야기해 보겠습니다. 물론 여러 가지 방법이 있지만, 저는 좀 더 일반적인 방법을 설명하겠습니다. 이것은 프로크루스테스 분석이라고 합니다. 꽤 흥미로운 이름이죠.
이름에 얽힌 배경을 좀 설명해 드릴게요. 그리스 신화에 나오는 프로크루스테스라는 인물에서 유래했는데, 그는 오솔길 옆에 작은 집을 짓고 살았습니다. 사람들이 길을 지나가다 보면, 그는 그들을 집으로 초대해 잠시 쉬라고 권했습니다. "오랜 여행을 하셨으니, 여기서 편히 쉬세요." 그가 마련해 준 침대에 누우면, 사람들은 어딘가 덩치가 커서 잘 맞지 않는 경우가 많았습니다. 하지만 프로크루스테스는 아주 관대한 사람이었습니다. 만약 사람이 너무 작으면, 그는 밧줄을 가져와서 사람을 묶고, 몸에 맞게 늘려주었습니다. 너무 크면, 말 그대로 사람을 잘라버렸습니다. 네, 사실 이 사람은 도둑이었고, 이런 기발하고 끔찍한 방법으로 희생자들을 처리했습니다. 그러다가 또 다른 그리스 영웅 테세우스가 나타나 프로크루스테스에게 똑같은 방식으로 복수했습니다.
이름이 다소 논란의 여지가 있지만, 이 절차의 이름이 어디서 유래되었는지 알 수 있습니다. 자, 주요 단계는 무엇일까요? 기본적으로 세 단계가 있으며, 이는 앞서 이야기했던 변화들에 각각 해당합니다. 첫 번째 단계는 도형들이 여기저기 흩어져 있을 때, 모든 도형을 공통 지점, 일반적으로 원점에 맞춰 중심에 배치하는 것입니다. 이를 위해 각 도형, 즉 이 경우에는 각 트랙에 대해 X 좌표의 평균값과 Y 좌표의 평균값을 구하고, 모든 좌표에서 이 값들을 추적하여 원점을 중심으로 배치합니다.
사실, 이 사람이 보여준 것처럼, 장면들을 피팅 소프트웨어에 배치하는 것만으로도 이미 그 작업은 완료됩니다. 소프트웨어에서 이미 정렬 작업을 해주고 있죠. 다음으로 해야 할 일은 축척을 고려하는 것입니다. 모든 이미지가 동일한 축척을 가져야 하고, 축척으로 인한 변화는 없어야 합니다. 이를 위해 '제곱평균제곱근 거리(RMSD)'라는 방법을 사용합니다. 여기 옆에 삼각형이 있는데, 이 삼각형을 세 개의 기준점으로 생각하면 됩니다. 저 점이 꼭짓점이고, 가운데에 평균값이 있습니다. 이 선들은 각 점에서 중심까지의 거리를 나타냅니다.
제곱평균제곱근 거리는 이러한 거리들의 평균입니다. 이 평균 거리를 각 좌표로 나누면 새로운 좌표의 제곱평균제곱근 거리는 1이 됩니다. 이제 모든 좌표를 0으로 중심화했습니다. 모든 좌표의 스케일을 1로 조정했습니다. 제 경우에는 예측에 도움이 될 수 있기 때문에 원래의 스케일링 정보를 저장해 두었습니다.
마지막으로 해야 할 일은 회전 정렬입니다. 앞의 두 단계에서 우리는 작업에 사용할 수 있는 좋은 기준을 마련했습니다. 회전에는 몇 가지 옵션이 있습니다. 스카이가 보여준 방법 중 하나는 두 개의 기준점을 선택하고 이를 수평 기준점으로 지정하는 것입니다. 제가 여기서 설명할 또 다른 방법은 평균 모양을 취하는 보다 일반적인 절차입니다.
평균 형상을 구한다는 것은, 이 경우 각 트랙에 대해 기준점을 하나 정하고, 모든 데이터와 모든 트랙의 좌표 평균을 구하는 것을 의미합니다. 각 기준점에 대해 이 과정을 반복하면 평균 형상이 정의됩니다. 이 평균 형상을 초기 기준으로 삼고, 나머지 트랙들을 이 기준점에 맞춰 회전시킵니다. 그런 다음 새로운 평균 형상을 구하고 이 과정을 반복합니다. 보통 두세 번 반복하면 만족스러운 정렬 결과를 얻을 수 있습니다. 이 방법을 프로크루스테스 정렬 또는 일반 프로크루스테스 정렬 절차라고 합니다.
이제 그 작업을 마쳤으니 드디어 본격적인 작업에 들어갈 수 있습니다. 아니, 적어도 거의 다 왔습니다. 정렬된 데이터 좌표를 얻었으니, 이제 이 도형들이 어떤 공간에 존재하는지 생각해 봐야 합니다. 엄밀히 말하면, 이 도형들은 매니폴드라는 공간 위에 존재합니다. 매니폴드는 수학 용어로, 전체적으로 보면 직선이 아닌 구불구불하고 휘어진 선들이 뒤섞여 있는 것처럼 보입니다. 모든 것이 직선은 아니지만, 국소적으로는 직선 거리로 표현할 수 있는 부분도 있습니다.
좋은 예로, 당신이 서 있는 이 땅이 바로 그 예입니다. 지구라고 불리죠. 지구는 거대한 구형, 엄밀히 말하면 타원체이지만, 거시적인 규모에서는 거리가 직선이 아니라 곡선이기 때문에 매니폴드로 간주됩니다. 우리가 매니폴드를 다뤄야 하는 이유는, 먼저 좌표로 표현되는 도형을 벡터로 변환할 수 있기 때문입니다. 이렇게 하면 깔끔한 벡터 공간을 얻을 수 있지만, 변환, 크기 조절, 회전 등의 변수를 제거하다 보면 도형이 존재하는 공간에 제약이 생기기 시작합니다.
간단한 예로, 삼각형을 비롯한 모든 삼각형 변형은 마치 반구를 4등분한 다음 그중 한 조각을 취한 모양 그대로인 매니폴드 위에 존재합니다. 이것이 바로 삼각형이 존재하는 공간이죠. 생각해낼 수 있는 가장 간단한 예입니다. 벌써부터 시각화하거나 이해하기가 조금 어렵다는 것을 알 수 있을 겁니다. 이 때문에 우리는 이 기묘한 고차원 매니폴드 위에 살고 있으며, 기본적으로 접선 공간과 같은 개념을 다뤄야 합니다.
직선 거리가 깔끔한 공간으로 변환되도록 노력하세요. 그러면 작업이 훨씬 쉬워집니다. 이를 위해 지수 변환과 로그 변환이라는 도구를 사용할 수 있습니다. 이러한 변환 공간에 도달하면 통계 분석을 수행할 수 있습니다. 주성분 분석, 판별 분석, 신경망 등 다양한 통계 분석 기법을 활용할 수 있습니다. 신경망에서 LDA를 강조 표시한 이유는 잠시 후 자세히 살펴볼 내용이기 때문입니다.
또 다른 방법은 제가 방금 말씀드린 모든 것을 무시하고 여러분이 원하는 직선상에, 원하는 공간에 있다고 가정하는 것입니다. 언뜻 보기에는 매우 임의적이고 게으른 방법처럼 보일 수 있지만, 사실 여기에는 나름의 이유가 있습니다. 예를 들어, 제 근처에 세탁기가 있습니다. 저와 세탁기 사이의 거리를 계산하는 방법은 두 가지가 있습니다.
첫째, 제가 방금 거대한 타원체 위에 살고 있다고 말씀드렸잖아요. 타원체에서 거리를 측정하는 가장 좋은 방법은 호의 길이입니다. 지구 중심을 기준으로 저와 세탁기 사이의 각도를 알아야 해요. 그 정보를 얻으면 저와 세탁기 사이의 호의 길이를 계산할 수 있고, 그게 바로 제 거리입니다. 아니면, 여기가 평평해 보이니 직선 거리를 계산해도 되겠네요. 더 정확한 방법 대신 이런 방식을 선택하는 이유를 이해하셨으면 좋겠습니다.
분명히, 지금처럼 컴퓨터 그래픽을 이용한 예술 분석은 제가 다루는 내용에는 과도한 작업입니다. 우리가 다루는 도형들이 서로 매우 유사하기 때문입니다. 변형이 거의 없죠. 일반적인 분석에서처럼 거리만 계산하면 충분합니다. 고차원적인 계산은 신경 쓸 필요가 없습니다. 도형 자체가 매우 다른 경우에만 고차원적인 계산이 필요합니다. 예를 들어, 이등변삼각형과 직각삼각형처럼 복잡한 도형을 비교하는 경우를 생각해 보겠습니다. 삼각형과 사각형처럼 고도의 수학적 계산이 필요한 경우도 있겠죠. 하지만 우리 경우에는 도형들이 너무 유사해서 그런 복잡한 계산이 필요 없습니다. 바로 원하는 분석으로 넘어갈 수 있습니다. 자, 그럼 실제로 어떻게 작동하는지 한번 살펴보겠습니다.
여기 제 데이터로 가서 먼저 정렬을 요청하는 방법을 예시로 보여드리겠습니다. Sky에서 보내준 원시 데이터입니다. 모든 측정값이 여기에 있습니다. 여기서 좌표를 추출하거나, 이미 제공되었다면 가져올 수 있습니다. 여기 Y 값과 X 값이 있습니다. 제가 원하는 데이터는 바로 이 원시 좌표입니다. 어떤 모습인지 보여드리기 위해서입니다. 여기 좌표를 플롯한 그래프가 있습니다. 어느 정도 정렬은 되었지만 아직 깔끔하지 않습니다. 좀 더 정밀한 정렬이 필요할 것 같습니다. 이제 Procustes 정렬 도구를 실행해 보겠습니다. 이 도구는 JMP 스크립팅 언어로 작성되었습니다. 이 특정 애플리케이션에서 사용되고 있지만, 기술적으로는 X와 Y 데이터가 있는 모든 애플리케이션에서 사용할 수 있습니다. 데이터 테이블이 선택되었는지 확실하지 않네요. 실행해 보겠습니다. 간단한 창이 여기에 열릴 겁니다.
좌표를 가져올게요. 모든 좌표가 필요한 건 아니에요. 일부만 필요해요. 그중 일부는 다른 좌표를 생성하는 데 사용되거든요.
일반적으로 여기에는 트랙의 전체 개요가 있습니다. 이제 보조 변수로 이 두 가지를 불러오겠습니다. 이것들은 기본적으로 예측에 사용할 변수들입니다. '실행'을 클릭하면 정렬이 완료됩니다. 보시다시피, 트랙들이 깔끔하게 정렬되었습니다. 이전에 봤던 것보다 훨씬 보기 좋습니다. 이것이 바로 일반적인 프로쿠스테스 정렬을 수행하는 간단한 방법입니다. 물론 정렬하는 다른 방법도 있지만, 저는 일반적인 접근 방식을 보여드리고 싶었습니다. 이제 이 접근 방식을 사용한 후 모든 데이터 테이블을 닫겠습니다. 사실 저는 이미 정렬된 데이터에 대한 일부 정리를 마쳤으므로, 이제 해당 데이터를 불러오겠습니다. 여기 있습니다. 최종 정렬된 데이터입니다. 저는 이미 이 데이터에 대한 분석을 완료했습니다.
우선 데이터를 시각화하기 위한 기준점을 마련해야 합니다. 데이터는 항상 그래프로 나타내야 합니다. 제가 여기에서 그렇게 했습니다. 이렇게 데이터를 펼쳐 놓는 것보다 쌓아서 나타내는 것이 분석하기가 조금 더 쉽습니다. 데이터를 펼쳐 놓으면 분석이 더 쉬워집니다. 여기서 분석이라고 하면, 스카이가 언급한 형태측정 변수, 즉 면적, 각도, 거리 등을 수집하는 것을 말하는 것입니다.
형태 분석에서 우리는 실제로 정렬된 좌표를 입력값으로 사용합니다. 왜냐하면 이 좌표들이 형태를 나타내기 때문입니다. 제가 포함시키는 유일한 다른 요소는 바로 이 스케일링 계수입니다. 발자국 분석에서 크기는 중요한 정보를 제공할 수 있기 때문입니다. 발자국의 크기만 알아도 어떤 종의 발자국인지 파악하는 데 도움이 될 수 있는 경우가 있습니다. 시각적 참고를 위해 이 그래프를 옆에 두겠습니다. 자, 다시 말씀드리지만, 저는 이미 몇 가지 분석을 마쳤습니다. 첫 번째로 한 분석은 Fit에서 가장 기본적인 분석인 판별 분석입니다.
여기서 실행해서 출력 결과를 보여드리겠습니다. 오분류율이 2~5% 정도 나오는데, 이는 상당히 좋은 결과입니다. 이 형태 분석의 장점 중 하나는 모델의 작동 원리를 물리적으로 설명할 수 있다는 점입니다. 예를 들어 판별 분석은 입력값들의 선형 조합을 통해 정규축이라고 부르는 축을 생성하는 방식으로 작동합니다.
핵심은 정규축에 값을 표시했을 때, 서로 다른 그룹에 속한 값들이 최대한 멀리 떨어져 있게 된다는 것입니다. 이것이 판별 분석의 핵심 아이디어입니다. 물론 이것은 매우 복잡한 수학적 개념입니다. 1차원이지만 여러 요소의 함수이기 때문에 마치 블랙박스처럼 느껴질 수 있습니다. 도대체 무슨 일이 벌어지고 있는 걸까요? 무슨 일이 일어나고 있는지 이해할 수 있다면 얼마나 좋을까요? 바로 정규 적재량이라는 개념이 있습니다. 이는 기본적으로 해당 축과 입력값 사이의 상관관계를 나타냅니다.
각 입력값에 대해 막대 그래프로 나타낼 수도 있습니다. 이는 유용한 정보를 제공할 수 있지만, 우리는 이미 형태를 알고 있습니다. 이 형태를 활용할 수 있습니다. 이 경우, 저는 '캐노니컬 뷰어'라는 것을 만들었습니다. 평균 형태를 그래프로 나타낸 다음, 캐노니컬 로딩 값을 화살표 크기로 나타냈습니다. 이 화살표에는 부호와 크기가 모두 포함되어 있습니다. X축과 Y축은 입력값이기 때문에, 이 두 성분을 하나의 선으로 결합한 것입니다. 흥미로운 점은 이 그래프를 실제 데이터와 비교해 보면, 파란색에서 빨간색으로, 즉 퓨마에서 재규어로 변하는 것을 볼 때, 화살표의 방향이 데이터에서 나타나는 변화와 상당히 잘 일치한다는 것입니다. 이는 매우 긍정적인 결과입니다.
데이터로 확인해야 할 부분이 있습니다. 또 다른 확인 방법으로, 브라질에서 이 데이터를 수집하고 있던 동료 후아레스에게 이 결과를 보여줬습니다. 그는 이 결과를 보자마자 "내가 트랙 간의 차이에서 보던 것과 정확히 일치하네요."라고 말했습니다. 데이터로 확인했을 뿐만 아니라, 현장에서 직접 데이터를 수집하는 사람들의 확인까지 받은 셈입니다. 이는 이 모델이 확실히 제대로 작동하고 있다는 것을 의미하며, 분석가인 우리에게는 언제나 기분 좋은 소식입니다. 이제 우리는 실제로 물리적으로 어떤 일이 일어나고 있는지, 즉 이러한 형태의 차이가 무엇을 의미하는지 살펴볼 수 있게 되었습니다. 이는 분석가들에게 생물학적 의미를 가질 수 있습니다. 매우 유용한 정보입니다. 아, 잠깐만요. 방금 판별 분석에 대해서만 이야기했는데, 물론 이것은 하나의 접근 방식일 뿐입니다. 이러한 유형의 데이터를 모델링하는 데에는 다양한 접근 방식이 있을 수 있습니다.
제가 한 일은 예측 모델링 분석 메뉴로 들어가서 여러 유형의 모델을 조합하여 어떤 모델이 가장 좋은 성능을 보이는지 평가하는 모델 스크리닝을 실행한 것입니다. 이 경우 신경망 모델이 가장 좋은 결과를 보였습니다. 아마 그다지 놀라운 일은 아닐 겁니다. 실행 결과를 보시면 여기에서 확인할 수 있습니다. 저는 보통 오분류율을 기준으로 비교하는데, 이 경우에는 0입니다. 우리 모델이 응답을 완벽하게 예측한 것입니다. 이보다 더 좋을 순 없습니다. 제가 수치를 조작하거나 한 것이 아닙니다. 결과가 정확히 이렇게 나왔습니다.
이건 정말 놀랍습니다. 다시 말하지만, 우리는 이것이 무엇을 보고 있는지, 모델을 이해할 수 있는지에 대한 질문을 가질 수 있습니다. 이것은 신경망인데, 신경망은 매우 불투명한 블랙박스 방식으로 악명이 높지만, 몇 가지 기법을 시도해 볼 수 있습니다. 제가 한 가지 해 본 것은 이것이 단일 레이어 네트워크라는 점입니다. 레이어의 각 노드에 대해 동일한 작업을 수행했습니다. 입력과의 상관관계를 계산했습니다. 먼저 선형 변환 부분인 NTanH 변환에서 노드를 빼낸 다음, 입력과의 상관관계를 살펴보았습니다.
그런 다음 해당 노드에 부여된 최종 가중치를 기반으로 가중치를 적용하여 다음과 같은 그래프를 만들 수 있습니다. 이 경우 각 레이어를 차례로 살펴보면서 각 레이어가 현재 집중하고 있는 미세한 변화들을 확인할 수 있습니다. 왜 이렇게 다른지 궁금하시다면, 안타깝게도 그 부분은 설명할 수 없습니다. 신경망이 작동하는 방식입니다. 흥미로운 점은 그래프를 조금 더 살펴보면 판별 분석 모델에서 보았던 것과 유사한 패턴들이 나타난다는 것입니다. 때로는 부호가 반전되어 있는데, 이는 음수 부호입니다. 머릿속으로 부호를 뒤집어 생각하시면 됩니다. 모두 동일한 유형의 패턴 변형이며, 우리가 보고 있는 데이터와 모두 일치합니다.
다시 한번 말씀드리지만, 이는 모델들 간의 공통점을 보여줍니다. 적어도 우리는 이러한 흔적의 형태에 내재된 어떤 특징을 파악하고 있습니다. 여기 작은 화살표 보이시죠? 저것은 제가 규모의 영향을 평가하기 위해 옆에 표시해 둔 것입니다. 규모가 어떤 경우에는 작은 영향을 미치고, 어떤 경우에는 큰 영향을 미친다는 것을 알 수 있을 겁니다. 판별 분석에서는 작은 영향을 미칩니다. 여기서 차이를 만들어내는 진짜 요인은 바로 우리가 보고 있는 흔적의 형태이며, 이는 매우 유용한 정보를 제공합니다. 자, 마지막으로 한 가지 더 보여드리고 싶은 것이 있습니다. 그러기 위해서는 조금 생각을 자극하는 질문을 하나 드려야겠습니다.
멋지지 않나요? 지금은 정적인 이미지지만, 이 점들을 직접 만지고 드래그해서 움직여 보고, 모양을 수동으로 바꾸면 분류에 어떤 영향을 미치는지 확인할 수 있다면 얼마나 좋을까요? 정말 멋지지 않나요? 흥미롭지 않나요? 바로 그런 기능을 구현했습니다. 지금은 간단한 테이블 스크립트일 뿐이지만, JSL로 작성했습니다. JMP에서 흔히 사용하는 도구의 용어를 빌려 '쉐이프 프로파일러'라고 부릅니다. 물론, 이 도구는 고정된 시계가 아닙니다. 실제로 점들을 클릭해서 움직여 볼 수 있습니다. 점들을 움직여 보면 모양의 작은 부분들이 어떻게 변하는지 확인할 수 있습니다.
여기에는 더 많은 정보가 있습니다. 보이는 화살표를 저는 민감도 화살표라고 부릅니다. 전문 용어로는 그라디언트라고 하죠. 기본적으로, 제가 그 지점을 그 방향으로 조금만 움직이면 화살표의 크기를 통해 해당 지점의 확률이 얼마나 증가하는지 보여줍니다. 이 경우, 제가 실험해 본 23번 지점은 매우 민감한 지점입니다. 이 지점을 아주 조금만 움직여도 분류 결과가 얼마나 크게 변하는지 확인할 수 있기 때문입니다. 이를 통해 도형의 특정 지점에 대한 분류의 민감도를 파악할 수 있습니다. 물론, 더 자세히 분석할 수도 있습니다. 다시 말씀드리지만, 원래 입력값은 Y축의 X축 방향 값입니다. 원하시면 그렇게 보여드릴 수도 있습니다. 하지만 저는 보통 하나의 화살표만 사용합니다. 시각화하기가 더 쉽기 때문입니다.
자, 이제 마지막으로 한 가지 더 할 일이 있는데, 약간의 설정이 필요합니다. 시각적인 효과를 위해 분류 표시를 숨기겠습니다. 또한, 좀 더 쉽게 볼 수 있도록 감도 화살표도 숨기겠습니다. 설정을 진행하면서 오늘 이야기를 마무리하겠습니다. 먼저 몇 가지 설정을 변경해야 합니다. 어떤 설정이 필요한지는 알고 있습니다. 여기서 변경하겠습니다. 잠시만 기다려 주세요. 걱정하지 마세요. 이 공간은 그대로 둘 겁니다. 여기서 배율도 변경하겠습니다. 여기로 와서 이미지를 드래그해서 넣겠습니다. 아까 Sky가 FIT에서 했던 것처럼 여기서도 할 수 있습니다.
그래프를 채워 넣겠습니다. 이 이미지는 잘못된 이미지입니다. 괜찮습니다. 올바른 이미지는 여기 있습니다. 올바른 이미지를 사용하는 것이 도움이 됩니다. 제가 랜드마크 포인트를 입력하는 데 전문가가 아니기 때문에, 잘못 입력하면 큰 실수를 할 수 있어서 랜드마크 포인트를 제대로 입력했는지 확인하고 싶었습니다. 이 눈금 표시가 실제 눈금과 잘 일치하는지 확인해야 합니다. FIT 프로그램은 제가 지금 하는 것보다 훨씬 발전된 기능을 제공합니다. 훨씬 더 좋습니다. 저는 아직 몇 가지 작업을 수동으로 하고 있지만, 괜찮습니다. 잘 될 겁니다. 이제 거의 다 된 것 같습니다. 여기 있습니다. 꽤 잘 맞았습니다. 제가 작업하는 포인트가 더 잘 보이도록 이미지를 조금 밝게 조정하겠습니다.
자, 여기 있습니다. 이미지를 설정했으니 실수로 옮기지 않도록 잠금 처리하겠습니다. 잠금 처리하는 동안 창을 닫겠습니다. 처음에 보셨듯이 조이는 동물 보호 활동의 중요성, 즉 동물들이 어디에 살고 있는지, 서식 범위가 어디인지 아는 것이 얼마나 중요한지 우리에게 설명했습니다. 저는 어렸을 때부터 동물을 정말 좋아해서 주변에 동물이 많으면 좋겠어요. 제 딸도 벌써 동물에 관심이 많아요. 곤충이나 징그럽게 기어 다니는 것들에 대한 책을 보는 걸 좋아하죠. 저는 그런 쪽에 관심이 없거든요. 딸이 그런 것에 흥미를 보이는 걸 보니 기쁩니다.
물론, 스카이가 이 다소 새로운 비침습적 기술을 어떻게 사용하는지 보여주었지만, 사실 이 기술은 새로운 것이 아닙니다. 아주 오래전부터 존재해 왔고, 저희 소프트웨어가 이를 따라잡고 있는 것뿐입니다. 이 비침습적 기술을 사용하여 동물을 추적하는 것은 FIT 소프트웨어를 사용하면 실제로 그리 어렵지 않으며, 이 소프트웨어는 JMP에서 제공됩니다. 그리고 물론, 형태 분석은 저희가 새롭게 연구하고 있는 분야입니다. 이러한 유형의 분석에 아주 적합한 기술이라고 할 수 있는데, 많은 부분이 발자국의 형태에 관한 것이기 때문입니다. 물론 형태 분석의 응용 분야는 WildTrack에만 국한되지 않지만, 앞서 말씀드렸듯이 WildTrack이 가장 중요한 응용 분야입니다.
저희는 이 기술이 활용될 수 있는 다른 분야들을 검토하고 있습니다. 예를 들어, 형태가 중요한 요소인 생의학 산업에서 이미 활용 사례가 있습니다. 특정 장기의 형태를 분석하여 질병 여부를 판단하는 데 사용할 수 있죠. 또 다른 활용 분야는 적층 제조입니다. 제품 제작 과정에서 발생하는 변형을 추적하거나 제품의 형태를 분석하고 그 영향을 파악하는 데 사용할 수 있습니다. 형태를 입력값으로 사용하는 대신, 결과물로 형태를 얻는 방식이죠.
요컨대, JMP에서는 여러분이 최고의 기량을 발휘할 수 있도록, 또는 이 푸마 트랙 경기에서는 100%의 노력을 기울일 수 있도록 필요한 도구를 제공하기 위해 노력하고 있습니다. 오늘 함께한 발표를 시청해 주셔서 감사합니다. 디스커버리에서 온라인과 오프라인으로 진행될 다른 발표들도 확인해 보시기 바랍니다. 현장에 오실 수 있다면 뵙기를 기대합니다. 저는 여기까지입니다. 모두 감사합니다.