<?xml version="1.0" encoding="UTF-8" ?>
<feed xml:lang="ja" xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:thr="http://purl.org/syndication/thread/1.0">
  <title type="text">田吾作メモ</title>
  <subtitle type="html">盛大な独り言日記・自分用メモ2010.11.17～
</subtitle>
  <link rel="self" type="application/atom+xml" href="https://ta539.dankanoko.com/atom"/>
  <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/"/>
  <updated>2010-11-17T17:49:25+09:00</updated>
  <author><name>Ta56</name></author>
  <generator uri="//www.ninja.co.jp/blog/" version="0.9">忍者ブログ</generator>
  <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" />
  <entry>
    <id>ta539.dankanoko.com://entry/86</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/%E7%A0%94%E7%A9%B6%E7%94%A8/%E5%AF%BE%E5%BF%9C%E5%86%85%E5%AE%B9%E3%83%A1%E3%83%A2" />
    <published>2011-10-06T22:25:11+09:00</published> 
    <updated>2011-10-06T22:25:11+09:00</updated> 
    <category term="研究用" label="研究用" />
    <title>対応内容メモ</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[追加しようと思ってる辞書内容<br /><a href="https://ta539.dankanoko.com/%E7%A0%94%E7%A9%B6%E7%94%A8/%E5%AF%BE%E5%BF%9C%E5%86%85%E5%AE%B9%E3%83%A1%E3%83%A2" target="_blank">つづきはこちら</a>]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/85</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/%E7%A0%94%E7%A9%B6%E7%94%A8/%E5%8B%95%E4%BD%9C%E3%81%8C" />
    <published>2011-10-06T19:51:28+09:00</published> 
    <updated>2011-10-06T19:51:28+09:00</updated> 
    <category term="研究用" label="研究用" />
    <title>動作が</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[テスト版を研究室のパソコンに入れて動かしてみたのですが、家のPCより動作が重い…<br />
毎回の質問の度に、回答が出るまでに一瞬待ち時間があってそれが気になる。<br />
パソコン全体の問題なら仕方ないけど、何かおかしな動きをしているのかな…]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/84</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/%E7%A0%94%E7%A9%B6%E7%94%A8/%E3%82%A2%E3%83%B3%E3%82%B1%E3%83%BC%E3%83%88%E3%82%A7%E2%80%A6" />
    <published>2011-10-06T01:01:19+09:00</published> 
    <updated>2011-10-06T01:01:19+09:00</updated> 
    <category term="研究用" label="研究用" />
    <title>アンケートェ…</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[いざアンケート作ろうと思って文章書くと、なんだか不自然な文章に…<br />
<br />
とりあえずテスト版を配布するために、SSP同根の簡素ヘルプを作りました。ファイル削った。<br />
<br />
このテスト版を使って、今の時点でのヘルプの回答の精度を測りたいと思っています。<br />
５～１０回とか適当な回数質問をしてもらって、その正答率をテストしてもらった人に手動でアンケートフォームに入力してもらおうと思ったのですが、<br />
華和梨で何かしらのデータをセーブできるみたいな記事を見つけたので、<br />
やっぱり回答後の「質問が解決できる返事でしたか？　はい　いいえ」の選択肢でパラメータを作って、<br />
最後にアンケートに記入する時に、ここの数値を見て記入してもらう形に出来ないかなと考え中です。<br />
<br />
うまくいけばいいけど。<br />
あと初回起動→最初の質問をしたときに、辞書をリスト化する作業でかなり時間を食ってしまうのが<br />
申し訳ないので、これもどうにかしないと。初回起動と同時に一回分類するとかした方がいいかな…<br />
]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/83</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/%E7%A0%94%E7%A9%B6%E7%94%A8/%E3%82%84%E3%82%8B%E3%81%93%E3%81%A8" />
    <published>2011-10-04T18:01:38+09:00</published> 
    <updated>2011-10-04T18:01:38+09:00</updated> 
    <category term="研究用" label="研究用" />
    <title>やること</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[卒研の発表は１月の最後でも、論文の提出はもっと前でした…うわあ。<br />
あと作って終わりじゃなくて完成させて誰かに使ってもらって論文に結果出さないといけませんね。<br />
ダラダラしてる場合じゃなかったー！<br />
<br />
今までの作業は構造とか機能とか、中身の面での「使いやすい」ヘルプを作る作業だったのですが<br />
そろそろＵＩとか、見た目や外見面での「親しみやすい」ヘルプを制作していこうと思います。<br />
並行して辞書の充実を…<br />
<br />
とりあえずキャラクターに喋ってもらうのですが、「親しみやすい」キャラクターがどんなものなのか<br />
アンケートを取ろうかなと思っています。<br />
今のだるまさんは自分ではよく描けたつもりでも人にうけたかっていうとそうでもないわけで、独りよがりは良くないですねってことで…<br />
webのアンケートでデータを集めるのは邪道かもしれませんがとりあえず図を載せたりできるアンケートサービス見つけたので使う予定です<br />
<br />
アンケート作って公開→アンケート収集しつつ辞書増やす→アンケート集計・キャラクター作成<br />
<br />
作成後のプログラムをいろんな人に使ってもらいたい…とは思うのですが、そういう配布のためのセットも作らないと；いらないファイル消したりとかせんといかんです]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/82</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/python/%E4%BC%BA%E3%81%8B%E3%81%A7%E5%8B%95%E3%81%8B%E3%81%99" />
    <published>2011-09-27T15:38:38+09:00</published> 
    <updated>2011-09-27T15:38:38+09:00</updated> 
    <category term="python" label="python" />
    <title>伺かで動かす</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[ヘルププログラム、伺かで動きました。<br />
printの内容をリストから文字列に戻して、文字コードをwindows標準に戻したらいけました。<br />
以前にpythonで制作→py2exeでexeに変換→伺かでの動作を試したときに、文字が表示されなかったり固まったりしていたのですが、文字コードに問題があったようです。<br />
<br />
リストのままprintすると、伺か側が受け取れない（コンソールだとリストのままでもOK）みたいなので<br />
リスト→テキストに変換<br />
テキストの文字コードをcp932(windows標準）に戻す<br />
printする<br />
<br />
で、伺か側に標準出力の結果を渡せるみたいです。ちゃんとうごいた！<br />
]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/81</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/python/%E5%88%86%E9%A1%9E%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0" />
    <published>2011-09-23T00:36:39+09:00</published> 
    <updated>2011-09-23T00:36:39+09:00</updated> 
    <category term="python" label="python" />
    <title>分類プログラム</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[１つのファイルで入力→訓練→分類→表示をするものが出来たので、今度はファイルを複数に分割してみることにしました。<br />
あと入力文をソースに直接書いてたので、ここでコマンドライン引数→分かち書きにするのも入れときました。<br />
<br />
できたもの<br />
・入力文を分かち書きのリストに変換するプログラム①<br />
・ベイズ分類の関数宣言と、訓練を行うプログラム②<br />
・①からリストを持ってきて、②から関数と訓練した結果（？）を借りて入力文の分類を行うプログラム③（メイン）<br />
・回答集のテキストファイル⑤<br />
<br />
前の自分の記事読み直したけど、訓練の意味をまた間違えていたようです。<br />
参考にしたソースを読んだときに勘違いしたのですが、訓練＝適当な言葉でベイズ分類する<br />
というわけでは無い…ですよね。たぶん。入力文の単語とかすってなければ意味無さそうだし。たぶん。<br />
<br />
ベイズ分類機の訓練部分(train)でやっているのは、<br />
１：⑤の回答集をリスト化、各行１項目目をカテゴリにする×行数分<br />
２：辞書の初期化？<br />
３：回答集のデータから、カテゴリの数と単語の数を取得、ボキャブラリ集合の作成<br />
４：カテゴリ内の形態素の行数（数）＋単語の種類の総数の計算（分類の際の計算に使う）<br />
<br />
でこれは、入力文によらず決まっている作業なので、事前に全部やってデータを保管しておけば<br />
実際に分類をするときにいちいちこの作業をしなくて済む……みたいです。<br />
それでプログラムを分けてみたのですが、今のところは分類プログラムが訓練プログラムの関数を呼び出しているので、結局は毎回の分類の直前に訓練してから→分類という流れになってしまいプログラムが１つの時とやっている事は変わりません。<br />
訓練部分でやった作業の成果をテキストファイルとかに書きこんで、それを分類部分で読み込み→リスト化して使用、とかだと最初に訓練するだけで何度でもお手軽に分類できるのかな。<br />
しかしこれがまためんどくさそうです…。ややこしいっていうか、回答文集のファイル作るのとはまたわけが違うっていうか。しかも今の段階でも、前の（最初の）プログラムに比べたら待ち時間がかなり短くなったので、無理して事前作業にさせなくてもいいかな…と思ってしまいます。うーん<br />
とりあえず伺かで動いてくれないとな…]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/80</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/python/%E9%85%8D%E5%88%97_80" />
    <published>2011-09-17T20:35:43+09:00</published> 
    <updated>2011-09-17T20:35:43+09:00</updated> 
    <category term="python" label="python" />
    <title>配列</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[２次元配列ツクレター＼（＾o＾）／<br />
<br />
readlineで一行ずつ取り出して、タブ区切りの配列を作ったら<br />
適当な配列を用意して、その配列に順次appendを使って項目を追加していけばよかったぽい<br />
<br />
list=[]  #配列は使う前に定義しておかないと怒られる<br />
<br />
f=codecs.open('text.txt','r','utf-8')　　#日本語テキストファイルがうまい事読めるcodecs.open<br />
x=f.reand()<br />
y=x.split('\n')  #テキストファイルの行数を取得するのに使うだけ<br />
   <br />
for i in range(len(y)):  　　　#一行ごとの処理を、行数文繰り返す<br />
   line = f.readline()<br />
   words = line.split('\t')　　#タブ区切りのリストを生成<br />
   list.append(words)　　　　　#タブ区切りリストをlistの要素に追加する。<br />
f.close()<br />
<br />
みたいなかんじ。<br />
これで例えばprint list[1][0]とかすると、元のファイルの２行目の最初の項目が表示される。<br />
<br />
実際には先にreadをしてからreadlineをすると、なぜか空白ばっかり返されたりするので<br />
一回行数(yまで）を取得したら、ファイル閉じてまた開き直したりしてました。二度手間…<br />
<br />
配列とりあえず作れたのはいいけど、これだけのせいでかなり時間食ったのがくやしい。。<br />
まだまだこれからなんだよ！何もできちゃいないんだよ…]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/79</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/python/%E9%85%8D%E5%88%97" />
    <published>2011-09-17T01:07:50+09:00</published> 
    <updated>2011-09-17T01:07:50+09:00</updated> 
    <category term="python" label="python" />
    <title>配列</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[テキストファイルに<br />
<br />
＞説明文(タブ)キーワード（タブ）キーワード（タブ）キーワード（タブ）……（改行）<br />
<br />
＞説明文(タブ)キーワード（タブ）キーワード（タブ）キーワード（タブ）……（改行）<br />
<br />
みたいにデータを並べたとき、<br />
<br />
txt.split('\n')で改行ごとに１要素のリストができて、<br />
txt.split('\t')でタブごとに１要素のリストが出来る。<br />
<br />
タブごとに何行分もの要素を持ったリスト１個を作成してから<br />
適当な記号が出てくるたびにリストを分割する感じでリストをたくさん作りたいんだけどなんかうまくいかない。<br />
for文の中でlist[i]=txt.split('\t')とかやると怒られる。うーん…？<br />
]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/78</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/python/%E8%89%B2%E3%80%85%E3%81%A8%E2%80%A6" />
    <published>2011-09-14T19:18:46+09:00</published> 
    <updated>2011-09-14T19:18:46+09:00</updated> 
    <category term="python" label="python" />
    <title>色々と…</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[動作が遅いのはやっぱりいちいちトレーニングファイル開いたり閉じたりしてたからかもしれない。<br />
というかトレーニングの使い方が間違っていたぽい…<br />
<br />
訓練（トレーニング）はあくまで訓練なので、ここで本番のテキストの分類を行うのではない！<br />
今までのプログラムは普通にトレーニング要素に入力文と回答集をぶち込んでました。<br />
そうじゃなくて、<br />
トレーニング→適当な言葉や文で事前にやっておく、<br />
テスト→本番、ヘルプ質問文の分類をする。<br />
<br />
トレーニングではあらかじめ学習をさせておいて、ＤＢ化しておく<br />
なのでＤＢ作るプログラムと、それを利用して入出力を受け付けるプログラムの最低２つが必要になる？<br />
<br />
で今、今までとは別のサンプルを探しだしてきていろいろいじってみました。<br />
<br />
テキストはＰＣ関連の使い方解説サイトから取り出して、改行分かち書きしたものをトレーニングデータとしてテキストファイルに保存。<br />
３つほどカテゴリを用意して試してみたら、３つのどれに含まれるか、の判断はそこそこうまくいってました。<br />
今はテキストファイル→まるごとpythonのリストにあてはめているのですが、<br />
カテゴリに直接回答文を持ってくる場合だと、この方法では大量のテキストファイルが必要になってしまいます…。<br />
テキストファイル内に見出し記号を作って、それが現れるごとに新しいリストを生成するとか、そういう方法で行きたいんだけどうまくいくかな…<br />
<br />
いかめも：<br />
テスト（訓練ではなく実際にカテゴリ求める）のときの入力文は、そのまま入れると最初のカテゴリにはめられてしまう。<br />
トレーニングデータが形態素分かち書きなので、合わせて入力文も形態素分かち書き→リスト化したもので調べるようにする。<br />
<br />
×(u'壁紙の設定方法は？')→◎(u'壁紙',u'の',u'設定',u'方法',u'は',u'？')<br />
]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
  <entry>
    <id>ta539.dankanoko.com://entry/77</id>
    <link rel="alternate" type="text/html" href="https://ta539.dankanoko.com/%E7%A0%94%E7%A9%B6%E7%94%A8/%E3%82%B3%E3%83%B3%E3%82%BD%E3%83%BC%E3%83%AB%E3%81%AE%E3%83%98%E3%83%AB%E3%83%97%E5%90%9B" />
    <published>2011-09-13T01:21:27+09:00</published> 
    <updated>2011-09-13T01:21:27+09:00</updated> 
    <category term="研究用" label="研究用" />
    <title>コンソールのヘルプ君</title>
    <content mode="escaped" type="text/html" xml:lang="utf-8"> 
      <![CDATA[精度はともかくとして、<br />
・無駄に反応が遅い<br />
・日本語の正規表現が？？？？<br />
<br />
入力された質問文に「何」って含まれていたら、意味を問う質問だと判断して<br />
他のファイルで解析をせずに優先的に意味用の辞書に持って行きたいのですが。。<br />
入力文字列に”何”という文字が含まれているかどうか、の判断部分がうまく書けない。<br />
<br />
ベイジアンフィルタとかは見よう見まねで書いてちゃんと動いてるのにこんな簡単な検索が出来ない。うーん]]> 
    </content>
    <author>
            <name>Ta56</name>
        </author>
  </entry>
</feed>