GithubHelp home page GithubHelp logo

aiwolf-3rd-nlp's Introduction

チームm_cre (自然言語処理部門)

第3回人狼知能大会 自然言語処理部門の出場エージェントです。

プログラム解説

動作環境

  • macOS (Sierra)
    • Windowsでもjuman, knp を呼び出す部分をうまく変えれば動くと思います。
  • jdk (8)

OSにインストールするもの

  • juman (7.01)

    • dic/makedic.shを参考に辞書をコンパイルしてください
    • このへんを参考に~/.jumanrcdic(フルパスで)を設定してください。
    • インストール先が/usr/local/bin/jumanではない場合はClauseクラスから呼んでいるKNPのコンストラクタの記載を変更する必要があります。
    • (スペックによると思いますが)juman++だと動作が遅くて応答制限時間を満たさない場合があるので、jumanのほうが良いと思います。
  • knp (4.16)

    • インストール先が/usr/local/bin/knpではない場合はClauseクラスから呼んでいるKNPのコンストラクタの記載を変更する必要があります。

必要ライブラリ等

  • aiwolf-client.jar (0.4.4)
  • aiwolf-common.jar (0.4.4)
  • aiwolf-server.jar (0.4.4)
  • aiwolf-viewer.jar (0.4.4)
  • jsonic-1.3.10.jar
  • jackson-core-2.8.1.jar
  • jackson-annotations-2.8.0.jar
  • jackson-databind-2.8.5.jar
  • java-juman-knp.jar
  • McrePlayer.jar

クラス等説明

  • プレイヤー本体

    • net.mchs_u.mc.aiwolf.nlp.blade.McreNlpPlayer
  • mainメソッドが含まれるクラス

    • net.mchs_u.mc.aiwolf.nlp.starter.Main
      • サーバとクライアント5体が一発で起動します
    • net.mchs_u.mc.aiwolf.nlp.blade.Clause
      • 文章を解析してClauseクラスに格納された結果を確認できます
    • net.mchs_u.mc.aiwolf.nlp.util.KNPChecker
      • Clauseクラスに格納されるまえの詳細な解析結果を確認できます
    • net.mchs_u.mc.aiwolf.nlp.util.LogConverter
      • サーバから吐き出されるlogファイルを読みやすく変換できます
    • net.mchs_u.mc.aiwolf.nlp.util.TransratedMapChecker
      • 自然言語をプロトコルに変換した履歴を確認できます
    • dic/translatedMap.dat
      • 自然言語からプロトコルに変換した場合、その結果を保存し、次回同一の自然言語の入力があった場合に形態素解析を省略することで応答の速度を上げます。
      • Earのロジックを変更した場合などは一度手動で削除しないと意図した動作にならないと思います。

連絡先

License

  • MIT
    • see LICENSE

aiwolf-3rd-nlp's People

Contributors

mcre avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

aiwolf-3rd-nlp's Issues

人間っぽくする

  • 同意/否定/要求 をする
    • プロトコル版にもいれよう
  • 発言タイミングを考える
    • むやみやたらにすぐCOや投票宣言をするのは不自然
    • 自然な発話を優先にすべき場面ではプロトコル版のtalkを呼ばない(今はプロトコルが言うことがない場合にのみ自然言語版で質問への回答をしたりするけど、自然言語版が主になるように変更する)
  • 発話に理由をつける
    • ○○だから誰々に投票するよ、と言わないと投票先変更した場合に一貫性がないと感じられる
  • 説得する
  • 状況反応発話を増やす
  • 雑談確率の調整
    • 現状20%一定としているが、ターンが進むにつれ減衰させるようにしたい

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.