今日は 数学カフェ の日です
Posted on September 27, 2015
Tweet
数学カフェ に来ていますので、メモを残しておきます。
- 就職しても数学を学びたい、これからを就職する学生さん、数学好きな女性を増やしたい
- 今日はデータサイエンスの数学的な部分をきちんとやりたい
@pseudo_finite さん「データ分析における数理最適化」 - 前半
- 学生時代は数理論理学やってた
- \(N + Z\) もペアノの公理を満たす(前の数取れるので)
- 「データサイエンティスト」ではなく「研究員」
- データ分析
- wikipedia : データを用いて分析
- ビジネス : 意思決定・施策
- 現象を知る、施策を打つ
- データの元となる現象を解明
- データ分析の結果を誰が使うか
- 経営 : モニタリング・ざっくりした結果
- 現場 : アナリスト的
- システム : プログラマ寄り・機械に落とし込む
- 現象・施策のバランス == ビジネスインパクト
- 「日経平均と強い相関」コントロールできない、施策が打てない
- レコメンデーション
- Conversion UP、(顧客|店舗)満足度UP
- 例: ホテル、本、ニュース、不動産、異性、広告、SNSの友達
- 商品を個人へ? クラスタリング?
- レコメンデーション戦略
- データ: 顧客・商品・属性、履歴、事前知識
- シーン : タイミング、個数
- 技術
- 協調フィルタリング、LR、SVM、隠れ状態系(NMF、pLSA、LDA)、数理最適化、RF-確率表
- 隠れ状態系はあまり現場で使われてない
- スコアのテーブルを作るのが目標
- RF-確率表
- タスク例 : 10週間のログから、顧客が閲覧する物件を予測 (TOP N レコメンド)
- 分析の流れ
- データクレンジング
- BOT(はずれ値)、0/1 のカラムに日本語が入ってる(QUERY STRINGを生で突っ込んでるとか)
- 苦行。ロジック実装後にクレンジングすることもよくある
- 可視化・基礎集計 (分析の方針を決定する)
- 分析用DBを作成
- 特徴量を洗い出したり
- データクレンジング
- 可視化
- 人間が理解しやすい形に
- 1万ユーザくらいテキストファイルにして見る。通勤電車で1,000ユーザくらいずつ
- RF-確率表 : RecencyとFrequencyで確率を出す
- 実績値を確率とする?
- 単調性制約 : Recencyが小さい、Frequencyが大きいほど閲覧、という仮定
- 実績値は単調性制約を満たさない (オーバーフィッティング)
- 確率表を推定する!
- 確率表の推定
- 単調性制約を満たす
- データ件数が多いセルの閲覧確率は信頼
- \(p_{ij}\) 実績。 \(x_{ij}\) 推定。
- 単調性制約を入れる
- 数理最適化問題として、ソルバーで解く
- RF-確率表のまとめ
- 実装が簡単
- チューニングがいらない (ノンパラメトリック)
- 運用が現実的
- Q. 小数データというのは、個々人で再現してデータが少ないから?
- A. この案件は大規模だから気にしなくていい。小規模な応用とか、商品の違いとかでデータが減る
- Q. Recencyとか冪分布になりそう。
- A. 対数分布になりそうだけどやってない。ECサイトによって減衰が違うはず。関数形を仮定しなくていい
- Q. ロングテールが問題になりそうだけど?
- A. 気にしてない。時計とかだとなりそう。不動産だと1 conversionで終わりとか。
- Q. binの切り方を工夫した方がいいのでは?
- A. 課題はあるのか優先順位は低い。FとRをどうとるか。
- Q. 一定数溜まったbinのみを使うとかしない?
- A. 議論はあった。1次元は簡単。2次元だと・・・。簡単さを求めているが、将来はやりたい
- 制約付きレコメンデーション
- TOP Nではなく、バランスを考慮したリコメンドが必要
- 1つの商品ではなくいろんな商品を売りたい
- 売れ行き悪い商品の援護
- 過剰レコメンドの抑制(店舗の課金を加味。いいホテルは勝手に売れる)
- 顧客のリピート率、顧客育成
- 例えば、各商品の期待利得を1000円以上とか
- \(x_{ui}\) user×itemの割り当てテーブル、\(e_{ui}\) CV期待値
- 商品数\(\sum{x_{ui}}\) や 期待コンバージョン数 \(\sum{x_{ui}e_{ui}}\) に制約
- 素直なモデルの問題
- CV数が現実的ではなく解がない
- 変数のオーダーが10,000オーダーでソルバが厳しい
- 100顧客×100商品・・・
- レコメンド可能商品を絞ると1,000顧客にはできるけど・・・
- \(p_i\) を追加。CV目標の違反量。これを重みづけして混ぜて最適化
- 連続変数が入るので問題は難しくなっている
- 列生成法とラグランジュ緩和法を組み合わせる
- 10,000顧客まで解けるように
- Oracle, Primal*, QUERY を反復する
- \(P\) パターン集合、 \(g_{uip}\) CV期待値
- ラグランジュ乗数でCV目標制約を制御
- ラグランジュ緩和問題が下界を与える
- item×userから、userごとの制約に書き換えられる
- 反復回数は10回、40~50回
CM「数理女子」
数理女子。女性が数学を勉強するための障壁をなくしたい。数学を使っている女性で記事などを執筆してくれる方募集。
「都内数学科学習連合にも女性居ますよ」
@pseudo_finite さん「データ分析における数理最適化」 - 後半
- 雑談 : 研究者が社会に出るときに知っておくとすっきりすること
- 研究者
- 正しいことを好む
- すべての事実を話す
- 面白い研究テーマを好む
- 挑戦的な問題を好む
- 論文を書く
- 実務家
- ベストな選択を選ぶ
- 必要な事実を話す
- 顧客が好むサービスを好む
- リスクのある仕事を嫌う
- 売上を出す
- 研究者
- 文書要約
- google検索の結果(スニペット文)、国語試験の要約、書き込みの要約、ニュースサイトのトピック、論文サーベイ、あらすじ、アブスト、新幹線車内電光掲示板
- 「夢」よりも「シビア」
- ジャンル、カテゴリ、著者で手法が分かれる
- 記者が書いたものは、だいたいヘッドラインが要約として抽出される
- ルール: 字数制限 or 要約率
- 要約はなぜ必要? : 時間がない。要約にはスキルが必要
- Twitterのキーワード検索による1000ツイートを要約
- 動機: ニュースをざっくり知る、キーワードの観測
- 多数派の意見を冗長性なく
- データクレンジング
- 日本語は形態素解析が必要なので難しい
- 日本語の活用
- RTなど
- 単語文書行列 : 文書×語彙の頻度
- TF(Term Frequency) * IDF(Inverse Document Frequency)
- IDFは単語の出現数の逆数をlogをとったもの(多くの文書に現れる単語は特徴的でない)
- 要約にドキュメントを含めるか\(x_d\) 要約に語が選択されているか\(y_w\)
- 面積を最大化する
- tfidf値を利用する
- 文字数は制約式。 \(y_w\) の選定も制約式で行う
- 実際に分析した例:
- 素数 : 素数を数えて落ち着くんだ系
- フォルクスワーゲン、鬼怒川 : ニュースのヘッドラインなど
- レビューの文書要約とかは商品買うのにいいかも
- 良い数理モデリング
- データの特徴を捉えている
- 定式化とアルゴリズムがタスクにハマっている
- 「センスが必要」。基本が大事。
- Q. 文書要約で数理最適化を使うのはよくある手法?
- A. はい。研究されている方も
- Q. Oracle の変形で \(p_i\) が \(0\) になる理由は?
- A. 制約が入ってないから
- Q. 反復の計算量のスケールは?
- A. マシンスペックはノートPC(メモリ4GB程度)
- A. 反復6回で1日以上かかってる。序盤のイテレーションは数時間
- Q. Oracleの問題を速く解くように設定する?
- A. Oracleは問題規模が小さくなってるから余裕。Primal*が規模が大きい
- Q. 数理モデルのセンスの身に着け方は?
- A. データをよく見る。実装。入力データをぶらす。
- A. 数理計画の立場から見ると、正規分布で済ます、のが違和感がある
- A. 常にモデリングを心がける。土地勘を身に着けるためにまずいろいろ知る
- Q. モデルがあっているかの検証はどうしている?
- A. 正解データを用意している。SVMやロジスティック回帰と比較はしてる。PR、F値で見る。min avg precision。本当に単調現象なのかとかを統計的に検定したいがやってない
- A. 元々統計畑ではないので。
その後、ソーシャルに書けない大人の話をもろもろ。
@simizut22 さん「代数トポロジー入門」
- 世界に代数トポロジーの光を
- 学部レベルの内容
- 曲面のMorse理論。cell複体のhomology
- やらないとこ「多様体、一般ホモロジー、離散Morse,、単体的、層」
- 臨界点、退化と非退化(2次導関数が0かどうか)
- 2変数関数では∇=0
- 退化については Hesse行列が生息か否か
- \(xy\) と \(x^2 - y^2\) は座標変換で移りあう
- Morseの捕題
- 非退化臨界点の周りでは\(x^2+y^2\) \(x^2-y^2\) \(-x^2-y^2\)のいずれかでかける
- 非退化臨界点の指数 → 0, 1, 2 (Morseの捕題の局所座標表示によるマイナス係数の個数)
- 今日は2次元閉多様体の話
- 局面上の関数の臨界点・退化性は局所座標で (局所座標の取り方によらない)
- Morse関数 : \(f : M \to R\) がMorse関数 def 全ての臨界点が非退化
- 閉曲面上の Morse関数の臨界点は高々有限
- Mがコンパクトなのでfは最大・最小値をとる
- \(S^2\)上の高さ関数 \(h(x, y, z) = z\) Morse関数
- 閉曲面M上に臨界点が2つだけのMorse関数が存在すれば、Mは球面と微分同相
- 7次元以上だと微分同相とは限らない
- 曲面のハンドル分解
- 閉曲面上のMorse関数 \(M_t\) 下の部分、 \(L_t\) 等高線を定義
- Morse関数は閉曲面上の高さ関数と見れる
- gradient like vector field
- \(c_0 \in R\) が fの臨界値
- \(M_b ~= M_c\) 微分同相
- 臨界値の前後の様子だけみればいい \(M_{[c - \epsilon, c + \epsilon]}\)
- 指数によって \(D^2\) が増えたり減ったりする
- 指数1の時に臨界点前後で向きが変わる
- [0-2]handle
- 臨界点を通るたびにhandleが付け代わる
- 丙局面は有限個のhandleの和で表せる
- セル複体
- \(e^i\) オープンとクローズなディスク(バーの有無)
- 0-dim 有限点
- \(h_i\) 接着写像 \(e^i\) の境界からYへの写像。をつかって帰納的に
- ハンドル体とセル複体は似てる
- homotopy同値とは
- \(S^1 ~ R^2\) は 一点とhomotopy同値ではない
- ハンドルとセルは1-1対応する
- homotopy不変量についてはハンドル分解を用いて計算をしても問題ない
- Q. 次回までに何をやればいい?
- A. 多面体を三角形分解とかセル分解したり?
- Q. Morse関数の臨界点は有限ってのは病的な例は大丈夫?
- A. compactなら大丈夫では?
- Q. 退化と非退化は曲率?
- A. metric入ってないので