はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    参議院選挙2025

『くじらにっき++』

  • 人気
  • 新着
  • すべて
  • Apache の標準モジュールを(だいたい)全部調べてみた - くじらにっき++

    4 users

    kujira16.hateblo.jp

    Docker イメージ httpd:2.4.38 の httpd.conf には以下のように利用できるモジュールが列挙されています。 LoadModule mpm_event_module modules/mod_mpm_event.so #LoadModule mpm_prefork_module modules/mod_mpm_prefork.so #LoadModule mpm_worker_module modules/mod_mpm_worker.so LoadModule authn_file_module modules/mod_authn_file.so #LoadModule authn_dbm_module modules/mod_authn_dbm.so #LoadModule authn_anon_module modules/mod_authn_anon.so #

    • テクノロジー
    • 2021/11/25 03:23
    • 仕事
    • あとで読む
    • 「Stack Overflow の機械翻訳サイトの除外用フィルタ」の管理をしていてわかったこと - くじらにっき++

      20 users

      kujira16.hateblo.jp

      こんにちは。ublacklist-stackoverflow-translation を管理している @shora_kujira16 です。 github.com このリポジトリはよく目につく Stack Overflow の機械翻訳サイトがまだ両手で数えられるほどしかなかった2019年10月に公開を始めたものです。利用者数を計測することはできていないのですが、GitHub のスターの数などから推測するに今年の1月ごろから多くの方にご利用いただいているようです。 リポジトリを公開してから1年半ほど経ち、今では多くの方から継続的にプルリクエストをいただくようになりました。この記事ではこのリポジトリを管理していてわかったことや今後の展望についてまとめます。 対象ドメインの数 「Stack Overflow 機械翻訳」のようなキーワードで Twitter を検索してみることがあるのですが、リポジ

      • テクノロジー
      • 2021/05/04 19:46
      • spam
      • GitHub
      • programming
      • あとで読む
      • ublacklist
      • ICPC 模擬国内予選 2020 スタッフ参加記 - くじらにっき++

        5 users

        kujira16.hateblo.jp

        問題 あなたは ICPC OB/OG の会が開催する ICPC 模擬国内予選 2020 のスタッフとして、選手に詳細案内を送付する仕事を任されている。 詳細案内は、模擬国内予選で使われるジャッジシステムの URL とログインに必要なチーム番号、パスワード、そしてチーム名と所属を含む文字列であり、与えられたテンプレートにチームごとに異なる文字列を埋め込むことによって表される。 あなたは詳細案内を「すごく難しい天才以外お断りプロトコル」(SMTP) を使って送付しなければならない。 プログラマーであるあなたは SMTP を使って詳細案内を送信するプログラムを作成することにした。 入力 入力は以下の形式で表される N A_1 T_1 S_1 I_1 P_1 A_2 T_2 S_2 I_2 P_2 ... A_N T_N S_N I_N P_N L M_1 M_2 ... M_L 最初の行は送付先

        • テクノロジー
        • 2020/11/11 21:36
        • いろいろなスナップショット技術を使ってみる - くじらにっき++

          4 users

          kujira16.hateblo.jp

          この世にはスナップショットという便利なものがあるらしいと耳にしました。 噂によれば以下のようなことができるようなのです。 ある時点のファイルシステムやボリューム全体のコピーのようなものを高速に採取できる(「ある時点」の「全体の複製」が取れるので整合性を失わずにバックアップが取れる) スナップショットを作成してもディスクの使用量が倍になるわけではない。変更差分のみをいい感じに管理してくれる。 この記事では以下のスナップショット技術を使ってみました。 LVM snapshot LVM thin provisioning Btrfs ZFS Stratis 操作確認は基本的に Ubuntu 18.04 で行いました。ただし Stratis の検証だけは Fedora 29 で行いました。 LVM snapshot 以下のような状態で /dev/sdb1 を LVM で利用します。 shora@b

          • テクノロジー
          • 2020/07/29 13:37
          • APT の設定 (/etc/apt/sources.list) をちゃんと理解する - くじらにっき++

            6 users

            kujira16.hateblo.jp

            /etc/apt/sources.list の設定内容の意味をよく理解していなかったので調べた。 とある Ubuntu 18.04 のサーバーの設定は以下のようになっており、この設定内容を理解することが目的である。 # See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to # newer versions of the distribution. deb http://jp.archive.ubuntu.com/ubuntu bionic main restricted # deb-src http://jp.archive.ubuntu.com/ubuntu bionic main restricted # # Major bug fix updates produced after the fin

            • テクノロジー
            • 2019/10/14 19:05
            • あとで読む
            • "Compact Data Structures: A Practical Approach" の輪講が終わりました - くじらにっき++

              3 users

              kujira16.hateblo.jp

              5月から以下の本の輪講を助教の先生と @yurahuna と私でやっていました。修論の追い込み次期ということで9章のグラフの章が終わったところで一旦終了としました(本当は11章のTextまでやりたかったのですが仕方ないね)。 Compact Data Structures: A Practical Approach 作者: Gonzalo Navarro出版社/メーカー: Cambridge University Press発売日: 2016/09/08メディア: ハードカバーこの商品を含むブログを見る 9章までの簡単なまとめ 2章では基本事項として最悪エントロピーやシャノンエントロピーの計算,ハフマン符号による符号化,イェンゼンの不等式の計算練習をやりました。簡潔データ構造は「情報量の下限に近い容量で有益な操作を提供する」というデータ構造なので,この本ではどんなデータ構造についても最初に

              • テクノロジー
              • 2017/12/23 03:09
              • 今日覚えたNumPyのテクニック - くじらにっき++

                22 users

                kujira16.hateblo.jp

                今日覚えたNumPyのテクニックを紹介します。 numpy.stack で2次元配列を繋げて3次元配列を作る 1次元配列を繋げて2次元配列を作りたいような場合には numpy.vstack や numpy.hstack という関数があります。 a = numpy.array([1, 2, 3, 4]) b = numpy.array([2, 4, 6, 8]) c = numpy.array([3, 6, 9, 12]) numpy.vstack([a, b, c]) # array([[ 1, 2, 3, 4], # [ 2, 4, 6, 8], # [ 3, 6, 9, 12]]) 2次元配列を繋げて3次元配列を作りたいような場合にはどのようにすればよいか知らなかったのですが,numpy.stack という関数があることを知りました。 a = numpy.array([[1, 2, 3

                • テクノロジー
                • 2017/11/10 01:31
                • numpy
                • Python
                • プログラミング
                • tips
                • あとで読む
                • log(1-exp(x)) を安定に計算する - くじらにっき++

                  6 users

                  kujira16.hateblo.jp

                  「ベルヌーイ分布のパラメータ x が与えられたときに,裏が出る確率 1-x を計算したい」「1-x ではなく log(1-x) がほしい」「x ではなく log x が与えられている」という状況で,タイトルのように log(1-exp(x)) を計算したい状況になりました。 機械学習では何かの値の対数を計算することがよくありますが,いくつかの計算については数値計算的に安定な方法が提案されています。有名なのは log Σ_i exp(x_i) を計算する logsumexp です。そのまま exp(x_i) を計算するとオーバーフローする可能性がありますが,最終的には対数をとっているので答えはそこまで大きくならないはずで,exp(x_i) のオーバーフローを回避する方法があります。 log(1-exp(x)) についても類似のテクニックがないかTwitterでお聞きしたところ,数名の方から有

                  • テクノロジー
                  • 2017/09/26 08:27
                  • 順列の簡潔データ構造 - くじらにっき++

                    7 users

                    kujira16.hateblo.jp

                    助教の先生と @yurahuna で簡潔データ構造の輪講をやっています。今週は順列のところを担当したのですが,とてもトリッキーで楽しいデータ構造だと思ったので一部を公開しておきます。これまでの章の内容(定数時間の rank, succ, pred を実現する Bitvector など)に対して依存関係が生じている件は申し訳ありません… speakerdeck.com 読み進めているのは以下の本です。1章は簡潔データ構造の意義や計算量の解析に必要な数学について,2章はエントロピーと符号化について,3章以降はArrays, Bitvectors, Permutations, Sequences, Parentheses, Trees, … のように続きます。 Compact Data Structures: A Practical Approach 作者: Gonzalo Navarro出版社

                    • 世の中
                    • 2017/06/19 20:39
                    • 2分探索のバグりにくい書き方 - くじらにっき++

                      6 users

                      kujira16.hateblo.jp

                      問題設定 整数二分探索とは,以下の矢印の位置を求める問題である。 パターンA パターンB 解き方 前提として,範囲を閉区間で扱うと微妙にバグるので半開区間で扱う。while文の条件はどちらのパターンでも ub - lb > 1 である。 パターンA [lb, ub) として範囲を扱うのが正解。 mid = (lb + ub) / 2とする。矢印のところをチェックして(check(mid) ? lb : ub) = mid;と更新する。 失敗パターンとして,(lb,ub] として範囲を扱った場合を考える。 (lb, ub] の中にcheckがTrueになるものが無くなってしまった。 ダメってはっきりわかんだね。 パターンB (lb, ub] として範囲を扱うのが正解。 mid = (lb + ub) / 2とする。矢印のところをチェックして(check(mid) ? ub : lb) = m

                      • テクノロジー
                      • 2017/06/04 08:28
                      • algorithm
                      • StanでAizu Online Judgeの難易度・習熟度を推定したい(3:IRTモデルによる習熟度推定) - くじらにっき++

                        11 users

                        kujira16.hateblo.jp

                        シリーズ一覧 kujira16.hateblo.jp kujira16.hateblo.jp はじめに 前回までの記事を公開したところ,Twitterで「問題に取り組んだときの正答確率の部分を項目応答理論でモデリングしないのはなぜか」というコメントをいただきました。 …すいません,項目応答理論というものを知りませんでした。 指摘を頂いてから勉強したのですが,この方法でモデリングするほうが自然だと感じたので,これからは正答確率の部分を項目応答理論でモデリングしていきたいと思います。 モデル式 項目応答理論の1パラメータロジスティックモデルでは,習熟度 の人が 難易度 の問題に正答する確率 を以下のようにモデリングします*1。 ここで はロジスティック関数 です。 項目応答理論では被験者の習熟度と問題の難易度を同時に推定しますが,今回の記事で使うデータでは一部の問題については難易度が既に付与さ

                        • テクノロジー
                        • 2017/04/22 06:34
                        • Stan
                        • Python
                        • モデル
                        • programming
                        • あとで読む
                        • StanでAizu Online Judgeの難易度・習熟度を推定したい(2:人工データによる実験) - くじらにっき++

                          7 users

                          kujira16.hateblo.jp

                          シリーズ一覧 kujira16.hateblo.jp kujira16.hateblo.jp 目的 あるユーザがある問題に正答したというデータは得られますが,正答していない問題は,取り組んだけれども実力不足で解けなかったのか,そもそも取り組んでいないのかを区別することができません。データの生成過程についての仮説が正しかったとしても,パラメータの自由度が高すぎてパラメータ推定が行えないかもしれません。 そのため,データの生成過程についての仮説は正しいと仮定して,パラメータ推定が収束するかどうか確かめるために,人工データに対してパラメータが正しく推定できるか実験してみることにしました。 人工データの生成 問題に取り組む確率が ,平均的なパフォーマンスが ,パフォーマンスのばらつきが のユーザが1人いて,[100, 1200] の一様分布に従う難易度の問題が50問ある状況を考えます。ユーザは,前

                          • テクノロジー
                          • 2017/04/18 06:43
                          • Stan
                          • Python
                          • モデル
                          • あとで読む
                          • StanでAizu Online Judgeの難易度・習熟度を推定したい(1:モデル式) - くじらにっき++

                            7 users

                            kujira16.hateblo.jp

                            シリーズ一覧 kujira16.hateblo.jp kujira16.hateblo.jp はじめに Aizu Online Judge (AOJ) という競技プログラミングの練習サイトがあります。 AIZU ONLINE JUDGE: Programming Challenge 解けるか解けないかくらいのちょうど良い難易度の問題に取り組むことが一番成長につながるはずなので,それぞれ問題の難易度やそれぞれのユーザの習熟度を定量的に評価して推薦システムを作りたい気分になります。AOJの 各ユーザのページ にはこれまでの正答数やレーティングが表示されていますが,この2つの値はユーザの習熟度とは必ずしも一致しません。簡単な問題ばかり解いていれば正答数は伸ばせますし*1,レーティング*2は回答者が少なくて簡単な問題を中心に解いていればかなり大きく伸びるためです。そのため,問題の難易度やそれぞれの

                            • テクノロジー
                            • 2017/04/17 20:23
                            • stan
                            • モデル
                            • Python
                            • Go言語で競技プログラミングするときに使ってる入出力 - くじらにっき++

                              5 users

                              kujira16.hateblo.jp

                              入力について 普通は fmt.Scan で問題ないのですが,高速な入力が要求される問題では fmt.Scan だと遅すぎることがあります。fmt.Scan では 3*106 個の整数の入力に10秒以上かかりました。 高速な入力のためには bufio を使います。bufio を使った方法では 3*106 個の整数の入力にかかる時間は0.1秒以下でした。bufio.Scanner の Scan() と Text() の組み合わせで多くの場合は事足りるのですが,これにも少し問題があります。Scan() で読み取れるトークンの最大長は MaxScanTokenSize という定数で定義されており,Go 1.8 では 64*1024 でした。これでは 105 や 106 程度の長さの文字列の処理を要求する問題に対応することができません。Buffer([]byte, int) でバッファの大きさを変え

                              • テクノロジー
                              • 2017/04/09 22:53
                              • MS Wordで論文を書くことを強いられているんだ! Vol.1 - くじらにっき++

                                4 users

                                kujira16.hateblo.jp

                                若干はみ出ても良いから1行に収めたい 画面上方(文書とリボンの間)にあるやつを使って右インデントを右側にずらす. 脚注 参考資料タブの中にあり,普通の使い方をする分には使いやすいのだが,「左下に置きたい」,「右下に置きたい」,「線の太さを変えたい」というようなこだわりがある場合には対応が難しい(やりかたを知っている人は教えてください).IPSJが配布しているdotxではテキストボックスと直線を組み合わせて原始的に再現している.テキストボックスと直線のレイアウトオプションを「上下」にして「ページ上で位置を固定する」の設定にした上でページの下方に配置すればまあまあ使いやすい.アンカーは適切なセクションに入れる(そうしないと,脚注が変なところに飛んでいく). 参考文献 参考資料タブの中にツールが用意されているが,文献リストのフォーマットを自由に決められないなど不自由な点があり,あまり便利ではない

                                • 学び
                                • 2017/02/08 03:46
                                • 研究
                                • セグメント木をあきらめた人のための平方分割 - くじらにっき++

                                  15 users

                                  kujira16.hateblo.jp

                                  この記事はCompetitive Programming Advent Calendar 2016(その2)の12月15日の記事です。 www.adventar.org はじめに 基本事項 1点に対する変更クエリ・区間に対する質問クエリ Range Sum Query Range Minimum Query 区間に対する変更クエリ・1点に対する質問クエリ Range Add Query Range Update Query 区間に対する変更クエリ・区間に対する質問クエリ RSQ and RAQ RMQ and RUQ 応用例 Flipping Parentheses セグメントツリーにチャレンジしたくなったら 謝辞 はじめに 私はRMQのような典型的なセグメント木までは比較的容易に実装できるのですが,それよりも難しいクエリに対応したセグメント木を書くのは難しく感じています。とはいえ「区間に

                                  • テクノロジー
                                  • 2016/12/16 09:10
                                  • 競プロ
                                  • Algorithm
                                  • Jupyter Notebookの小ネタ (display, tqdm, SSHポート転送) - くじらにっき++

                                    29 users

                                    kujira16.hateblo.jp

                                    この記事は jupyter notebook Advent Calendar 2016 の12月13日の記事です。 qiita.com Jupyter Notebookを使う上で,この機能を知らない人を見つけたら教えてあげたくなるような小ネタをいくつか紹介します。 IPython.display.display Jupyter Notebook上でpandasのDataFrameを表示すると,HTMLのtable要素として見やすく表示してくれます。活用している方も多いかと思います。 df[df['f'] == 'C'] と df[df['f'] == 'T'] を表示したいのですが,Jupyter Notebookで表示されるのはそれぞれのセルで最後に評価されたものだけです。そのため,表示したいDataFrameごとにセルを分ける必要があります。 gist.github.com しかしなが

                                    • テクノロジー
                                    • 2016/12/13 00:23
                                    • Jupyter
                                    • python
                                    • あとで読む
                                    • hyperoptでハイパーパラメータをチューニングしてみた - くじらにっき++

                                      3 users

                                      kujira16.hateblo.jp

                                      Kaggleとかやってる人に人気のあるアレです。 github.com インストール ここ数ヶ月の間,開発が停滞していて,Python3の互換性の問題を修正するプルリクエストが取り込まれていない状況です。 不幸にもPython3に関する問題に追突してしまった場合には,修正してあるforkを探してきて,それを使ったほうが良いでしょう。 私の場合は,試行したパラメータの履歴を保存する hyperopt.Trials を使った際に問題が起こったので,次のようにして修正の入ったコミットをインストールしました。 $ pip3 install -U git+https://github.com/vilcenzo/hyperopt.git@8b37bb4a1ac0d03fc14ec95ea0b73ec6019c2ad7 2017/01/16追記 開発が再開されたので本家のリポジトリのものをインストールす

                                      • テクノロジー
                                      • 2016/09/04 18:56
                                      • TypeScript + power-assert + Mocha + Karma + webpack を使ってブラウザ上でJavaScriptをテストする(2016/12/19追記) - くじらにっき++

                                        5 users

                                        kujira16.hateblo.jp

                                        github.com 2016/12/19追記 現在では様々な状況が変わっており,この記事の内容だけでは動作しません。コメント欄に追加の情報がありますのでそちらを参照してください。 やりたいこと JavaScriptを書くのがつらい → TypeScriptを使って型のあるプログラミングをする テストを書くためにAPIを覚えるのがダルい → power-assertを使う テストをNode.js上ではなくブラウザ上で動かしたい → Karmaを使ってブラウザ上でテストを動かす それによって生じる依存関係 TypeScriptを使う → TypeScriptからJavaScriptに変換しなければならない → ts-loader (TypeScriptコンパイラをwebpackから扱うためのモジュール) を使う power-assertを使う → intelli-espower-loader

                                        • テクノロジー
                                        • 2016/08/24 00:23
                                        • Preztoを使ってzshrcをシンプルに作りなおした - くじらにっき++

                                          8 users

                                          kujira16.hateblo.jp

                                          追記 ここ10ヶ月ほど本家リポジトリのmasterブランチの更新が無く,先行きが不透明なのでforkを探してみました。 kujira16.hateblo.jp はじめに 研究室にzshのヘビーユーザーがいたので,それに触発されてzshの設定を作りなおしました。 私がzshを使い始めたころ(5年くらい前?)はoh-my-zshのような設定管理フレームワークが有名になる直前だったので,よく書かれているzshrcを探してコピーしてくるのが普通だったのですが,今ではoh-my-zshやPreztoのような設定管理フレームワークを使うことで,よく書かれた設定を手軽に利用することが出来ます。 oh-my-zshと比較してPreztoのほうが後発で動作も軽いということだったので今回はPreztoを利用してみました。 github.com zpreztorc .zpreztorc はPreztoの設定ファ

                                          • テクノロジー
                                          • 2016/05/20 14:24
                                          • Okapi BM25をスパース行列のまま計算するPythonライブラリを作った - くじらにっき++

                                            5 users

                                            kujira16.hateblo.jp

                                            情報検索で使われる単語の重み付け方法のひとつにOkapi BM25というものがあります。文献によって細かな違いはありますが,今回は Wikipediaに載ってるやつ を使うことにします。 それぞれの文書におけるそれぞれの語の重みを表す行列を計算するクラスを作りたいのですが,いろいろと省略すると,以下のような形式の計算を行う必要が出てきます。 ここで, は の疎行列で , は の密なベクトルで です。 この計算は,NumPyのブロードキャストルールに従えば以下のように書けるはずです。 残念ながら,この通りに書くだけでは都合の悪いことがあります。 は疎行列で,展開するとメモリにやさしくないので疎行列のままにしたいのですが,分母は が密なベクトルなので を計算すると密な行列になってしまいます。ところが,分子は疎行列の なので計算結果の は明らかに疎行列です。そういうわけで,密な行列になってしまう

                                            • テクノロジー
                                            • 2016/01/20 23:57
                                            • PythonでEMアルゴリズムを可視化してみた(混合正規分布) - くじらにっき++

                                              4 users

                                              kujira16.hateblo.jp

                                              可視化してみました。 解説 以下の動画が一番分かりやすいです。 www.youtube.com Q関数を最大化する, , の求め方は,実際に解いてみると,本当にラグランジュの未定乗数法を使うだけという感じでした。ただし という制約を組み込むのを忘れずに… について求めるところはちょっと迷ったので,導出を載せておきます。 ソースコード Pythonで書きました。movieディレクトリにpngを連番で出力します。アニメーションGIFを作るには以下のサイトを参照してください。 アニメーションGIFの作り方 ImageMagick編 hに関してのforループが残っていてnumpy力の低さが感じられますが,自信がある人は消してみてください。 # coding: UTF-8 import os import shutil import scipy import scipy.stats import m

                                              • テクノロジー
                                              • 2015/12/07 00:58
                                              • math
                                              • 数学
                                              • scikit-learnで単語文書行列を作る方法の比較 - くじらにっき++

                                                12 users

                                                kujira16.hateblo.jp

                                                目的 テキストデータから特徴ベクトルを作って何かやろうと思ったときに,私の場合は何も考えずに単語文書行列を作ってナイーブベイズのようなベースライン的な手法を試すところからはじめます。単語文書行列というのは以下のページに載っているような行列です。英語ではDocument-Term Matrixといいます。 ベクトル空間モデル - Wikipedia Wikipediaに載っているように,行方向に単語,列方向に文書を並べるのが普通です。ただし,scikit-learnの慣習では行方向に事例,列方向に素性を並べるため,逆になります。 語のリストから単語文書行列を作るときには,(a) collections.Counterとsklearn.feature_extraction.DictVectorizerを使う方法 がシンプルでおすすめです。一方で,scikit-learnにはsklearn.fe

                                                • テクノロジー
                                                • 2015/11/23 23:33
                                                • scikit-learn
                                                • Python
                                                • Mac (iMac Mid 2007) にUbuntu 14.04をインストール - くじらにっき++

                                                  3 users

                                                  kujira16.hateblo.jp

                                                  なぜUbuntuをインストールしたのか? Linuxディストリビューションは何でも良かったのだけれど、とにかくOSXのまま使い続けるのが難しい状況だったためです。 インストールされているOSXが10.4でgccすらインストールされていない状態でしたので、OSXのバージョンを上げるか、Linux機として利用するしか選択肢がありませんでした。 前者のOSXをアップデートする方法についてですが、最新のMavericksにアップデートするためにはSnow Leopardを購入してアップデートする必要があります。仮にアップデートできたとしても、iMac (Mid 2007)はMavericksがサポートしている最も古い機種でしたので、次のバージョンあるいは次の次のバージョンでサポートが切られることが容易に予想できます。 このような理由から、消去法的にLinux機として利用することになりました。 20

                                                  • テクノロジー
                                                  • 2015/09/01 09:43
                                                  • scikit-learnメモ - くじらにっき++

                                                    9 users

                                                    kujira16.hateblo.jp

                                                    GridSearchCV,RandomizedSearchCVのverboseオプション ドキュメントには単に"Verbosity level."や"Controls the verbosity: the higher, the more messages."としか記載されておらず闇っぽい。 verbose=1では一定の間隔でログを表示,verbose=2ではテスト毎にログを表示,verbose=3ではテスト毎にスコアも含めてログを表示するようなので,私は1か3にすることが多い。 カテゴリ素性を含むpandas.DataFrameをnumpy行列に変換する 1. DictVectorizerを使う 追加のパッケージは不要だけど,一度Pythonの辞書に変換しているので効率が悪そうな気がしなくもない。 stackoverflow.com fastml.com 2. sklearn-panda

                                                    • テクノロジー
                                                    • 2015/06/15 08:21
                                                    • Python
                                                    • 機械学習
                                                    • ウェーブレット行列とFM-indexで全文検索を書いてみた - くじらにっき++

                                                      37 users

                                                      kujira16.hateblo.jp

                                                      www.youtube.com 去年のはじめに高速文字列本を買ったのですが、アルゴリズムを眺めるだけで実装はしていませんでした。特にウェーブレット行列は実装が大変そうにしか見えなくて敬遠していたのですが、ICPCの夏合宿で @hirokazu1020 さんに「あれはアイデアさえ理解していれば実装するのは簡単だよ」という旨のことを言われたので、学校のプログラミングの演習の自由課題としてウェーブレット行列とFM-indexを実装してみました。 制作物はブラウザ上で動く青空文庫のインクリメンタル検索です。C++で書いたFM-indexをboost-pythonを使ってPythonから呼び出せるようにし、Flaskを使ってブラウザからのリクエストに応答するような仕組みにしてみました。アルゴリズムの本質的なところは全て自分で書こう!というモチベーションで始めたのですが、SA-ISが難しくてsais.

                                                      • テクノロジー
                                                      • 2015/02/06 23:02
                                                      • algorithm
                                                      • 簡潔データ構造
                                                      • アルゴリズム
                                                      • python
                                                      • development
                                                      • *あとで
                                                      • 競技プログラミング用Python最速マスター - くじらにっき++

                                                        8 users

                                                        kujira16.hateblo.jp

                                                        LLを使ってプログラミングするときに普段はRubyを使っているのですが,いろいろあってPythonも使い始めました。 何問かAOJでも提出してみたので、手元のメモ書きをリファレンス的に残しておこうと思います。 基本演算 -3 / 2 #=> -2 -4 % 3 #=> 2 入力 raw_input() で1行読み込み string#split( [separator] ) で分割できる。半角スペースで分割したいときは、separatorを明示的に渡さずに 'hoge fuga piyo'.split() としておけばよい "1 2 3"のような整数列を受け取りたいときは、次の2つが使える map(int, raw_input().split()) [int(s) for s in raw_input().split()] 出力 Python 3系だとprint()関数、Python 2系で

                                                        • テクノロジー
                                                        • 2013/04/06 20:08
                                                        • python
                                                        • 競技プログラミング
                                                        • プログラミング
                                                        • algorithm
                                                        • Ubuntu 12.04 + ruby 1.9.3 + nginx + unicorn + Redmine 2.0.3 - くじらにっき++

                                                          14 users

                                                          kujira16.hateblo.jp

                                                          @ipv4 さんにおすすめされたので、試しに導入してみました。 インストールしたPCは CPU Pentium 3 450MHz メモリ 256MB という残念なスペックのものですが、nginx + unicornの組み合わせは強力なようで、2〜3人で使う分には十分快適でした。(重い処理でも2秒以内にはレスポンスが返ってくることが多い) Apache + passenger という組み合わせも検証してみましたが、メモリが足りずにスワップが頻発してしまい、使い物になりませんでした。 OSのインストールと初期設定 真っさらの状態からUbuntu 12.04(Server)をインストールしました。 OSのインストール時に一緒にインストールするものを選択する画面では、OpenSSHのみ選択しておきました。 インストールが終わったら、SSHとufwだけ軽く設定して、これから必要となるパッケージをイン

                                                          • テクノロジー
                                                          • 2012/10/30 15:45
                                                          • ruby
                                                          • ubuntu
                                                          • Server
                                                          • rails
                                                          • linux

                                                          このページはまだ
                                                          ブックマークされていません

                                                          このページを最初にブックマークしてみませんか?

                                                          『くじらにっき++』の新着エントリーを見る

                                                          キーボードショートカット一覧

                                                          j次のブックマーク

                                                          k前のブックマーク

                                                          lあとで読む

                                                          eコメント一覧を開く

                                                          oページを開く

                                                          はてなブックマーク

                                                          • 総合
                                                          • 一般
                                                          • 世の中
                                                          • 政治と経済
                                                          • 暮らし
                                                          • 学び
                                                          • テクノロジー
                                                          • エンタメ
                                                          • アニメとゲーム
                                                          • おもしろ
                                                          • アプリ・拡張機能
                                                          • 開発ブログ
                                                          • ヘルプ
                                                          • お問い合わせ
                                                          • ガイドライン
                                                          • 利用規約
                                                          • プライバシーポリシー
                                                          • 利用者情報の外部送信について
                                                          • ガイドライン
                                                          • 利用規約
                                                          • プライバシーポリシー
                                                          • 利用者情報の外部送信について

                                                          公式Twitter

                                                          • 公式アカウント
                                                          • ホットエントリー

                                                          はてなのサービス

                                                          • はてなブログ
                                                          • はてなブログPro
                                                          • 人力検索はてな
                                                          • はてなブログ タグ
                                                          • はてなニュース
                                                          • ソレドコ
                                                          • App Storeからダウンロード
                                                          • Google Playで手に入れよう
                                                          Copyright © 2005-2025 Hatena. All Rights Reserved.
                                                          設定を変更しましたx