タグ

ブックマーク / www.hellocybernetics.tech (17)

  • (データを扱う)ビジネスマン全てにおすすめの本 - HELLO CYBERNETICS

    はじめに データ分析:実用系 Kaggleで勝つデータ分析技術 ウェブ最適化ではじめる機械学習 データ分析:因果推論 入門 統計的因果推論 計量経済学 大人の教養 世界標準の経営理論 科学的に正しい筋トレ 最強の教科書 落合務のパーフェクトレシピ はじめに 今回は、特にドメインを指定せず、読むと間違いなく誰にでも勉強になるであろうと感じた書籍を紹介します。 データ分析:実用系 Kaggleで勝つデータ分析技術 Kaggleで勝つデータ分析技術 作者:門脇 大輔,阪田 隆司,保坂 桂佑,平松 雄司発売日: 2019/10/09メディア: 単行(ソフトカバー) "Kaggleで勝つ"と題名にはありますが、データ分析、特に予測モデルを作るようなケースで重要な基礎知識が実践的に学ぶことができる非常に良いとなっています。例えば、交差検証といえば、基的には汎化誤差の推定量として統計学の

    (データを扱う)ビジネスマン全てにおすすめの本 - HELLO CYBERNETICS
  • 【PyTorch・Pyro】モデリングレシピ - HELLO CYBERNETICS

    はじめに 単一の分布を使ったモデル 正規分布 同時分布の設計 同時分布からのサンプリング Pyroコード ベルヌーイ分布 同時分布の設計 同時分布からのサンプリング Pyroコード カテゴリ分布 同時分布の設計 同時分布からのサンプリング pyroコード 混合モデル ガウス混合モデル 同時分布からのサンプリング Pyroコード ディリクレ過程混合モデル(某折過程モデル) 同時分布からのサンプリング Pyroコード 最後に はじめに Pyroで確率モデリングを書くときには「確率モデリング自体を知ること」と「Pyroの書き方を知ること」の両方が必要です。今回はPyroの書き方に重点をおいて、とある確率モデルを記述するためのPyroでのコード例を適当に記載します。 約束事として、観測変数(データ) $x$ に対して、このデータの生成にまつわるパラメータをすべてひっくるめて $\theta$ と記

    【PyTorch・Pyro】モデリングレシピ - HELLO CYBERNETICS
  • ディープラーニングは自動で特徴を抽出してくれる? - HELLO CYBERNETICS

    はじめに 特徴抽出とは ニューラルネットワークによる特徴抽出 深層学習は特徴抽出を自動で行うのか 補足:当に自動機械学習に向けて はじめに 未だに強く主張されることの多い「ディープラーニングは人手の特徴抽出作業を自動で実施してくれる」という話。 このことについては肯定も否定もしないというのが私の立場ですが、基的に「思っているより思い通りには行かない」という事実があることは主張しておきたいです。 そのために、今回「ディープラーニングが自動で特徴抽出を行ってくれる」ということがどういうことなのかを簡単に説明します。 特徴抽出とは まず特徴抽出とは何かを説明していきましょう。特に断りが無い限りは大文字は行列、小文字はベクトルあるいはスカラーだと思って差し支えありません(今回は特に細かい数式の設定が議論に影響することはありません)。 今、入力 $x$ で出力が $y$ となるような適当なデータ

    ディープラーニングは自動で特徴を抽出してくれる? - HELLO CYBERNETICS
  • Optunaでハイパーパラメータチューニング - HELLO CYBERNETICS

    はじめに:Optunaとは 使い方 インストール 最適化問題の例 問題設定 最適化 最適化の結果 ニューラルネットワークのハイパーパラメータチューニング 問題設定 実装 ハイパーパラメータを引数に取り、ニューラルネットワークを構成する関数 ハイパーパラメータを引数にとり、最適化手法を返す関数 ハイパーパラメータを引数に取り、学習済のモデルを返す関数 ハイパーパラメータを引数に取り、最小化したい値を返す目的関数 いざ最適化 はじめに:Optunaとは OptunaとはPFNが世に送り出した最適化枝刈りライブラリです。 Pythonのコードとして機械学習のコードのどこにでも入れることができ、非常に使いやすいAPIとなっています。大体、結構丁寧なサンプル・解説が公式ドキュメントに既にあるので、分かる方は此方を読むのが一番早いでしょう。 Welcome to Optuna’s documentat

    Optunaでハイパーパラメータチューニング - HELLO CYBERNETICS
  • 確率的プログラミング言語 TensorFlow Probability【高レベルAPI、`tfp.glm`の紹介】 - HELLO CYBERNETICS

    はじめに APIの全体像 Layer 0 : TensorFlow Layer 1 : Statistical Building Blocks Layer 2 : Model Building Layer 3 : Inference techniques Layer 4 : Pre-built models + inference 高レベルAPItfp.glmの紹介 提供されている一般化線形モデル(GLM) ●class Bernoulli ●class BernoulliNormalCDF ●class Poisson ●class PoissonSoftplus ●class Normal ●class NormalReciprocal ●class LogNormal ●class LogNormalSoftplus ●class GammaExp ●class GammaSoftp

    確率的プログラミング言語 TensorFlow Probability【高レベルAPI、`tfp.glm`の紹介】 - HELLO CYBERNETICS
  • 大幅に進化するらしいTensorFlow2.0について - HELLO CYBERNETICS

    はじめに TensorFlow2.0がもうすぐ来るよ! APIs High level APIs Eager Exexution Reference Models Contribの扱い プラットフォーム TensorFlow Lite TensorFlow.js TensorFlow with Swift パフォーマンス Distributed TensorFlow CPUGPU、TPUの最適化関連 その他のパッケージ TensorFlow Probability Tensor2Tensor End to End ML systems TensorFlow Hub TensorFlow Extended はじめに TensorFlow2.0ではこれまでのTensorFlowから大幅に変化するので、その変更点について記しておきます。 基的には公式のRoadmapの和訳と思って差し支えあり

    大幅に進化するらしいTensorFlow2.0について - HELLO CYBERNETICS
  • 【クラスタリングの新トレンド?】DeepClusterとその発展の考察 - HELLO CYBERNETICS

    はじめに クラスタリング 概要 K-means K-meansの改良 DeepClusterの基的アイデア 考察と今後の展開 一提案 はじめに 私は普段、Twitterを大いに活用して情報収集をしております。今回の記事のタイトルにある「DeepCluster」はtwitterのTLで流れてきた以下のarxivで提案されたクラスタリング手法です。 [1807.05520] Deep Clustering for Unsupervised Learning of Visual Features 今回はこの手法の基的な着眼点と、今後の発展について素人ながら考察してみます。 クラスタリング 概要 まずクラスタリングというものが、一体どんな問題設定であるのかをしっかりと認識しておきましょう。多次元のデータ$D = \{\mathbf x_1,...,\mathbf x_N \}$が手元にあるとし

    【クラスタリングの新トレンド?】DeepClusterとその発展の考察 - HELLO CYBERNETICS
  • 活性化関数を特徴空間で見てみた【ニューラルネット基本の基本】 - HELLO CYBERNETICS

    はじめに 特徴空間でデータの変換を見る データの準備 行列で変換してみる シグモイド活性化関数を通してみる ReLU活性化関数を通してみる 多層のパーセプトロン ReLUを用いた2層のパーセプトロンにしてみる 誤差逆伝搬法 はじめに 活性化関数のグラフを$y=f(x)$のグラフとして見るのはよくやることです。私のブログでも以下の記事でそれを取り扱っています。 www.hellocybernetics.tech ところで、ニューラルネットワークと言えば、 $$ z = Wx $$ という線形変換と、適当な非線形の活性化関数を用いて $$ y = f(z) $$ を組み合わせて使います。もしも活性化関数を使わずに、単に線形変換を何度もするだけでは多層にする意味が無くなってしまうからです。 $$ y = W_5W_4W_3W_2W_1x $$ なんてものを考えてみたって、$W=W_5W_4W_3

    活性化関数を特徴空間で見てみた【ニューラルネット基本の基本】 - HELLO CYBERNETICS
  • 初学者が機械学習の勉強を進めるためには必ず手を動かす - HELLO CYBERNETICS

    機械学習に必要な知識 ネット上の様々な意見 機械学習への携わり方と必要な数学 具体的に勉強を進める 簡単な問題で動作を確認 プログラムを書く Kaggleはやるべき? 勉強を進める上で使えるツールたち Python Jupyter Notebook scikit-learn TensorFlow 機械学習に必要な知識 ネット上の様々な意見 機械学習の勉強をしていく上で大事なものは何でしょうか。 調べればプログラミングだとか統計だとか、解析学・線形代数学であるなど、いろいろな意見が見られます。 おそらくネット上で見つかるいろいろな意見、「機械学習では○○を勉強すべき」という話は、少なくともその話を言っている人の中では真であるのだろうと思われます。 要するに、その勉強をしたことによって(あるいはその知識を持っていたことによって)、その人は何らかの機械学習に対する知見が得られたと言っているのです

    初学者が機械学習の勉強を進めるためには必ず手を動かす - HELLO CYBERNETICS
  • 【いつの間にか進化してた!】TensorFlowのKerasの様々な使い方 - HELLO CYBERNETICS

    はじめに これまで通りの使い方 Kerasと言えばコレ:Sequential 少し発展版:Modelによるfunctional API Eagerの登場によって…! Pythonのclassとしての作り方 Eagerモードとしての書き方 確率的なニューラルネットワーク はじめに 最近機械学習から離れ気味ですが、何やらTensorFlowのDocumentを覗いたらTensorFlow内部のKerasがすごくいろいろな使い方できることに気が付きました。 (ちなみに、TensorFlowとは別の(いろいろなフレームワークをバックエンドにできる)Kerasの方はどうなっているのか知らないので申し訳ありません。) ということでそれを簡単にまとめておきたいと思います。当に簡単に。 これまで通りの使い方 Kerasと言えばコレ:Sequential 最もよく知られている使い方ですね。 model=t

    【いつの間にか進化してた!】TensorFlowのKerasの様々な使い方 - HELLO CYBERNETICS
  • 統計物理学と機械学習の関係 - HELLO CYBERNETICS

    統計物理学の始まり 統計物理の着想は熱力学にあり 熱力学におけるエントロピーという概念の導入 統計物理学のモチベーション 統計物理学の着想 統計物理学を始める上での基 熱の移動の正体 統計物理学でのエントロピー 統計力学と機械学習 情報統計力学 イジングモデル イジングモデルを更に一般化したスピングラスモデル 統計力学が機械学習にもたらすもの 機械学習での発展 最後に 量子アニーリングコンピュータ ベイズ 統計物理学の始まり まず統計物理学がどんなものかを説明しましょう。ここを定性的にでも把握しておくと、だいぶ機械学習に近しい考え方を持っていることを強く実感できるはずです。 統計物理の着想は熱力学にあり 統計物理学は熱力学からやって来ました。 私達は生活の中で容易に実感できるように、「熱」というものが温度の高い方から低い方へ流れていくことを知っています。運動エネルギーや化学エネルギー、電

    統計物理学と機械学習の関係 - HELLO CYBERNETICS
  • 【書籍紹介】詳解ディープラーニング TensorFlow・Kerasによる時系列データ処理 - HELLO CYBERNETICS

    最近発売されたディープラーニングの。 基礎的な内容から始まり、主にリカレントネットワークを、TensorFlowとKerasによる実装を通して理解していきます。 結論 今回紹介する 誰におすすめか TensorFlowあるいはKerasを使っていきたいユーザー リカレントネットワークを使いたいユーザー 誰におすすめでないか Chainerを使っていきたいユーザー 既にTensorFlowあるいはKerasを使いこなしている方 の構成 1章:数学の準備(1〜22ページ) 2章:Pythonの準備(23〜68ページ) 3章:ニューラルネットワーク(69〜140ページ) 4章:ディープニューラルネットワーク(141〜207ページ) 5章:リカレントニューラルネットワーク(209〜249ページ) 6章:リカレントニューラルネットワークの応用(251〜293ページ) 付録(295〜310ページ

    【書籍紹介】詳解ディープラーニング TensorFlow・Kerasによる時系列データ処理 - HELLO CYBERNETICS
  • 識別関数、識別モデル、生成モデルの違いを解説 - HELLO CYBERNETICS

    はじめに 記事の目的:共通の認識を持てるようにするため なぜパターン認識と機械学習を引用するか 機械学習の目的 分類問題と回帰問題 分類問題について 「識別関数」、「識別モデル」、「生成モデル」 識別関数 識別モデル 生成モデル 生成モデルのメリットデメリット はじめに 記事の目的:共通の認識を持てるようにするため 機械学習が大流行している中で、言葉の定義が曖昧になってきている印象があります。新しい分野が流行すれば、様々なところで言葉が使われ、結果として複数の意味で使われるようになり曖昧になってしまうのは必然です。実際私の周りでも、「ん、どういう意味で使っているんだ?」と思うケースがたまにあります。 ハッキリ言って言葉の意味などは使いやすいように変更されても構わないと思いますし、人間の使い方の統計によって定められていると言っても過言ではないです。 しかし、それでもどの言葉が何を意味している

    識別関数、識別モデル、生成モデルの違いを解説 - HELLO CYBERNETICS
  • 評価関数で見る機械学習手法 - HELLO CYBERNETICS

    最近、学習は最適化問題に帰着されるということを自分自身強く意識するようになりました。 そこで有名なSVMや対数線形モデルなどの評価関数を見て、それぞれがどのような狙いを持っているのかを概観してみようと思います。 Support Vector Machine 評価関数 解釈 ソフトマージン 対数線形モデル 狙い 実際の最適化問題 解釈 正則化 正則化項の取り扱い 評価関数の一般的な取り扱い 正則化と最大事後確率推定(Maximum a-posteriori estimation:MAP推定) 対数線形モデルは最大事後確率推定 Support Vector Machine 線形関数 で分離面を構成するのが第一の考え方です。 評価関数 がマージンと呼ばれるもので、これを最大化するのがSVMです。絶対値は取り扱いにくいので、代わりに二乗を考え、分数も厄介なので、逆数を取り、以下の最適化問題に帰着し

    評価関数で見る機械学習手法 - HELLO CYBERNETICS
  • 機械学習を学ぶ上で抑えておきたい数学2 - HELLO CYBERNETICS

    機械学習や深層学習を学ぶ上で、数学は言語である 線形代数学 行列とベクトルは連立方程式を解くための記法 機械学習での活躍 どこまで学ぶか 最適化数学 学習とは 教師あり学習 教師なし学習 最適化を行う際の重要ワード「正則化」 どこまで学ぶ必要があるか 確率・統計 最低限知っておくべき定理や性質 最低限知っておくべき推定法 確率分布には見慣れるしかない 何に役立つのか 情報理論 情報を確率で記述する 何に役立つのか 情報幾何学 発祥は日 機械学習での役割 海外での方が有名? 機械学習や深層学習を学ぶ上で、数学は言語である 以前、学びたい機械学習のレベルに応じて、どんな数学が必要になってくるのかを紹介しました(以下の記事)。 s0sem0y.hatenablog.com そのときにも述べましたが、数学というのは何らかの操作を非常に簡潔に表現してくれます。要するに情報をギュッと圧縮して伝える手

    機械学習を学ぶ上で抑えておきたい数学2 - HELLO CYBERNETICS
  • 機械学習を学ぶ上で抑えておきたい数学 - HELLO CYBERNETICS

    機械学習を勉強する際にぶつかる最大の壁は数学です。 機械学習に必要な数学をリストアップし、いつでも参照できるようにまとめておきたいと思います。 数学の必要性と手順 数学は世界共通の言語 機械学習をやる上で厳密な数学は必要なし レベル別、必要な数学 機械学習の処理が具体的にどんな計算をしているのかが分かる 機械学習アルゴリズムの導出は追えなくとも、その手法の狙いが分かる 機械学習のアルゴリズムの導出を追い、アルゴリズムの理屈を理解する 行列の計算公式をまとめてあるpdf 数学に関して 数学の必要性と手順 数学は世界共通の言語 冒頭で述べた通り、機械学習で何をやっているのか分からない!となるのは大抵数学がわからないからです。もちろん数学が分かっていても、機械学習でわからないことは出てきますが、ちょっと数学が分かってさえいれば殆どの手法が見通しよく理解できます。それは非常に単純な理由で、数学

    機械学習を学ぶ上で抑えておきたい数学 - HELLO CYBERNETICS
  • NIPSの採択論文から見る機械学習の動向 [更新] - HELLO CYBERNETICS

    12月に開かれる機械学習のトップカンファレンスであるNIPS。ここで採択された論文から、近年の機械学習手法の研究動向を見てみたいと思います。 NIPSとは 検索ワード ディープ(deep) スパース(sparse) 最適化(Optimization) 強化学習(Reinforcement learning) ベイジアン(bayesian) バンディット(bandit) リグレット(regret) グラフィカルモデル(graphical models) 劣モジュラ(submodular) SVM 所感 DEEPMIND ディープ 最適化 NIPSとは Neural Information Processing Systems(NIPS)は機械学習のトップカンファレンスです。名前とは異なって、必ずしもニューラルネットを扱っているわけではありません。あくまで機械学習の話題全般的に扱っています。

    NIPSの採択論文から見る機械学習の動向 [更新] - HELLO CYBERNETICS
  • 1