【最新チャットAI】ChatGPTを試してみた

AI、機械学習

はじめに

今話題のChatGPTを試してみました。

BlenderBotなど、チャット用のAIはいくつかありますが、現時点ではChatGPTが最強でした。

この記事では試した結果を残しています。

開始する方法は以下の記事をご覧ください。

ChatGPTを試した結果

質問

kerasで画像認識するコードを教えてください。

ChatGPTの回答

Kerasを用いた画像認識のためのコードは様々なものがありますが、以下のようなものが一般的です。


# モデルの構築
model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(10, activation='softmax'))

# モデルのコンパイル
model.compile(loss=keras.losses.categorical_crossentropy,
              optimizer=keras.optimizers.Adadelta(),
              metrics=['accuracy'])

# モデルの学習
model.fit(x_train, y_train,
          batch_size=128,
          epochs=12,
          verbose=1,
          validation_data=(x_test, y_test))

# モデルの評価
score = model.evaluate(x_test, y_test, verbose=0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])

上記のコードは、MNISTの手書き数字画像を分類するものです。各行の役割は次のようになります。

model = Sequential(): KerasのSequentialモデルを作成します。Sequentialモデルは、層を順番に積み重ねたモデルです。
model.add(Conv2D(32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1))): 畳み込み層を追加します。この層は画像の特徴を抽出します。
model.add(Conv2D(64, (3, 3), activation='relu')): 畳み込み層を追加します。
model.add(MaxPooling2D(pool_size=(2, 2))): プーリング層を追加します。プーリング層は、画像の特徴を圧縮します。
model.add(Dropout(0.25)): ドロップアウト
実際の画面

見事に教えてくれました。

コードだけでなく、説明文まで丁寧に教えてくれています。

質問

AWSのECSとEKSはどちらがいいですか?

ChatGPTの回答

AWSのECS(Elastic Container Service)とEKS(Elastic Kubernetes Service)は、コンテナを管理するためのサービスです。ECSは、AWS独自のコンテナ管理サービスであり、EKSはKubernetesを利用したコンテナ管理サービスです。

ECSとEKSの違いは、管理対象となるコンテナのオーケストレーションツールが異なることです。ECSでは、AWS独自のオーケストレーションツールが用いられ、EKSではKubernetesが用いられます。

どちらが適切な選択肢かは、利用するアプリケーションやニーズによって異なります。ECSは、AWS環境でのシンプルなコンテナ管理に適しています。一方、EKSは、Kubernetesに慣れているチームや、Kubernetesを利用するアプリケーションを実行する場合に適しています。

両者を比較すると、次のような特徴があります。

ECS:
AWS独自のオーケストレーションツールを用いる。
シンプルで管理が容易。
スケーラビリティが高い。
EKS:
Kubernetesを用いる。
移行が容易。
広く普及しているため、ドキュメントやコミュニティが充実している。
ECSとEKSのどちらを選択するかは、利用するアプリケーションやニーズに応じて決定する必要があります。適切な選択を行うことで、コンテナ管理を効率的かつ安定的に行うことができます。
実際の画面

たしかに、ECSとEKSのどちらがよいかはケースバイケースでしょう。

なので間違ってはないですね。

EKSのほうが広く普及しているというのは語弊があるような気もしますが、ECSと比較してドキュメントが不足しているということも無いので、間違いではないかもしれません。

質問

pythonで株価データを取得するコードを教えてください。

ChatGPT

pythonで株価データを取得する場合、次のようなコードを書くことができます。

まず、必要なライブラリをインポートします。ここでは、pandasとpandas-datareaderを用います。

# pandasライブラリをインポート
import pandas as pd

# pandas-datareaderライブラリをインポート
import pandas_datareader as pdr

次に、株価データを取得したい銘柄のコード(例えば、トヨタのコードは7203)を指定します。また、取得する期間も指定します。


# トヨタのコードを指定
ticker = '7203'

# 取得する期間を指定
start_date = '2018-01-01'
end_date = '2018-12-31'

次に、pandas-datareaderを用いて株価データを取得します。

# pandas-datareaderを用いて株価データを取得
stock_data = pdr.DataReader(ticker, 'stooq', start_date, end_date)

これにより、stock_dataに株価データが格納されます。取得した株価データを確認するために、次のようにheadメソッドを用います。


# 先頭5行を表示
print(stock_data.head())

このようにして、pythonで株価データを取得することができます。
実際の画面

ちゃんと株価データを取得するコードを教えてくれました。

これで、問題なく実行できるのであれば、いちいち検索して調べまくる必要は無くなりますね。

いちおう正しく動くか見てみましょう。

実際の画面
実際の画面

一部修正しましたが、ちゃんと株価データを取得できました。

まとめ

ChatGPTすごいです。

何でも教えてくれます。

この記事より新しい関連記事

参照元

Just a moment...

Introducing ChatGPT
We’ve trained a model called ChatGPT which interacts in a conversational way. The dialogue format makes it possible for ...
ChatGPT - Wikipedia

コメント

タイトルとURLをコピーしました