<jupyter_start><jupyter_text>7.1 単語分割（Janome、MeCab+NEologd）- 本ファイルでは、JanomeもしくはMeCab+NEologdを使用して分かち書きします ※　本章のファイルはすべてUbuntuでの動作を前提としています。Windowsなど文字コードが違う環境での動作にはご注意下さい。  7.1 学習目標1.	機械学習における自然言語処理の流れを理解する2.	JanomeおよびMeCab+NEologdを用いた形態素解析を実装できるようになる  事前準備- 書籍の指示に従い、本章で使用するデータを用意します  1 . 単語へ分割：Tokenizer分かち書きをする部分を作成します  1.1 Janome公式サイトhttps://mocobeta.github.io/janome/  Janomeのインストール方法コンソールにて、- source activate pytorch_p36- pip install janome<jupyter_code>from janome.tokenizer import Tokenizer

j_t = Tokenizer()

text = '機械学習が好きです。'

for token in j_t.tokenize(text):
    print(token)

# 単語分割する関数を定義


def tokenizer_janome(text):
    return [tok for tok in j_t.tokenize(text, wakati=True)]


text = '機械学習が好きです。'
print(tokenizer_janome(text))<jupyter_output>['機械', '学習', 'が', '好き', 'です', '。']<jupyter_text>1.2 MeCab公式サイトhttp://taku910.github.io/mecab/  MeCab+NEologdのインストール方法1. MeCabのインストールsudo apt install mecabsudo apt install libmecab-devsudo apt install mecab-ipadic-utf82. NEologd のインストールgit clone https://github.com/neologd/mecab-ipadic-neologd.gitcd mecab-ipadic-neologdsudo bin/install-mecab-ipadic-neologd(途中で止まり、Do you want to install mecab-ipadic-NEologd? Type yes or no.と聞かれたら、yesと入力)3. PythonからMeCabを使用できるようにする conda install -c anaconda swigpip install mecab-python3cd ..jupyter notebook --port 9999<jupyter_code>import MeCab

m_t = MeCab.Tagger('-Ochasen')

text = '機械学習が好きです。'

print(m_t.parse(text))

import MeCab

m_t = MeCab.Tagger('-Ochasen -d /usr/lib/mecab/dic/mecab-ipadic-neologd')

text = '機械学習が好きです。'

print(m_t.parse(text))

# 単語分割する関数を定義

import MeCab

m_t = MeCab.Tagger('-Owakati -d /usr/lib/mecab/dic/mecab-ipadic-neologd')


def tokenizer_mecab(text):
    text = m_t.parse(text)  # これでスペースで単語が区切られる
    ret = text.strip().split()  # スペース部分で区切ったリストに変換
    return ret


text = '機械学習が好きです。'
print(tokenizer_mecab(text))<jupyter_output>['機械学習', 'が', '好き', 'です', '。']
{'fraction_non_alphanumeric': 0.12546125461254612, 'fraction_numerical': 0.013178703215603585, 'mean_word_length': 5.827338129496403, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '138106', 'license': 'MIT', 'n_tokens_mistral': 1135, 'n_tokens_neox': 1079, 'n_words': 130, 'path': 'practice/chapter7/7-1_Tokenizer.ipynb', 'repo_name': 'moisutsu/pytorch_advanced', 'size': '1897'}