파이썬 이것저것/파이썬 딥러닝 관련 26

[Python] UFO: A UI-Focused Agent for Windows OS Interaction

AI-PC의 미래를 볼 수 있는 기술, 마이크로스프트의 UFO를 보고자 한다. 논문 https://arxiv.org/html/2402.07939v1 UFO : A UI-Focused Agent for Windows OS Interaction License: arXiv.org perpetual non-exclusive license arXiv:2402.07939v1 [cs.HC] 08 Feb 2024 UFO : A UI-Focused Agent for Windows OS Interaction Chaoyun Zhang, Liqun Li, Shilin He, Xu Zhang, Bo Qiao, Si Qin, Minghua Ma, Yu Kang, Qingwei Lin, Saravan Rajmohan, arxiv...

[Python] Gpt4Free 여러 LLM모델을 무료로 써보기

https://github.com/xtekky/gpt4free GitHub - xtekky/gpt4free: The official gpt4free repository | various collection of powerful language models The official gpt4free repository | various collection of powerful language models - xtekky/gpt4free github.com https://www.aitimes.com/news/articleView.html?idxno=150737 'GPT-4' 무료로 이용할 수 있는 'GPT4Free' 화제 - AI타임스 오픈AI의 결제 시스템을 속여 \'GPT-4\'를 무료로 사용할 수 있도록 ..

[Python] Yolo-World 실시간 비전언어 모델

SOTA에 방문해서 최신모델들이 어떤것들이 있나 찾아보다가 2024년 1월 31일에 발표된 Yolo-World 모델을 보게 되었다. 텐센트 AI 랩에서 발표한 논문으로, 실시간으로 사용할 수 있는 비전-언어 모델이라고 한다. 이에 대해 살펴보자 (yolo-world 논문) https://arxiv.org/abs/2401.17270 YOLO-World: Real-Time Open-Vocabulary Object Detection The You Only Look Once (YOLO) series of detectors have established themselves as efficient and practical tools. However, their reliance on predefined and tra..

[python] docker stack + nginx를 이용한 grpc inference 서버 구축

docker swarm 네트워크를 사용하면 각각의 분산된 PC를 하나로 묶을 수 있고, docker swarm의 ingress 네트워크를 사용하여 클러스터를 구축 가능하고, 이를 사용하여 각각 분산된 PC에 docker시스템을 관리 할 수 있다. 특히 ingress네트워크 상에서 docker 시스템 간 로드밸런싱이 가능하여 여러대의 PC에 손쉽게 Inferecne Docker를 구축이 가능하다. 그런데 모든 상황에서 이 로드밸런싱 기능을 사용할 수 있는 건 아니였다. 프로젝트 진행 중, 기존 https 방식의 REST호출을 사용할 때는 분산 로드 밸런싱이 됬지만, GRPC 통신 방식을 사용하면, 로드 밸런싱 기능을 사용할 수 없었다. GRPC 통신을 통해서 로드밸런싱을 하려면 NGINX 프록시 서버로 사..

yolo-nas 학습하기[Python]

https://www.youtube.com/watch?v=V-H3eoPUnA8 2023년 초 roboflow에서 출시한 yolov5의 후속작 yolov8과 Object Detection분야에서 다시 SOTA를 찍은 yolov6 두가지를 정확도와 속도에서 더 좋은 결과를 보여주는 yolo-nas를 학습하는 방법을 공부해 보았다. https://www.youtube.com/watch?v=91p2SkSuZkc 환경은 코랩에서 진행했다. https://colab.research.google.com/drive/1yHrHkUR1X2u2FjjvNMfUbSXTkUul6o1P?usp=sharing DeciYoloCustomDatasetQAFineTuning.ipynb Colaboratory notebook colab.r..

[TensorRT] ValueError: cannot reshape array of size 57603 into shape (360,360) - ValueError 해결

yolact으로 학습시킨 파일을 TensorRT로 컨버팅하는 과정중에 있다. .engine파일로 변환시키는 과정에서 layer를 제대로 인식하지 못해서 이미지 정보를 제대로 변환하지 못하는 오류에 맞닥드렸다. 다양한 오류가 터지는 와중에 CUDA 버전 미일치 오류, TensorRT 버전 미일치 오류 등 변환하는게 제법 까다로웠다. 그중에서도 공통적으로 나타나는 numpy로 rshape 하는 오류를 해결하는 과정에 있다. 어찌저찌 변환이 되어서 .engine 파일이 생성이 되었는데 이 파일로 inference를 하려 하니 numpy의 reshape오류가 나타나게 되었다. 해당 방법은 ValueError로 나타나는 numpy 오류만 해결하는 방법으로 정보손실이 있게되어 적절한 오류 대처법은 아니지만 Valu..

[python] Yolo v5 object detection 고추 병해 데이터 셋 학습해보기

하루하루 최종 프로젝트가 단단해지고 있다. 오늘은 기존 고추 잎으로 해본 것을 고추에 있는 탄저병을 구분해보려고 한다. model은 yolo v5를 사용해서 학습을 실시해보자 (코랩에서는 사람들이 올려놓은 예제를 따라했을때 잘됬는데, 안되서 애좀 먹었다. 알고보니 폴더 구성을 잘못해서...ㄷㄷ;) 실행은 CPU환경으로 했다. import torch import utils display = utils.notebook_init() # checks YOLOv5 v6.1-325-g3e85863 Python-3.9.13 torch-1.12.0+cpu CPU Setup complete (16 CPUs, 31.9 GB RAM, 295.3/466.1 GB disk) PC의 Cuda 버전을 11.7 버전을 설치했는데, ..

[Python] 딥러닝 ViT 모델을 활용하여 고추잎 질병 이미지 판별

최근 Transformer 기반의 모델들이 각광을 받고 있다. 관련 코드를 보고, AI hub에 있는 데이터셋을 받아서 고추 잎 이미지의 분류를 실시해보았다. ViT Image classification 모델 https://keras.io/examples/vision/image_classification_with_vision_transformer/ Keras documentation: Image classification with Vision Transformer Image classification with Vision Transformer Author: Khalid Salama Date created: 2021/01/18 Last modified: 2021/01/18 Description: Imple..

[Python] 딥러닝 ResNet 구현하기

ResNet 구현하기 ResNet에 처음 소개된 Residual Connection은 모델 내의 지름길을 새로 만든다고도 하여 Skip Connection이라고도 불리며, 레이어 개수가 매우 많은 경우에 발생할 수 있는 기울기 소실(Vanishing Gradient) 문제를 해결하고자 등장 import tensorflow as tf from tensorflow.keras import layers, Model, Sequential class ResidualBlock(Model): def __init__(self, num_kernels, kernel_size): super(ResidualBlock, self).__init__() # TODO: [지시사항 1번] 2개의 Conv2D Layer를 추가 self...

[Python] 딥러닝 CNN(VGG16 모델 구현하기)

VGGNet은 ILSVRC 2014년도에 2위를 한 모델로 모델의 깊이에 따른 변화를 비교할 수 있게 만든 모델 이전까지의 모델들은 첫 번째 Conv Layer에서는 입력 영상의 축소를 위해 11 x 11, 7 x 7의 filter 를 사용한 것에 비해 VGGNet 은 Convolution Layer 에 3 x 3 filter 를 사용한 것이 특징 import tensorflow as tf from tensorflow import keras def VGG16(): # Sequential 모델 선언 model = keras.Sequential() # TODO : 지시사항을 잘 보고 VGG16 Net을 완성해보세요. # 첫 번째 Conv Block # 입력 Shape는 ImageNet 데이터 세트의 크기와 ..