
251
5
이미지 분류
이 정규 표현식은 마지막 밑줄 문자 다음에 하나 이상의 숫자와
JPEG
확장자가 등장하면 마지
막 밑줄 문자 이전의 모든 문자열을 추출합니다.
선택된 예제 파일명에서 정규 표현식이 잘 작동한다는 사실을 확인했습니다. 그러면 전체 데이
터셋 레이블링에도 적용해봐야겠죠.
fastai
는 정규 표현식을 이용해 레이블링 작업을 할 수 있
도록
RegexLabeller
클래스를 제공합니다. 이 클래스는
2
장에서 본 데이터블록
API
와 함께
사용할 수 있습니다(사실상 거의 항상 데이터블록
API
를 사용합니다.
1
장에서 본 단순한 팩토
리 메서드보다 훨씬 더 유연하기 때문이죠).
pets = DataBlock(blocks = (ImageBlock, CategoryBlock),
get_items=get_image_files,
splitter=RandomSplitter(seed=42),
get_y=using_attr(RegexLabeller(r'(.+)_\d+.jpg$'), 'name'),
item_tfms=Resize(460),
batch_tfms=aug_transforms(size=224, min_scale=0.75))
dls = pets.dataloaders(path/”images”)
데이터블록 객체 생성 시 입력된 인자 중 다음 둘은 이번에 처음 ...