統計学の基礎から統計モデリング、機械学習の入り口まで解説!
本書は、機械学習の手法全般をカバーし、理論的背景とPythonコーディングの実際を解説。一から実装することでモデルの仕組みをより具体的に理解でき、PyTorchやscikit-learnのライブラリを使うことでより簡単に実装できることを示します。PyTorchについてはその仕組みから説き、自然言語処理やグラフニューラルネットワークなどの実装を解説。機械学習の理論と実践について幅広く探求するための一冊となっています。
『WEB+DB PRESS』の人気連載が待望の書籍化です。Webシステム開発から機械学習・データ分析まで、現場で使えるPythonのノウハウが1冊にまとまっています。取り上げる話題は、環境構築、コード品質、テスト、構造化ログ、リリース管理、Django、Django REST framework、GraphQL、Fast API、Django ORM、データサイエンスプログラムの品質、データ分析レポート、pandasのパフォーマンス改善、JanomeとSudachiPyによる日本語処理、pandasやNumPyによるテスト、数理最適化などなど。今日から仕事で活かせるヒントやテクニックがきっと見つかるです。
情報セキュリティ技術者必須のテクニックをマスターする!
情報セキュリティ技術者の必携書がPython 3に対応して大幅改訂。本書ではPythonを使ったサイバー攻撃手法について解説します。基本的な通信プログラムからProxyやRawデータ、Webアプリケーションへの攻撃やトロイの木馬の動作、そしてフォレンジック手法やOSINTまで、攻撃者の実践手法から防御方法を学びます。日本語版オリジナルの巻末付録として「Slackボットを通じた命令の送受信」「OpenDirのダンプツール」「Twitter IoCクローラー」を追加収録しました。
本書では、Pythonの基本から始め、データ解析に不可欠なデータの前処理を体系的に学びつつ、実践的なデータサイエンスのスキルを段階的に習得できるように構成しました。本書の目的は、読者がPythonの基礎、データの前処理、実践的なデータ解析を学ぶことで、データサイエンスの基礎を身につけ、任意のテーマに沿ったデータ解析を独力で遂行できるようになることです。
はじめに
第1章 本書の概要
1.1 本書について
1.2 プログラミング
1.3 Python の紹介
1.4 Google Colaboratory の使い方
第2章 Python の基礎
2.1 コード
2.2 変数
2.3 型
2.4 算術演算子
2.5 print() 関数
2.6 代入演算子
2.7 input() 関数
2.8 数学関数
2.9 文字列
第3章 制御構文
3.1 if文
3.2 for文
3.3 break continue文
3.4 while 文
第4章 リスト・タプル・集合・辞書
4.1 リスト (list)
4.2 タプル (tuple)
4.3 集合 (set)
4.4 辞書 (dict)
第5章 関数・オブジェクト指向
5.1 関数
5.2 モジュール
5.3 オブジェクト指向
第6章 ライブラリの利用方法
6.1 ファイル処理
6.2 NumPy について
6.3 Matplotlib について
第7章 Pandas の使い方
7.1 シリーズ (Series)
7.2 データフレーム (DataFrame)
第8章 データサイエンスプロジェクト
8.1 データサイエンスプロジェクトの流れ
8.2 データサイエンスプロジェクトを遂行する人材の役割
8.3 データサイエンティストに必要な知識とスキル
第9章 回帰問題
9.1 線形回帰モデル
9.2 多項式回帰と過学習
9.3 Ridge 回帰・Lasso 回帰と正則化係数
9.4 Elastic Net 回帰と Grid Search モジュール
9.5 サポートベクタマシン回帰分析
9.6 決定木回帰分析と Random Forest 回帰分析
9.7 XGBoost 回帰分析と LightGBM 回帰分析
第10章 分類モデル
10.1 ロジスティック回帰による分類
10.2 例題:乳がんデータセットから予測
10.3 サポートベクタマシン分類
10.4 決定木とランダムフォレストによる分類
10.5 XGBoost 分類と Optuna によるモデルチューニング
10.6 LightGBM 分類
第11章 クラスタリングと特徴量の次元削減
11.1 教師あり学習と教師なし学習
11.2 クラスタリング
11.3 k-means によるクラスタリング
11.4 GMMとV-GMMによるクラスタリング
11.5 DBSCAN によるクラスタリング
11.6 特徴量の次元削減
第12章 ニューラルネットワーク
12.1 ニューラルネットワークとは
12.2 ニューラルネットワークの基本概念
12.3 ニューラルネットワークによる回帰問題
12.4 ニューラルネットワークによる二値分類問題
12.5 マルチクラス分類問題
索引
これがデータ分析の基本の型だ!
〜基本型のパターンを正しく身に着ければどんな応用も怖くない〜
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
データを扱うビジネスに携わる全ての人に!
“データ人材”必読のデータ分析の教科書!
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
やさしいパターンを覚えるだけで、思い通りの分析や
ビジュアライゼーションができるようになる
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
Google Colab & Google Looker Studio (Data Portal)の活用で、5分でデータ分析はじめられます。
無償のBIツールでのデータ可視化!!Pythonプログラムで自由なデータ分析!!
■第1章 データ分析は「型」を身につけることから始めよう
○1-1 「技術」で広がる可能性
○1-2 データ分析のカギを握る「業務理解」
○1-3 データ分析の「キホンの5つの型」を身につけよう
プログラミングの型
データ加工の型
データ可視化の型
AIモデル構築の型
ツール化の型
■第2章 プログラミングの型を身につけよう
○2-1 プログラミングの事前準備
環境/エディタの準備
フォルダ構成の準備
○2-2 プログラミングの型
ライブラリの読み込み
初期定義
データの読み込み
メイン処理
データの出力
■第3章 データ加工の型を身につけよう
○3-1 データ加工の型とは?
データの状態確認
データの加工
加工結果の確認
○3-2 データ加工の型を実践しよう
事前準備
データの状態を確認しよう
データを加工しよう&加工結果を確認しよう
○3-3 演習
■第4章 データ可視化の型を身につけよう
○4-1 データ可視化の型とは?
全体像の可視化
様々な切り口での可視化
○4-2 データ可視化の型を実践しよう
事前準備
データの全体像を可視化しよう
様々な切り口でデータを可視化しよう
BIツールでデータを可視化してみよう
○4-3 演習
■第5章 AIモデル構築の型を身につけよう
○5-1 AIモデル構築の型とは?
学習用データ加工
モデルの学習
モデルの評価
モデルの解釈
○5-2 AIモデル構築の型を実践しよう
事前準備
学習用にデータを加工しよう
モデルの学習をしよう
モデルの評価をしよう
モデルの解釈をしよう
データを出力しよう
○5-3 演習
■第6章 ツール化の型を身につけよう
○6-1 ツール化の型とは?
つくるものを決める
つくってみる
あててみる
運用へ
○6-2 ダッシュボードをつくってみよう
Looker Studioの準備
グラフをつくろう
フィルターを追加しよう
レイアウトを調整しよう
○6-3 演習
■第7章 応用編 データ分析は「型」を使って何をするのか
○7-1 「型」を学んだいま、何をすればよいのか
ヤギ博士&フタバちゃんと一緒に、ディープラーニングのしくみを丁寧に解説。パーセプトロンの作成やニューラルネットワークのしくみ、ニューラルネットワークの作成、CNNによる画像認識の方法を紹介。最終章ではさまざまな分類方法について体験できます。
リアルな実践データで練習するから
即戦力になるスキルが身につく!!
○100本ノック 実践練習!
…実力をアップする特訓
○朝練 まずは準備運動!
…分析ツールの使い方
○放課後練 応用ノック!
…さらなる挑戦を!
総ノック120本(超)!!
⦅Point!⦆
無料のGoogleアカウントがあれば誰でも利用できるColaboratory
(データ分析や機械学習に必要な多くのライブラリが標準搭載)で、
すぐに練習をはじめられる!!
■目次■
■朝練 100本ノックに備えて準備運動を行いましょう。
序章 朝練 (はじめる前の準備運動・環境整備など)
■第1部 基礎編:データ加工
第1章 ウェブからの注文数を分析する10本ノック
第2章 小売店のデータでデータ加工を行う10本ノック
■第2部 実践編1:機械学習
第3章 顧客の全体像を把握する10本ノック
第4章 顧客の行動を予測する10本ノック
第5章 顧客の退会を予測する10本ノック
■第3部 実践編2:最適化問題
第6章 物流の最適ルートをコンサルティングする10本ノック
第7章 ロジスティクスネットワークの最適設計を行う10本ノック
第8章 数値シミュレーションで消費者行動を予測する10本ノック
■第4部 発展編:画像処理/言語処理
第9章 潜在顧客を把握するための画像認識10本ノック
第10章 アンケート分析を行うための自然言語処理10本ノック
■放課後ノック ローカルLLMを使ってみる20本ノック
第11章 大規模言語モデル(LLM)を活用した20本ノック
めんどうなコピペや手作業が一瞬で終了!行・列・シートの操作、ブック体裁の統一、複数シートの一括集計、データ集計・分析、グラフの作成など、効率最大化の必携プログラムが満載。すぐ試せる!サンプルプログラムを提供。
本書は、Pythonの実践的な力を身に付けるというコンセプトで好評を博した『Python100本シリーズ』シリーズの一冊として、実際のビジネス現場でも応用可能な、AIモデル構築の一連の流れを学べるように設計した問題集です。数学的な説明は極力控え、前処理からパラメータチューニング、AIアルゴリズムの特徴や長所短所まで学べます。
Pythonでデータ分析を体験してみよう!
【データ分析を一緒に体験しよう】
スクレイピングなどで集めた大量のデータ。
どうやって分析してたらよいか、困っていませんか?
「数式があって難しそう」
「プログラムも大変そう」
と思っている方も多いはず。
本書は、そうした方に向けて、サンプルを元にやさしく
データ分析の方法を解説しています。
【Python2年生について】
「Python2年生」は、「Python1年生」を読み終えた方を対象とした入門書です。
ある程度、技術的なことを盛り込み、本書で扱う技術について身に着けてもらいます。
『Python2年生 スクレイピングのしくみ』(ISBN:9784798161914)も刊行されています。
【対象読者】
・データの分析方法を知りたい初心者
【本書のポイント】
ヤギ博士&フタバちゃんと一緒に、データ分析の考え方から丁寧に解説。
データを分析する時に必要な前処理の方法や、データの集まりの見方、
データを見やすいグラフにする方法、データの分布の見方、予測の立て方を
解説する書籍です。
【著者プロフィール】
森 巧尚(もり・よしなお)
アプリの開発や、技術書や電子工作マガジンなどでの執筆活動。関西学院大学非常勤講師、
関西学院高等部非常勤講師、成安造形大学非常勤講師、プログラミングスクールコプリ講師など、
プログラミングに関する幅広い活動を行っている。
近著に『Python1年生』、『Python2年生 スクレイピングのしくみ』、
『Java1年生』、『動かして学ぶ!Vue.js開発入門』(いずれも翔泳社)、
『楽しく学ぶ アルゴリズムとプログラミングの図鑑』(マイナビ出版)などがある。
第1章 データ分析って何?
LESSON 01 データ分析って何
LESSON 02 データ分析の手順:PPDACサイクル
LESSON 03 Jupyter Notebookをインストールしよう
LESSON 04 Jupyter Notebookの使い方
第2章 集めたデータは前処理が必要
LESSON 05 表データを読み込もう
LESSON 06 データをざっくりと眺める
LESSON 07 データのどこを使う?
LESSON 08 データのミスをチェックする
第3章 データの集まりをひとことでいうと?:代表値
LESSON 09 データを平らに均(なら)す
LESSON 10 平均値を代表といっていいの?
LESSON 11 平均値が同じなら、同じといっていいの?
第4章 図で特徴をイメージしよう:グラフ
LESSON 12 データのばらつきがわかる
LESSON 13 基本的なグラフを作ろう
LESSON 14 ばらつきのわかるグラフ
LESSON 15 グラフをわかりやすく調整する
第5章 これって普通なこと?珍しいこと?:正規分布
LESSON 16 データのばらつきを数値で表す
LESSON 17 自然なばらつき
LESSON 18 この値は普通なこと?珍しいこと?
LESSON 19 このデータは自然なばらつき?
LESSON 20 違うばらつきのデータでの比較ができる
第6章 関係から予測しよう:回帰分析
LESSON 21 2種類のデータの関係性の強さ:相関係数
LESSON 22 散布図の上に線を引いて予測
LESSON 23 総当たりで表示させる散布図
LESSON 24 アヤメのデータを見てみよう
機械学習の世界は、学ぶべき分野が多岐に及びます。本書は、広大な学習範囲に対して、真正面から取り組み、しかしスムーズかつスッキリと学びきることができる入門書です。データ分析の「全体の流れ」を繰り返し追いかけることで、機械学習の全体像と本質が自然に染み込む仕掛けとなっています。しかも単に繰り返すのではなく、段階的に高度な内容に挑戦し、最終的には応用術も身に付けられます。シリーズで好評の「エラー解決・虎の巻」も収録! 本書で機械学習の楽しさ、奥深さをじっくり学び、新しい未来への道を拓いてみませんか。
Pythonプログラマの圧倒的支持を得るロングセラー待望の改訂版!
発刊以来、多くのPythonエキスパートの支持を集め、増刷を重ねている書籍の待望の改訂版。ベストプラクティス、ヒント、落とし穴の避け方や達人プログラマのコード、新機能などを紹介し、堅牢でパフォーマンスの高い優れたプログラムを書くノウハウをまとめています。今回、Pythonのアップデートに合わせて全面改訂。第1版の内容に加えて、データ構造、内包表記とジェネレータ、性能、デバッグについての新たな章を追加し、さらに内容を充実させています。第1版では59項目だったトピックが、第2版では90項目に増えています。Python 3.8対応。
Pythonの定番テキストが待望の改訂!大規模データの取り扱いや図による可視化など汎用的なPythonの使い方から,シングルセル,RNA-seq解析までバイオインフォマティクスの基礎が身につきます.サンプルデータとコード見本付きで,今日から実践しながら学べます.改訂では,生成AIの活用方法やScanpyの詳細な解説を加筆し,各種ライブラリのアップデートに対応しました.
【目次】
改訂にあたり
はじめに(初版)
第1章 この本の使い方と事前準備
第2章 生成AIを用いたプログラミング
第3章 Jupyter Notebookの使い方
第4章 Python速習コース
第5章 文字列処理の基本 〜ファイルの読み書き,正規表現
第6章 Biopythonを用いた塩基配列データの扱い方 〜オブジェクト指向入門
第7章 pandasはじめの一歩 〜表形式データの扱い方
第8章 RNA-Seqカウントデータの処理 〜pandas実践編
第9章 データの可視化 〜Matplotlib,Seabornを用いたグラフ作成
第10章 統計的仮説検定 〜RNA-Seqデータを用いた検定の基本からモデル選択まで
第11章 シングルセル解析(1) 〜テーブルデータの前処理
第12章 シングルセル解析(2) 〜次元削減
第13章 シングルセル解析(3) 〜クラスタリング
付録A NumPy入門
付録B Scanpyを使ったシングルセル解析
索引
執筆者一覧
GitHub Copilotを活用するためのプロンプトエンジニアリングが取得できる。OpenAI APIのマルチモーダル活用からLangChainまで、アプリケーションに組み込むためのスキルが学べる。
マヂカルラブリーの野田クリスタルさんと共にゲーム作りを学べる超初心者向けプログラミング本の登場です!
本書では、野田クリスタルさんがこの本のためだけに考案した“野田ゲー”の作り方を初心者の方にもわかりやすく画像付きで解説しています。
紹介されている7種類のゲームは、すべて本書でしかプレイすることができないオリジナルタイトルとなっています。
付属のCDROMには完成版のゲームが収録されているので、ゲーム作りに興味が無い方でもPC一台でゲームを楽しむことができます。
また、ゲームを作るために必要なソースコードやイラストの画像データなどもすべてCDROMに入っているため、誰でもかんたんに本格的なゲーム作りを体験することができます。
人気のプログラミング言語 “Python”を使用しているので、本格的なゲーム作りを大人から子どもまで幅広く楽しむことができ、プログラミングを学ぶきっかけづくりにピッタリです。
野田クリスタルさんと一緒に、ゲーム作りに挑戦してみてはいかがでしょうか。
≪収録ゲーム≫
・カッパの皿を守れ!
・あれ? この人パイセンだっけ?
・ブロック崩し・極
・激ムズ神経衰弱
・スクランブルを超えろ
・じゃんけん2
・ドロボウ退治
【付録】CD-ROM
※発売日、価格および商品仕様等は変更になる場合がございます。
暗号を用いた秘密のメッセージの作り方を指南する、初心者向けの書籍はたくさんあります。また、暗号の解読法を指南する、初心者向けの書籍はいくつか存在します。しかし、暗号を解読するためのプログラミングを指南する、初心者向けの書籍は皆無といえるでしょう。本書はそのギャップを埋めるためのものです。
本書は、暗号、暗号解読、暗号学について興味を持っている人のためのものです。本書の暗号(23章と24章の公開鍵暗号を除く)はすべて古典的なものであり、ノートPCの計算能力でも解読できます。現在の組織や個人はこうした古典暗号を使用しません。しかし、古典暗号を通じて、暗号を構成する土台や、脆弱な暗号の解読法について学べます。
第0章 導入
第1章 紙製の暗号ツールをつくる
第2章 対話型シェルのプログラミング
第3章 文字列とプログラムの作成
第4章 逆暗号
第5章 シーザー暗号
第6章 総当たり攻撃によるシーザー暗号の解読
第7章 転置式暗号で暗号化する
第8章 転置式暗号を復号する
第9章 プログラムテスト用プログラムを作成する
第10章 ファイルの暗号化と復号
第11章 プログラムによる英語の検出
第12章 転置式暗号を解読する
第13章 アフィン暗号のためのモジュラー算術モジュール
第14章 アフィン暗号のプログラミング
第15章 アフィン暗号を解読する
第16章 単一換字式暗号のプログラミング
第17章 単一換字式暗号を解読する
第18章 ヴィジュネル暗号のプログラミング
第19章 頻度分析
第20章 ヴィジュネル暗号を解読する
第21章 ワンタイムパッド暗号
第22章 素数の検索と生成
第23章 公開鍵暗号の鍵を生成する
第24章 公開鍵暗号のプログラミング
付録 Pythonコードのデバッグ
あのゲームのあの動きを
実際に作って "アルゴリズム"を学ぶ!!
【みんな知ってる スマホゲームや
レトロゲームの あの動きは!?】
《まずは作ってみる》
●撃つ・当たる・爆発する。シューティングゲームのあの動きは?
●逃げる・追いかける・先回りする。迷路のモンスターのあの動きは?
●狙い弾・n-way弾・誘導弾。弾幕ゲームのあの動きは?
●ジャンプ・ダッシュ・スクロール。アクションゲームのあの動きは?
●引っ張る・飛ばす・跳ね返る。スリングショットゲームのあの動きは?
いろいろな動きを実際に作ってみるからよくわかる。
Python、数学、前処理、可視化、機械学習。データ分析エンジニアに必要な基礎技術をしっかり習得!
Pythonプログラミング+多彩なアプリ作成+ライブラリ活用。Pythonの基礎から高度なプログラミングへの道筋までしっかりわかります!