pytorch + visdom은 간단한 분류 문제를 처리합니다.
이 글은 주로 pytorch + visdom이 간단한 분류 문제를 처리하는 방법을 소개합니다. 이제는 모든 사람과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다
시스템: win 10 그래픽 카드 : gtx965m cpu: i7-6700HQ
python 3.61pytorch 0.3
패키지 참조
import torch
from torch.autograd import Variable
import torch.nn.functional as F
import numpy as np
import visdom
import time
from torch import nn,optim
데이터 준비
use_gpu = True
ones = np.ones((500,2))
x1 = torch.normal(6*torch.from_numpy(ones),2)
y1 = torch.zeros(500)
x2 = torch.normal(6*torch.from_numpy(ones*[-1,1]),2)
y2 = y1 +1
x3 = torch.normal(-6*torch.from_numpy(ones),2)
y3 = y1 +2
x4 = torch.normal(6*torch.from_numpy(ones*[1,-1]),2)
y4 = y1 +3
x = torch.cat((x1, x2, x3 ,x4), 0).float()
y = torch.cat((y1, y2, y3, y4), ).long()
아래 시각화를 보세요:
visdom 시각화 준비
먼저 관찰해야 할 창을 만듭니다
viz = visdom.Visdom() colors = np.random.randint(0,255,(4,3)) #颜色随机 #线图用来观察loss 和 accuracy line = viz.line(X=np.arange(1,10,1), Y=np.arange(1,10,1)) #散点图用来观察分类变化 scatter = viz.scatter( X=x, Y=y+1, opts=dict( markercolor = colors, marksize = 5, legend=["0","1","2","3"]),) #text 窗口用来显示loss 、accuracy 、时间 text = viz.text("FOR TEST") #散点图做对比 viz.scatter( X=x, Y=y+1, opts=dict( markercolor = colors, marksize = 5, legend=["0","1","2","3"] ), )
효과는 다음과 같습니다.
로지스틱 회귀 처리
입력 2, 출력 4
logstic = nn.Sequential( nn.Linear(2,4) )
Gpu 또는 CPU 선택:
if use_gpu: gpu_status = torch.cuda.is_available() if gpu_status: logstic = logstic.cuda() # net = net.cuda() print("###############使用gpu##############") else : print("###############使用cpu##############") else: gpu_status = False print("###############使用cpu##############")
최적화 및 손실 기능:
loss_f = nn.CrossEntropyLoss() optimizer_l = optim.SGD(logstic.parameters(), lr=0.001)
2000회 훈련:
start_time = time.time() time_point, loss_point, accuracy_point = [], [], [] for t in range(2000): if gpu_status: train_x = Variable(x).cuda() train_y = Variable(y).cuda() else: train_x = Variable(x) train_y = Variable(y) # out = net(train_x) out_l = logstic(train_x) loss = loss_f(out_l,train_y) optimizer_l.zero_grad() loss.backward() optimizer_l.step()
관찰 및 시각화 훈련 결과:
if t % 10 == 0: prediction = torch.max(F.softmax(out_l, 1), 1)[1] pred_y = prediction.data accuracy = sum(pred_y ==train_y.data)/float(2000.0) loss_point.append(loss.data[0]) accuracy_point.append(accuracy) time_point.append(time.time()-start_time) print("[{}/{}] | accuracy : {:.3f} | loss : {:.3f} | time : {:.2f} ".format(t + 1, 2000, accuracy, loss.data[0], time.time() - start_time)) viz.line(X=np.column_stack((np.array(time_point),np.array(time_point))), Y=np.column_stack((np.array(loss_point),np.array(accuracy_point))), win=line, opts=dict(legend=["loss", "accuracy"])) #这里的数据如果用gpu跑会出错,要把数据换成cpu的数据 .cpu()即可 viz.scatter(X=train_x.cpu().data, Y=pred_y.cpu()+1, win=scatter,name="add", opts=dict(markercolor=colors,legend=["0", "1", "2", "3"])) viz.text("<h3 align='center' style='color:blue'>accuracy : {}</h3><br><h3 align='center' style='color:pink'>" "loss : {:.4f}</h3><br><h3 align ='center' style='color:green'>time : {:.1f}</h3>" .format(accuracy,loss.data[0],time.time()-start_time),win =text)
먼저 CPU로 실행했는데 결과는 다음과 같습니다.
그런 다음 GPU로 실행했는데 결과는 다음과 같습니다.net = nn.Sequential(
nn.Linear(2, 10),
nn.ReLU(), #激活函数
nn.Linear(10, 4)
)
10단위 신경층을 추가하고 효과가 향상되는지 확인:
CPU 사용:GPU 사용:
관련 권장사항:
회귀 및 분류를 구현하기 위해 PyTorch에서 간단한 신경망을 구축하는 예
PyTorch 배치 훈련 및 최적화 프로그램 비교에 대한 자세한 설명
위 내용은 pytorch + visdom은 간단한 분류 문제를 처리합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 사이트는 10월 22일에 올해 3분기에 iFlytek이 전년 대비 81.86% 감소한 2,579만 위안의 순이익을 달성했다고 보도했습니다. 전년 대비 76.36% 감소했습니다. iFlytek 부사장 Jiang Tao는 3분기 실적 보고에서 iFlytek이 2023년 초 Huawei Shengteng과 특별 연구 프로젝트를 시작했으며 Huawei와 고성능 연산자 라이브러리를 공동 개발하여 중국 일반 인공 지능의 새로운 기반을 마련했다고 밝혔습니다. 이 아키텍처는 독립적인 혁신적인 소프트웨어 및 하드웨어를 기반으로 합니다. 그는 Huawei Ascend 910B의 현재 기능이 기본적으로 Nvidia의 A100과 비슷하다고 지적했습니다. 다가오는 iFlytek 1024 글로벌 개발자 페스티벌에서 iFlytek과 Huawei는 인공 지능 컴퓨팅 기반에 대한 추가 공동 발표를 할 예정입니다. 그는 또한 다음과 같이 언급했습니다.

자연어 생성 작업에서 샘플링 방법은 생성 모델에서 텍스트 출력을 얻는 기술입니다. 이 기사에서는 5가지 일반적인 방법을 논의하고 PyTorch를 사용하여 구현합니다. 1. GreedyDecoding 그리디 디코딩에서는 생성 모델이 시간 단위로 입력 시퀀스를 기반으로 출력 시퀀스의 단어를 예측합니다. 각 시간 단계에서 모델은 각 단어의 조건부 확률 분포를 계산한 다음, 현재 시간 단계의 출력으로 조건부 확률이 가장 높은 단어를 선택합니다. 이 단어는 다음 시간 단계의 입력이 되며 지정된 길이의 시퀀스 또는 특수 종료 표시와 같은 일부 종료 조건이 충족될 때까지 생성 프로세스가 계속됩니다. GreedyDecoding의 특징은 매번 현재 조건부 확률이 가장 좋다는 것입니다.

PyCharm은 강력한 통합 개발 환경(IDE)이고, PyTorch는 딥 러닝 분야에서 인기 있는 오픈 소스 프레임워크입니다. 머신러닝과 딥러닝 분야에서 PyCharm과 PyTorch를 개발에 활용하면 개발 효율성과 코드 품질을 크게 향상시킬 수 있습니다. 이 기사에서는 PyCharm에서 PyTorch를 설치 및 구성하는 방법을 자세히 소개하고 독자가 이 두 가지의 강력한 기능을 더 잘 활용할 수 있도록 특정 코드 예제를 첨부합니다. 1단계: PyCharm 및 Python 설치

DDPM(Denoising Diffusion Probabilistic Model)의 작동 원리를 자세히 이해하기 전에 먼저 DDPM의 기초 연구 중 하나인 생성 인공 지능(Generative Artificial Intelligence)의 개발에 대해 먼저 이해해 보겠습니다. VAEVAE는 인코더, 확률적 잠재 공간 및 디코더를 사용합니다. 훈련 중에 인코더는 각 이미지의 평균과 분산을 예측하고 가우스 분포에서 이러한 값을 샘플링합니다. 샘플링 결과는 디코더로 전달되어 입력 이미지를 출력 이미지와 유사한 형태로 변환합니다. KL 발산은 손실을 계산하는 데 사용됩니다. VAE의 중요한 장점은 다양한 이미지를 생성할 수 있다는 것입니다. 샘플링 단계에서는 가우스 분포에서 직접 샘플링하고 디코더를 통해 새로운 이미지를 생성할 수 있습니다. GAN은 단 1년 만에 VAE(변형 자동 인코더) 분야에서 큰 발전을 이루었습니다.

강력한 딥 러닝 프레임워크인 PyTorch는 다양한 머신 러닝 프로젝트에서 널리 사용됩니다. 강력한 Python 통합 개발 환경인 PyCharm은 딥 러닝 작업을 구현할 때에도 훌륭한 지원을 제공할 수 있습니다. 이 기사에서는 PyCharm에 PyTorch를 설치하는 방법을 자세히 소개하고 독자가 딥 러닝 작업에 PyTorch를 사용하여 빠르게 시작할 수 있도록 구체적인 코드 예제를 제공합니다. 1단계: PyCharm 설치 먼저 다음 사항을 확인해야 합니다.

딥러닝은 인공지능 분야에서 중요한 분야로 최근 몇 년간 점점 더 많은 주목을 받고 있습니다. 딥 러닝 연구 및 응용을 수행하려면 이를 달성하는 데 도움이 되는 일부 딥 러닝 프레임워크를 사용해야 하는 경우가 많습니다. 이번 글에서는 딥러닝에 PHP와 PyTorch를 활용하는 방법을 소개하겠습니다. 1. PyTorch란 무엇입니까? PyTorch는 Facebook에서 개발한 오픈 소스 머신 러닝 프레임워크로, 딥 러닝 모델을 빠르게 생성하고 훈련하는 데 도움이 됩니다. 파이톡

안녕하세요 여러분, 저는 Kite입니다. 2년 전에는 오디오 및 비디오 파일을 텍스트 콘텐츠로 변환하는 작업이 어려웠지만 이제는 단 몇 분만에 쉽게 해결할 수 있습니다. 훈련 데이터를 얻기 위해 일부 회사에서는 Douyin, Kuaishou 등 짧은 비디오 플랫폼에서 비디오를 완전히 크롤링한 다음 비디오에서 오디오를 추출하고 이를 텍스트 형식으로 변환하여 빅데이터 모델의 훈련 코퍼스로 사용했다고 합니다. . 비디오 또는 오디오 파일을 텍스트로 변환해야 하는 경우 현재 제공되는 이 오픈 소스 솔루션을 사용해 볼 수 있습니다. 예를 들어, 영화나 TV 프로그램의 대화가 나오는 특정 시점을 검색할 수 있습니다. 더 이상 고민하지 않고 요점을 살펴보겠습니다. Whisper는 OpenAI의 오픈 소스 Whisper입니다. 물론 Python으로 작성되었습니다. 몇 가지 간단한 설치 패키지만 있으면 됩니다.

설치 단계: 1. PyCharm을 열고 새 Python 프로젝트를 생성합니다. 2. PyCharm 하단 상태 표시줄에서 "터미널" 아이콘을 클릭하여 터미널 창을 엽니다. 3. 터미널 창에서 pip 명령을 사용하여 PyTorch를 설치합니다. , 시스템 및 요구 사항에 따라 다양한 설치 방법을 선택할 수 있습니다. 4. 설치가 완료된 후 PyCharm에 코드를 작성하고 PyTorch 라이브러리를 가져와 사용할 수 있습니다.
