動きの抽出 ちょうどシステムアップデートで再起動したので、何もないところからメモ

  • プロジェクトディレクトリをターミナルで開く
    • リポジトリをわけるかどうか悩ましい問題なんだけど既存プロジェクトの中にサブディレクトリを作る
    • 名前はugokiにしといた
  • vscode起動
    • $ source venv/bin/activate
    • $ pip install mecab-python3==0.996.5
    • $ pip freeze > requirements.txt
    • あ、これも使うか
      • $ pip install -e git+https://github.com/nishio/rich_tokenizer#egg=rich_tokenizer
  • とりあえずlogs/find_ugoki.pyを作る
    • 適当なログファイルから人間の発言部分を取り出してrich_tokenizer.tokenizer(text)
      • [あー, この, システム, を, 音声, で, 使え, たら, いい, よ, ね, と, 言う, 人, が, 結構, いる, ので, 音声, 入力, の, テスト, を, し, て, み, たい, と, 思い, ます, 上]
      • ちなみに抽出したキーワード: {‘音声’: 100, ‘音声入力’: 80, ‘あーこのシステム’: 70, ‘人’: 39}
        • フィラーが入ってるのはイマイチだが今回のゴールと違うので保留 :
In [20]: for x in xs:
    ...:     if x.feature.startswith("動詞"):
    ...:         print(x, x.feature)
    ...: 
    ...: 
使え 動詞,自立,*,*,一段,連用形,使える,ツカエ,ツカエ
言う 動詞,自立,*,*,五段・ワ行促音便,基本形,言う,イウ,イウ
いる 動詞,自立,*,*,一段,基本形,いる,イル,イル
し 動詞,自立,*,*,サ変・スル,連用形,する,シ,シ
み 動詞,非自立,*,*,一段,連用形,みる,ミ,ミ
思い 動詞,自立,*,*,五段・ワ行促音便,連用形,思う,オモイ,オモイ
    - この中でキーワードにして良さそうなのは「使う」くらいだな
    - 単に動詞一単語だけでフィルタしてもいいけど「使えたらいい」の形であることは評価高いし、「する」単体ではイマイチでも「テストをする」だったらキーワードにしても良いと思うので、周辺数単語を特徴量に取り込むことにするか
  • ppoi ppoi改善案
    • そのまま使うというより編集して使おう
    • ppoiってネーミング、今になって思うとそれほど面白くないし
    • これはunknown.txtに1行1個の事例があることが前提されてるけども、そこは生のログデータから作りたいな
      • 作った
      • ユーザ定義のunknown生成をプラグインできる仕組み
    • インタラクティブを叩いたが、学習が走ってエラー
      • あれ?なんで学習を走らせる必要がある?
      • _get_scored_linesの中で呼べばいい
      • 学習前にこれを呼ぶのは「追加したい機能」に入れてたけどまだ未実装だったか
    • アンノウンに入ってるものが1行文字列だと仮定してる
      • ここはオブジェクトであるのが楽
      • 教師データに書き出す時にJSONにしよう
    • 後やっぱり初期化は最初に叩いてもらう方が良いな :
今は散歩をしながらAirPodsで音声入力をしています
し 0.1667
negative(z), neutral(x), positive(c), quit(q)>z
今は散歩をしながらAirPodsで音声入力をしています
い 0.1429
negative(z), neutral(x), positive(c), quit(q)>z
  • 能動学習が動くようになった
    • 「Xをする」はまとめて切り出してほしいし、「Xない」は「ない」まで含めてほしい
    • 「散歩をする」「テストをする」
    • 「足りてない」「足りない」
  • 複数単語の切り出しのためには候補の段階で生成するか
  • 意外とあっさりできた :
>>> get_ugoki("音声でやりたいなら、音声だけでリピートバックして、画面は見ないってシステムにするべき。")
(0.99963593, '音声だけでリピートバックする')
(0.9981591, 'リピートバックする')
(0.9901821, 'システムにするべし')
(0.95455027, 'やりたい')
(0.9340714, 'やる')

動詞を含むキーワードを抽出するようになった件、単純に繋ぐと当然キーワードの抽出数が増えて、そうするとキーワードの抽出数が一定に達することを条件にしてるところが軒並み今より早く発動することになるのでは、ということに気づいた

done 会話ログ:新機能のテスト

境界に助詞が出てしまうなどのルールベースで弾けるものは弾くことにした