タグ

ブックマーク / catindog.hatenablog.com (4)

  • RNNで暗号であるEnigmaを解く - にほんごのれんしゅう

    RNNで暗号であるEnigmaを解く Enigma暗号とは 1918年に発明されたEnigmaは第二次世界大戦時に発明された暗号化機であり、電線の配線のパターンと、ロータといわれる入力するたびに回転する円盤のパターンで、様々な文字の置き換えを行います。 ドイツ軍で用いたられたアルファベットの数だけ暗号化のもととなる配線が記された三つのロータを組み合わせて、膨大な動的に変換するパターンを構築して文字列を置換して、単純な交換則が成立しない複雑な暗号を構築して連合軍を苦しめました。 図1. JavaScriptによるEnigma Simulator 連合国側のイギリスの特殊チームのULTRAによって解析されたようです。数学的な暗号の原理を追っているのですが、まだ完全にキャッチアップしきっておりませんが、群論とコンピュータのパワーとヒントとなるキーが人間の発想に依存するという特性を利用して解いたそ

    RNNで暗号であるEnigmaを解く - にほんごのれんしゅう
  • CNNによる文字コード不明なドキュメントの推定 - にほんごのれんしゅう

    CNNによる文字コード不明なドキュメントの推定 Advent Calender遅刻いい訳 年末忙しすぎた ネタと期待していたいくつかがまともに結果が出ずに苦しい思いをしていた 元URLの喪失 バイト列から文字コーディングを推定する Twitterで時々バズるネタとして、機械学習がこれほどもてはやされるのに、今だにBrowserは時々文字化けし、ExcelはUTF8を突っ込むと文字化けし、到底、文化的で最低限の人権が保護された状態ではありません。 実際、ルールベースで推定しようとすると、この様にshift jisとeucでは完全に背反な情報を使っているわけでないので、なんらかのヒューリスティックなルールを人間が作成して対応していたのだと思いますが、この様なユースケースの場合、機械学習が強い力を発揮します。 図1. sjisとeucの文字コードのバイト列のマップ(参考:smdn) その度、「そ

    CNNによる文字コード不明なドキュメントの推定 - にほんごのれんしゅう
  • word2vec, fasttextの差と実践的な使い方 - にほんごのれんしゅう

    word2vec, fasttextの差と実践的な使い方 目次 Fasttextとword2vecの差を調査する 実際にあそんでみよう Fasttext, word2vecで行っているディープラーニングでの応用例 具体的な応用例として、単語のバズ検知を設計して、正しく動くことを確認したので、紹介する Appendix (発表用の資料も掲載いたします,小さくて見づらいので、直リンはこちら) 原理の表面的な説明 Skip gramではある特定の単語の前後の単語の出現確率を測定することでベクトル化する 図1. ある目的の単語から、周辺の単語の確率を計算してベクトル化する Word2vecとfasttextではこれを実装したもの ただし、fasttextにはsubwordという仕組みが入っている 図2. softmaxで共起確率を計算する あそんでみよう 2017年2~3月のTwitterのデータ

    word2vec, fasttextの差と実践的な使い方 - にほんごのれんしゅう
  • RNNで「てにをは」を校正する - にほんごのれんしゅう

    RNNで「てにをは」を校正する 余談 2017/3/19に、どの深層学習フレームワークがこれから深層学習を始める人におすすめなのかというアンケートをtwitterで取らせていただきました。 五位 Theano(個別カウント) はじめに RNNによる文章校正がリクルートによって提案されて以来、調査タスクとして私のものとに来たりして、「できるんでしょう?」とか軽く言われるけど、実際には簡単にはできません。 RNNによる文章生成ができるから、校正もできるというのが人間の自然な発想なのかもしれませんが、英語と日語の違いに着目した場合、英語がアルファベットのみで構築されるのに比べて日語は、漢字・ひらがな・カタカナと非常に多く、同じように問題を適応すると、すごい高次元の問題を解くこととなり、理想的なパフォーマンスになかなかなりません。 まぁ、あんまり完成してるわけでない技術を完成したようにプレスリ

    RNNで「てにをは」を校正する - にほんごのれんしゅう
  • 1