ホームページ テクノロジー周辺機器 AI 転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

Apr 07, 2023 pm 03:06 PM
chatgpt 開発する 転倒認識

###こんにちは、みんな。

以前、転倒認識と戦闘認識について共有しましたが、今日は転倒認識を例として、ChatGPT に完全に任せることができるかどうかを確認します。

これを ChatGPT にやらせます。最も重要なことは、ChatGPT に質問する方法です。すべての質問を直接 ChatGPT に投げます。たとえば、転倒検出コードを Python で記述することはお勧めできません。代わりに、次のようにします。歯磨き粉を絞るとき、ChatGPT が問題解決の効率を真に向上できるように、ChatGPT を段階的にガイドして正確な回答を得ることができます。

今日共有された転倒認識ケースには、ChatGPT との対話と高いコードの使いやすさに関する明確なアイデアがあり、GPT から返された結果に従って、転倒認識プロジェクトを開発することができ、いくつかの拡張されたトピックがあります。例: Bi 彼女の改善点。

正式な共有は以下から始まります。

1. ロール設定

ChatGPT に質問するには、まずロール設定を与える必要があります。アルゴリズム フィールドでは、これをプロンプトと呼びます。ロールを入力することによってのみ回答できます。質問の方が良いです。したがって、私の質問の最初の文は次のとおりです:

あなたが AI エンジニアで、ビデオに転倒があるかどうかを特定したい場合、どのような方法がありますか?

コードを直接書き、まずどのような方法やアイデアがあるのか​​を尋ねます。

ChatGPT の回答を見てみましょう

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

では、従来の画像手法と深層学習手法を含む 3 つのソリューションが提供されています。

2. アイデアのガイダンス

もちろんディープラーニングに興味があるので、ディープラーニングの手法について質問し続けます

ディープラーニングの利用方法とは何ですか

ChatGPT の答え

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

畳み込みニューラル ネットワークから畳み込みリカレント ニューラル ネットワークまで、すべてについて話しました。

リカレント ニューラル ネットワーク RNN の方がシンプルで信頼性が高いようです。次の質問は

リカレント ニューラル ネットワーク (RNN) の手法が必要です。

ChatGPT回答

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

は、非常に詳細で非常に実践的な手順を示しています。簡単に 2 つの手順に分類します:

最初の手順は、ビデオの前処理であり、畳み込みアルゴリズムを使用します。ニューラル ネットワーク (ResNet など) を使用してビデオ アクション特徴を抽出します (単語埋め込みと同様)。2 番目のステップでは、アクション特徴を lstm モデルの入力として使用し、lstm リカレント ニューラル ネットワークをトレーニングし、アクション特徴を分類して識別します。反転動作

3. コードを記述する

これまでのところ、ChatGPT は問題を解決するための非常に明確なアイデアと非常に強力な実行可能性を提供してきました。

つまり、現時点では ChatGPT にコードを記述させることができます。

上で分割した手順に従って、最初のステップのコードを一度に書くように頼んだので、私の質問は次のとおりです:

ビデオ前処理コードを作成し、pytorch resnet を使用してビデオ機能を抽出します

ChatGPT の回答

好的,下面是通过 Pytorch 的 ResNet 提取视频特征的代码,以及视频预处理的示例代码:

视频预处理:

import cv2
import numpy as np

def preprocess_video(video_path, n_frames=16, resize=(224, 224)):
# 读取视频
cap = cv2.VideoCapture(video_path)
frames = []
while True:
ret, frame = cap.read()
if not ret:
break
# 强制转换为 RGB
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
# 图像缩放
frame = cv2.resize(frame, resize)
# 图像增强等操作
# ...
frames.append(frame)
cap.release()
# 取固定帧数 n_frames,超过后从中间开始截取
n_frames = min(len(frames), n_frames)
start = (len(frames) - n_frames) // 2
end = start + n_frames
# 截取帧数后堆叠成四维数组
frames = np.stack(frames[start:end], axis=0)
# 转换为支持 Pytorch 模型的格式 (B, C, T, H, W)
frames = np.transpose(frames, (0, 3, 1, 2))
return frames
提取视频特征:

import torch
import torchvision.models as models

def extract_features(frames):
# 加载 ResNet 模型
resnet = models.resnet50(pretrained=True)
# 去掉最后的全连接层
resnet = torch.nn.Sequential(*list(resnet.children())[:-1])
# 将 ResNet 设置为评估模式
resnet.eval()
# 将预处理后的视频序列转化为 Tensor,并调整为指定的数据类型和范围
frames = torch.from_numpy(frames).float() / 255.0
# 减去 ImageNet 数据集的均值和标准差
normalize = torch.nn.Normalize(
mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]
)
frames = normalize(frames)
# 前向预测,输出 2048 维特征向量
with torch.no_grad():
features = resnet(frames)
return features.reshape(-1, 2048)
在上面这两块代码中,preprocess_video() 函数将读取视频,并将其转换为指定大小的图像帧,返回处理后的数据;extract_features() 函数将接受上一步处理后的数据,并将其转化为 Pytorch 的 Tensor,使用训练好的 ResNet 模型对每一帧图像进行特征提取,并返回一个形状为 (B, 2048) 的 Tensor,其中 B 为帧数。
ログイン後にコピー

画像が長すぎます。ChatGPT の回答をよりよく理解していただくために、コード テキストを直接投稿しました。

2 つの独立した関数を定義し、それぞれ最初のステップの 2 つの小さなステップを完了します。

コードに問題はありません。まず preprocess_video 関数を呼び出してビデオを前処理し、次に extract_features 畳み込み演算を呼び出して 2048 次元のベクトルにベクトルを埋め込みます。

2 番目のステップでは、これを 2 つの小さなステップに分割します。最初に lstm モデルを構築し、次にトレーニングします。

上記で生成された結果に基づいて、pytorch lstm を使用してビデオ分類モデルを構築します。

ChatGPT の回答

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

モデル トレーニング コードを作成します

ChatGPT の回答

好的,下面是使用 Pytorch 训练视频分类模型的代码:

import torch
import torch.nn as nn
import torch.optim as optim

# 训练函数
def train(model, criterion, optimizer, dataloader, num_epochs=10):
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)# 将模型移动到 GPU 或 CPU 上
for epoch in range(num_epochs):
running_loss = 0.0
correct_predictions = 0
total_predictions = 0
for inputs, labels in dataloader:
inputs = inputs.to(device)
labels = labels.to(device)

optimizer.zero_grad()

with torch.set_grad_enabled(True):
outputs = model(inputs)
_, preds = torch.max(outputs, 1)
loss = criterion(outputs, labels)

loss.backward()
optimizer.step()

running_loss += loss.item() * inputs.size(0)
correct_predictions += torch.sum(preds == labels.data)
total_predictions += labels.size(0)

epoch_loss = running_loss / len(dataloader.dataset)
epoch_acc = correct_predictions.double() / total_predictions

print("Epoch {}: Loss {:.4f} Acc: {:.4f}".format(epoch + 1, epoch_loss, epoch_acc))

# 定义超参数
BATCH_SIZE = 4
NUM_EPOCHS = 20

# 定义数据集,假设已经准备好了训练数据集和测试数据集
train_dataset = ...
test_dataset = ...

# 定义数据加载器
train_dataloader = torch.utils.data.DataLoader(
train_dataset, batch_size=BATCH_SIZE, shuffle=True
)
test_dataloader = torch.utils.data.DataLoader(
test_dataset, batch_size=BATCH_SIZE, shuffle=False
)

# 定义模型
input_size = 2048
hidden_size = 512
num_layers = 1
num_classes = 2
model = VideoLSTM(input_size, hidden_size, num_layers, num_classes)

# 定义损失函数和优化器
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters())

# 训练模型
train(model, criterion, optimizer, train_dataloader, num_epochs=NUM_EPOCHS)
在代码中,首先定义了模型的超参数,如 BATCH_SIZE 和 NUM_EPOCHS。接着定义了训练数据集和测试数据集,并使用 Pytorch 的 DataLoader 将数据加载为 batch。然后定义了模型、损失函数和优化器。最后调用 train() 函数进行模型训练。

在训练过程中,每个 epoch 循环训练所有的视频帧,计算损失函数,计算准确率,并输出当前 epoch 的平均损失和准确率。训练完成后,可以将模型的参数保存到磁盘上,以便以后使用。
ログイン後にコピー

コードの使いやすさは非常に優れています高い。コード連結のコストを除けば、基本的に独立した各モジュールを移動する必要がなく、開発効率が非常に高くなります。

ChatGPT にデータ セットを見つけるように依頼することもできます

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

ChatGPT にモデル推論用のコードを書くように依頼することもできます

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

これは、ビデオの前処理、特徴抽出、推論の 3 つの部分をつなぎ合わせて完全なプロジェクトを形成するのに自動的に役立ちます。

4. 拡張機能

この時点で、ChatGPT を使用したプロジェクトは完全に完了しました。

次のような拡張トピックについても話すことができます:

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

ChatGPT に、学術的価値を強調できるいくつかの点を考えるのを手伝ってもらうこともできます。

転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有します

これを見ると、次のことがわかります。私の記事は、あなたにとって非常に重要です。 Planet に参加するかどうかに関係なく、皆さんが私を認めて信頼してくださっていることに感謝しています。

以上が転倒検出 - ChatGPT で完全に開発されており、ChatGPT に正しく質問する方法を共有しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ChatGPT では、無料ユーザーが 1 日あたりの制限付きで DALL-E 3 を使用して画像を生成できるようになりました ChatGPT では、無料ユーザーが 1 日あたりの制限付きで DALL-E 3 を使用して画像を生成できるようになりました Aug 09, 2024 pm 09:37 PM

DALL-E 3は、前モデルより大幅に改良されたモデルとして2023年9月に正式導入されました。これは、複雑な詳細を含む画像を作成できる、これまでで最高の AI 画像ジェネレーターの 1 つと考えられています。ただし、発売当初は対象外でした

おすすめのAI支援プログラミングツール4選 おすすめのAI支援プログラミングツール4選 Apr 22, 2024 pm 05:34 PM

この AI 支援プログラミング ツールは、急速な AI 開発のこの段階において、多数の有用な AI 支援プログラミング ツールを発掘しました。 AI 支援プログラミング ツールは、開発効率を向上させ、コードの品質を向上させ、バグ率を減らすことができます。これらは、現代のソフトウェア開発プロセスにおける重要なアシスタントです。今日は Dayao が 4 つの AI 支援プログラミング ツールを紹介します (すべて C# 言語をサポートしています)。皆さんのお役に立てれば幸いです。 https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot は、より少ない労力でより迅速にコードを作成できるようにする AI コーディング アシスタントであり、問​​題解決とコラボレーションにより集中できるようになります。ギット

携帯電話にchatgptをインストールする方法 携帯電話にchatgptをインストールする方法 Mar 05, 2024 pm 02:31 PM

インストール手順: 1. ChatGTP ソフトウェアを ChatGTP 公式 Web サイトまたはモバイル ストアからダウンロードします; 2. それを開いた後、設定インターフェイスで言語を中国語を選択します; 3. ゲーム インターフェイスでヒューマン マシン ゲームを選択し、中国スペクトル; 4 . 起動後、チャット ウィンドウにコマンドを入力してソフトウェアを操作します。

どのAIプログラマーが一番優れているでしょうか? Devin、Tongyi Lingma、SWE エージェントの可能性を探る どのAIプログラマーが一番優れているでしょうか? Devin、Tongyi Lingma、SWE エージェントの可能性を探る Apr 07, 2024 am 09:10 AM

世界初の AI プログラマー Devin の誕生から 1 か月も経たない 2022 年 3 月 3 日、プリンストン大学の NLP チームはオープンソース AI プログラマー SWE-agent を開発しました。 GPT-4 モデルを利用して、GitHub リポジトリの問題を自動的に解決します。 SWE ベンチ テスト セットにおける SWE エージェントのパフォーマンスは Devin と同様で、平均 93 秒かかり、問題の 12.29% を解決しました。専用端末と対話することで、SWE エージェントはファイルの内容を開いて検索したり、自動構文チェックを使用したり、特定の行を編集したり、テストを作成して実行したりできます。 (注: 上記の内容は元の内容を若干調整したものですが、原文の重要な情報は保持されており、指定された文字数制限を超えていません。) SWE-A

Go 言語を使用してモバイル アプリケーションを開発する方法を学ぶ Go 言語を使用してモバイル アプリケーションを開発する方法を学ぶ Mar 28, 2024 pm 10:00 PM

Go 言語開発モバイル アプリケーション チュートリアル モバイル アプリケーション市場が活況を続ける中、ますます多くの開発者が Go 言語を使用してモバイル アプリケーションを開発する方法を検討し始めています。シンプルで効率的なプログラミング言語として、Go 言語はモバイル アプリケーション開発でも大きな可能性を示しています。この記事では、Go 言語を使用してモバイル アプリケーションを開発する方法を詳しく紹介し、読者がすぐに始めて独自のモバイル アプリケーションの開発を開始できるように、具体的なコード例を添付します。 1. 準備 始める前に、開発環境とツールを準備する必要があります。頭

中国でもchatgptは使えますか? 中国でもchatgptは使えますか? Mar 05, 2024 pm 03:05 PM

chatgpt は中国でも使用できますが、香港やマカオでも登録できません。ユーザーが登録したい場合は、外国の携帯電話番号を使用して登録できます。登録プロセス中にネットワーク環境を切り替える必要があることに注意してください。外国のIP。

Android 開発に最適な Linux ディストリビューションはどれですか? Android 開発に最適な Linux ディストリビューションはどれですか? Mar 14, 2024 pm 12:30 PM

Android 開発は多忙で刺激的な仕事であり、開発に適した Linux ディストリビューションを選択することが特に重要です。数多くある Linux ディストリビューションの中で、Android 開発に最適なのはどれでしょうか?この記事では、この問題をいくつかの側面から検討し、具体的なコード例を示します。まず、現在人気のある Linux ディストリビューション (Ubuntu、Fedora、Debian、CentOS など) をいくつか見てみましょう。これらにはそれぞれ独自の利点と特徴があります。

VSCode について: このツールは何に使用されますか? VSCode について: このツールは何に使用されますか? Mar 25, 2024 pm 03:06 PM

「VSCode について: このツールは何に使用されますか?」 》初心者でも経験豊富な開発者でも、プログラマーとしてはコード編集ツールを使わずにはいられません。数ある編集ツールの中でも、Visual Studio Code (略して VSCode) は、オープンソースで軽量かつ強力なコード エディターとして開発者の間で非常に人気があります。では、VSCode は正確に何に使用されるのでしょうか?この記事では、VSCode の機能と使用法を詳しく説明し、読者に役立つ具体的なコード例を提供します。

See all articles