from tensorflow.keras.preprocessing.text import Tokenizer でなぜTokenizerを読み込めるのか分かりません

投稿者: Anonymous

言語処理を勉強中のものです。
/usr/local/lib/python3.5/dist-packages/tensorflow/_api/v1/keras/preprocessing/text/
には

__init__.py  __pycache__

しかなく、__init__.pyの中身にも

# This file is MACHINE GENERATED! Do not edit.
# Generated by: tensorflow/python/tools/api/generator/create_python_api.py script.
"""Utilities for text input preprocessing.

"""

from __future__ import print_function

from tensorflow.python.keras.preprocessing.text import Tokenizer
from tensorflow.python.keras.preprocessing.text import hashing_trick
from tensorflow.python.keras.preprocessing.text import one_hot
from tensorflow.python.keras.preprocessing.text import text_to_word_sequence

del print_function

とTokenizerのモジュールの定義がないのに、なぜ

from tensorflow.keras.preprocessing.text import Tokenizer

とすることでTokenizerが使えるようになるのでしょうか。Tokenizerの定義はどこに書いてあるのでしょうか。

解決

/usr/local/lib/python3.5/dist-packages/tensorflow/python/keras/preprocessing/text.pyがありませんか?

[参考]
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/keras/preprocessing/text.py

もしくは/usr/local/lib/python3.5/dist-packagesではないディレクトリ(例えば、/usr/local/lib/python2.7/dist-packagesとか)にあるのではないですかね?

もしそれも違っていれば、以下のコマンドで探してみてはどうでしょう。

sudo updatedb
locate tensorflow/python/keras/preprocessing/text.py
回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *