2025/7/22(화)
1.Rat Training

#Rat No. 49 Group : comparison study of no reward vs negative feedback on learning Current weight : 448g(-5g) Pellet/Water :15 g Experiment time : 11:25 ~ 12:10 Stage : Shaping - DAY 1
금일 49번은 처음으로 shaping에 들어갔다. towel handling 5분 진행 후 T-maze에 올려주었다. towel에서는 suger water을 0.5mL를 먹고 들어갔다. 1번째 trial에서 start box를 열어주니, 당황하는 모습을 많이 보여주었다. 그 후 바로 나오지 않고 경계하다 reward가 있는 곳 까지 걸어갔다. suger water은 잘 먹었지만, start box에 다시 들어가는 것이 큰 문제였다. blocker를 2개를 들고 start box까지 넣으려고 해도 blocker를 뛰어 넘는 모습을 보여주었으며, T-maze의 갈림길을 막는 투명 blocker도 좌우로 피해 들어가는 모습까지 보여주었다. 무력으로 막다가 T-maze 아래로 떨어지는 모습까지 보여주었다. blocker 2개를 사용하여 무력으로 stat box에 넣었지만, 막혀있는 start box에서도 문제가 있었다. 다음 trial을 준비하는 과정에서 49번은 점프를 하여, 높은 start box의 벽을 넘으려는 모습도 보여주었다. 그리하여 towel로 가렸지만, towel로도 막히지 않아, 두꺼운 책을 위에 올려두었다. 49번이 점프하는 모습은 처음보았다. 그 후 계속 trial을 시도했다. 항상 보여준 모습은 start box에서 문을 열어주고 시작하면, 갈림길에서 reward가 존재하는 장소까지는 잘 찾아 먹지만, 다시 start box에 들어가는 과정이 잘 되지 않았다. 금일 45분동안 18trial을 시도했지만, 스스로 start box에 들어가는 모습은 한번도 보지 못했다. 금일 suger water은 총 4.1mL를 먹었다. 금일 reward를 많이 먹지 못했기 때문에 pellet의 양을 15g으로 늘렸다.
Rat No. 50
Group : comparison study of no reward vs negative feedback on learning Current weight : 434g(-8g), Pellet/Water :15 g Experiment time : 12:20 ~ 13:05 Stage : Shaping - DAY 1
50번 또한 마찬가지로 금일 shaping에 들어갔다. towel handling 5분 진행 후 T-maze에 올려주었다. towel에서 suger water을 0.5mL를 주었다. towel handling 중간에 T-maze 아래 책상으로 탈출하는 모습을 보였지만 바로 제재하였다. T-maze에 올려준 뒤 shaping을 진행하였다. 처음 trial에서 right가 나왔다. start box를 열어주었는데 바로 나오지 않고 주변을 탐색하더니, 바로 reward가 있는 장소까지 걸어갔다. suger water를 보았지만 바로 먹지 않았다. 찾지 못 했는지 다시 start box에 들어간 뒤 다시 나와 reward가 있는 장소까지 다시 갔다. 그 후 suger water을 처음 먹었다. 다음 trial을 진행하기 위해 start box에 넣어주는 과정에서 50번은 49번에 비해 순조롭게 들어갔다. 그 후 다음 trial에서 또 한번 right가 나왔다. 다음 trial을 진행하기 위해 start box를 열어주었는데, 바로 reward가 있는 right 길을 찾았다. right로 가자미자 suger water를 먹었다. 다음 trial을 진행하기 위해 start box로 넣는 과정에서 start. box로 들어가지 않아 무력으로 넣어주었다. 이 시간이 정말 오래 소요되었다. 3번째 trial에서 left가 나왔다. start box를 열어주니, 처음에는 right에 존재하는 blocker를 넘어 reward를 먹으려고 했다. 그리하여 handling 후 다시 위치를 잡아주니, left로 돌아가 reward를 먹었다. 위 과정이 계속 반복되었고, start box에서 나와서 reward를 먹는 과정은 순조롭게 진행되었지만, 다음 trial을 위해 start box로 넣는 과정에서 시간이 정말 많이 소요되었다. 투명blocker를 뛰어 넘는 모습까지 보여주었고, 실험자가 blocker로 막아도 아래 구멍을 파고들어 도망치는 모습까지 보여주었다. 금일 50번은 45분동안 13tiral 밖에 진행하지 못 했다. 금일 suger water은 3.1mL를 섭취했다. 금일 reward를 많이 먹지 못 했기 때문에 pellet의 양을 15g으로 늘렸다.
금일 처음으로 shaping을 진행했다. 과정이 정말 복잡하고, 많아 실험자가 shaping에 해야할 행동들을 정리했다.

먼저 초록색은 실험 시작 전 준비해야 할 것을 정리했다. familiarization의 준비 과정과 유사하지만, shaping 전용 matlab program을 실행시켜야 하는 절차가 추가되었다.

matlab program을 실행시키면 실험자의 이름과 쥐의 번호 그리고 실험 일수를 작성할 수 있도록 나온다. 위 작성 데이터는 data folder에 자동으로 저장되게 설정되어 있다. 그 후 하루에 1번만 진행하면 되는 sensor test 단계가 존재한다. sensor test는 sensor가 잘 작동하는지 보는 단계로 T-maze에 존재하는 sensor 2개를 손으로 지나 인식하는지 확인하는 단계이다.
다음으로 shaping 단계이다. shaping program을 사용할 때, 많은 단축기가 존재한다. 단축기를 설명해 보자면,
-
I -> ITI 화면에서 회색 화면으로 전환됨, 실험을 시작할 수 있는 단계로 넘어감
-
Z -> washer를 완전히 닫고, 쥐가 reward를 찾아 먹었을 때 누른다.
-
M -> washer가 없는 상태에서 쥐가 reward를 찾아 먹었을 때 누른다.
-
V -> 쥐가 blocker를 넘었거나, 실험을 진행할 수 없는 상태일 때 누른다.(trial 카운트 되지 않음 data 시트에 따로 표시)
-
] -> program을 종료한다.
-
space bar -> 실험이 시작하고 종료했을 때 누르면, 타이머를 시작하고 종료하는 단축키
위 단축키를 많이 사용하게 된다. 특히 Z와 M을 정말 많이 사용하게 되는데, 차이점에 유의해야 한다. ITI 화면에 Z와 M이 몇 번 사용되었는지 카운트 되기 때문에 유의해야 한다. shaping을 넘어가기 위해서는 total latency median이 5초 이내여야 하며, washer가 닫힌 상태에서 20회를 성공해야 한다. 49번과 50번의 지금 상황을 살펴본다면, start box를 열게 되면 reward를 잘 찾아서 먹는다. 또한 T-maze 갈림길에서 잠깐 멈추는 모습을 보여주는데 이러한 행동은 쥐가 고민하고 있다는 것을 잘 보여주는 행동이라고 설명해 주셨다. 아마도 고민하는 행동을 보이기 때문에 reward를 먹고 다시 start box에 빠르게 들어가는 학습만 된다면 shaping과정을 끝낼 수 있을 것이라 생각한다.
추가로 sensor time이 측정되고, matlab을 통해 data가 execl 파일로 저장되기 때문에, python에서 matlib function을 활용하여, shaping에서 측정되는 sensor time이 어떻게 변화하는지 보는 그래프를 그려보려고 한다. 하드디스크를 가져와 data를 x축을 trial로 잡고 y축을 시간으로 잡는다. 고민 중인 것은 데이터 sheet가 3개이다. sensor 1(start box에서 나오면 바로 지나는 sensor), sensor2(T-maze 갈림길 전에 지나는 sensor) Z or M을 누른 time 이렇게 3가지로 나눠지는데, 3개의 그래프를 그릴지 아니면 하나의 그래프에 꺾은선 그래프로 표현을 해볼지 명일 shaping data까지 본 뒤 어느정도 차이를 보고 y축의 scale에 따라 정해야 할 것 같다.
2. DLC project
crf 41로 인코딩한 영상을 num frame 2pick을 200을 주고 labeling을 진행하였고, 금일 아침에 학습이 완료되었다. 그리하여 학습된 데이터를 가지고 0100영상을 넣어 labeling 데이터를 뽑아 보았다. 그 전에 crf 41은 학습시키기 전 labeling을
-
rat nose
-
hyper drive 17
-
hyper drive 8
-
EIB middle
위 4가지로 labeling을 진행하였다. 영상 추출에는 csv data 추출에는 40분이 소요되었고, labeling 영상 추출에는 20분정도가 소요되어 총 1시간 걸렸다.

같은 영상인 0100의 11분 15초를 비교한 영상이다. 학습 데이터만 달라진 것이다. 비교를 해보자면, 두 학습데이터 모두 labeling은 잘 따라가주는 모습을 보였다. crf 41의 학습데이터는 crf 23과 비교했을 때 EIB middle의 labeling이 큰 차이가 존재했다. 23은 EIB의 위치가 항상 달라지는 labeling이었기 때문에 쥐가 고개를 돌릴때마다 위치가 달라지는 문제가 존재했다. 하지만 41은 EIB 중간에 존재하는 초록색과 흰색의 경계면을 labeling했기 때문에 쥐가 고개를 돌려도 위치가 크게 변화하지 않는 모습을 보였다. 위 데이터를 토대로 비교해 본다면, 화질이 낮은 영상으로 학습을 진행하게되면 학습시간이 크게 줄 뿐만 아니라 output 데이터도 큰 변화가 없다라는 것을 알 수 있었다. 하지만 2 영상 문제가 존재했다. 쥐가 고개를 크게 돌리면 labeling 위치가 이상한 점에 찍힌다는 것이다. 아마도 labeling한 영상에서 쥐가 고개를 크게 돌리는 사진을 학습하지 못하여 이 결과가 나타나는 것 같다.
그리하여 다음 영상 학습부터는 여러가지 학습 데이터를 사용하기로 하였다. 이제부터 드라이브에 존재하는 쥐들의 실험 영상을 labeling을 진행하여 lab에서 사용할 수 있는 학습 데이터를 만들려고 한다. 현재 가지고 있는 쥐 영상은 5가지로 거의 한 쥐당 7~8일 정도의 실험 영상이 존재한다. 처음 학습할 데이터는 위에서 실험을 촬영한 영상을 학습하기로 하였다. 5마리 쥐들의 위에서 촬영한 영상을 모두 ffmpeg을 사용하여 scale 0.5 와 crf 31을 주어 다시 확장자를 변환하였다.
(사진)
저번에 만들었던 자동 확장자 변환기에 -vr “scale:980x640”과 -crf 31을 추가하여 용량이 작은 학습 영상으로 만들었다. 추가로 모든 .sec 확장자 영상을 변환할 필요는 없어 폴더에 존재하는 _0100.sec 파일을 자동으로 찾아 .sec를 .mp4 확장자로 변환하는 것으로 수정했다. 명일 scale의 batch size test까지만 진행 후 목요일부터 쥐들의 여러가지 실험 영상 데이터를 가지고 최종적으로 학습시킨 데이터를 만들 예정이다.