質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

Q&A

解決済

1回答

1131閲覧

Embedding層とSimpleRNN層の役割を知りたいです。

akasatanaham

総合スコア3

Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

0グッド

0クリップ

投稿2021/04/02 07:36

編集2021/04/02 07:48

KerasでのリカレントニューラルネットワークのEmbedding層とSimpleRNN層では何がなされているのでしょうか。また、引数の数字やOutput ShapeのNoneはなにを意味しているのでしょうか。

model.add(Embedding(...,..)
model.add(SimpleRNN(..))
model.summary()

Output shape
(None,None,..)
(None,..)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Embedding埋め込みという処理を表します。
単語の指す意味ごとに場所を割り振るイメージでしょうか。それ単体では意味を持たない(人間には理解できない)散らかったパラメータ群を、意味のある場所にプロットしなおす操作です。「単語をベクトル表現にしてプロットすると、人と人間は近いところにあるけれども人と車は遠いところにある」というような表現がわかりやすいかと思います。

適当な例ですが、
みかん=[1, 0, 0]
りんご=[0, 1, 0]
トマト=[1, 1, 0]
自動車=[0, 0, 1]
とあったときに、なんとなく

「みかん<-->トマト<-->りんご」        ^        |        |        |        |        v      「自動車」

という関係性が見えるかと思います。

SimpleRNNについては、まんまですがシンプルなRNNです。恐らく複雑にしたLSTMに対する意味でシンプルとされているのだと思います。これは、前の出力結果を次の入力に使いまわすものです。この辺の説明は専門書やQiitaにたくさん説明がありますのでそちらを参照ください。

Noneについては、具体的な例がないので何とも言えませんが、RNNは再帰処理処理をするのですが、初めの一回は再帰の”元”がないのでやむを得ずNoneを突っ込んでいるのだと思います。

引数の意味については項目が膨大な数になるので、適宜リファレンスを参照ください。わからない部分をどうわからないか具体的に質問に起こして投稿すると、皆様から回答がもらえるものと思います。

投稿2021/04/03 04:07

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

akasatanaham

2021/04/03 04:23

お手数おかけしました。詳しい解説ありがとうございました。助かりました。質問の仕方、修正したいと思います。アドバイスありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問