プログラミングのための数学

  • プログラミングのための数学
  • プログラミングのための数学
ページ数
691p
ISBN
978-4-8399-7306-3
著者情報
オーランド,ポール(オーランド,ポール)(Orland,Paul)
起業家であり、プログラマーであり、数学の愛好家でもある。マイクロソフトでソフトウェアエンジニアとして勤務した後、石油・ガス業界のエネルギー生産を最適化するための予測分析システムを構築するスタートアップ企業Tachyusを共同設立。Tachyusの創立CTOとして、機械学習と物理学ベースのモデリングソフトウェアの製品化を主導し、後にCEOとして5大陸の顧客にサービスを提供するまでに会社を拡大。イェール大学で数学の学士号を、ワシントン大学で物理学の修士号を取得

松田 晃一(マツダ コウイチ)
博士(工学、東京大学)。NEC、ソニーコンピュータサイエンス研究所、ソニーなどを経て、大妻女子大学社会情報学部情報デザイン専攻教授。著書多数

¥3,498 税込

15 nanacoポイント

15 セブンマイル

セブン-イレブン受取り(送料無料)

発送目安

発売日(発売日以降は当日)~2日で発送

宅配(送料¥550税込)

発送目安

発売日(発売日以降は当日)~2日で発送

交通状況・天候の影響や注文が集中した場合等、お届けにお時間をいただく場合がございます。

商品説明

プログラマーが知っておきたい数学をPythonで学ぼう!3D、機械学習、シミュレーションのプログラミング。線形代数、微積分の基礎から解説。ソフトウェアづくりに活用できるPythonライブラリの使い方を習得。

ソフトウェア開発において数学のスキルがますます重要になっています。時代をリードする企業はデータサイエンスや機械学習を取り入れ活用し、ゲーム開発、コンピューターグラフィックスやアニメーション、画像や信号処理、価格設定、株式市場分析など、数学の知識が多くのシーンで役立ちます。

本書では、プログラミングに必要となる数学:線形代数、微積分、機械学習の基礎を学び、実際のソフトウェア開発で活用できるPythonの主要ライブラリの使い方を習得します。実際のコーディングはJupyter Notebookを通して学びます。
難解な教科書とはならないよう、数学的概念を実世界に当てはめた例題をたくさん取り上げます!


1章 プログラムで数学を学ぶ

[第1部] ベクトルとグラフィックス
2章 2次元ベクトルで描画する
3章 3次元にする
4章 ベクトルやグラフィックスを座標変換する
5章 行列で座標変換を計算する
6章 より高い次元へ一般化する
7章 連立1次方程式を解く

[第2部] 微積分と物理シミュレーション
8章 変化の割合を理解する
9章 移動する物体をシミュレーションする
10章 文字式を扱う
11章 力場をシミュレーションする
12章 物理シミュレーションを最適化する
13章 音をフーリエ級数で分析する

[第3部] 機械学習への応用
14章 データに関数を当てはめる
15章 ロジスティック回帰でデータを分類する
16章 ニューラルネットワークを訓練する

付録A Pythonのセットアップ
付録B Pythonのヒントとコツ
付録C OpenGLとPyGameによる3次元モデルのロードとレンダリング


本書は、プログラミング経験がある程度あり「数学スキルを再確認したい」「数学の応用についてプログラミングを通じて学びたい」と考えている人のための本で中学・高校で習った数学の知識があれば大丈夫です。
例題に沿って、すべての練習問題に挑戦することで、本書を最大限に活用することができます。

※お届け日が変更になりました
5月29日→6月28日

目次

第1章 プログラムで数学を学ぶ
1.1 お金持ちになれる問題を数学とソフトウェアで解く
1.2 数学の勉強をしない方法
1.3 鍛え上げられた左脳を使う
まとめ

[第1部] ベクトルとグラフィックス
第2章 2次元ベクトルで描画する
2.1 2次元ベクトルを描画する
2.2 平面ベクトル演算
2.3 平面上の角度と三角関数
2.4 ベクトルの集合を座標変換する
2.5 Matplotlib で描画する
まとめ
第3章 3次元にする
3.1 3次元空間にベクトルを描く
3.2 3次元のベクトル演算
3.3 内積: ベクトルの揃い具合いを測る
3.4 外積: 向き付き面積を計算する
3.5 3次元物体を2次元でレンダリングする
まとめ
第4章 ベクトルやグラフィックスを座標変換する
4.1 3次元物体を座標変換する
4.2 線形変換
まとめ
第5章 行列で座標変換を計算する
5.1 線形変換を行列で表現する
5.2 さまざまな形状の行列を解釈する
5.3 行列を用いてベクトルを平行移動する
まとめ
第6章 より高い次元へ一般化する
6.1 ベクトルの定義を一般化する
6.2 異なるベクトル空間を探索する
6.3 より小さなベクトル空間を探す
6.4 まとめ
第7章 連立1次方程式を解く
7.1 アーケードゲームを設計する
7.2 直線の交点を求める
7.3 1次方程式をより高次元で一般化する
7.4 1次方程式を解いて基底を変換する
まとめ

[第2部] 微積分と物理シミュレーション
第8章 変化の割合を理解する
8.1 石油量から平均流量を計算する
8.2 時間ごとに平均流量をプロットする
8.3 瞬間流量を近似する
8.4 石油量の変化を近似する
8.5 時間ごとの石油量をプロットする
まとめ
第9章 移動する物体をシミュレーションする
9.1 等速運動をシミュレーションする
9.2 加速度をシミュレーションする
9.3 オイラー法を深く掘り下げ ほか

商品詳細

シリーズ名
Compass Programming
出版社名
マイナビ出版
サイズ
24cm
対象年齢
一般
フォーマット
単行本
原題
原タイトル:Math for Programmers

注意事項

本の帯に関して
帯つきでの出荷はお約束しておりません。
商品ページに、帯のみに付与される特典物等の表記がある場合でも、確実に帯つきでの出荷はお約束しておりません。
また、帯は商品の一部ではなく「広告扱い」のため、帯の有無・破損による交換や返品は承っておりません。
版・表紙について
版・表紙(カバー)のご指定は承っておりません。ご注文いただくタイミングによっては、お届けする商品の版や表紙が商品ページ上のものとは異なる場合がございます。
また、初版にのみにお付けしている特典(初回特典、初回仕様特典)がある商品は、商品ページに特典の表記がされている場合でも、無くなり次第終了となります。

あなたへのおすすめ