AI
-
[AI] 학습 사이트 추천 10가지AI 2021. 6. 3. 11:27
1. Google의 Teachable Machine ㅡ가장 최근에 나온 AI 개발도구 https://teachablemachine.withgoogle.com/ 2. Intro to Artificial IntelligenceㅡUdacity https://www.udacity.com/course/intro-to-artificial-intelligence—cs271 3. Elements of AIㅡHelsinki University https://www.elementsofai.com/ 4. AI for EveryoneㅡCousera(Andrew Ng) https://ko.coursera.org/learn/ai-for-everyone 5. Artificial Intelligence A-Z: Learn How t..
-
How to convert pt to tflite (yolov5 to tensorflow lite) tflite로 변환AI 2021. 1. 19. 16:18
업데이트: 이걸로 해결 github.com/zldrobit/yolov5/blob/tf-android/models/tf.py $ python models/tf.py --weights weights/best.pt --cfg models/yolov5s.yaml --img-size 320 yolov5로 학습된 모델을 1차적으로 Android에서 사용하고자 한다. 그럴러면 최종적으로 .pt 파일을 .tflite로 변환해야한다. 그게 한번에 되냐? 아쉽게도 pt -> onnx -> pb -> tflite 순으로 변환해야한다. 명령어 하나로 되었다면 얼마나 좋았을까.. 그래서 그 과정에서 꽤 많은 삽질을 하게 되었다. 잠깐 언급하자면 tensorflow 버전과 onnx 버전의 호환성.. 버전업되면서 바뀐것도 많고 알..
-
iter(dataloader) 시 TypeError: cannot pickle 'Environment' objectAI 2020. 12. 14. 15:20
아래의 코드와 같이 리스트에 데이터로더를 iterator로 넣고자하는데 에러가 발생 했다. _data_loader = torch.utils.data.DataLoader( _dataset, batch_size=_batch_size, shuffle=True, num_workers=int(opt.workers), collate_fn=_AlignCollate, pin_memory=True) self.dataloader_iter_list.append(iter(_data_loader)) TypeError: cannot pickle 'Environment' object append에 아무런 문제가 없어보이지는데 원인은 데이터로더 생성시 num_workers 값 떄문이다. num_workers=0으로 해주면 해결된다...
-
[ocr] 맥(osx)에 tesseract 설치하기 (used brew)AI 2020. 12. 10. 11:08
Install $ brew install imagemagick $ brew install tesseract $ brew install tesseract-lang $ tesseract --list-langs Test $ convert input.png -resize 400% -type Grayscale input.tif $ tesseract -l eng input.tif output Result: Reference: gist.github.com/henrik/1967035
-
AI 기사 스크랩 - 민간이 '인공지능 뉴딜'에 뛰어든 이유AI 2020. 8. 5. 19:28
http://www.bloter.net/archives/389987 민간이 ‘인공지능 뉴딜’에 뛰어든 이유 인공지능(AI)은 이제 하나의 인프라 기술이다. 이젠 거의 모든 산업이 AI와 융합하기 시작하며 관련 경쟁력 강화를 위한 각국의 움직임도 빨라지고 있다. 우리나라도 마찬가지다. 정부는 지난 1일 www.bloter.net Q. 협회가 직접 인공지능 뉴딜에 나선 배경은? ‘산업 지능화 AI+X 뉴딜’은 정부 정책이 미진해 만든 사업이 아니다. 오히려 우리 정부의 시장의견 수렴과 정책 반영 속도는 빠른 편이다. 다만, 인공지능은 단순한 특화 기술이 아니라 ‘학문-기술-산업-문화-사람’이 연결돼 미래로 향하는 주제라는 점을 인지할 필요가 있다. 그간 AI 생태계에 꼬리표처럼 붙던 이슈들이 있다. △모호한..
-
[pytorch] MLP model source code by pythonAI 2020. 4. 24. 16:57
아래는 pytorch로 작성한 MLP모델의 소스코드이다. class MLPModel(nn.Module): def __init__(self, in_dim, out_dim, hid_dim, n_layer, act): super(MLPModel, self).__init__() self.in_dim = in_dim self.out_dim = out_dim self.hid_dim = hid_dim self.n_layer = n_layer self.act = act self.fc = nn.Linear(self.in_dim, self.hid_dim) self.linears = nn.ModuleList() for i in range(self.n_layer-1): self.linears.append(nn.Linear(s..
-
[pytorch] How to use nn.CrossEntropyLoss() 사용법AI 2020. 4. 21. 19:17
아래 코드는 pytorch에서 loss function으로 CrossEntropy를 사용하는 예이다. cls_loss = nn.CrossEntropyLoss() test_pred_y = torch.Tensor([[2,0.1],[0,1]]) # 실제 사용에선 softmax에 의해 각 행의 합이 1이 될 것이다. test_true_y1 = torch.Tensor([1,0]).long() # 1은 true값이 1번째(클래스)라는 것을 의미 test_true_y2 = torch.Tensor([0,1]).long() print(test_pred_y) print(test_true_y1) print(test_true_y2) print(cls_loss(test_pred_y, test_true_y1)) print(cls..
-
[DeepLearning] 학습 단계를 train, validation, test 로 나누는 이유AI 2020. 4. 20. 21:33
pytorch로 예제를 학습하는 도중에 익숙치 않아서 그런지 사소한 개념이 적립에 시간이 많이 소요되고 있다. 그 중 하나가 모델을 학습할때 train, validation, test로 단계를 나누는 이유이다. pytorch에선 아래 코드로 모드를 변경 시킬 수 있고, 꼭 해야한다. model.train() # 트레이닝모드 model.eval() # 검증모드 model.eval()의 경우 validation과 test 단계에 꼭 선언해야한다. 그럼 개념적으로 정리를 해보자. 데이터가 총 1000개가 있다면, train 6000개, validation 2000개, test 2000개로 나누어 준다. train 단계는 말 그대로 모델을 학습시키는 단계이다. 그 말은 즉 validation과 test 단계에서..