タグ

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

  • Pythonで100万ドキュメントオーダーのサーチエンジンを作る(PageRank, tfidf, 転置インデックスとか) - にほんごのれんしゅう

    検索エンジンを何故作ってみたかったか もともとこのブログのコンセプトのNLP的なことで、情報を整理してなにか便利にしたかった(Googleと同じモチベーションの世界の情報を整理する) 4年前にほぼ同じシステムを作ろうとしたとき、500万を超える大量のインデックスを検索するシステムは、数学的な理解度が十分でない+エンジニアリング力が伴わないなどでギブアップした背景があり、今回再チャレンジしたくなった ほぼすべての機能をpure python(+いくつかの例外はある)で実装して、世の中の ソフトウェアを使うだけ の検索エンジンをやってみたなどではなく、実際に理解して組んでみることを目的としたかった 依存パッケージと依存ソフトウェア GitHubのコードを参照してください 様々なサイトを巡回する必要があり、requestsが文字コードの推論を高確率で失敗するので、nkf をlinux環境で入れて

    Pythonで100万ドキュメントオーダーのサーチエンジンを作る(PageRank, tfidf, 転置インデックスとか) - にほんごのれんしゅう
  • 不動産価格分析とモデルの作成とクローム拡張 - にほんごのれんしゅう

    機械学習不動産を予想する意味 特徴量から重要度を知ることができる EndUserにとって嬉しいことは? 線形モデルならばChrome ExtentionなどJavaScriptなどにモデルを埋め込むこともでき、意思決定の補助材料などとして、不動産の情報の正当性を推し量る事ができる 管理会社にとって嬉しいことは? 特徴量の重要度が明確にわかるため、設備投資戦略をどうするか、異常に値段がずれてしまっている案件の修正などに用いることができる データを集める ダウンロード済みのデータはこちらLink モデルを検討する ElasticNetを利用 ElasticNetはL1, L2の正則化をあわせた線形モデルで、オーバーフィットを強力に避けて、予想するアルゴリズム 1 / (2 * n_samples) * ||y - w*x||^2 + alpha * l1_ratio * ||w|| +

    不動産価格分析とモデルの作成とクローム拡張 - にほんごのれんしゅう
  • Excelの光と影 ~Excelデータ分析を超えていけ~ - にほんごのれんしゅう

    Excelは便利なソフトで、あらゆる企業で使われている表計算ソフトウェアですが、国内ではその役割が拡張されドキュメント作成的な意味もあります。 まともな使い方としてのExcelもあり、分析してと渡されることが多いフォーマットでもあります。 私自身のいくつか経験した案件を踏まえ、Excelとその周辺文化データ分析の妨げになっているという感想を持っていて、可能な限り、客観的に示していこうと思います。 Excelの功罪 一般的にExcelについてそのメリットやデメリットが語られる際、どのようなことが言われるのでしょうか。 おそらくデータに携わる人では、このような共通認識があるかと思います。 良い点 小さいデータから完結に何かを述べるときに便利 グラフが簡単にかけて、可視化する際に便利 プログラミングなど複雑なことがわからなくても大丈夫 悪い点 セル結合はデータがパースが難しいかできない 人間が

    Excelの光と影 ~Excelデータ分析を超えていけ~ - にほんごのれんしゅう
  • 5ch(旧2ch)をスクレイピングして、過去流行ったネットスラングの今を知る - にほんごのれんしゅう

    5ch(旧2ch)ではここ数年はTwitterを使用するようになってしまいましたが、ネットのミームの発信地点であって、様々なスラングを生み、様々な文化を作ってきたと思います。 学生時代、2chまとめとか見ていたので、影響を受けてきたネット文化で、感覚値からすると、どうにも流行り廃りがあるようです。 5chの過去ログを過去18年ほどさかのぼって取得する方法と、懐かしいネットスラングのドキュメントに占める出現具合を時系列でカウントすることで、時代の変遷でどのように使用の方法が変化したのか観測することができます。 文末に「orz」って付けたら若い人から「orzってなんですか?」と聞かれて心身共にorzみたいになってる— ばんくし (@vaaaaanquish) October 19, 2018 図1. 今回集計したorzの結果 例えば、今回集計した5chの書き込み500GByte程度のログからで

    5ch(旧2ch)をスクレイピングして、過去流行ったネットスラングの今を知る - にほんごのれんしゅう
  • 実践的な分散処理を利用して処理を高速化 - にほんごのれんしゅう

    実践的な分散処理を利用して処理を高速化 GCPAWSで膨大な計算を行う際に、オーバーヘッドを見極めて、大量のインスタンスを利用し、半自動化して、より効率的に運用するテクニックです。 Kaggle Google Landmark Recognition + Retrievalで必要となったテク Kaggleでチームを組んで皆さんのノウハウと勢いを学ぶべく、KaggleのGoogle Landmark RecognitionとRetrievalのコンペティションにそれぞれチームで、参加しました。 メンツは、キャッシュさん、yu4uさん、私という激強のお二人に私が計算リソースの最適化で参加しました。画像のことはディープ以降の知識レベルであったので、大変勉強になったコンペです。結果は銀メダル2個です。 「ディープの特徴量」 + 「局所特徴量」の両方を取り出し、マッチングを計算するという問題で、こ

    実践的な分散処理を利用して処理を高速化 - にほんごのれんしゅう
  • 機械学習ではじめるDocker - にほんごのれんしゅう

    目次とお断り この資料をまとめるに当たって、実際に開発したり運用したりという経験のスニペットから、できるだけ編集して、自分なりに体系化したものです 様々な角度のデータが乱雑なっててわかりにくいかもしれませんが、ご了承いただけると幸いです "1. Dockerとは" "2. Dockerを用いるメリット" "3. docker.ioのインストール" "4. dockerでコンテナの起動" "5. 基的な操作" "6. Dockerコンテナにsshdなどの必須ソフトウェアをインストールする" "7. dockerコンテナのexportとimport" "8. 機械学習ように調整したコンテナの利用" "9. 実際に使用している例" "10. Docker Hub連係" "11. Docker Compose" "12. Dockerのコンテナとホストマシン間でファイルの共有をする" "13.

    機械学習ではじめるDocker - にほんごのれんしゅう
  • 勾配ブースティングを利用した、KPIに効く特徴量のレコメンド - にほんごのれんしゅう

    勾配ブースティングを利用した、KPIに効く特徴量のレコメンド 近況:おばあちゃんが亡くなった関係で、しばらく更新できませんでした。人間の一生とは改めて有限で、限られた時間で何をどうやるかを意識しないといけないなと思いました 意思決定をサポートする機械学習の必要性 機械学習は、マスメディアの中で語られるまるで人間の置き換えかのように表現されることが多いのですが、利用できる実態としては以下の側面が私が携わる案件で多いです。 CTR予想など、KPIを自動で場合によっては高速に計算することで、人間が最適な意志決定しやすくする 膨大な経験に基づく必要がある一部の職人の仕事で、何がKPIなのかなどの特徴量重要度を把握し、定量的な値で意志決定することで、属人性をなくす まだ私自身、キャリアとして、そんなに長くない機械学習エンジニアですが、主要な幾つか質的な要素に還元すると、このようなものであることが多

    勾配ブースティングを利用した、KPIに効く特徴量のレコメンド - にほんごのれんしゅう
  • 教師なし画像のベクトル化と、ベクトルからタグを予想したり類似度を計算したりする - にほんごのれんしゅう

    教師なし画像のベクトル化と、ベクトルからタグを予想したり類似度を計算したりする はじめに ISAI2017でPCAnetと呼ばれる、教師なし画像の特徴量の抽出方法が紹介されていました 味深い実装になっており、CNNをバックプロパゲーションで結合の太さを学習していくのではなく、予めフィルタを組み込んでおき、使うことで、高い精度を達成しているようです[1] これを見ていて、AutoEncoderでも同等のことができるのではないかと思いました AutoEncoderでは、ディープラーニング学習する必要がありますが、やはり、教師データは必要ないです。画像だけあれば良いです。 AutoEncoder 図1. Auto Encoderの図 GANに似ています。GANはこの、図のDecoderを入力との直接の誤差の最小化ではなく、判別機を騙すことで達成しますが、今回はもとの情報が近い方が良いと思ったので

    教師なし画像のベクトル化と、ベクトルからタグを予想したり類似度を計算したりする - にほんごのれんしゅう
  • 前処理にディープラーニングを使う - にほんごのれんしゅう

    前処理にディープラーニングを使う 目的 スクレイパーなどで集めた画像には、ターゲットとする画像以外必要ないケースが度々ある データセットづくりと呼ばれる画像からノイズ画像を取り除くスクリーニングの作業の簡略化の必要性 画像のスクリーニングを機械学習でやってしまおうという試みです 前処理そのものにディープラーニングを投入する 画像処理において、学習したい画像かどうかをスクリーニングすることは膨大なコストがかかるので、この作業自体を自動化したい 今回はスクレイパーでいい加減にあつめたグラビア女優の画像7万枚超えを、手動でスクリーニングするのは極めて困難なので、VGG16を転移学習させてフィルタを作っていきます 一枚10円で500枚のペア(positiveとnegative)のデータセットを知り合いのニートに作ってもらう ニートの作成したデータセットをもとに、転移学習させてフィルタを構築 システ

    前処理にディープラーニングを使う - にほんごのれんしゅう
    clavier
    clavier 2017/04/23
  • RNNで「てにをは」を校正する - にほんごのれんしゅう

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

    RNNで「てにをは」を校正する - にほんごのれんしゅう
  • ウィキペディア日本語版 tf-idfのidf辞書の公開 - にほんごのれんしゅう

    nora(野良)-idf-dic モチベーション LevelDB(kvs)を利用した省メモリ設計で、すべてのWikipediaのコンテンツコンテンツを取得して処理したい XGBoostやElasticNetなど他のアルゴリズムでの前処理にを楽にしたい JSONスキーマなので、Python以外の他のスクリプト言語でも利用可能にしたい ダウンロードリンク Dropboxにアップロードしております。 www.dropbox.com フォーマット idfはjsonのdict型(ハッシュマップとも言います)です。 idf = { term1: weight1, term2:weight2, ... } このようなフォーマットになっており、単語とidfの重みがペアになって格納されています。 式の説明 tf-idfはヒューリスティックなものなので、そもそも明確なんてないんですが、一番、わたしとわたしの周

    ウィキペディア日本語版 tf-idfのidf辞書の公開 - にほんごのれんしゅう
  • 1