デジタル・デザイン・ラボラトリーな日々

アラフィフプログラマーが数学と物理と英語を基礎からやり直す。https://qiita.com/yaju

機械学習

ニューラルネットワーク上の重みと閾値の変数の数

はじめに 図書館に寄った時に「Excelでわかる機械学習 超入門」と「Excelでわかるディープラーニング超入門」という本を見つけたので、借りてきました。 後で気がついたのですが、「Excelでわかるディープラーニング超入門」については、2018/10/27にKindle…

機械学習の勉強再開 使用データ寄与の確認

はじめに 以前、使用データの解析をして「Grate」と「Crate」と「Prate」のデータの求め方が分かりました。 yaju3d.hatenablog.jp 出来れば使用するデータは最小限にしたいので、「Grate」と「Crate」と「Prate」が結果に寄与(意味がある?)しているのかを検…

機械学習の勉強再開 RBFカーネル 、決定木、ランダムフォレスト、ナイーブベイズ

はじめに 前回、線形SVMをやりましたので今回は他の方法(RBFカーネル 、決定木、ランダムフォレスト、ナイーブベイズ)をやっていきます。 結果の見方 行(たて)が正解(実際に出された手)、列(よこ)が予測となります。 機械学習では出す手を予測するので勝ち手…

機械学習の勉強再開 使用データの解析

はじめに 前回、線形SVMの改善をしまして次の段階に行こうかなと思ったのですが・・・ yaju3d.hatenablog.jp その前に下記の使用データがどうやって作成されているのかを調べておきたい。 https://raw.githubusercontent.com/yaju/Sazae_R/master/2017sze.cs…

機械学習の勉強再開 線形SVMの改善

はじめに 前回、R言語の線形SVMをPythonに移植しました。 yaju3d.hatenablog.jp Pythonやscikit-learn に慣れていなかったので、もう少しいい方法があるのではないかと再調査しました。 SVMでは文字列は使えるのか 結論では、正解ラベル側には文字列が使えま…

機械学習の勉強再開 線形SVM

はじめに 2021年最初の記事となります。 昨年は機械学習の勉強に身が入らなかったため、はてな側に記事を書くことも少なったです。 今年は、競馬予想とか株価予想とかをやってみたいなと思うようになったので、改めて機械学習の勉強を再開することにしました…

TensorFlow 2.xによる sin波予測

はじめに 時系列データを使用した予測をやりたいと思って、良さげな教材が下記サイトになります。 qiita.com qiita.com 記事自体が、2016~2017年ということで少し古いですが、機械学習のリハビリもかねて動かしてみました。 環境 Google Colaboratory Tenso…

ステップ関数を理解してみる

はじめに 活性化関数としてステップ関数がある、ニューラルネットワークの起源となるアルゴリズムのパーセプトロンでAND回路やOR回路の構成に使用されたものです。 yaju3d.hatenablog.jp 過去にシグモイド関数をやってきてるのに、なんで初期の活性化関数で…

静岡の勉強会の構想を考える

はじめに 2016/4/23に静岡Developers勉強会で「人工知能ハンズオン」を開催しました。 yaju3d.hatenablog.jp 当時はTensorFlowが出始めて人工知能がバズワードでした。TensorFlowに関する本も少ない上に自分自分が機械学習に関する知識が全然なかったです。 …

なぜ数式には2乗が多いのかを理解してみる

はじめに 機械学習を学ぶようになり数学や統計の本やサイトに出てくる数式をみると2乗をよく見かけます。同じ数を2回掛けるってだけなのになんでなんだろう。 ネットで調べると下記のピッタシの本がありました。 書籍レビュー 2乗がつくる“神の数式”の世界へ…

勾配降下法の可視化を解析してみる

はじめに 今回は下記サイトの記事を見ていきます。 qiita.com 最急降下法(Gradient Descent)のみとなります。 データ dataは下記サイトから100件 https://raw.githubusercontent.com/pandas-dev/pandas/master/pandas/tests/data/iris.csv # 2 クラスにする…

機械学習に使われる微分の数式を理解してみる(勾配降下法:確率的勾配法)

はじめに 前回の記事の続きとなります。 yaju3d.hatenablog.jp 最急降下法と確率的勾配降下法の違いについては、以前に記事を書きました。 yaju3d.hatenablog.jp 参考 やる夫で学ぶ機械学習 - 多項式回帰と重回帰 - · けんごのお屋敷 パラメーター更新の式 …

機械学習に使われる微分の数式を理解してみる(重回帰)

はじめに 前回の記事の続きとなります。 yaju3d.hatenablog.jp 参考 やる夫で学ぶ機械学習 - 多項式回帰と重回帰 - · けんごのお屋敷 重回帰 前回の多項式回帰でも、変数 が1つだけでした。 機械学習をする上で実際に解きたい問題は変数 が2つ以上の方が多い…

機械学習に使われる微分の数式を理解してみる(多項式回帰)

はじめに 前回の記事の続きとなります。 yaju3d.hatenablog.jp 最終的な更新式を求めたところまでやりました。 パラメータ と の更新式は、最終的に下記のようになります。 参考 やる夫で学ぶ機械学習 - 多項式回帰と重回帰 - · けんごのお屋敷 多項式回帰 …

機械学習に使われる微分の数式を理解してみる(勾配降下法:最急降下法)

はじめに 前回の記事で、シグモイド関数の微分を行いました。 yaju3d.hatenablog.jp 今回は、偏微分を含んだ微分を理解していきます。 本とかだと分かっている人向けなので展開式を省略されてしまうのですが、私はあえて分かりやすく展開式を書きたいと思っ…

機械学習に使われる微分の数式を理解してみる(シグモイド関数)

はじめに 機械学習関連の本や記事を見るたびに出てくる微分の数式、これを理解しないと自分は先に進めない。 しばらくはシリーズで取り組みたいと思います。 以前の記事で、シグモイド関数の微分を導出してみました。再度、一から見直していきます。 yaju3d.…

「サザエさんのじゃんけん データ分析」の2018年の結果

はじめに 明けましておめでとうございます。 さてさて、2018年のサザエさんのじゃんけん結果はどうなったでしょう。 ちなみに、2017年のサザエさんのじゃんけん結果は、32勝9敗7分(勝率0.780)でした。 人工知能による予測化を断念 ごめんなさい、DeepLearnin…

交差エントロピーを理解してみる

はじめに ここ数ヶ月は別の件で忙しくて、機械学習に向き合えていませんでした。 仕事で調べたり学んだことはQiitaブログの方に書いていて結構すんなり書けるんですが、このブログは数学・物理・機械学習と特化するようにしているので、パワーがないと進まな…

シグモイド関数を理解してみる

はじめに 機械学習の学習すると必ず出てくる用語にシグモイド関数があります。 今回はこれを理解してみたいです。 シグモイド曲線 シグモイド曲線は入力した値を0から1の間に収めてくれる関数の1つです。 多くの自然界に存在する事柄は、このようなS字曲線を…

サポートベクターマシーン(SVM)を理解してみる

はじめに ディープラーニング(深層学習)の理解もまだ進んでいないわけですが、今回は勝手に古い技術と思い込み何も理解しようとすらしていなかった サポートベクターマシン(Support Vector Machine:SVM)に着目してみます。 サポートベクターマシンとは サポ…

Google Colaboratory上でmatplotlibのアニメーションを再生する

はじめに 最近は、Anacodaを使わずにGoogle Colaboratoryを使用しています。 Google ChromでGoogle Colaboratory にアクセスすれば、すぐにPythonが使えますからね。 下記サイトでは勾配降下法 (Gradient Descent)のグラフをアニメーション化しており、かっ…

Google ColaboratoryでGitHubのCSVデータをpandasに読み込む

はじめに 最近は、Anacodaを使わずにGoogle Colaboratoryを使用しています。 Google ChromでGoogle Colaboratory にアクセスすれば、すぐにPythonが使えますからね。 機械学習を学ぶ上では、サクッと使えるデータが必要です。 Google Colaboratoryでファイル…

ディープラーニング(深層学習)を理解してみる(識別問題 その2)

はじめに 3月の問題が解決しないまま2ヶ月が経ってしまい、4月分はうっかり記事を飛ばしてしまった。 このままだと5月分の記事も飛ばしてしまうので、あとで埋めるために5月分の記事を立てた。 しばしお待ち下さい。

ディープラーニング(深層学習)を理解してみる(識別問題)

はじめに 前々回の「対数logを理解してみる」と前回の「自然対数の底(ネイピア数) e を理解してみる」では、人工知能に使用する基礎的な数学知識が足りなかったのでシリーズとは脱線して書いてみました。 また、このシリーズで書いていきます。 ニューラルネ…

自然対数の底(ネイピア数) e を理解してみる

はじめに 前回、対数を理解してみました。 yaju3d.hatenablog.jp 今回は機械学習を学ぶ上で出てくる自然対数の底(ネイピア数 e)とは何かを理解していきます。 間違える人は結構多いですが、 は「自然対数」ではありません。「ネイピア数」あるいは「自然対数…

対数logを理解してみる

はじめに 機械学習を学んでいると対数logがでてくる。基礎的なことから対数を理解してみたい。 指数はイメージし易いが、対数は分かりにくいと思われている。指数と対数はペアの関係にあり、かけ算とわり算のように逆関係にある。 先ずは、指数の大きさを視…

「サザエさんのじゃんけん データ分析」の2017年の結果

はじめに 明けましておめでとうございます。 昨年も東芝に暗雲が立ち込め、東証2部に降格して日経平均から外れ、ついには18年3月末にサザエさんからのスポンサー契約を降板する方向で調整とあいなりました。 さて、サザエさんのじゃんけんを長年記録しデータ…

ディープラーニング(深層学習)を理解してみる(勾配降下法:計算確認)

はじめに 前回の続きです。 yaju3d.hatenablog.jp 前回の計算が本当に合っているのか、Pythonを使って実証してみたいと思います。 プログラム 重みの更新 ①現在の重みで推測値を求める import numpy as np a = np.array([10, 20]) b = np.array([[1,3,5],[3,…

ディープラーニング(深層学習)を理解してみる(勾配降下法:計算方法)

はじめに 前回の続きです。 yaju3d.hatenablog.jp 幾つかの人工知能関連の本やWebサイトを見ても、数式やプログラムのソースリストは記載されていても、数学が苦手な自分が理解できるようになるまでの説明が無い、そんな中でも下記3つの本(Kindle)がまだ理解…

ディープラーニング(深層学習)を理解してみる(勾配降下法:ベクトル、内積、微分、偏微分)

はじめに 前回の続きです。 yaju3d.hatenablog.jp 幾つかの人工知能関連の本やWebサイトを見ても、数式やプログラムのソースリストは記載されていても、数学が苦手な自分が理解できるようになるまでの説明が無い、そんな中でも下記3つの本(Kindle)がまだ理解…

スポンサーリンク