<?xml version="1.0" encoding="UTF-8" standalone="no"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:gd="http://schemas.google.com/g/2005" xmlns:georss="http://www.georss.org/georss" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-8964437807708328205</atom:id><lastBuildDate>Tue, 20 Oct 2026 04:29:12 +0000</lastBuildDate><category>認知科学</category><category>心理学</category><category>統計学</category><category>歴史</category><category>メモ</category><category>考え方</category><category>プログラミング</category><category>インターネット</category><category>マーケティング</category><category>データ</category><category>経済学</category><category>科学</category><category>ビジネス</category><category>伝え方</category><category>分析</category><category>地域振興</category><category>数学</category><category>文章術</category><category>書評</category><category>英語</category><title>Thinking Notes</title><description>心理学 科学 経済学 歴史 宇宙 世界とか。教養って大事</description><link>http://thinknote.blogspot.com/</link><managingEditor>noreply@blogger.com (sasa)</managingEditor><generator>Blogger</generator><openSearch:totalResults>112</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><xhtml:meta content="noindex" name="robots" xmlns:xhtml="http://www.w3.org/1999/xhtml"/><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-7706024832664463999</guid><pubDate>Tue, 15 Sep 2026 01:18:39 +0000</pubDate><atom:updated>2026-09-15T10:31:35.638+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">インターネット</category><title>Google Cloud</title><description>&lt;p&gt;Google Cloud（GCP）は、個人でも完全無料～実質無料で試すことができる。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;p&gt;無料試用枠（初回アカウント登録特典）&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;特典内容: 90日間有効な$300分の無料クレジットがもらえる。&lt;/li&gt;
&lt;li&gt;条件: 初めてGoogle Cloudのアカウントを開設する場合。&lt;/li&gt;
&lt;li&gt;ポイント: 登録時にクレジットカードの入力が必要だけど、勝手に有料プランへ自動移行されて課金されることはない。有料アカウントへ手動でアップグレードしない限り、無料枠を使い切ったら停止する仕組み。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;常時無料枠（Always Free）
無料試用期間が終わった後も、規定の範囲内ならずーっと無料で使い続けられるリソースがたくさんある。&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align="left"&gt;サービス名&lt;/th&gt;
&lt;th align="left"&gt;常時無料の範囲（毎月）&lt;/th&gt;
&lt;th align="left"&gt;主な使い道&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td align="left"&gt;Compute Engine (VM)&lt;/td&gt;
&lt;td align="left"&gt;e2-micro インスタンス 1台 (米国リージョン)&lt;/td&gt;
&lt;td align="left"&gt;小さなWebサーバーやBotの稼働&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;Cloud Run&lt;/td&gt;
&lt;td align="left"&gt;200万リクエスト/月&lt;/td&gt;
&lt;td align="left"&gt;Dockerコンテナを使ったAPIやWebアプリ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;Cloud Functions&lt;/td&gt;
&lt;td align="left"&gt;200万回の呼び出し/月&lt;/td&gt;
&lt;td align="left"&gt;イベント駆動型の軽いプログラム実行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;Cloud Storage (GCS)&lt;/td&gt;
&lt;td align="left"&gt;5GBの標準ストレージ&lt;/td&gt;
&lt;td align="left"&gt;画像やデータの保存&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;BigQuery&lt;/td&gt;
&lt;td align="left"&gt;1TB分のクエリ処理、10GBのストレージ&lt;/td&gt;
&lt;td align="left"&gt;SQLを使ったデータ分析の練習&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Cloud Storage（データレイク役割）&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;CSV、JSON、画像、ログファイルなど、あらゆる生のデータを「とりあえずそのまま貯めておく」場所。&lt;/li&gt;
&lt;li&gt;料金がすごく安くて容量を気にせず置けるのが強み。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;BigQuery（データウェアハウス役割）&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cloud Storage にあるCSVやParquetファイルを読み込んでテーブル化したり、直接取り込んで（ロードして）標準的なSQLで爆速分析・抽出する場所。&lt;/li&gt;
&lt;li&gt;テラバイト級の巨大データでも数秒で抽出できるのが強み。&lt;/li&gt;
&lt;/ul&gt;

&lt;br/&gt;
&lt;br/&gt;

&lt;h2&gt;（GCSへの）データの読み込み方法&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;CSVからの読み込み&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;特に自社の業務システムから出力した顧客データや、外部のサービスからダウンロードした売上データなどはCSV形式が多いから、GCSにCSVをアップロードして分析するケースは一般的。&lt;/p&gt;
&lt;p&gt;ただ、実務で膨大なデータ（何千万行・何億行）を扱う場合は、CSVよりも圧縮率が高くて高速に読み込めるParquet（パルケ）やJSONという形式に変換してGCSに置くことも多い。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Google Analytics（GA4）や AdSense との連携&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;GA4やAdSenseのデータをBigQueryに送ってSQLで分析するのは、マーケティング分析やWebメディア運営の現場で超定番の使われ方。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Google Analytics (GA4) の場合&lt;ul&gt;
&lt;li&gt;GCSを挟まずに「GA4 ➔ BigQuery」へ直接連携（エクスポート）する標準機能が用意されている。&lt;/li&gt;
&lt;li&gt;ボタンひとつで設定できて、毎日自動でWebサイトの閲覧ログ（生のイベントデータ）がBigQueryに転送される。しかも標準の枠内なら転送自体は無料。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;AdSense や Google 広告 の場合&lt;ul&gt;
&lt;li&gt;「BigQuery Data Transfer Service」というGoogle Cloud内の定期転送機能を使ったり、APIを経由してBigQueryやGCSにデータを送る。&lt;/li&gt;
&lt;li&gt;広告のインプレッション数や収益データを自動で取得して、BigQuery上でGA4のアクセスデータと「JOIN（結合）」させることで、「どのページ・どの検索ワードから来たユーザーが一番収益を生んでいるか」をSQLで一発分析できるようになる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align="left"&gt;データ元&lt;/th&gt;
&lt;th align="left"&gt;連携ルート&lt;/th&gt;
&lt;th align="left"&gt;よく使われる形式&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td align="left"&gt;業務データ / CSV等&lt;/td&gt;
&lt;td align="left"&gt;CSVデータ ➔ GCS ➔ BigQuery&lt;/td&gt;
&lt;td align="left"&gt;CSV / Parquet&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;Google Analytics (GA4)&lt;/td&gt;
&lt;td align="left"&gt;GA4 ➔ 直接 BigQuery&lt;/td&gt;
&lt;td align="left"&gt;自動テーブル化&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;AdSense / Google Ads&lt;/td&gt;
&lt;td align="left"&gt;API / 転送機能 ➔ BigQuery (またはGCS)&lt;/td&gt;
&lt;td align="left"&gt;JSON / 自動テーブル化&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

&lt;br/&gt;
&lt;br/&gt;

&lt;h2&gt;お試しでやってみた内容&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;まずは無料登録: $300分のクレジットをもらってアカウントを作る。&lt;/li&gt;
&lt;li&gt;予算アラートを設定する: 万が一の請求を防ぐために、「10,000円を超えたら通知する」みたいな予算アラート（Budget Alert）を最初に設定しておく。&lt;/li&gt;
&lt;li&gt;AdSenseのレポートをcsv形式でダウンロードしてくる。&lt;/li&gt;
&lt;li&gt;Cloud Storage (GCS) にアップロードする。&lt;/li&gt;
&lt;li&gt;BigQueryからGCS上の外部テーブルを参照して、BigQuery Console上でSQLを叩いて集計&lt;/li&gt;
&lt;li&gt;Google Colabからの認証、BigQuery接続、Pythonでの集計とグラフ可視化&lt;/li&gt;
&lt;/ol&gt;

&lt;br/&gt;

&lt;h3&gt;GCSの準備&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Cloud Storage（GCS）にバケットを作ってCSVをアップロード&lt;ol&gt;
&lt;li&gt;Google Cloud コンソールの左上メニュー（☰）から 「Cloud Storage」➔「バケット」 を選択。&lt;/li&gt;
&lt;li&gt;上部にある 「＋作成」 をクリック。&lt;/li&gt;
&lt;li&gt;バケット名 を入力（世界で一意の任意名、例: my-first-bucket-hoge-1234）。&lt;/li&gt;
&lt;li&gt;ロケーションタイプは 「Region」、ロケーションは 「asia-northeast1 (東京)」 を選択して、下部にある 「作成」 を押す。&lt;/li&gt;
&lt;li&gt;作成されたバケット画面が開くので、「ファイルをアップロード」 を押して用意したCSVファイルをアップロード。&lt;/li&gt;
&lt;li&gt;アップロード完了後、CSVのファイル名をクリックして 「GCS URI」（gs://バケット名/ファイル名.csv のような文字列）をコピーしておく。&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;BigQueryにデータセットを作成&lt;ol&gt;
&lt;li&gt;左上メニューから 「BigQuery」 を選択。&lt;/li&gt;
&lt;li&gt;エクスプローラ欄にある自分のプロジェクト名（project-id）の右横にある 「︙（3つの点）」 をクリック ➔ 「データセットを作成」 を選択。&lt;/li&gt;
&lt;li&gt;データセット ID を入力（例: sample_dataset）。&lt;/li&gt;
&lt;li&gt;ロケーションタイプを 「asia-northeast1 (東京)」 に合わせたら、一番下の 「データセットを作成」 を押す。&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;GCSのCSVからBigQueryテーブルを作成&lt;ol&gt;
&lt;li&gt;今作成したデータセット名（sample_dataset）の右横にある 「︙」 をクリック ➔ 「テーブルを作成」 を選択。&lt;/li&gt;
&lt;li&gt;以下の通りに設定入力：&lt;ul&gt;
&lt;li&gt;ソース: 「ソース」で Google Cloud Storage を選択。&lt;/li&gt;
&lt;li&gt;GCS バケットからファイルを選択: 先ほどコピーした GCS URI（gs://...）を貼り付け。&lt;/li&gt;
&lt;li&gt;ファイル形式: CSV を選択。&lt;/li&gt;
&lt;li&gt;テーブル: 作成するテーブル名を入力（例: test_table）。&lt;/li&gt;
&lt;li&gt;スキーマ: 「自動検出（Auto detect）」 にチェックを入れる（列名やデータ型を自動で判断してくれる）。&lt;/li&gt;
&lt;li&gt;だがAdSenseレポートの場合は、半角スペースやカッコがあってデフォルトの自動検出のままだとうまくいかないので、&lt;ol&gt;
&lt;li&gt;下の方にある 「詳細オプション（Advanced options）」 をクリックして展開する。&lt;/li&gt;
&lt;li&gt;「文字マップ（Character map）」 という項目を探して、初期値から 「V2」 に変更する。&lt;/li&gt;
&lt;li&gt;V2にすると、BigQueryが自動的に使える記号に置換してくれる。&lt;/li&gt;
&lt;li&gt;csvの側で列名を変更するならv2にせずともよい。&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;画面下部の 「テーブルを作成」 をクリックすれば完了！&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;br/&gt;

&lt;p&gt;&lt;strong&gt;バケット（Bucket）とは？&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;データをしまっておくための、最上位のフォルダのようなもの。Cloud Storage（GCS）では、ファイル（CSVや画像など）を直接クラウド上にぽんと置くことはできなくて、「必ずバケットという箱の中に保存する」というルールがある。&lt;/p&gt;
&lt;p&gt;バケット名の特徴と決め方&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;世界中でたったひとつ（ユニーク）の名前にする必要がある&lt;ul&gt;
&lt;li&gt;Google Cloudを使っている世界中の誰とも被らない名前にする必要がある。&lt;/li&gt;
&lt;li&gt;例えば my-bucket や test みたいな名前はすでに誰かが使っているからエラーになっちゃう。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;おすすめの命名パターン&lt;ul&gt;
&lt;li&gt;自分の名前や日付、ランダムな数字を組み合わせると被りにくくて作りやすい。&lt;/li&gt;
&lt;li&gt;例：hoge-data-202609 や my-sample-bucket-hoge-99&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;パソコンで例えると、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;GCS全体 ➔ パソコンのハードディスク&lt;/li&gt;
&lt;li&gt;バケット ➔ Cドライブ直下のメインフォルダ&lt;/li&gt;
&lt;li&gt;ファイル ➔ その中に入れるCSVデータや画像&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;バケット名さえ決まれば、その中にCSVファイルをどんどん放り込めるようになる。&lt;/p&gt;

&lt;br/&gt;

&lt;p&gt;&lt;strong&gt;データセットIDとは？&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;BigQueryのなかで「複数のテーブルをまとめておくためのグループ名（フォルダ名）」のこと。「バケット」がCloud Storage側の道具箱だとしたら、「データセット」はBigQuery側の道具箱（データベース）みたいなイメージ。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;プロジェクト ID: クラウド全体の契約単位&lt;/li&gt;
&lt;li&gt;データセット ID: 関連するテーブルを束ねるフォルダ（スキーマ）&lt;/li&gt;
&lt;li&gt;テーブル名: 実際のCSVデータが入った表&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;データセットIDの決め方ルール&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;バケット名とは違って世界中で被らないようにする必要はなくて、自分のプロジェクトの中で被らなければよい。&lt;/li&gt;
&lt;li&gt;使える文字: 半角の英数字とアンダースコア（_）&lt;/li&gt;
&lt;li&gt;おすすめの名前: sample_dataset や test_db など、分かりやすい小文字の英数字で作れば大丈夫。&lt;/li&gt;
&lt;li&gt;SQLを書くときも、プロジェクトID.データセットID.テーブル名 という形で指定してデータを呼び出すことになる。&lt;/li&gt;
&lt;/ul&gt;

&lt;br/&gt;


&lt;h3&gt;BigQueryでSQLを使ってデータ抽出・集計&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;SQLの実行手順&lt;ul&gt;
&lt;li&gt;作成したテーブル名（test_table）をクリック。&lt;/li&gt;
&lt;li&gt;画面上部にある 「クエリ」➔「新しいタブ」 をクリック。&lt;/li&gt;
&lt;li&gt;エディタ領域（黒い画面）にSQLが入力できるようになる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;まずは試してほしい基本のSQL&lt;ul&gt;
&lt;li&gt;まずは全件取得して中身を確認するSQL（プロジェクトID.データセットID.テーブル名の部分は適宜書き換える）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;pre&gt;&lt;code&gt;SELECT * 
FROM `プロジェクトID.sample_dataset.test_table` 
LIMIT 10;

-- DATE型（日付型）のdate（yyyymmdd）カラムをyyyymmにする 
FORMAT_DATE(&amp;#39;%Y%m&amp;#39;, date) AS yyyymm,  -- 例: 202609
-- もしハイフンを入れたいなら FORMAT_DATE(&amp;#39;%Y-%m&amp;#39;, date)
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;縦持ちを横持ちにするならPIVOT&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;-- Max(CASE WHEN..としなくてもいい）
SELECT *
FROM (
  -- ① 元となる集計データを用意（前処理）
  SELECT 
    site,
    FORMAT_DATE(&amp;#39;%Y%m&amp;#39;, date) AS yyyymm,
    `Estimated earnings _JPY_` AS revenue
  FROM `プロジェクトID.sample_dataset.test_table`
)
-- ② PIVOTで yyyymm の値を横軸の列に展開する
PIVOT(
  SUM(revenue) FOR yyyymm IN (&amp;#39;202607&amp;#39;, &amp;#39;202608&amp;#39;, &amp;#39;202609&amp;#39;)
)
ORDER BY site;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;「毎月新しい年月が増えるたびに IN (&amp;#39;202601&amp;#39;, &amp;#39;202602&amp;#39;...) のコードすら書き換えたくない」っていう場合は、BigQueryの動的SQL（Dynamic SQL）を使う&lt;/p&gt;

&lt;p&gt;ただし、BigQueryでDECLAREやSETを使った手続き型スクリプト（複数行の処理）を実行すると、ステップごとの処理結果が別々のタブ（ステートメント）として出力される仕様になっている。なのでこれの実行結果を見るときは、一番最後のステートメントを選択する必要がある。&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;-- 存在する yyyymm をカンマ区切りの文字列として動的に生成して変数に入れる
DECLARE dynamic_months STRING;

SET dynamic_months = (
  SELECT STRING_AGG(DISTINCT CONCAT(&amp;quot;&amp;#39;&amp;quot;, FORMAT_DATE(&amp;#39;%Y%m&amp;#39;, date), &amp;quot;&amp;#39;&amp;quot;), &amp;#39;,&amp;#39; ORDER BY CONCAT(&amp;quot;&amp;#39;&amp;quot;, FORMAT_DATE(&amp;#39;%Y%m&amp;#39;, date), &amp;quot;&amp;#39;&amp;quot;))
  FROM `プロジェクトID.sample_dataset.test_table`
);

-- 動的にPIVOTクエリを作成して実行
EXECUTE IMMEDIATE FORMAT(&amp;quot;&amp;quot;&amp;quot;
  SELECT *
  FROM (
    SELECT site, FORMAT_DATE(&amp;#39;%%Y%%m&amp;#39;, date) AS yyyymm, `Estimated earnings _JPY_` AS revenue
    FROM `プロジェクトID.sample_dataset.test_table`
  )
  PIVOT(
    SUM(revenue) FOR yyyymm IN (%s)
  )
  ORDER BY site;
&amp;quot;&amp;quot;&amp;quot;, dynamic_months);
&lt;/code&gt;&lt;/pre&gt;

&lt;br/&gt;
&lt;br/&gt;

&lt;h2&gt;Google Colabからの認証、BigQuery接続&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;from google.colab import auth
from google.cloud import bigquery
import pandas as pd

# 1. Googleアカウントの認証（ポップアップが出るので許可するだけ）
auth.authenticate_user()

# 2. BigQueryクライアントの作成
project_id = &amp;#39;適宜指定&amp;#39;
client = bigquery.Client(project=project_id)

# 3. SQLの実行とPandas DataFrameへの格納
sql = &amp;quot;&amp;quot;&amp;quot;
SELECT site, SUM(`Estimated earnings _JPY_`) AS total_revenue
FROM `プロジェクトID.sample_dataset.test_table`
GROUP BY site
&amp;quot;&amp;quot;&amp;quot;

# 結果を直接PandasのDataFrameとして取得
df = client.query(sql).to_dataframe()

# データ表示
print(df.head())
&lt;/code&gt;&lt;/pre&gt;

&lt;br/&gt;
&lt;br/&gt;

&lt;h2&gt;実務の運用で難しくなる3つのポイント&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;データパイプラインの自動化（ETL / ELT）&lt;ul&gt;
&lt;li&gt;個人でお試し: 手動でCSVをGCSにアップロードしてBigQuery画面から取り込み。&lt;/li&gt;
&lt;li&gt;実務での運用: 毎日・毎時間にバッチ処理やストリーミングで自動転送させる（Cloud Composer/AirflowやCloud Pub/Subなどのツールを活用）。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;データクレンジングと例外処理&lt;ul&gt;
&lt;li&gt;個人でお試し: キレイなCSVを1回読み込ませる。&lt;/li&gt;
&lt;li&gt;実務での運用: 「途中でデータ型が変わった」「日付形式が崩れている」「欠損値がある」「二重送信された」といったエラーへの自動検知とリカバリ設計が必要。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;大規模データでのコスト・パフォーマンス管理&lt;ul&gt;
&lt;li&gt;個人でお試し: 数千〜数万行のデータ（クエリ実行も数MB〜数GBでほぼ無料）。&lt;/li&gt;
&lt;li&gt;実務での運用: 数十億行（数TB〜数PB）のデータ。適当に SELECT * を叩くと1回のクエリで数千円〜数万円吹っ飛ぶリスクがあるため、パーティショニングやクラスタリングの設計が必須になる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;br/&gt;

&lt;h3&gt;BigQueryとBigtable&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;BigQuery（データウェアハウス）: 大量の過去データをまとめて集計・分析する（SQLでOLAP処理）。&lt;/li&gt;
&lt;li&gt;Bigtable（NoSQLデータベース）: ミリ秒単位の超高速な読み書きが必要なリアルタイム処理（IoTのセンサーデータ受信やソーシャルメディアのログなど）。&lt;/li&gt;
&lt;/ul&gt;






&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2026/09/google-cloud.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-1385706941654463076</guid><pubDate>Wed, 13 May 2026 00:24:46 +0000</pubDate><atom:updated>2026-05-13T09:24:46.914+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">メモ</category><title>Python環境構築</title><description>&lt;h2&gt;よく忘れる&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;# どんな仮想環境あったっけ
conda env list
conda info -e  # どっちでもいい

# 仮想環境を有効化
conda activate pm5

conda deactivate

# 何を入れてたっけ
conda list

# 不要になった古い環境を削除
conda remove --name base_backup  --all
# condaのキャッシュ削除
conda clean --all

# 今ある環境をのうち1つをcopyしてbackupとしたい
conda create --name base_yyyymmdd --clone base


# 設定ファイル（YAML）を書き出しておくと、
conda env export &amp;gt; environment_20250505.yml

# もしもグダグダな環境になってしまったなどの場合は以下で全く同じ環境を再構築できる
conda env create -f environment_20250505.yml 
# 別の名前で新しい仮想環境を作りたい場合は
conda env create -f environment_20250505.yml  -n new_project_name


# condaの復元機能: インストールするたびに、変更前の状態を記録してくれるrevisionという機能がある
conda list --revisions
# これを見ると、何時何分に何を入れたかが履歴として出てくる。
# もし新しいライブラリを入れて壊れたら、番号を指定してサクッと戻せる。
conda install --revision 5  # 5番の状態に戻す
&lt;/code&gt;&lt;/pre&gt;


&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;


&lt;details&gt;
&lt;summary&gt;homebrewを削除して一度きれいにするまでのなんやかんや（クリックで展開）&lt;/summary&gt;

&lt;p&gt;まっさらにしていく&lt;/p&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;# brewで入ってるもの確認
brew list --formula
brew list --cask

# homebrew含め全部削除する
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
&lt;/code&gt;&lt;/pre&gt;


&lt;pre&gt;&lt;code&gt;Homebrew uninstalled!
The following possible Homebrew files were not deleted:
/opt/homebrew/bin/
/opt/homebrew/etc/
/opt/homebrew/lib/
/opt/homebrew/share/
/opt/homebrew/var/
You may wish to remove them yourself.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;と言われるので、&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;sudo rm -rf /opt/homebrew/bin
sudo rm -rf /opt/homebrew/etc
sudo rm -rf /opt/homebrew/lib
sudo rm -rf /opt/homebrew/share
sudo rm -rf /opt/homebrew/var
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;ディレクトリが消えているか確認する&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# ターミナルで：
ls /opt/homebrew
# 何も表示されなければ削除成功
#まだ残っていたら、ディレクトリ名が表示される

# brew コマンドが使えないか確認
brew --version
# command not found と出れば Homebrew はもう存在しない
# もしバージョンが出たら、どこかに残ってる

# PATH に残っていないか確認
echo $PATH
# /opt/homebrew/bin が PATH に残っていなければ OK
# .zshrc や .bash_profile に残っている場合は、手動で削除

vim ~/.zshrc
# 編集したら保存して

# シェルを再読み込み
source ~/.zshrc

# シェルを完全に再起動
# すでに開いているターミナルは古い環境を保持している場合がある
# 新しいターミナルを開いて確認
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;改めてHomebrewを新規インストール&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;# https://brew.sh/ja/
# macOSをお使いの場合は新しい.pkgインストーラーをお試し下さい とのことなので.pkgを落としてきて実行
# https://github.com/Homebrew/brew/releases/tag/4.6.6

vim ~/.zshrc
# export PATH='hoge'の下に eval "$(/opt/homebrew/bin/brew shellenv)" を追記

# ちゃんとbrewがインストールできたかの確認
brew help
# 大丈夫っぽい

# 現在の PATH を確認
echo $PATH
# PATH のどこかに /opt/homebrew/bin が含まれていればOK

which brew 
# 出力が /opt/homebrew/bin/brew になっていれば、正しく PATH が設定されている
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;miniforgeインストール&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;brew install miniforge

# condaのバージョン確認
conda --version
# conda 25.3.1 versionを返してくれればcondaの準備はOKです
&lt;/code&gt;&lt;/pre&gt;

&lt;/details&gt;


&lt;br&gt;

&lt;h2&gt;pymc5用&lt;/h2&gt;
一応動作はしてるが、condaとpipを混ぜてるのであまりいい状態ではないかも
&lt;pre&gt;&lt;code&gt;conda create --name pm5 python=3.11

conda init zsh
# として、ターミナル再度立ち上げ直す

conda activate pm5

# pymc5をインストール https://www.pymc.io/projects/docs/en/latest/installation.html
conda install -c conda-forge "pymc&amp;gt;=5"
# arviz, graphviz, numpy, pandas, scipyなども一緒に入る

conda install -c conda-forge seaborn matplotlib ipykernel ipywidgets
# statsmodelsも入る

# conda install -c conda-forge prophet  # ないって言われる
python -m pip install prophet
# https://facebook.github.io/prophet/docs/installation.html#python

python -m pip install tfcausalimpact
# https://github.com/WillianFuks/tfcausalimpact

# 以下がないとprophetというかパラメーターの最適化だっけ、後半のところができないみたい
conda install -c conda-forge dask
conda install -c conda-forge plotly
&lt;/code&gt;&lt;/pre&gt;


&lt;h3&gt;imagemagickインストール&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;brew install imagemagick
# python 3.13がインストールされちゃったのを削除する
brew uninstall --ignore-dependencies python
&lt;/code&gt;&lt;/pre&gt;

&lt;h3&gt;brewの要らなくなったのを削除&lt;/h3&gt;
&lt;pre&gt;&lt;code&gt;brew cleanup  # 古いキャッシュや不要ファイルを削除（推奨）
brew cleanup --prune=0  # すべて のキャッシュと不要ファイルを削除
brew autoremove  # 依存関係がなくなったパッケージを削除
rm -rf $(brew --cache)  # キャッシュ全削除
conda clean --all  # すべてのキャッシュ・不要ファイルを削除（推奨）
&lt;/code&gt;&lt;/pre&gt;


&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;pycaret用&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;condaでやるとpycaret動作させるまでに手こずる&lt;/li&gt;
&lt;li&gt;colabだとpythonバージョンが新しすぎてpycaret動作しない&lt;/li&gt;
&lt;li&gt;よって、pythonとpycaretのバージョンはほどほどにしつつ、pycaretを確実に動作させるために、基本pipで入れていく&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code&gt;conda create -name pyc3 python=3.10
conda activate pyc3
pip install pycaret==3.0.4
# このときmatplotlib numba numpy pandas plotly scikit-learn scipyもpip(pypi)で入ってる

pip install "pycaret[analysis]==3.0.4"

pip install jpholiday
python -m pip install jpholiday
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;で、VS codeで、&lt;/p&gt;
&lt;p&gt;&lt;code&gt;from pycaret.classification import *&lt;/code&gt;　しようとすると、&lt;/p&gt;
&lt;p&gt;ImportError: cannot import name 'interp' from 'scipy' (/opt/homebrew/Caskroom/miniforge/base/envs/pyc3/lib/python3.10/site-packages/scipy/&lt;strong&gt;init&lt;/strong&gt;.py)　と言われた&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pip install "scipy&amp;lt;1.13.0"&lt;/code&gt;
状況変わらず&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pip install scipy==1.11.4&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;ImportError: cannot import name '_format_load_msg' from 'joblib.memory' (/opt/homebrew/Caskroom/miniforge/base/envs/pyc3/lib/python3.10/site-packages/joblib/memory.py)&lt;/p&gt;
&lt;p&gt;&lt;code&gt;conda list joblib&lt;/code&gt;  のバージョンは、1.5.3だったので&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pip install joblib==1.3.2&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;import pycaretしないままだったので、ひょっとしたら&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pip install scipy==1.11.4&lt;/code&gt;
&lt;code&gt;pip install joblib==1.3.2&lt;/code&gt; はやらなくてもよかったのかもしれないが、&lt;/p&gt;
&lt;p&gt;from pycaret.classification import *は通った。&lt;/p&gt;
&lt;p&gt;でも、reg1 = setup(df1, target="is_purchased", session_id=1)でNameError: name 'pkg_resources' is not defined　と言われる。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;pip install "setuptools&amp;lt;70.0.0"&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Successfully installed setuptools-69.5.1&lt;/p&gt;
&lt;p&gt;無事にpycaretは実行できるようになった。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;pip freeze &amp;gt; before_seaborn.txt
# conda list --export &amp;gt; conda_env_before_seaborn.txt # 上と同じなのでやらなくていい

conda list &amp;gt; conda_list_before_seaborn.txt
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;とか思ってたが見落としてただけでseaborn入ってたー&lt;/p&gt;
&lt;p&gt;なのでこれでひとまずOKとして終了&lt;/p&gt;

&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;streamlit&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;import streamlit as st
# に続けてだいたいいつもの感じでpythonコード書いておいて
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;hoge.pyで保存しておいて、ターミナルで&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;streamlit run hoge.py
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;とすることで、ブラウザ起動して実行できる&lt;/p&gt;





&lt;div&gt;
  &lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
  &lt;!--respo--&gt;
  &lt;br /&gt;
  &lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;
  &lt;script&gt;
    (adsbygoogle = window.adsbygoogle || []).push({});
  &lt;/script&gt;
&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2026/05/python.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-5575609843195514612</guid><pubDate>Mon, 24 Feb 2025 06:33:00 +0000</pubDate><atom:updated>2026-06-23T16:52:41.647+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">考え方</category><title>シグナル&amp;ノイズ</title><description>&lt;div&gt;
&lt;h2&gt;グーテンベルクの発明&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;大衆が情報を利用できるようになった、様々なアイディアが一気に広まった&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;予想しなかったことが起きるようになった&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;産業革命、急激な成長と変化の時代へ突入&lt;/li&gt;
&lt;li&gt;ヨーロッパでは啓蒙思想の広まり、アメリカには合衆国が建国&lt;/li&gt;
&lt;li&gt;聖戦も生み出した、行く末を予言し、運命を選ぶことができると人間が信じるようになった&lt;/li&gt;
&lt;li&gt;人類史上の血まみれの時代&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;グーテンベルク以前、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;書物はあった&lt;/li&gt;
&lt;li&gt;が、数は少なく、広く読まれるものではなかった、貴族階級の贅沢品&lt;/li&gt;
&lt;li&gt;手作業での複製、間違いの発生、知識の蓄積は難しい&lt;/li&gt;
&lt;li&gt;記録を残す＜記録が消える&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;mark&gt;印刷機以降&lt;/mark&gt;、人類の知識は急速に蓄積&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;間違いの質が変わった、写し間違いは減った&lt;/li&gt;
&lt;li&gt;が、&lt;mark&gt;間違いの（も）大量生産&lt;/mark&gt;&lt;/li&gt;
&lt;li&gt;ネットも同様、失敗するときは大きく失敗する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ネットの登場、情報の質にさらにばらつきが出てきた&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;多くのアイディアが人の目にさらされる、混乱が生じる&lt;/li&gt;
&lt;li&gt;情報をどう扱うべきか、&lt;mark&gt;有用な情報とそうでない情報をどう区別するか&lt;/mark&gt;&lt;/li&gt;
&lt;li&gt;これらへの理解が情報の増加に追いつかなかった&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;よい情報だけではなく、悪い情報も広める可能性を生み出した&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;悪い情報は予想以上の影響を及ぼす可能性（グローバル金融危機）&lt;/li&gt;
&lt;li&gt;規制は問題解決の一つの手段、だが自分たちの中に答えを見つけるのを避けるための言い訳では？&lt;/li&gt;
&lt;li&gt;認めよう、私たちの予測には問題がある、&lt;/li&gt;
&lt;li&gt;&lt;mark&gt;人間はものごとを予測するのが大好きだが、決して上手ではない&lt;/mark&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;知識の共有が進んだ結果、国や宗教が孤立するようになった&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;あまりにも多くの情報を手にすると、本能的に気に入ったものを選ぶようになる、それ以外は無視&lt;/li&gt;
&lt;li&gt;自主的なフィルターバブルの発生&lt;/li&gt;
&lt;li&gt;同じ選択をした人は味方、それ以外は敵とみなしやすくなったのかもね&lt;/li&gt;
&lt;li&gt;シェイクスピア「ジュリアス・シーザー」シセロのセリフ （しかし）人間というものは、ものごとを自分の好きなように解釈して、本来の意味を見失うことがある&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;シグナル（信号）とノイズ（雑音）を区別するのは難しい&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;シグナル（真実）&lt;/li&gt;
&lt;li&gt;ノイズ（真実から目をそらさせるもの）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;データが語るストーリーは、自分が聞きたいと思っているものになりがち、しかもたいていの場合はハッピーエンド。&lt;br /&gt;「人はときに己の運命を支配する」カッシウス&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;prediction 予測&lt;ul&gt;
&lt;li&gt;預言者の言葉　（宿命、占い、迷信などとも近い）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;forecast ゲルマン語起源　プロテスタントの俗性&lt;ul&gt;
&lt;li&gt;不確実な状況で計画を立てること　慎重さ、洞察力、勤勉さ&lt;/li&gt;
&lt;li&gt;foresight（将来の展望、将来への配慮）に近い&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;人間の生物学的本能（ないパターンを見出してしまう）が情報豊富な現代社会でうまく機能するとも限らない&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;バイアスを意識しないと、得られる情報は増えないで減るだろう&lt;/li&gt;
&lt;li&gt;よりよい予測には、&lt;mark&gt;客観的な真実を信じて追求する姿勢&lt;/mark&gt;が不可欠&lt;/li&gt;
&lt;li&gt;客観的な真実の理解が不十分であることを認識すべき&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;予測と仮説&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;予測とは、主観的事実と客観的事実をつなぐもの&lt;/li&gt;
&lt;li&gt;仮説とは、現実の世界で、予測という手段を利用して検証されるもの&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;「ハリネズミと狐」&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;アイザイア・バーリンがトルストイについて書いたエッセイ&lt;/li&gt;
&lt;li&gt;古代ギリシャの詩人アルキロコスの一節&lt;/li&gt;
&lt;li&gt;「キツネはたくさんの小さなことを知っているが、ハリネズミは大きなことを1つ知っている」&lt;/li&gt;
&lt;/ul&gt;

&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align="left"&gt;ハリネズミの考え方&lt;/th&gt;
&lt;th align="left"&gt;キツネの考え方&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td align="left"&gt;&lt;strong&gt;専門的&lt;/strong&gt;　1つか2つの大きな問題を専門とすることが多い。分野外からの意見は疑う。&lt;/td&gt;
&lt;td align="left"&gt;&lt;strong&gt;総合的&lt;/strong&gt;　もともとの政治的立場にとらわれることなく、さまざまな分野に取り組む。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;&lt;strong&gt;硬直的&lt;/strong&gt;　全部をひっくるめたアプローチにこだわる。新しいデータは元のモデルを補強するために使う。&lt;/td&gt;
&lt;td align="left"&gt;&lt;strong&gt;柔軟&lt;/strong&gt;　最初のアプローチが機能するかどうかわからなければ、新しい方法を見つけたり、同時に複数の方法を試したりする。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;&lt;strong&gt;頑固&lt;/strong&gt;　間違いは運が悪かったと考えるか、特別な環境のせいにする。優れたモデルにも、ついていない日はある。&lt;/td&gt;
&lt;td align="left"&gt;&lt;strong&gt;自己批判的&lt;/strong&gt;　（うれしくはないが）すすんで自分の予測の間違いを認め、非難を受け入れる。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;&lt;strong&gt;秩序を求める&lt;/strong&gt;　ノイズのなかからシグナルを発見できれば、世界を支配するきわめて単純な原則を見つけることができると思っている。&lt;/td&gt;
&lt;td align="left"&gt;&lt;strong&gt;複雑さを受け入れる&lt;/strong&gt;　世界を複雑なものとして見ており、多くの基本的な問題は解決不能、あるいは本質的に予測不能だと思っている。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;&lt;strong&gt;自信がある&lt;/strong&gt;　あいまいな予測をすることはなく、意見を変えることをよしとしない。&lt;/td&gt;
&lt;td align="left"&gt;&lt;strong&gt;用心深い&lt;/strong&gt;　確率的な言葉で予測を表現し、断定を避ける。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;&lt;strong&gt;イデオロギー的&lt;/strong&gt;　より壮大な理論や闘争により、日々の多くの問題が解決されると思っている。&lt;/td&gt;
&lt;td align="left"&gt;&lt;strong&gt;経験的&lt;/strong&gt;　理論より経験を重視する。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;ハリネズミは予測が下手&lt;/td&gt;
&lt;td align="left"&gt;キツネは予測が上手&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;  
&lt;br /&gt;


&lt;h2&gt;ハリネズミ&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;大きな考えを信じている人たち&lt;/li&gt;
&lt;li&gt;自然界の法則であるかのように機能する&lt;/li&gt;
&lt;li&gt;社会の全ての相互交流を実質的に支える基本原則があると信じている&lt;/li&gt;
&lt;li&gt;カール・マルクスと階級闘争、フロイトと無意識、&lt;/li&gt;
&lt;li&gt;マルコム・グラッドウェルと「ティッピング・ポイント」&lt;/li&gt;
&lt;li&gt;大物を狙う狩猟者&lt;/li&gt;
&lt;li&gt;自分の関心と分析を区別することが苦手&lt;/li&gt;
&lt;li&gt;事実と価値観が一緒になった曖昧模糊な融合物を作り上げる&lt;/li&gt;
&lt;li&gt;証拠には偏見を持って臨む&lt;/li&gt;
&lt;li&gt;そこにあるものではなく、見たいと思うものを見る&lt;/li&gt;
&lt;li&gt;たくさんの情報から物語を作る（現実よりわかりやすい、主役と悪役、勝者と敗者、クライマックスと結末）&lt;/li&gt;
&lt;li&gt;証拠を批判的に検討することができなくなる&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;キツネ&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;mark&gt;原則をもたない&lt;/mark&gt;生き物&lt;/li&gt;
&lt;li&gt;たくさんの小さな考えを信じており、問題に向けて&lt;mark&gt;様々なアプローチ&lt;/mark&gt;を試みる&lt;/li&gt;
&lt;li&gt;微妙な差異や不確実性、複雑性、異なる意見に寛容&lt;/li&gt;
&lt;li&gt;採集者&lt;/li&gt;
&lt;li&gt;理想と現実を分けて考えることができる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ハリネズミかキツネかは、接する情報が増えたときに、予測の正答率が上がるか下がるかで判断できる。役に立たない情報は無視すればいい、ハリネズミはそれができない、自ら茨の道に迷い込む。&lt;/p&gt;
&lt;p&gt;確率論的に考える。結果を幅をもって示す、&lt;mark&gt;現実世界における不確実性を正直に表現&lt;/mark&gt;する。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;今日の予測は残りの人生で最初の予測である&lt;/li&gt;
&lt;li&gt;その時点その時点でベストの予測をする&lt;/li&gt;
&lt;li&gt;昨日の予測が間違っていたと考える理由があるならば、それにしがみつく理由はない&lt;/li&gt;
&lt;li&gt;制限のある情報を最大限に利用するためには、新しく有用な情報が利用可能になった時点で予測を更新する必要がある&lt;/li&gt;
&lt;li&gt;恥を掻くのを恐れて予測を変更しない＝勇気のなさを示す&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;コンセンサスを探す&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自分の予測がほかと大きく違っていないか注意を払う（周りを気にして順応するのとは違う）&lt;/li&gt;
&lt;li&gt;いつでも集合知が素晴らしいわけではないが（集合愚もある）1つの問題を複数の視点から見ることが有利に働く&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;キツネは&lt;/h2&gt;
&lt;p&gt;ハリネズミが集まって行うようなことを、自らの頭の中でやってしまう&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;コンセンサスに至るプロセスを自ら実行する能力を持っている&lt;/li&gt;
&lt;li&gt;専門家に訊かずに自分自身に問いかける&lt;/li&gt;
&lt;li&gt;1つの情報に捉われすぎることなく、いくつもの情報に目配りする（いろいろな考えを持つ人々の集団なら自然におこなうことだ）。さもなければ高い代償を払うことになる&lt;/li&gt;
&lt;li&gt;&lt;mark&gt;人間の判断に限界があることを理解&lt;/mark&gt;している&lt;/li&gt;
&lt;li&gt;限界を知ることは、よりよい予測につながる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;予測を導き出すのは人間の判断、人間の判断があるところにバイアスあり&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自分の仮定が予測にどのような影響を与えるかを常に自問しないと&lt;/li&gt;
&lt;li&gt;ノイズの多いデータから整然とした物語を編みだそうとするので客観的であろうとするのは大変だ&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;トーマス・ベイズ&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;偶然論における問題解決のための小論 1763 by リチャード・プライス&lt;/li&gt;
&lt;li&gt;未知のデータを前にした時、私たちは世界に対する確率的な信念をどのように形成するか&lt;/li&gt;
&lt;li&gt;証拠を集めれば集めるほど真実に近づいていく、数学的哲学的に表現された、世界を学ぶ方法&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;ピエール・シモン・ラプラス&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;自然の完璧さと、人間の理解の不完全性を区別&lt;/li&gt;
&lt;li&gt;知識と、無知との中間に位置するのが確率&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;フィッシャーたち&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;ベイズの定理の公式そのものは問題にしていない&lt;/li&gt;
&lt;li&gt;実験する前にどうなるか見積もるなんてあまりにも主観的、科学の客観性という考えに反するのでは？&lt;/li&gt;
&lt;li&gt;バイアスの入る余地のない統計的モデルの構築を目指す&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;頻度主義&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;不確実性という統計の問題は、母集団全体を扱わずに標本データだけを頼りにすることから生じる&lt;/li&gt;
&lt;li&gt;頻度主義で説明できる唯一のエラーである標本誤差は、誤差全体の一部でしかない&lt;/li&gt;
&lt;li&gt;バイアスのかかった調査をやるのであればどれだけやっても意味がない、そもそも的外れなのだから&lt;/li&gt;
&lt;li&gt;予測がうまくいかない理由であるヒューマンエラーに背を向けている&lt;/li&gt;
&lt;li&gt;不確実性は、世界を理解する人間の能力に付随するものではなく、実験に付随するものと捉えている&lt;/li&gt;
&lt;li&gt;データを集めれば集めるほど間違いは減り、ゼロに近づくはずだ&lt;/li&gt;
&lt;li&gt;フィッシャー晩年にはベイズを称賛するようなことも言っている&lt;ul&gt;
&lt;li&gt;ベイズ理論と頻度主義アプローチの折衷方法論も考えてたらしい&lt;/li&gt;
&lt;li&gt;十分なデータを集めれば全ての仮説を検証することができ、完璧な結論に達することができるという考え&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;信念に完璧な客観性、合理性、正確性を持たせることは不可能&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;けれども、主観性、非合理性、そして間違いを少しでも減らす努力はできる&lt;/li&gt;
&lt;li&gt;自分の信念に基づいて予測をすることをは、自分自身を試す一番の、そして恐らくは唯一の方法である&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;情報は少ないより多い方がいい、ただし品質が管理されているものでなければならない&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;道具はきちんと扱えるようにしておく、&lt;/li&gt;
&lt;li&gt;一流の技術を持っているに越したことはないが、持っている技術を使いこなすことの方が大切だ&lt;/li&gt;
&lt;li&gt;正確性には注意しなければならない&lt;/li&gt;
&lt;li&gt;客観的な事実を重視すべきだ&lt;/li&gt;
&lt;li&gt;誰かを喜ばせる予測や都合のいい予測ばかりをしようとしてはならない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;mark&gt;人間は、不確実な世界に住む、不完全な生き物だ&lt;/mark&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;予測が大きく外れたとしても、それが自分の責任なのか、&lt;/li&gt;
&lt;li&gt;つまりモデルに欠陥があったのか、それともただ不運だったのかは完全にはわからない&lt;/li&gt;
&lt;li&gt;解決先は、ノイズとシグナルがこの世界から亡くならないことを認識し、あるがままに評価するように努めることだ&lt;/li&gt;
&lt;li&gt;（私たちの判断は誤るものだ、誤りは避けられない、完璧な予測とはありえない、0%と100%を取ることはない、限りなく0%に近い、100%に近いというだけ）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;健全な懐疑心&lt;/h2&gt;
&lt;p&gt;3種類の懐疑論&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;経済的なインセンティブを持っていやしないか&lt;/li&gt;
&lt;li&gt;自立心が称賛されるアメリカでは顕著＝反対主義、どのような議論においても、大勢の側につくことに利益を見出す人がいる一方で、迫害されるアウトサイダーとしての立場に身を置こうとする人&lt;/li&gt;
&lt;li&gt;科学的な懐疑心&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;予測の不確実性は、行動を起こさない理由にはならない&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不確実性があるからこそ行動しなくてはならない&lt;/li&gt;
&lt;li&gt;多くの人がデータに基づいた話をしているかのようなふりをするけれど、データを確認している人なんていない。断言できるよ&lt;/li&gt;
&lt;li&gt;ドラマチックに語れば語るほど、新聞に引用される確率は高まる&lt;/li&gt;
&lt;li&gt;確率論的に表現しているものを探す&lt;/li&gt;
&lt;li&gt;複雑な現象について自信たっぷりに予測を発表している人&lt;ul&gt;
&lt;li&gt;問題を慎重に検討していない&lt;/li&gt;
&lt;li&gt;過剰適合している統計モデルを使用している&lt;/li&gt;
&lt;li&gt;真実を追求するより名前をなすことに関心がある&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;シグナルとノイズ&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;シグナル：統計や予測の問題の裏にある真実を示唆する&lt;/li&gt;
&lt;li&gt;ノイズ：ランダムなパターンを持ち、シグナルと間違ってしまうもの&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ロベルタ・ウォールステッター&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;馴染みのないことと、起こりそうもないことを取り違える&lt;/li&gt;
&lt;li&gt;真剣に考えたことのない偶発的な事例は奇妙に見える&lt;/li&gt;
&lt;li&gt;奇妙に見えることは起こりそうもないと思う&lt;/li&gt;
&lt;li&gt;起こりそうもないことは真剣に考える必要はない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;アメリカはほとんど攻撃されたことがない&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ハワイはアメリカの一部だ&lt;/li&gt;
&lt;li&gt;ハワイが攻撃されることはないだろう&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ラムズフェルド2002記者会見。イラクの大量破壊兵器の存在についての質問への回答の一部&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;未知の未知&lt;/li&gt;
&lt;li&gt;既知の未知&lt;/li&gt;
&lt;li&gt;既知の既知&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;未知の未知＝考えたこともない偶発的な出来事&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ある種の心の壁を作ってしまう&lt;/li&gt;
&lt;li&gt;想像できるほどの経験もない&lt;/li&gt;
&lt;li&gt;そもそも存在しないかのように感じてしまう&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;911委員会報告&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;シグナルの重要性を見抜けなかった原因&lt;/li&gt;
&lt;li&gt;政策の失敗、能力の欠如、管理の失敗、（最も重要なもの）想像力の欠如&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ベイズの定理を使って確率を考える方法&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不確実な要素が多い中で意思決定をする時に役立つ&lt;/li&gt;
&lt;li&gt;一度にたくさんの仮説を持ち、確率論的に考え、新しい情報に接するたびに更新する&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;情報アナリストは間違った時には責められる&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;うまくやった時にはほとんど気づいてもらえない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;mark&gt;予測には、好奇心と懐疑心&lt;/mark&gt;のバランスが大切、両者は共存できる&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自分の理論を詳細に調べれば調べるほど、世界が不確実であることを受け入れられるようになる&lt;/li&gt;
&lt;li&gt;完璧な予測など不可能だということがわかる&lt;/li&gt;
&lt;li&gt;予測が外れることに対する心配が減る&lt;/li&gt;
&lt;li&gt;もっと自由に考えることができるようになる&lt;/li&gt;
&lt;li&gt;知らないことを知ることで（未知の未知を既知の未知に変えることで）、予測の精度を上げることができる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;知っていることと、知っていると思っていることの溝&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;（予測のばらつきが小さいことを、的中率が高いと見誤るなど）を埋めるための戦略&lt;/li&gt;
&lt;li&gt;大きくジャンプし、その後小さなステップを重ねる&lt;/li&gt;
&lt;li&gt;最初のジャンプ＝ベイズ的に予測と確率を考えること&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;予測は目的であると同時に手段である&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;予測は仮説の検証において、つまり全ての科学において中心的な役割を担う&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;よいモデルは、たとえ予測が当たらなくても役に立つ&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;どんな予測もたいてい間違うことがわかる&lt;/li&gt;
&lt;li&gt;なぜ間違うのか理解しようとする&lt;/li&gt;
&lt;li&gt;そして間違った時にどうするのか、間違った時のコストを最小にするにはどうすればいいかを考える&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ドレイクの方程式だって、不確実性が大きすぎて、一種の思考実験のようなものだし、生産的な結果を出せるようになるのはずっと先なんだろうけども、問題の範囲を理解するのに役立つことは間違いない。&lt;/p&gt;
&lt;p&gt;世の中を推定するためのツールは統計モデルだけではない&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;言語もモデルの一形態&lt;/li&gt;
&lt;li&gt;互いに伝え合うために使うある種の推定&lt;/li&gt;
&lt;li&gt;全ての言語はそれぞれ異なる言葉から成り立っている&lt;/li&gt;
&lt;li&gt;同じ世界を表現しようとしても使われる言葉は違う&lt;/li&gt;
&lt;li&gt;コンピュータ言語もそうだよね&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;モデルは世界の複雑さを理解するためのツール&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;世界そのものの代用品にはならない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;MIT神経科学者トマソ・ポッジオ&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;人間はほかの動物よりも、パターンを見つけ出す必要に迫られている&lt;/li&gt;
&lt;li&gt;パターン認識は進化で習得、個人の力によるものではない&lt;/li&gt;
&lt;li&gt;ただし、ランダムなノイズの中にパターンを見出してしまう&lt;/li&gt;
&lt;li&gt;脳での情報処理は推定作業の連続のようなもの&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;世界に対する主観的な認識＝真実を「推定」したもの&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;推定の程度は問題ではない&lt;/li&gt;
&lt;li&gt;問題なのは、推定を現実だと思い込むこと&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;シグナルとノイズを区別するためには？&lt;/h2&gt;
&lt;p&gt;&lt;mark&gt;自己認識が必要&lt;/mark&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;予測できないものを受け入れる冷静さ&lt;/li&gt;
&lt;li&gt;予測できるものを予測する勇気&lt;/li&gt;
&lt;li&gt;その違いを見分ける知恵&lt;/li&gt;
&lt;/ul&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;解説：西内啓&lt;/h2&gt;
&lt;p&gt;情報の出所だけでなく、予測をおこなう（あるいはデータを眺める）者自身が&lt;mark&gt;どのようなバイアスを持っているのか意識&lt;/mark&gt;する（常にその人の主観が反映される、とも表現できる）&lt;/p&gt;
&lt;h3&gt;ニュートン&lt;/h3&gt;
&lt;p&gt;「物体は力が働かない限り同じ向き、速度で運動し続けるものとする」という前提から、世界の全ての物の動きを説明、予測できるようになった&lt;/p&gt;
&lt;p&gt;経済学も同様。人間一人ひとりの選択や満足度に関する前提から、世界の中でお金や物がどう動くのかを理解する学問&lt;/p&gt;
&lt;h3&gt;19世紀に発達した多くの学問&lt;/h3&gt;
&lt;p&gt;こうした演繹的な考え方と、シンプルな前提、法則性から世界の全てを解き明かしたいという野心に支えられていたのでは？&lt;/p&gt;
&lt;p&gt;物理学、経済学は数学的にその法則性を記述していた&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;カール・マルクスの唯物史観&lt;ul&gt;
&lt;li&gt;人類の歴史とはすなわち生産手段の発展によって説明される、というシンプルな法則から人類の行く末を予測しようとしていた&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;りんごの落下速度から星の軌跡に至るまで、シンプルな法則ですべてを予測可能にしたという、あまりにまばゆい古典物理学という成功事例があったから&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;フィッシャー：制御しやすい&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;どのように肥料をやれば農作物の収穫量が増えるか&lt;/li&gt;
&lt;li&gt;人間の手でコントロールしやすい領域から生まれた&lt;/li&gt;
&lt;li&gt;将来の予測よりも、予測を覆す、今を変えるアクションに強い関心を持つ&lt;/li&gt;
&lt;li&gt;「洞察」のためのモデル&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;計量経済学（経済学における統計解析手法の応用）&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;ジェヴォンズ以降も、景気循環や株価のようにマクロで人間の制御が難しいものの予測に利用されることが多かった&lt;/li&gt;
&lt;li&gt;当時はデータの収集コストおよび集計コストがいまよりはるかに莫大&lt;/li&gt;
&lt;li&gt;分析して意味のありそうなまとまりのあるデータはマクロデータが主とならざるをえなかった？&lt;/li&gt;
&lt;li&gt;「予測」のためのモデル&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;「洞察」か「予測」か&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;医学で性別や年代、喫煙や運動などの生活習慣といった項目と死亡の関係性を統計モデルで明らかにしたとする&lt;/li&gt;
&lt;li&gt;ある人の属性や生活習慣といった情報を用いて「何歳で死亡するか」予測をおこなうことはできる&lt;/li&gt;
&lt;li&gt;が仮にその予測が何歳かズレていたとしても大きな問題とは考えない&lt;/li&gt;
&lt;li&gt;それよりも、寿命を縮めるような生活習慣を適切に発見しその改善を通して健康増進のチャンスが見つかったことの方が重要視される&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;フィッシャー農場のように人間の手でコントロールしやすい要素がモデルに多く含まれている&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;だから、（再掲）将来の予測よりも、予測を覆す、今を変えるアクションに強い関心を持つ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;こんな場合は&lt;mark&gt;「洞察」のためのモデル&lt;/mark&gt;が重要&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;どの顧客に重点を置いて広告を出稿すればいいか&lt;/li&gt;
&lt;li&gt;従業員の生産性を上げるための方法を知りたい&lt;/li&gt;
&lt;li&gt;広告や従業員をコントロールするやり方の発見に重きが置かれる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;こんな場合は&lt;mark&gt;「予測」のためのモデル&lt;/mark&gt;が重要&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;出荷タイミング予測して在庫コストを最適化したい&lt;/li&gt;
&lt;li&gt;調達する材料価格の変動を予測してリスクヘッジしたい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;本書で紹介される多くのノイズの話は、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;「洞察」のためのモデルにも関係してくる&lt;/li&gt;
&lt;li&gt;「予測」のためのモデルにおいては多くの場合観察データのみによる予測しかおこなえない、がためにノイズが問題になる&lt;/li&gt;
&lt;li&gt;だから&lt;mark&gt;確率的思考が有効&lt;/mark&gt;になる&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ロジャー・ベーコン　科学の方法を実験と観察に大別&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;経済マクロ指標、天候、災害、テロリズムの多くは観察によるデータ収集しか許されない&lt;/li&gt;
&lt;li&gt;人間の手によってなんらかの条件を変えた場合、どのような変化が起こるか検証が許されない&lt;/li&gt;
&lt;li&gt;予測のためのモデルを作るために、実験環境を作るのが無理、人為的介入がそもそもできない、倫理的に許されない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;医学、農学、工学など、実験、なかでもRCTができるというのはとても有利&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ノイズの多くは回避できる&lt;/li&gt;
&lt;li&gt;がために予測のためのモデルに関心が向きにくい&lt;/li&gt;
&lt;li&gt;洞察のためのモデル、現世利益な思考になりがち、広告運用もそうだな&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;近年の経済学　個人レベルの行動や選択についてはRCTによる実証研究がさかん&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;マクロな政策効果の実証などにおいても、たまたま先行してある政策を実施していた州、&lt;/li&gt;
&lt;li&gt;そうでない隣の州の間にどんな変化が見られたのか、&lt;/li&gt;
&lt;li&gt;自然実験という名でおこなわれている&lt;/li&gt;
&lt;li&gt;偶然できあがった観察調査みたいなものである&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;</description><link>http://thinknote.blogspot.com/2025/02/blog-post_20.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-4782929891119959226</guid><pubDate>Mon, 24 Feb 2025 06:26:00 +0000</pubDate><atom:updated>2026-04-29T08:35:17.507+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">経済学</category><title>出社が楽しい経済学</title><description>&lt;div&gt;
&lt;h2&gt;&lt;a href="https://amzn.to/3QpewEy"&gt;出社が楽しい経済学&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;吉本 佳生&lt;/p&gt;
&lt;h3&gt;サンクコスト&lt;/h3&gt;
&lt;p&gt;sunk cost 埋没費用&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;すでに投資してしまい回収できない費用&lt;/li&gt;
&lt;li&gt;サンクコストに縛られて合理的な判断がしにくくなる&lt;/li&gt;
&lt;li&gt;さらなる損失を招くこともある&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;回収できないコストは忘れる。食べ放題のお店に入ったら、支払った額はもうサンクコスト、元を取ろうと食べすぎない&lt;/p&gt;
&lt;h3&gt;機会費用&lt;/h3&gt;
&lt;p&gt;1時間の仕事価値が高い人は、安いが時間かかる電車よりも、高いが速く着くタクシー移動で時間節約した方が合理的&lt;/p&gt;
&lt;p&gt;お金以外のコストも考える。年収1,000万円から800万円に転職しても、満足度が200万円以上あるなら機会費用的には転職は成功（問題はお金以外のコストの金額換算は難しい＝機会費用を正確に算出するのは難しい）&lt;/p&gt;
&lt;p&gt;経済効果の試算はプラス面の単純集計であることが多い。機会費用の考えは入ってないので、マイナス面の想像もしてみる&lt;/p&gt;
&lt;p&gt;他人の機会費用も考える。非同期で繋がることのよさは、他人の機会費用への配慮でもある&lt;/p&gt;
&lt;h3&gt;比較優位&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;誰でも必ずなんらかの比較優位を持つ&lt;/li&gt;
&lt;li&gt;同じ場所にずっといると自分では気づきにくそう&lt;ul&gt;
&lt;li&gt;ジョーダンの比較優位がバスケットにあったことは、野球の世界に行ってみないと見えなかったのかも&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;比較優位は場所（周りとの関係性、周りの変化）や時間で変化する&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;インセンティブ&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;デポジット制度 広報や監視に莫大なコストをかけるよりも、低コストで強い効果を生む&lt;/li&gt;
&lt;li&gt;知的財産権 将来の利益を保護することを約束することで強いインセンティブを与えて努力してもらうためのインセンティブ&lt;/li&gt;
&lt;li&gt;インセンティブの歪み 低所得者でもアパート借りれるようにと政府が家賃値上げを規制したところ、大家さんには建物の価値を高めて住みやすいアパートにしようというインセンティブが働かなくなり、低所得者層が住むアパートの環境は悪化、住環境は以前よりも悪化&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;モラルハザード&lt;/h3&gt;
&lt;p&gt;倫理観の欠如というよりは、何らかの契約をした後で、依頼人が観察できないところで、依頼された側（代理人）がとる行動が依頼人に不利益をもたらす構造上の問題&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自動車保険とドライバーの運転態度&lt;ul&gt;
&lt;li&gt;ドライバー側が、事故を起こしても保険でなんとかなるからと安全運転を心がけなくなる恐れ。&lt;/li&gt;
&lt;li&gt;保険会社側が、お客にわからないところで過小査定する恐れ&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;偽装問題&lt;ul&gt;
&lt;li&gt;ブランドをありがたすぎて、品質を見抜く仕組みを持たない、見抜く研鑽を積んでこなかった結果である。&lt;/li&gt;
&lt;li&gt;偽装した側だけに原因があるわけでもない&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;逆選択&lt;/h3&gt;
&lt;p&gt;高品質と低品質が混在した市場が放置されてると、高品質は市場から消え、低品質ばかりになる。&lt;/p&gt;
&lt;p&gt;品質が隠れた情報になってしまっているため、購入予定者は安きに流れる、高品質（≒高価格）は売れなくなる。投資詐欺、出会い系サイトなど。&lt;/p&gt;
&lt;p&gt;逆選択を防ぐにはシグナリング。重要な情報を握っている、情報面で優位な側の方が、（品質についての）隠れた情報を発信する。学歴シグナル、人気店の行列、建物の立派さ、購入後保証など。&lt;/p&gt;
&lt;p&gt;スクリーニング（←→シグナリング）。情報を握っていない側が、なんらかの努力をして相手から情報を引き出そうとすること。&lt;/p&gt;
&lt;h3&gt;価格差別&lt;/h3&gt;
&lt;p&gt;高くても買いそうな人には高く売り、安くないと買わない相手には安く売る。どの群に属するかを見分ける必要がある（スクリーニング）。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;価格弾力性が小さい群&lt;ul&gt;
&lt;li&gt;所得水準が高めで時間に余裕がないから、少々価格が高くても買ってくれる。&lt;/li&gt;
&lt;li&gt;値上げしても需要量はさほど減らなさそう&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;価格弾力性が大きい群&lt;ul&gt;
&lt;li&gt;所得水準が低めで時間に余裕がある、節約志向が強い、ちょっとの値上げにも反応しやすい。&lt;/li&gt;
&lt;li&gt;少し値下げすると大幅に需要量を増やしてくれそう&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;自己選択型の価格差別 &lt;ul&gt;
&lt;li&gt;ちっぽけで保管が面倒なクーポン券。&lt;/li&gt;
&lt;li&gt;複雑な料金プラン、発売からの経過年月で価格が変動する。&lt;/li&gt;
&lt;li&gt;期間限定のバーゲンセール。&lt;/li&gt;
&lt;li&gt;重要なことは小さめに、わかりやすいことは大きく書いた広告。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;裁定&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;mark&gt;同じ時点に異なる市場で&lt;/mark&gt;価格差があるときに安く買って高く売る取引&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;投機&lt;/strong&gt;は&lt;mark&gt;異なる時点&lt;/mark&gt;の価格差を利用する取引&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;裁定が働くと一物一価に&lt;ul&gt;
&lt;li&gt;市場を統合する&lt;/li&gt;
&lt;li&gt;似たような機能・性質をもち、代替性が高い商品やサービスの間でも働く&lt;ul&gt;
&lt;li&gt;石油価格とトウモロコシ（バイオエタノール）価格の連動性&lt;/li&gt;
&lt;li&gt;新幹線と飛行機&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;取引コストが裁定を阻む&lt;ul&gt;
&lt;li&gt;取引コストがあるから電気街ができる&lt;/li&gt;
&lt;li&gt;ITの進化は取引コストを下げた→裁定が働きやすくなった&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;幕末日本では金と銀の交換比率が1:5 海外は1:15&lt;/li&gt;
&lt;li&gt;鎖国解禁により外国商人が日本に銀を持ち込んで金に交換、国内の金が大量に海外流出（裁定が起きた）&lt;/li&gt;
&lt;li&gt;国内は銀余り。通貨としての銀の価値が暴落。インフレ発生&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;囚人のジレンマ&lt;/h3&gt;
&lt;p&gt;正直者はバカを見る。繰り返しの囚人のジレンマ&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;他店よりも安くします宣言＝しっぺ返しの宣言&lt;/li&gt;
&lt;li&gt;値下げには値下げで対抗するけど自分からは値下げしない&lt;/li&gt;
&lt;li&gt;相手の値下げ牽制、協調を引き出す（暗黙の共謀）&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;しっぺ返し戦略で最初は協調を選ぶ&lt;/li&gt;
&lt;li&gt;2回目以降は前回相手が選択したのと同じ選択をする&lt;/li&gt;
&lt;li&gt;拘束力、協定がないと、約束しても結局裏切り合う&lt;/li&gt;
&lt;li&gt;当事者が多いと協定が結びにくく、囚人のジレンマから抜け出しにくい&lt;/li&gt;
&lt;li&gt;適度な緊張感を持った長期の付き合いが問題を解決する&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;共有地の悲劇&lt;/h3&gt;
&lt;p&gt;フリーライダーが発生する。全体の調整役がいない場合どうするか&lt;/p&gt;
&lt;p&gt;割引全体価値  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;金利が年10%の場合、現時点では909万円預ければ1年で91万円金利がつくので、1年後に1,000万円になる&lt;/li&gt;
&lt;li&gt;1年後の1,000万円の割引現在価値は909万円である&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;将来の金額と現在の金額を比較する場合、将来の金額から金利分を割り引いて、現時点での評価に揃える必要がある&lt;/p&gt;
&lt;h4&gt;ネットワーク外部性&lt;/h4&gt;
&lt;p&gt;利用者が増えるとネットワークの利便性が高まる&lt;/p&gt;
&lt;p&gt;ネットワーク外部性が強いネットワークは、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;急激に拡大するか（人気者はますます人気者に）、&lt;/li&gt;
&lt;li&gt;拡大できずに衰退する（カラーファックスの低迷）かの両極端な結果になりやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;グラハム・ベル&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;音声学を研究、モールス信号に音をのせる電話機の開発&lt;/li&gt;
&lt;li&gt;当初はおもちゃだと思われて広がらなかった、電話機をリースで貸すことで加入者を増やす、通信網が広がる、便利さが増す、加入者がさらに増加する、全米を覆う通信網のできあがり&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
----
&lt;br&gt;

&lt;h2&gt;&lt;a href="https://amzn.to/4mTdblf"&gt;出社が楽しい経済学2&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;吉本 佳生&lt;/p&gt;
&lt;h3&gt;ロックイン&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;いろいろな選択ができるはずなのに、入る店などが固定してしまうこと&lt;/li&gt;
&lt;li&gt;いつも同じブランドの商品ばかり買う&lt;/li&gt;
&lt;li&gt;いつも同じ相手を指名してサービスを受ける&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;偶然選んだお店にロックインしてしまう＝他の選択に変更しようとすると、スイッチングコスト（乗り換え費用）が余計にかかる&lt;/p&gt;
&lt;p&gt;経済現象を考えるときには、お金の支出の形でのコストだけでなく、努力や時間といったコストも重要&lt;/p&gt;
&lt;p&gt;ロックイン戦略＝顧客の囲い込み作戦&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;クーポン券、試食品、試供品、新装開店記念の半額券、ポイントカード&lt;/li&gt;
&lt;li&gt;貯めたポイントが無駄になる＝スイッチングコストを高める、ロックインを生じやすくする&lt;/li&gt;
&lt;li&gt;これをサンクコスト的に捉えられるかどうか&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;コンセントの規格のように、社会的な制度や国民全体のライフスタイルなどで一度ロックインが起きると、それを変革するのは極めて困難&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ミクロ経済学 個々の企業や消費者に注目して分析する&lt;/li&gt;
&lt;li&gt;ゲーム理論 企業や個人、国家などが繰り広げる様々な駆け引きを分析する&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="mdc-warn-box"&gt;
&lt;strong&gt;⚠️ warn&lt;/strong&gt;
&lt;ul&gt;
  &lt;li&gt;ふだんおこなってる買い物は、売り手（企業）と買い手（お客）の間の駆け引きの場。&lt;/li&gt;
  &lt;li&gt;知らないうちに企業との頭脳ゲームに参加させられている。&lt;/li&gt;
  &lt;li&gt;企業はライバル企業よりは与しやすい消費者との間で駆け引きをしがち。&lt;/li&gt;
  &lt;li&gt;賢い生活者（消費者）になるには、買い物の背後に様々な駆け引きが潜んでいると認識すること&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;




&lt;h3&gt;コミットメント&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;意図的に選択肢を限定する&lt;/li&gt;
&lt;li&gt;約束を信じてもらえないと意味がない&lt;/li&gt;
&lt;li&gt;日頃のおこないで一定の規律を守っている（ように見える）ことが駆け引きの有利さにつながる&lt;/li&gt;
&lt;li&gt;有利さを手に入れる手段の一つがコミットメント&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ホールドアップ問題&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自らにとって不利な選択を余儀なくされたりする問題&lt;/li&gt;
&lt;li&gt;コミットメントで自分を縛ったために陥る&lt;/li&gt;
&lt;li&gt;ロックインしすぎても生じる&lt;/li&gt;
&lt;li&gt;最初の時点で長期の契約を結ぶなどして回避可能&lt;/li&gt;
&lt;li&gt;特殊すぎるやり方、社内限定スキルなどもホールドアップにつながりやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;ヴェブレン効果&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;ヴェブレン効果&lt;ul&gt;
&lt;li&gt;見せびらかすための消費（見栄のための消費）、顕示的消費の場合、価格が高いほど満足度も高くなる現象。&lt;/li&gt;
&lt;li&gt;ワインなど。高級感があった方がいい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;スノッブ効果&lt;ul&gt;
&lt;li&gt;他人があまり持ってないものを持つことが満足感を高める。同じものに対する他人の消費量が少ないほど、自分の満足度が上がる&lt;/li&gt;
&lt;li&gt;アンティークなど。希少感があった方がいい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;バンドワゴン効果&lt;ul&gt;
&lt;li&gt;同じものに対する他人の消費量が多いほど、自分の満足度が上がる&lt;/li&gt;
&lt;li&gt;平成のルーズソックスなど。流行・ブームには乗っかりたくなる&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;プレミアム商品&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;発売当初は物珍しくてスノッブ効果が生まれる&lt;/li&gt;
&lt;li&gt;価格が高いことからヴェブレン効果も生まれる&lt;/li&gt;
&lt;li&gt;購入者が増えるとスノッブ効果は薄まる&lt;/li&gt;
&lt;li&gt;今度は人気だから欲しくなるバンドワゴン効果が生まれる&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="mdc-info-box"&gt;
&lt;strong&gt;✅ info&lt;/strong&gt;
&lt;p&gt;現代は、他の消費者との間で、高級感を競い、希少性を競い、流行への敏感さを競いながら様々な消費活動をおこなっている（消費の外部性: モノやサービスに対する他人の消費量が、自分の満足感に影響する）&lt;/p&gt;
&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;議題設定効果 人々の注目を一つの話題に集めてしまう効果。他の話題が良くも悪くも目立たなくなる。&lt;/li&gt;
&lt;li&gt;アナウンスメント効果 選挙期間中の優劣報道など。言われた方と逆に行動する、すると予測が外れる。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;基本的な経済学&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;個人も企業も極めて合理的に行動するはず&lt;/li&gt;
&lt;li&gt;個人は最大限の満足を追求し、企業は最大限の利益を追求する、その行動にムダがないはず&lt;/li&gt;
&lt;li&gt;価格は消費者の満足に直接影響を与えたりしない、と想定している。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;需要曲線では価格が上がれば消費量は減る（はず）。ところがヴェブレン効果が生じるとそうならない&lt;/p&gt;
&lt;h3&gt;心の会計&lt;/h3&gt;
&lt;p&gt;同じお金でも、人は心の中で色をつけてしまいがち&lt;/p&gt;
&lt;p&gt;ハウスマネー効果&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ギャンブルで得たお金は、汗水垂らして稼いだ給料とは違って浪費しがち&lt;/li&gt;
&lt;li&gt;同じお金であることに違いはないし、色をつけるのは非合理なのに&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;単なる2,000円引きよりも、一旦支払った後に2,000円キャッシュバックされると得をしたように感じる。ハウスマネー効果につながりがち&lt;/p&gt;
&lt;h4&gt;行動経済学&lt;/h4&gt;
&lt;p&gt;ときにムダなことをして満足や利益を減らしてしまう、この非合理性に心理学などの視点から光を当て、非合理的な行動に規則性を見つけ、非合理の根拠を論理的に説明する&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;プロスペクト理論&lt;ul&gt;
&lt;li&gt;損することを恐れがち。損失回避性&lt;/li&gt;
&lt;li&gt;現状維持バイアス&lt;/li&gt;
&lt;li&gt;保有効果 いったん保有したものには、その価値を高めに評価してしまい、手放して損することを嫌がる&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;アンカリング効果 無関係な数字でも、最初に印象に残った数字が後の判断に影響を及ぼす（割引セールの割引額に心動かされる）&lt;ul&gt;
&lt;li&gt;他人の判断に、自分の判断が影響される。&lt;/li&gt;
&lt;li&gt;自分の中だけでもある（無関係な数字が影響したりとか）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;確実性効果 ゼロや100%といった極端な数値に、過大な評価を寄せる心理。元本保証を極端にありがたがる&lt;/li&gt;
&lt;li&gt;ピーク・エンドの法則 一連の体験から得られる満足感は、ピーク時と終了時の満足感だけでほぼ決まる（ピーク時や終わりの印象で、全体の印象を決めてしまう）&lt;/li&gt;
&lt;li&gt;決定麻痺 選択肢が多すぎると決めかねてしまう（シーナ・アイエンガー）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;スクリーニング&lt;/h3&gt;
&lt;p&gt;相手の情報が十分にない（情報の非対称性が生じている）とき、こちらから何らかの仕掛けを用意し、それに対する相手の反応を利用して、相手から情報を引き出す。ふるいにかける、一見さんお断り。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;好きな相手に少し無理なお願いをして気持ちを確かめる&lt;/li&gt;
&lt;li&gt;従業員割引、エントリーシート&lt;/li&gt;
&lt;li&gt;年功序列型の賃金体系：離職しにくい人を集めやすい&lt;/li&gt;
&lt;li&gt;業績給・成果主義型の賃金体系：能力に自信がある人を集めやすい&lt;/li&gt;
&lt;li&gt;ちっぽけなクーポン券（自己選択型の価格差別）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;勝者の呪い&lt;/h3&gt;
&lt;p&gt;オークションの勝者になったが故に味わう後悔。勝って手に入れたモノの価値が、自分が支払った金額（落札価格）よりも低いと気がついて後悔する現象&lt;/p&gt;
&lt;p&gt;ウィリアム・ヴィックリー&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;セカンドプライスオークションを考案&lt;/li&gt;
&lt;li&gt;勝者になった買い手が後悔しなくて済むようにすることで、買い手が正直に行動するように仕向ける、という情報を引き出す工夫&lt;/li&gt;
&lt;li&gt;自動入札機能も同様&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;公開オークション イングリッシュオークション。安い価格から始めて、どんどん価格を上げていく&lt;/li&gt;
&lt;li&gt;ダッチオークション 高い価格から始めて、どんどん価格を下げていく。入札＝落札なのでイングリッシュオークションよりもサクサク終わる&lt;/li&gt;
&lt;li&gt;封印オークション 公共工事の入札など。参加者が他の入札者の価格を知らない状態で一度だけ希望価格を入札。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;レントシーキング&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;レント みんなが求めても供給量が増えない何かが生み出す報酬や、供給量が一定の、何かにつけられた価格&lt;/li&gt;
&lt;li&gt;レントシーキング なのにレントを求める奪い合いや、既得権益なレントを維持しようとする活動&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;禁酒法がレントを生み、ギャング発生・抗争になり、独占を生む&lt;/li&gt;
&lt;li&gt;禁酒法を廃止したらレントが消えた&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;レントシーキングを防ぐには&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;規制をやめてレントをなくす&lt;/li&gt;
&lt;li&gt;権限放棄する（レントシーキングがムダだと知らしめる、給与決定権が直属上司にない、ルールですのでの一点張りなど）&lt;/li&gt;
&lt;li&gt;レントを意識させない（社員の給与を明らかにしない、全員一律にする）&lt;ul&gt;
&lt;li&gt;昇進を一律年齢で決める、レントシーキング防げる、有能でなくとも昇進する&lt;/li&gt;
&lt;li&gt;上司が無能と嘆く羽目になるのは、レントシーキング防止制度の副作用かも？&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;規模の経済性&lt;/h3&gt;
&lt;p&gt;生産規模が大きくなるほど、製品1個あたりの生産費用（平均費用）が安くなる&lt;/p&gt;
&lt;p&gt;範囲の経済性 異なる複数のビジネスを組み合わせることでコスト（平均費用）が安くなる&lt;/p&gt;
&lt;/div&gt;
  
&lt;br /&gt;

&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2025/02/blog-post_24.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-4183022031729734547</guid><pubDate>Mon, 24 Feb 2025 06:08:00 +0000</pubDate><atom:updated>2026-04-27T09:57:19.818+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">メモ</category><title>ギリシャ文字一覧と日本語のローマ字表記の推奨形式</title><description>
&lt;style&gt;
    table {
        border-collapse: collapse;
        width: 100%;
        text-align: center;
    }
    th, td {
        border: 1px solid black;
        padding: 8px;
    }
    th {
        background-color: #f2f2f2;
    }
    td, th {
        border-left: none;
        border-right: none;
    }
    .divider {
        border-right: 2px solid black;
    }
    .outer {
        border: 1px solid black;
    }
&lt;/style&gt;

&lt;table class="outer"&gt;
    &lt;tr&gt;
        &lt;th&gt;大文字&lt;/th&gt;
        &lt;th&gt;小文字&lt;/th&gt;
        &lt;th class="divider"&gt;読み&lt;/th&gt;
        &lt;th&gt;大文字&lt;/th&gt;
        &lt;th&gt;小文字&lt;/th&gt;
        &lt;th class="divider"&gt;読み&lt;/th&gt;
        &lt;th&gt;大文字&lt;/th&gt;
        &lt;th&gt;小文字&lt;/th&gt;
        &lt;th&gt;読み&lt;/th&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;A&lt;/td&gt; &lt;td&gt;α&lt;/td&gt; &lt;td class="divider"&gt;alpha&lt;/td&gt;
        &lt;td&gt;I&lt;/td&gt; &lt;td&gt;ι&lt;/td&gt; &lt;td class="divider"&gt;iota&lt;/td&gt;
        &lt;td&gt;P&lt;/td&gt; &lt;td&gt;ρ&lt;/td&gt; &lt;td&gt;rho&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;B&lt;/td&gt; &lt;td&gt;β&lt;/td&gt; &lt;td class="divider"&gt;beta&lt;/td&gt;
        &lt;td&gt;K&lt;/td&gt; &lt;td&gt;κ&lt;/td&gt; &lt;td class="divider"&gt;kappa&lt;/td&gt;
        &lt;td&gt;Σ&lt;/td&gt; &lt;td&gt;σ&lt;/td&gt; &lt;td&gt;sigma&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;Γ&lt;/td&gt; &lt;td&gt;γ&lt;/td&gt; &lt;td class="divider"&gt;gamma&lt;/td&gt;
        &lt;td&gt;Λ&lt;/td&gt; &lt;td&gt;λ&lt;/td&gt; &lt;td class="divider"&gt;lambda&lt;/td&gt;
        &lt;td&gt;T&lt;/td&gt; &lt;td&gt;τ&lt;/td&gt; &lt;td&gt;tau&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;Δ&lt;/td&gt; &lt;td&gt;δ&lt;/td&gt; &lt;td class="divider"&gt;delta&lt;/td&gt;
        &lt;td&gt;M&lt;/td&gt; &lt;td&gt;μ&lt;/td&gt; &lt;td class="divider"&gt;mu&lt;/td&gt;
        &lt;td&gt;Y&lt;/td&gt; &lt;td&gt;υ&lt;/td&gt; &lt;td&gt;upsilon&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;E&lt;/td&gt; &lt;td&gt;ε&lt;/td&gt; &lt;td class="divider"&gt;epsilon&lt;/td&gt;
        &lt;td&gt;N&lt;/td&gt; &lt;td&gt;ν&lt;/td&gt; &lt;td class="divider"&gt;nu&lt;/td&gt;
        &lt;td&gt;Φ&lt;/td&gt; &lt;td&gt;φ&lt;/td&gt; &lt;td&gt;phi&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;Z&lt;/td&gt; &lt;td&gt;ζ&lt;/td&gt; &lt;td class="divider"&gt;zeta&lt;/td&gt;
        &lt;td&gt;Ξ&lt;/td&gt; &lt;td&gt;ξ&lt;/td&gt; &lt;td class="divider"&gt;xi&lt;/td&gt;
        &lt;td&gt;X&lt;/td&gt; &lt;td&gt;χ&lt;/td&gt; &lt;td&gt;chi&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;H&lt;/td&gt; &lt;td&gt;η&lt;/td&gt; &lt;td class="divider"&gt;eta&lt;/td&gt;
        &lt;td&gt;O&lt;/td&gt; &lt;td&gt;o&lt;/td&gt; &lt;td class="divider"&gt;omicron&lt;/td&gt;
        &lt;td&gt;Ψ&lt;/td&gt; &lt;td&gt;ψ&lt;/td&gt; &lt;td&gt;psi&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;Θ&lt;/td&gt; &lt;td&gt;θ&lt;/td&gt; &lt;td class="divider"&gt;theta&lt;/td&gt;
        &lt;td&gt;Π&lt;/td&gt; &lt;td&gt;π&lt;/td&gt; &lt;td class="divider"&gt;pi&lt;/td&gt;
        &lt;td&gt;Ω&lt;/td&gt; &lt;td&gt;ω&lt;/td&gt; &lt;td&gt;omega&lt;/td&gt;
    &lt;/tr&gt;
&lt;/table&gt;

&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;日本語のローマ字表記の推奨形式&lt;/h2&gt;
&lt;p&gt;日本語のローマ字表記の推奨形式
&lt;a href="http://park.itc.u-tokyo.ac.jp/eigo/UT-Komaba-Nihongo-no-romaji-hyoki-v1.pdf"&gt;http://park.itc.u-tokyo.ac.jp/eigo/UT-Komaba-Nihongo-no-romaji-hyoki-v1.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;ā ī ū ē ō&lt;/p&gt;




&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2025/02/blog-post.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-5491735953173083403</guid><pubDate>Mon, 24 Feb 2025 05:56:00 +0000</pubDate><atom:updated>2026-04-28T14:06:55.879+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">考え方</category><title>6つの帽子思考法</title><description>&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;⬜️白い帽子を被る。白い帽子を被ったら、状況を分析的に見るように心がける。感情ではなく、純粋な事実に基づいて、論理的に観察する。科学者や医者が着る白衣をイメージするといいね。&lt;u&gt;白い帽子はとても論理的&lt;/u&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;&#128997;赤い帽子を被る。すると、あなたはこの状況を感情的に見るようになる。赤い帽子を被ると、あなたは感情的になる。この状況をあなたはどう感じているか？　さまざまな選択肢に関して、あなたはどう感じるか？　&lt;u&gt;赤は感情の帽子&lt;/u&gt;だ。ハートの赤をイメージ&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;&#129000;黄色い帽子を被って、状況を観察する。黄色は楽観主義者の帽子だ。目の前の問題や選択肢をながめて、最善のシナリオは何と想像する。この状況から生まれるすべてのメリットを考えてみる。&lt;u&gt;黄色い帽子が楽観主義&lt;/u&gt;者の帽子であることを思い出すために、黄色い太陽や太陽が与える温かさ、ポジティブさをイメージ&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;⬛️黒い帽子を被って欲しい。&lt;u&gt;黒い帽子は裁判官であり批評家&lt;/u&gt;だ。状況を批判的に見る。慎重になるべき理由や、うまくいかない可能性を批判的に考える。裁判官の黒いローブをイメージ&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;&#129001;緑の帽子をかぶる。&lt;u&gt;緑は成長の帽子&lt;/u&gt;だ。問題を見つめるとき、新しい機会について考えてほしい。型にはまらず、想像力を働かせて、あらゆる可能性を考える。緑の植物が成長し花を咲かせるように、緑の帽子を被ったときは、新しい可能性について考える&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;&#128998;&lt;u&gt;青の帽子だ。これはマネージャーの帽子&lt;/u&gt;だ。他の帽子からの視点をすべてまとめたうえで、最終決断を下す。青空をイメージするといいかもしれない。青空が私たちを見下ろして、すべてを聞いているように、青い帽子をかぶったときはすべての視点をまとめたうえで、決断を下す&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;「6つの帽子思考法」のメリットは、自分の考えから抜け出せることにある。&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;というのも、たいていの人にとって、特定の思考が他より優勢だからだ。あなたは白い帽子のように、常に科学的な情報に基づいて物事を論理的に見るタイプの人間かもしれないし、赤い帽子のように感情を通して物事を見る傾向が強いかもしれない。黒い帽子のようになんでも批判的に見て、欠点を見つけるタイプかもしれないし、緑の帽子のように型にはまらない考え方ばかりする人かもしれない。&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; text-align: justify;"&gt;「6つの帽子思考法」は、他の視点から物事をみつめるきっかけを与えてくれる。その結果、より良い決断を下すことができる。&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"&gt;Speech by Jim Kwik&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px; min-height: 15px; text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p style="font-family: &amp;quot;Helvetica Neue&amp;quot;; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size-adjust: none; font-size: 13px; font-stretch: normal; font-style: normal; font-variant-alternates: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; font-variation-settings: normal; line-height: normal; margin: 0px;"&gt;&lt;a href="https://courrier.jp/columns/293661/"&gt;https://courrier.jp/columns/293661/&lt;/a&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2025/02/6.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-2876698784329781155</guid><pubDate>Mon, 10 Oct 2022 01:26:00 +0000</pubDate><atom:updated>2022-10-13T08:03:37.993+09:00</atom:updated><title>ベイズ推定</title><description>
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;div&gt;&lt;h2 style="text-align: left;"&gt;Books&lt;/h2&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="https://www.amazon.com/dp/B016060UHA" rel="nofollow" target="_blank"&gt;Bayesian Methods for Hackers: Probabilistic Programming and Bayesian Inference (Addison-Wesley Data &amp;amp; Analytics)&lt;/a&gt;&amp;nbsp;Cameron Davidson-Pilon&lt;/li&gt;&lt;li&gt;&lt;a href="https://amzn.to/3rILekp" rel="nofollow" target="_blank"&gt;Pythonで体験するベイズ推論:PyMCによるMCMC入門&lt;/a&gt;&amp;nbsp;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers" rel="nofollow" target="_blank"&gt;Python3 code&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="https://www.amazon.com/dp/0124058884" rel="nofollow" target="_blank"&gt;Doing Bayesian Data Analysis: A Tutorial with R, JAGS, and Stan&lt;/a&gt;&amp;nbsp;John Kruschke&lt;/li&gt;&lt;li&gt;&lt;a href="https://amzn.to/3MhyhHQ" rel="nofollow" target="_blank"&gt;ベイズ統計モデリング: R,JAGS, Stanによるチュートリアル&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="https://github.com/JWarmenhoven/DBDA-python" rel="nofollow" target="_blank"&gt;Python3 code&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="https://www.amazon.com/dp/B07CQ6W226" rel="nofollow" target="_blank"&gt;Mathematical Theory of Bayesian Statistics&lt;/a&gt;&amp;nbsp;Sumio Watanabe&lt;/li&gt;&lt;li&gt;&lt;a href="https://amzn.to/3SPrUOx" rel="nofollow" target="_blank"&gt;ベイズ統計の理論と方法&lt;/a&gt;&amp;nbsp;渡辺澄夫&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://watanabe-www.math.dis.titech.ac.jp/users/swatanab/index-j.html" rel="nofollow" target="_blank"&gt;University Lecture Materials&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;ベイズ推定をweb上で簡単に実行できるサービス&lt;/h2&gt;&lt;div&gt;以下はいずれもJavaScriptのみで動作する、webブラウザ上のみで実行できる、どこかにデータを送信したりはしていない&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style="text-align: left;"&gt;2群の平均の差&lt;/h3&gt;&lt;div&gt;&lt;a href="https://www.sumsar.net/best_online/" rel="nofollow" target="_blank"&gt;Bayesian Estimation Supersedes the t-test (BEST) - online&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style="text-align: left;"&gt;2群の比率の差&lt;/h3&gt;&lt;div&gt;Bayesian Estimation for the Difference of Proportions&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="https://sasasakaz.github.io/bayesian_for_diff_of_prop_on_2groups/" rel="nofollow" target="_blank"&gt;2グループのみ&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="https://sasasakaz.github.io/bayesian_for_diff_of_prop_on_5groups/" rel="nofollow" target="_blank"&gt;5グループまで&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;無情報事前分布を使っていて、事後分布が単峰なので、ベイズ推定の結果は、検定とほぼ同じになる&lt;/li&gt;&lt;li&gt;帰無仮説のような考え方に立っていないので偽陽性の心配はしなくていい&lt;/li&gt;&lt;ul&gt;&lt;li&gt;なので多重比較における補正は必要ない&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;ただしあくまで自身が仮定したモデルの中での推定値である、現実世界とモデルが一致しているわけではない、よってベイズ推定だからスゴい！ベイズ推定はエライ！というわけではない&lt;/li&gt;&lt;li&gt;ベイズ推定でも、検定でも、好きな方法でやってよい、そしてどちらの方法も真の値（現実世界）がズバリわかるわけではない、どちらの方法も間違っているという意識を忘れない&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style="text-align: left;"&gt;結果がほぼ同じと確認するための検定サイト&lt;/h4&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&lt;a href="https://keisan.casio.jp/exec/user/1489667281" rel="nofollow" target="_blank"&gt;2群の平均の差のt検定&lt;/a&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;等分散仮定は、仮定できない(Welch）を選択する、welchは等分散仮定できるときも使ってよい&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;a href="https://keisan.casio.jp/exec/user/1491916580" rel="nofollow" target="_blank"&gt;2つの比率の差の検定&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;</description><link>http://thinknote.blogspot.com/2022/10/blog-post.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-1819295258845326990</guid><pubDate>Sat, 05 Dec 2020 03:21:00 +0000</pubDate><atom:updated>2026-04-29T10:34:56.257+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">メモ</category><title>Apple Silicon MacBook Air</title><description>MacBook Air2013からApple Silicon MacBook Airのときにやったこと&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;移行アシスタントでやるとすぐに同じ状態で使えるのはいいんだが、要らなそうなファイルも持ってきてしまう。きれいさっぱりな状態にしたかったのでひとまず&lt;/div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;まっさらな状態で環境設定&lt;/li&gt;&lt;li&gt;ファイル共有で必要なファイルだけコピペ&lt;/li&gt;&lt;li&gt;隠しファイルの表示はcommand+shift+.(dot)&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style="text-align: left;"&gt;ミュージック&lt;/h3&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;ミュージック（iTunes）は、iTunesのメニューで「ファイル」-&amp;gt;「ライブラリ」-&amp;gt;「ライブラリを整理」を選択して、「ファイルを統合」を実施&lt;/li&gt;&lt;li&gt;「ミュージック」内「iTunes」ディレクトリ配下に必要なファイルが作成される&lt;/li&gt;&lt;li&gt;この「iTunes」ディレクトリを丸ごと、新Macの「ミュージック」へコピー&lt;/li&gt;&lt;li&gt;新MacでiTunesを「option」を押しながら起動すると、ライブラリを選択できるようになる&lt;/li&gt;&lt;li&gt;「ライブラリを選択」から「iTunes」内の「iTunes Library.itl」を選択すれば、移行完了&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;ol style="text-align: left;"&gt;&lt;/ol&gt;&lt;h3 style="text-align: left;"&gt;写真&lt;/h3&gt;&lt;ol style="text-align: left;"&gt;&lt;/ol&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;写真は、「ピクチャ」内に「写真 Library」があり、これを旧Macから新Macの同じ場所にコピぺ&lt;/li&gt;&lt;li&gt;新Macで「option」を押しながら「写真」を起動して、今コピーしてきたライブラリを選択して読み込む&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style="text-align: left;"&gt;Podcast&lt;/h3&gt;&lt;ol style="text-align: left;"&gt;&lt;/ol&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;podcastで、かつでCDから取り込んだものがあって、これがpodcastでは見た目では存在するがファイルが見つからないと言われる&lt;/li&gt;&lt;li&gt;podcastのファイルは、ユーザ/名前/ ライブラリ / Group Containers / 243LU875E5.groups.com.apple.podcastsのキャッシュフォルダーに保存されている&lt;/li&gt;&lt;li&gt;これを同じ箇所にコピペすればいいかと思ったが状況変わらず&lt;/li&gt;&lt;li&gt;そこで「ブック」の「ライブラリに追加」でオーディオブックとして使っていくことにする&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;読めばわかるMACでのPATH設定を完全理解&lt;/div&gt;&lt;div&gt;https://reffect.co.jp/windows/full_understanding_mac&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;M1 Mac&lt;/div&gt;&lt;div&gt;https://oku.edu.mie-u.ac.jp/~okumura/macosx/m1.html&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;M1 Macの開発環境&lt;/div&gt;&lt;div&gt;https://qiita.com/shibukawa/items/797b7cbb7e530842e6f7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;あと、まっさらなosのまっさらなmacを手に入れたら、まずはosアップデートしておくことが大事だと学ぶ。&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3&gt;参考文献&lt;/h3&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;旧Macから新Macへ「移行アシスタント」なしで移行&lt;/div&gt;&lt;div&gt;https://rikei-fufu.com/2019/10/27/post-2187-mac-migration/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;macOS Catalinaでは、iTunesの分割によりメディアファイルの扱いに変更が&lt;/div&gt;&lt;div&gt;https://minatokobe.com/wp/os-x/macos-catalina/post-57359.html&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Apple SiliconにおけるHomebrewのベストプラクティス&lt;/div&gt;&lt;div&gt;https://qiita.com/yujiod/items/56002a7cef5b5a3be3fb&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;macOS 11 Big Sur compatibility on Apple Silicon #7857&lt;/div&gt;&lt;div&gt;https://github.com/Homebrew/brew/issues/7857&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Homebrew&lt;/div&gt;&lt;div&gt;https://brew.sh/index_ja&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;HomebrewでいれたPythonの削除&lt;/div&gt;&lt;div&gt;https://qiita.com/baozam/items/268906b5984a37239b7d&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Apple M1 チップ搭載の Mac で macOS を再インストール中にパーソナライズエラーが表示される場合&lt;/div&gt;&lt;div&gt;https://support.apple.com/ja-jp/HT211983&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Appleシリコンを搭載したMacでmacOS復旧を使用する&lt;/div&gt;&lt;div&gt;https://support.apple.com/ja-jp/guide/mac-help/mchl82829c17/mac&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h2 style="text-align: left;"&gt;Homebrew&amp;amp;Python 立て直し&lt;/h2&gt;&lt;/div&gt;&lt;h4 style="text-align: left;"&gt;現状課題&lt;/h4&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;macにもともと入ってるpythonにpipでやってた、これを仮想環境でやりたい&lt;/li&gt;&lt;li&gt;&lt;span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="background-color: white; caret-color: rgb(34, 34, 34); color: #222222; font-size: 13.2px;"&gt;x86_64（rosetta）の方でやってた、これを&lt;/span&gt;&lt;span face="Arial, Tahoma, Helvetica, FreeSans, sans-serif" style="background-color: white; caret-color: rgb(34, 34, 34); color: #222222; font-size: 13.2px;"&gt;arm64でやりたい&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;h4 style="text-align: left;"&gt;&lt;br /&gt;&lt;/h4&gt;&lt;h4 style="text-align: left;"&gt;python環境を作り直す&lt;/h4&gt;&lt;div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;今のスで入れてるライブラリをとりあえず削除&lt;/li&gt;&lt;li&gt;pip freeze | grep -v '@' | awk -F'==' '{print $1}' | sudo xargs pip uninstall -y&lt;/li&gt;&lt;li&gt;brewのインストール https://brew.sh/ja/ に行って、コマンドをコピーして、と思ったが&lt;/li&gt;&lt;li&gt;macOSをお使いの場合は新しい.pkgインストーラーをお試し下さい&lt;/li&gt;&lt;li&gt;とのことなので https://github.com/Homebrew/brew/releases/tag/4.4.20 で.pkgを落としてきて実行&lt;/li&gt;&lt;li&gt;ちゃんとbrewがインストールできたかの確認 brew help&lt;/li&gt;&lt;li&gt;unknown or unsupported macOS version: :dunno (MacOSVersionError) と言われる&lt;/li&gt;&lt;li&gt;brew update-reset とするといいらしい、やってみた&lt;/li&gt;&lt;li&gt;brew help やったらいい感じになったらしい&lt;/li&gt;&lt;li&gt;現在の PATH を確認 $ echo $PATH&lt;/li&gt;&lt;li&gt;PATH のどこかに /opt/homebrew/bin が含まれていればOK&lt;/li&gt;&lt;li&gt;$ which brew 出力が /opt/homebrew/bin/brew になっていれば、正しく PATH が設定されている&lt;/li&gt;&lt;li&gt;xzのインストール $ brew install xz&lt;/li&gt;&lt;li&gt;pyenvとは？Pythonのバージョンを管理してくれるツール&lt;/li&gt;&lt;li&gt;Homebrewコマンドでpyenvをインストールする $ brew install pyenv&lt;/li&gt;&lt;li&gt;pyenvからPythonをインストールする。ここからはpyenvコマンドを使います。まずは、以下のコマンドを入力します。$ pyenv install --list pyenvでインストールできるバージョンが出力されます&lt;/li&gt;&lt;li&gt;$ pyenv install 3.11.0&lt;/li&gt;&lt;li&gt;pyenvのpathを通す（以下を追記した）&lt;/li&gt;&lt;/ol&gt;export PYENV_ROOT="$HOME/.pyenv"&lt;br /&gt;&lt;ol style="text-align: left;"&gt;&lt;/ol&gt;export PATH="$PYENV_ROOT/bin:$PATH"&lt;br /&gt;&lt;ol style="text-align: left;"&gt;&lt;/ol&gt;eval "$(pyenv init -)"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;などとやってたんだが、pymc5を使いたくて、そしてpymc5はminiforgeがいいよというので、pyenv環境は全部削除して、brewでminiforgeを入れ直すことにした&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;miniforgeインストール &amp;nbsp;$ brew install miniforge&lt;/li&gt;&lt;li&gt;condaのバージョン確認 $ conda --version&lt;/li&gt;&lt;li&gt;conda 24.11.3 versionを返してくれればcondaの準備はOKです&lt;/li&gt;&lt;li&gt;$ which conda&lt;/li&gt;&lt;li&gt;/opt/homebrew/bin/conda path追加した方がいいのかな？でも以下は実行できてるしな conda env list&lt;/li&gt;&lt;li&gt;仮想環境作成しつつ、python本体をインストール（causal impactが3.11じゃないと動かないかもなので）&lt;/li&gt;&lt;li&gt;$ conda create --name pm5_env python=3.11&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;/opt/homebrew/Caskroom/miniforge/base&lt;/div&gt;&lt;div&gt;/opt/homebrew/Caskroom/miniforge/base/envs/pm5_env&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;$ conda activate pm5_env &amp;nbsp;としても&lt;/li&gt;&lt;li&gt;CondaError: Run ‘conda init’ before ‘conda activate’ と言われる&lt;/li&gt;&lt;li&gt;https://manabi-corpeng.com/conda-activate-init-error/ をみて、&lt;/li&gt;&lt;li&gt;元はここ　https://manabi-corpeng.com/miniconda-install/#index_id5&lt;/li&gt;&lt;li&gt;$ conda init zsh&lt;/li&gt;&lt;li&gt;として、ターミナル再度立ち上げ直すと&lt;/li&gt;&lt;li&gt;$ conda activate pm5_env　できて、&lt;/li&gt;&lt;li&gt;$ python --version&lt;/li&gt;&lt;li&gt;でpython 3.11.11と返ってきた。無事に仮想環境にpython本体のインストール完了&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;pymc5をインストール https://www.pymc.io/projects/docs/en/latest/installation.html&lt;/li&gt;&lt;li&gt;$ conda install -c conda-forge "pymc&amp;gt;=5"&lt;/li&gt;&lt;li&gt;（arviz, graphviz, lumpy, pandas, scipyなども）&lt;/li&gt;&lt;li&gt;$ conda install -c conda-forge seaborn prophet matplotlib ipykernel ipywidgets&lt;/li&gt;&lt;li&gt;$ conda install -c conda-forge seaborn matplotlib ipykernel ipywidgets&lt;/li&gt;&lt;li&gt;（prophetがないと言われた、statsmodelsも）&lt;/li&gt;&lt;li&gt;できんな $ conda install -c conda-forge prophet&lt;/li&gt;&lt;li&gt;prophet causal impactも入れてな https://facebook.github.io/prophet/docs/installation.html#python&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;uname -m&lt;/div&gt;&lt;div&gt;arm64&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style="text-align: left;"&gt;imagemagickインストール&lt;/h4&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;$ brew install imagemagick&lt;/li&gt;&lt;li&gt;python 3.13がインストールされちゃったのを削除する&lt;/li&gt;&lt;li&gt;$ brew uninstall --ignore-dependencies python&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h4 style="text-align: left;"&gt;brewの要らなくなったのを削除&lt;/h4&gt;&lt;div&gt;brew cleanup → 古いキャッシュや不要ファイルを削除（推奨）&lt;/div&gt;&lt;div&gt;brew cleanup --prune=0 → すべて のキャッシュと不要ファイルを削除&lt;/div&gt;&lt;div&gt;brew autoremove → 依存関係がなくなったパッケージを削除&lt;/div&gt;&lt;div&gt;rm -rf $(brew --cache) → キャッシュ全削除&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;conda clean --all&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;	&lt;/span&gt;すべてのキャッシュ・不要ファイルを削除（推奨）&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h4 style="text-align: left;"&gt;仮想環境のをbaseに適用したい&lt;/h4&gt;&lt;div&gt;仮想環境をアクティベート&lt;/div&gt;&lt;div&gt;$ conda activate myenv&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;インストール済みパッケージをエクスポート&lt;/div&gt;&lt;div&gt;$ conda list --export &amp;gt; myenv_packages.txt&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;base 環境に適用&lt;/div&gt;&lt;div&gt;$ conda activate base&lt;/div&gt;&lt;div&gt;$ conda install --file myenv_packages.txt&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;不要になった古い環境を削除&lt;/div&gt;&lt;div&gt;conda remove --name pm5_env --all&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;condaで今どんな仮想環境作ってたっけ？&lt;/div&gt;&lt;div&gt;$ conda info --envs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;$ conda activate pm5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;$ conda deactivate&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;$ conda activate base&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;base環境をcopyしてそっちにいろいろインストールしたい&lt;/div&gt;&lt;div&gt;$ conda create --name base_yyyymmdd --clone base&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;$ conda install beautifulsoup4 lxml&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;見つからない時はconda-forge指定で&lt;/div&gt;&lt;div&gt;$ conda install -c conda-forge beautifulsoup4&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;

&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;

</description><link>http://thinknote.blogspot.com/2020/12/apple-silicon-macbook-air.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-1107296969791164482</guid><pubDate>Wed, 30 Sep 2020 03:05:00 +0000</pubDate><atom:updated>2026-04-24T10:25:47.026+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>Prophet by Python on Mac</title><description>&lt;pre&gt;&lt;code&gt;
# pip3 install pystan
# pip3 install fbprophet

python3 -m pip install prophet
python3 -m pip install --upgrade plotly
&lt;/code&gt;&lt;/pre&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="https://facebook.github.io/prophet/docs/diagnostics.html" rel="nofollow" target="_blank"&gt;Diagnostics&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="https://github.com/sasasakaz/trial/blob/main/prophet.ipynb" rel="nofollow" target="_blank"&gt;git&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2020/09/prophet-by-python-on-mac.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-8098079039291304246</guid><pubDate>Sat, 26 Sep 2020 00:13:00 +0000</pubDate><atom:updated>2026-04-28T14:06:35.810+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">考え方</category><title>マイケル・サンデルの白熱教室2018</title><description>&lt;div&gt;
哲学は机上の学問ではない、空想世界のものではない&lt;br /&gt;
市民が暮らす現実社会にこそ必要&lt;br /&gt;
差別はどんなときも正義に反することなのか&lt;br /&gt;
収入や富の格差とどのように向き合えばよいのか&lt;br /&gt;
国境をめぐる問題をどう考えるべきか&lt;br /&gt;
民主主義の力が試されている&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
1.移民&lt;/h4&gt;
難民の受け入れ、断る権利はあるのか？&lt;br /&gt;
では移民の受け入れ、断る権利はあるのか？&lt;br /&gt;
文化面での影響、経済面&lt;br /&gt;
親の遺産を受け取る権利はあるのか？&lt;br /&gt;
国境の概念は？&lt;br /&gt;
出国を制限する権利はあるのか？&lt;br /&gt;
帰属意識は？以前の国か？今の国か？&lt;br /&gt;
愛国心&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
2.AIは最適な恋人を探せるか&lt;/h4&gt;
AIは完璧なマッチングができるのかもしれないが我々人間はそれを望んでいるのか&lt;br /&gt;
人間の医師とAI医師のどちらに手術してほしいか&lt;br /&gt;
感情で動くからこそ人間に手術、延命措置してほしいのでは&lt;br /&gt;
自動運転にどうプログラミングするか&lt;br /&gt;
AIはコメディアンになれるか&lt;br /&gt;
死んだ人のデジタルアバターを作ることは？&lt;br /&gt;
冷や汗、心地悪さ、不完全さが人間には必要なのでは？&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
3.人を見た目で選んでもいいのか&lt;/h4&gt;
どんな場合でも差別は正義に反するのか&lt;br /&gt;
人種差別と見た目による差別は同じか違うか&lt;br /&gt;
特定の人種を優遇的に採用することは許されるか&lt;br /&gt;
　あとに続く人への道を開くことにもなるのではないか&lt;br /&gt;
特定の人種にだけ職務質問するのは許されるか&lt;br /&gt;
空港のセキュリティーチェックでの差別は許されるか&lt;br /&gt;
&lt;br /&gt;
差別を受けると社会に対する信頼が薄れる&lt;br /&gt;
より多くの機会を与え、より多様な社会を作り出す優遇的差別なら許されるのではないか&lt;br /&gt;
アリストテレスのいう正義の定義「人間を平等に同じように扱うこと」&lt;br /&gt;
　真の議論は、平等とは何か、同じようなとはどのような点においてなのか、それを決めようとするときに生じる&lt;br /&gt;
　その答えは経済的原理によって決められるべきか&lt;br /&gt;
&lt;br /&gt;
差別に関する議論は簡単だと言われることがある&lt;br /&gt;
なぜならほとんどの人は差別には反対だし、人間は平等に扱われるべきだと考えているからだ&lt;br /&gt;
ところが実際に難しい選択、困難な決断に直面したとき、私たちはそれぞれに問い直すことを迫られる&lt;br /&gt;
そもそも目的とは何か、その目的を達成するために私たちのどんな人間性が問われているのか&lt;br /&gt;
どんなチャンスが広がり、なにが障害や犠牲になるのか&lt;br /&gt;
どんな差別が不当でなにが妥当な差別なのか&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
4.ロナウドの年収は高すぎる？&lt;/h4&gt;
ロナウドが教師の2000倍稼ぐのは公正なのか&lt;br /&gt;
　才能への評価なのか努力への評価なのか&lt;br /&gt;
　希望が、問題は社会の不平等にあることを見えなくしている&lt;br /&gt;
　社会が評価するのは努力だけではない、才能や素質もではないか&lt;br /&gt;
生まれつきの才能、つまり運がその人の収入を左右するのは正義や公正に反することなのか&lt;br /&gt;
&lt;br /&gt;
レースの勝者は道徳的にも勝利に値するのか&lt;br /&gt;
実力主義社会は貴族社会よりも公正といえるのか&lt;br /&gt;
　偶然、才能を持っていること、偶然、その才能が称賛される社会であること、両方揃ってたからロナウドがいられる&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;&lt;b&gt;
もしあなたが金持ちだったら実力社会と偶然社会どちらを選ぶか&lt;/b&gt;&lt;br /&gt;金持ちのときは実力社会がいいという、達成感や満足感、誇りを自分に感じたいから&lt;br /&gt;
一方、収入の低い恵まれない立場だったら、実力社会には住みにくさを感じるだろう&lt;br /&gt;
今、社会から取り残されると感じる人々は、社会の不公平さだけに不満があるわけではない&lt;br /&gt;
自分が尊重されていないと感じる&lt;br /&gt;
収入が低く質素な生活を送っているのは努力が足りないからだ、他の人ほど価値がないからだと言われてるように感じる&lt;br /&gt;
社会が実際に不平等であるという状況に加えて、それぞれの人に与えられた地位は本人の努力で決まるという考え方は地位が高くない人々にとってはとても腹ただしく感じる、屈辱的でさえある&lt;br /&gt;
このように実力社会は所得や富の分配からだけでなく、人間の尊厳からも問題となる&lt;br /&gt;
社会はすべての人にそのはたらきに見合った敬意を払えているのか&lt;br /&gt;
&lt;br /&gt;
古代ギリシャの政治哲学者は、分配的公正（配分の正義）について話し合った&lt;br /&gt;
議論の中心は所得や富についてではなかった、社会的な役割や義務、名誉などについてであった&lt;br /&gt;
その議論は今も続いている&lt;br /&gt;
配分の正義は単に市場が求める価値や公平さだけの問題ではない&lt;br /&gt;
人の名誉や尊厳に関わることでもある&lt;br /&gt;
公正な分配をどうおこなうべきか、現在の民主主義社会の根底にある課題の一つである&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
5.プライバシー&lt;/h4&gt;
警察は病院のDNAデータベースを利用していいか&lt;br /&gt;
全国民のDNA情報の登録を義務づける制度に賛成するか&lt;br /&gt;
保険会社に自分の情報を提供して値引きを受けるか&lt;br /&gt;
Uberが乗客の情報を公開するのはプライバシーの侵害か&lt;br /&gt;
プライバシーには固有の価値はあるのか、同意があればいいのか&lt;br /&gt;
正しい同意さえあればプライバシーの侵害とは存在しなくなるのか&lt;br /&gt;
&lt;br /&gt;
エリック・シュミットがプライバシーの問題について質問されたときの答え&lt;br /&gt;
あなたが誰にも知られたくないと思っていることは、そもそもそれをやること自体が間違いだったのではないですか？&lt;br /&gt;
&lt;br /&gt;
ネットの個人向け広告はプライバシーの侵害か&lt;br /&gt;
自分のプライバシーで最も重要な問題は、見た動画？読んだ本？行った場所？&lt;br /&gt;
&lt;br /&gt;
古代ギリシャ、ソクラテスの時代、プライバシーが問題になることはなかった&lt;br /&gt;
公の領域と個人の領域が区別されていたから&lt;br /&gt;
公の領域、すなわち民主主義により価値を置き、実践を進めた&lt;br /&gt;
個人の領域だけで生きる人々をイディオティスと呼んだ、これが愚か者イディオットの語源となった&lt;br /&gt;
イディオティスは市民社会への参加を果たしていないと考えられていた&lt;br /&gt;
だから古代の人々にとってプライバシーとは軽蔑の対象だった&lt;br /&gt;
ところが現代では重要な価値を持つ難しい課題となっている&lt;br /&gt;
&lt;br /&gt;
プライバシーとは何か、なぜ重要なのかを説明するのが難しいのは、それが二次的な役割を担っているから&lt;br /&gt;
公平な社会、自由な社会、民主主義的な社会を求めている、でも誰もプライベートな社会を求めてるとはいわない&lt;br /&gt;
プライバシーはなにかしらの脅威に対抗するための価値をもつものだから&lt;br /&gt;
高圧的で独裁的な国家からの脅威、市民を監視し反乱の芽を摘み取ろうとする国家からの脅威、&lt;br /&gt;
なにかを売りつけようと私たちの動向を常に見続ける企業や調査会社、ソーシャルメディアからの脅威かもしれない&lt;br /&gt;
現代はDNAとビッグデータの時代でもある&lt;br /&gt;
民主的な社会に生きる市民にとって、プライバシーの意味を広く議論し、&lt;br /&gt;
私たちをなにから守るものなのかを考え続けるのが重要&lt;br /&gt;
&lt;br /&gt;
公正な社会とは何か、平等とは、市民の義務や人間性の価値とは何か&lt;br /&gt;
たとえ全員が同意する結論にたどり着かなくても大切なことを教えてくれる&lt;br /&gt;
それこそ公共性の精神、お互いへの敬意の重要さである&lt;br /&gt;
&lt;br /&gt;
ときに激しい意見の対立が起きたとしても、公の場で議論を交わすことで民主的な社会に生きる市民としての資質が養われていく&lt;br /&gt;
&lt;br /&gt;


&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2020/09/2018.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-901785820310144526</guid><pubDate>Sat, 26 Sep 2020 00:05:00 +0000</pubDate><atom:updated>2025-02-24T14:45:08.884+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">統計学</category><title>SARIMA</title><description>&lt;div&gt;&lt;h4 style="text-align: left;"&gt;
東アジア積米国揚コンテナ荷動き予測におけるSARIMAモデルの適用性&lt;/h4&gt;
http://www.ide.titech.ac.jp/~hanaoka/finalversion-of-conference.pdf&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;
３．データの定常性&lt;/b&gt;&lt;br /&gt;
ADF検定&lt;br /&gt;
原系列に加えて差分系列を用いた理由は、原系列が非定常である場合、差分系列をとることによりデータが定常になることが多い(9)ため&lt;br /&gt;
&lt;br /&gt;
原系列　単位根は存在しなかった。差分系列の場合は、t値が-9.368と99%有意水準でも帰無仮説が棄却されない。これにより、差分系列の定常性が確認された。以上の結果を踏まえ、差分系列を用いてSARIMAモデルを開発し、その適用性を検証する&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;
４．モデル&lt;br /&gt;
４－１モデル概要&lt;/b&gt;&lt;br /&gt;
自己回帰項の次数（p）は、自身（荷動き量）の過去の値について、どこまで遡って説明変数として用いるかを示している。例えば、pが2であれば1期及び2期前の荷動き量をモデルの説明変数として考慮することになる&lt;br /&gt;
&lt;br /&gt;
階差の次数（d）については、分析に利用する時系列データが定常性を有するまでに必要となった階差数を示す。本研究では、３．で述べたように、一階の差分系列が定常性を有しているため、dは1となる。&lt;br /&gt;
&lt;br /&gt;
なお、原系列が定常性を有している場合は、dは0となる。&lt;br /&gt;
&lt;br /&gt;
移動平均項の次数（q）については、自身の過去の値の誤差について、どこまで遡って説明変数として用いるかを示している&lt;br /&gt;
&lt;br /&gt;
なお、本研究では月次データを用いているため、季節変動の期間（s）は12である可能性が高い(10)。このとき、季節自己回帰項の次数、季節階差の次数、季節移動平均項の次数はそれぞれP、D、Q、に入る数値の12倍前の値が説明変数として用いられる。例えばPが2であれば、12期及び24期前の荷動き量を説明変数として考慮する。&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;
４－２モデルのパラメータ特定&lt;/b&gt;&lt;br /&gt;
コレログラム&lt;br /&gt;
&lt;br /&gt;
図3に差分系列の自己相関係数、図4に同偏自己相関係数&lt;br /&gt;
&lt;br /&gt;
破線内の領域は、標本の自己相関がゼロであるという検定の95%棄却域である。領域の外側に（偏）自己相関係数がある場合は、（偏）自己相関が少なくとも有意水準95%で存在する。図3を参照すると、12次、24次、36次において特に強い自己相関を有していることが分かる。これは1年周期の季節性が存在していることを示唆しているため、季節階差sは12とするのが適切と考えられる。そこで、本研究では、季節階差sは12とする。また、前節の単位根検定によって、1階の差分系列が定常性を有していることが分かった。そのため、d及びDは1とする。&lt;br /&gt;
&lt;br /&gt;
次に、p、q、P、Qの特定について検討する。図3及び図4を参照すると、自己相関と偏自己相関ともに3期ラグの相関が比較的高く、4期ラグで初めて自己相関係数、偏自己相関係数ともに95%水準で棄却される。&lt;br /&gt;
&lt;br /&gt;
SARIMAモデルでは、「おそらく原系列の」&lt;br /&gt;
（偏）自己相関係数のコレログラムを参照するだけではラグ数を決定できない&lt;br /&gt;
&lt;br /&gt;
しかし、図3、4の「階差系列の」コレログラムを参照することにより、0≦p, q, P, Q≦3としてパラメータの目安を立てることができる(9)。p, q, P, Qについて、0～3を各変数に当てはめ&lt;br /&gt;
&lt;br /&gt;
最尤法で推定し、AICが最小となるモデルを同定&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;
５．モデルの診断&lt;br /&gt;
５－１残差の定常性&lt;/b&gt;&lt;br /&gt;
同定された「SARIMA」モデルが適切であれば、残差は定常性を持ち、（偏）自己相関を持たないことが分かっている&lt;br /&gt;
&lt;br /&gt;
同定されたモデルの残差の自己相関係数及び偏自己相関係数のコレログラムを示す。破線の内側の領域は自己相関の値がゼロであるという検定の95%棄却域を示している。つまり、（偏）自己相関係数が破線の内側に留まっていれば、モデルは適切であると判断される。両図より、（偏）自己相関係数は破線の内側にあり、同定されたモデルによる残差が（偏）自己相関を有さないことが確認できる
以上より、残差の定常性という点からモデルの妥当性を確認できた&lt;br /&gt;
&lt;br /&gt;&lt;b&gt;
５－２実績値と再現値の比較&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
(9)沖本竜義：経済・ファイナンスデータの計量時系列分析、朝倉書店、2010&lt;br /&gt;
(10)山澤成康：実践計量経済学入門、日本評論社、2004&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;
時系列解析入門&lt;br /&gt;
https://www.ai.u-hyogo.ac.jp/~arima/arima.pdf&lt;br /&gt;
&lt;br /&gt;
定常時系列の解析に使われるARMAモデル・SARIMAモデルとは？&lt;br /&gt;
https://ai-trend.jp/basic-study/time-series-analysis/sarima_model/&lt;br /&gt;
&lt;br /&gt;
SARIMAモデルでは合計7個の次数があります。 時系列方向のARIMA( p,d,q )に加え季節差分方向のARIMA( P,D,Q )、さらには周期 s があるためです。 これをSARIMA( p,d,q )( P,D,Q )[ s ]と表記することがあります。 それぞれの次数に対し0か1を考えるとしても、 27=128 通りのモデルを考えなければなりません。 このような組み合わせ爆発の問題を回避するため、周期 s は作図や自己相関関数をもとに決め打ちし、季節差分の P,D,Qは低く抑えることがよく行われます。&lt;br /&gt;
&lt;br /&gt;
残差に関する4つのプロットを見ることができます。 左上から順に、標準化した残差の時系列プロット、残差のヒストグラムと正規分布（とKDE分布）の密度関数、残差の正規QQプロット、残差の自己相関関数です。 残差の自己相関は低くまとまっており、ほぼ問題ないと言えるでしょう。&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2020/09/sarima.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-4542556332166163222</guid><pubDate>Fri, 25 Sep 2020 23:59:00 +0000</pubDate><atom:updated>2020-09-26T08:59:34.019+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">統計学</category><title>心理統計法at放送大学</title><description>&lt;div&gt;
豊田秀樹 2017&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
第3回&lt;/h4&gt;&lt;div style="text-align: left;"&gt;MCMC法&lt;/div&gt;
事後分布に従うパラメータを乱数として発生させ、パラメータを確率分布として表す&lt;br /&gt;
&lt;br /&gt;
HMC法　ハミルトニアンモンテカルロ法&lt;br /&gt;
物理学分野の力学的エネルギーの原理を応用したMCMC法の一つの方法&lt;br /&gt;
&lt;br /&gt;
生成&lt;br /&gt;
HMC法は、同時事後分布に従う乱数を、蛇口から水が流れるように継続的に生成する&lt;br /&gt;
&lt;br /&gt;
捨てる区間　burn in&lt;br /&gt;
乱数の数 chain&lt;br /&gt;
&lt;br /&gt;
点推定量&lt;br /&gt;
　事後期待値　EAP&lt;br /&gt;
　事後中央値　MED&lt;br /&gt;
　事後確率最大値　MAP&lt;br /&gt;
　　事後分布が正規分布だったら平均値と同じだし、EAP=MED=MAP&lt;br /&gt;
　　一様分布だったら最尤値と同じ＝標本平均と同じ&lt;br /&gt;
&lt;br /&gt;
　点推定値の精度&lt;br /&gt;
　　事後分布の散布度（分散や標準偏差）の小ささ＝点推定値の精度&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h4 style="text-align: left;"&gt;第？回&lt;/h4&gt;
検定力分析&lt;br /&gt;
　適切な検定ができるようにサンプルサイズを決める&lt;br /&gt;
　　大きすぎず小さすぎずに&lt;br /&gt;
　　でもそれって順番逆じゃね？&lt;br /&gt;
　　サンプルサイズは実験者が主体的に決めることだべ&lt;br /&gt;
&lt;br /&gt;&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
第10回&lt;/h4&gt;
有意性検定は結果がシンプルでいい&lt;br /&gt;ブラックボックスでもいい&lt;br /&gt;統計熟知してない人には特にそう思われやすい&lt;br /&gt;有意水準を絶対的なものとして捉えちゃうので&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;でも本当は同じ5%でも、&lt;/div&gt;&lt;div&gt;サンプル数が多くてp＜0.05になった場合（第一種の過誤が起きてる）もあれば、&lt;br /&gt;サンプル数が小さくてp&amp;gt;0.05になった場合(第二種の過誤が起きてる)場合もあるのに、絶対唯一視されてしまうという危険性がある&lt;br /&gt;
&lt;br /&gt;サンプル数が多くて無意味な場合&lt;br /&gt;サンプル数が少なくて意味のある差を検出できない場合&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
差がある確率は80%といわれると解釈は人によって分かれる&lt;br /&gt;
　書いた人が差があると思っても査読者はそう思わないかもしれない&lt;br /&gt;
&lt;br /&gt;
　だが判断を各自が自在にできるのがベイズ推定のよきところともいえる&lt;br /&gt;
　サンプルサイズで結果の意味が変わることはない&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ABテストの結果、AがBを上回る確率は60%でした、と報告する&lt;br /&gt;
BをAに切り替えるのにほぼコストがかからないのであれば、Aに切り替えようという判断がしやすい&lt;br /&gt;
&lt;br /&gt;
一方、AB間に差があるとはいえない、と報告する&lt;br /&gt;
BをAに切り替えるのにほぼコストがかからないとはいえ、どっちつかずの報告ではAに切り替える判断はしにくい&lt;br /&gt;
その結果、Aに切り替えていれば60%の確率で売上が増えたかもしれない未来を捨てている、機会損失が起きている&lt;br /&gt;
でもそのこと自体に気づかないままに時は過ぎていく、これが怖い&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
第11回&lt;/h4&gt;
オッズ比　odds = p / (1-p)&lt;br /&gt;
&lt;br /&gt;
チームAがBに勝つ確率が0.2と予想されている場合は&lt;br /&gt;
0.2 / (1-0.2) = 1/4となる&lt;br /&gt;
Aが勝つと予想している人が、Bが勝つと予想している人の1/4である&lt;br /&gt;
&lt;br /&gt;
オッズ比=賭けに勝った人の払い戻し倍率の逆数ともいえる&lt;br /&gt;
Aに1,000円賭けてAが勝った時は、外れた人の掛け金をみんなもらい&lt;br /&gt;
元金+4000円をもらえる&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2項分布の掛け合わせ（2x2のクロス数表、男女別のブランド認知率）&lt;br /&gt;
　男女間にブランド認知に差はあるか？などを調べる場合は&lt;br /&gt;
　リスク差、リスク比、オッズ比をみる&lt;br /&gt;
　　有意性検定のカイ二乗検定と同じ&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;h4 style="text-align: left;"&gt;
第13回&lt;/h4&gt;
単回帰分析における回帰直線は、目的変数と説明変数のおおまかな関係を示してくれて便利&lt;br /&gt;
だが説明変数では説明しきれない目的変数の特徴を考察することも大事、そのためには残差プロット&lt;br /&gt;
&lt;br /&gt;
ある2つの観測データにおいて、説明変数の値は同程度なのに、残差に大きな違いがあったりする、その違いが何かはわからない&lt;br /&gt;
でもその違いはなぜかを考えることにより新たな別の説明変数を着想するきっかけになる&lt;br /&gt;
&lt;br /&gt;
残差プロットは新しい研究視点を与えてくれることもあり、観測対象に対する有用な知見を示してくれる&lt;br /&gt;

&lt;/div&gt;
  
&lt;br /&gt;
&lt;div&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;
&lt;/div&gt;</description><link>http://thinknote.blogspot.com/2020/09/at.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-2060923826087404670</guid><pubDate>Sun, 14 Jun 2020 02:28:00 +0000</pubDate><atom:updated>2020-06-14T11:28:47.743+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">統計学</category><title>渡辺澄夫</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div&gt;
渡辺澄夫&lt;/div&gt;
&lt;div&gt;
http://watanabe-www.math.dis.titech.ac.jp/users/swatanab/index-j.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
データ解析&lt;/div&gt;
&lt;div&gt;
http://watanabe-www.math.dis.titech.ac.jp/users/swatanab/da2019.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
特異モデルにおけるベイズ検定と変化点発見への応用&lt;/div&gt;
&lt;div&gt;
http://watanabe-www.math.dis.titech.ac.jp/users/fujiwara/doc/fujiwara_ibis2006.ppt.pdf&lt;/div&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2020/06/blog-post.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-121050264870733330</guid><pubDate>Sun, 14 Jun 2020 02:24:00 +0000</pubDate><atom:updated>2020-06-14T11:24:55.652+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>Pythonや機械学習を学ぶ</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div&gt;
機械学習の前に重要なデータ抽出・加工に便利なPythonライブラリ「pandas」の基本的な使い方のチュートリアル&lt;/div&gt;
&lt;div&gt;
https://www.atmarkit.co.jp/ait/articles/1802/13/news012.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
［Python入門］リストの操作 (1/4)&lt;/div&gt;
&lt;div&gt;
https://www.atmarkit.co.jp/ait/articles/1906/04/news009.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
時系列データへの回帰分析&lt;/div&gt;
&lt;div&gt;
https://logics-of-blue.com/time-series-regression/&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
【Python】pandasのDataframe操作&lt;/div&gt;
&lt;div&gt;
http://canisterism.hatenablog.com/entry/2018/01/07/150105&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
#特定のセルの値を取り出してseriesに&lt;/div&gt;
&lt;div&gt;
pythonでexcelファイル処理まとめ&lt;/div&gt;
&lt;div&gt;
https://qiita.com/hasepy/items/06d5d2e2b6495752442c&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
[Python] Excelで文字化けしないCSVファイルを書き出す&lt;/div&gt;
&lt;div&gt;
https://qiita.com/y4m3/items/674423b596284bbc7cf7&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Pythonの日本語処理&lt;/div&gt;
&lt;div&gt;
http://www.wakayama-u.ac.jp/~kazama/lab/python/i18n.html&lt;/div&gt;
&lt;div&gt;
標準出力の文字コードと自動変換&lt;/div&gt;
&lt;div&gt;
https://www.javadrive.jp/python/japan/index2.html&lt;/div&gt;
&lt;div&gt;
文字コードの指定&lt;/div&gt;
&lt;div&gt;
https://www.javadrive.jp/python/japan/index1.html&lt;/div&gt;
&lt;div&gt;
Unicode文字列(ユニコード文字列)&lt;/div&gt;
&lt;div&gt;
https://www.javadrive.jp/python/string/index5.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
日本語文字列コード問題まとめ&lt;/div&gt;
&lt;div&gt;
http://python.matrix.jp/pages/tips/string/encoding.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
python3で日本語を含むURL(日本語URL)にurllibでアクセスする際、htmlで勝手にencodeされてエラーするので回避策をメモ&lt;/div&gt;
&lt;div&gt;
https://qiita.com/mix/items/87d094414e46f857de45&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
日本語を含むURLでつまづく&lt;/div&gt;
&lt;div&gt;
http://mankuro.xyz/blog/2017/04/25/japanese-url/&lt;/div&gt;
&lt;div&gt;
単一ドメインを走査する（URLに日本語を含む場合）&lt;/div&gt;
&lt;div&gt;
http://nnpo.hatenablog.com/entry/2016/12/13/002540&lt;/div&gt;
&lt;div&gt;
PythonでURLエンコード/デコード&lt;/div&gt;
&lt;div&gt;
http://shuzo-kino.hateblo.jp/entry/2016/10/22/224034&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
pythonでutf-8日本語文字列を、URIエンコード・URLデコードする&lt;/div&gt;
&lt;div&gt;
http://linux.oboe-gaki.com/archives/000333.html&lt;/div&gt;
&lt;div&gt;
Pythonでマルチバイト文字を扱う際に気をつける点。&lt;/div&gt;
&lt;div&gt;
https://gist.github.com/devlights/4561968&lt;/div&gt;
&lt;div&gt;
Python と文字コード&lt;/div&gt;
&lt;div&gt;
http://www.kabipan.com/computer/python/unicode.html&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
[Python] urllib.parseによるURLエンコード／デコードの方法&lt;/div&gt;
&lt;div&gt;
https://hibiki-press.tech/learn_prog/python/url-encoding/2804&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style="text-align: left;"&gt;
機械学習&lt;/h3&gt;
第1回　難しくない！　PyTorchでニューラルネットワークの基本&lt;br /&gt;
https://www.atmarkit.co.jp/ait/articles/2002/06/news025.html&lt;br /&gt;
&lt;br /&gt;
AI・機械学習のための数学超入門 ― 前提知識は四則演算だけ！ (1/4)&lt;br /&gt;
https://www.atmarkit.co.jp/ait/articles/2003/02/news023.html&lt;br /&gt;
&lt;br /&gt;
機械学習やディープラーニングってどんなもの？ (1/2)&lt;br /&gt;
https://www.atmarkit.co.jp/ait/articles/2003/24/news016.html&lt;br /&gt;
&lt;br /&gt;
「機械学習の最先端」を効率的に情報収集！　おすすめのメルマガ3選&lt;br /&gt;
https://www.atmarkit.co.jp/ait/articles/2006/11/news016.html&lt;br /&gt;
&lt;br /&gt;
機械学習の手法13選 ー 初級者、中級者別に解説！&lt;br /&gt;
https://ainow.ai/2020/06/04/222969/&lt;br /&gt;
&lt;br /&gt;
スターバックスはコーヒー事業者ではない ― データテック企業なのだ&lt;br /&gt;
https://ainow.ai/2020/05/28/222388/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style="text-align: left;"&gt;
平均二乗誤差&lt;/h3&gt;
pytorchにはMSELossがある&lt;br /&gt;
&lt;br /&gt;
criterion = torch.nn.MSELoss()&lt;br /&gt;
&lt;br /&gt;
y = f(x)&lt;br /&gt;
loss = criterion(y, t)&lt;br /&gt;
print(loss.data)&lt;br /&gt;
&lt;br /&gt;
自作するとこう&lt;br /&gt;
def mycriterion(x, y):&lt;br /&gt;
&amp;nbsp; &amp;nbsp; result = (x - y) ** 2&lt;br /&gt;
&amp;nbsp; &amp;nbsp; return result.sum() / len(result)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
myloss = mycriterion(y, t)&lt;br /&gt;
print(myloss)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2020/06/python.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-4774684903641971173</guid><pubDate>Sat, 30 May 2020 00:00:00 +0000</pubDate><atom:updated>2026-04-29T10:34:32.123+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">メモ</category><title>SSブログとGoogleフォトのアルバム</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
So-netブログ改めSSブログは、Googleフォトの画像を埋め込むことができる。&lt;br /&gt;
&lt;div&gt;
&lt;div&gt;
ブログ側にてアップした画像は、以前は同じアルバムに入ってた。&lt;/div&gt;
&lt;div&gt;
2019年3月ごろからはアップしたタイミングごとに別のアルバムになった。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
2020年3月ごろから、ブログ閲覧者はGoogleアカウントにサインインしないと画像が見れなくなっていた、ことに3ヶ月くらいしてから気づいた。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
見れるようにするには、Googleフォトにて、アルバムを共有設定にする必要がどうやらあるらしい。。。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3 style="text-align: left;"&gt;
SSブログやBloggerからアップした画像を削除したい場合&lt;/h3&gt;
&lt;div&gt;
&lt;a href="https://get.google.com/albumarchive"&gt;https://get.google.com/albumarchive&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Googleアルバムアーカイブというところにアクセスする必要があるらしい&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2020/05/ssgoogle.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-3360975022558340362</guid><pubDate>Sun, 24 May 2020 05:09:00 +0000</pubDate><atom:updated>2022-11-03T17:51:53.463+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>Pythonで体験するベイズ推論</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;a href="https://www.amazon.co.jp/dp/4627077912/"&gt;Pythonで体験するベイズ推論 PyMCによるMCMC入門&lt;/a&gt;&lt;br /&gt;
キャメロン デビッドソン=ピロン（著）　玉木徹（翻訳）&lt;br /&gt;
&lt;br /&gt;
&lt;h3 style="text-align: left;"&gt;
PyMC3のインストール方法&lt;/h3&gt;
岩波データサイエンス Vol.1&lt;br /&gt;
[特集] ベイズ推論とMCMCのフリーソフト のサポートページ&lt;br /&gt;
&lt;a href="https://sites.google.com/site/iwanamidatascience/vol1/support_tokushu#TOC-PyMC3-"&gt;https://sites.google.com/site/iwanamidatascience/vol1/support_tokushu#TOC-PyMC3-&lt;/a&gt;&lt;br /&gt;
&lt;h3 style="text-align: left;"&gt;
Python ヒッチハイク・ガイド&lt;/h3&gt;
&lt;a href="https://python-guideja.readthedocs.io/ja/latest/"&gt;https://python-guideja.readthedocs.io/ja/latest/&lt;/a&gt;&lt;br /&gt;
&lt;h3 style="text-align: left;"&gt;
PcMC3のコード&lt;/h3&gt;
&lt;a href="https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers"&gt;https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers&lt;/a&gt;&lt;br /&gt;
&lt;h3 style="text-align: left;"&gt;
Chapter1の一部をやってみた&lt;/h3&gt;&lt;a href="https://github.com/sasasakaz/bayesian/blob/main/bayesian_estimation_for_change_point_detection.ipynb"&gt;

https://github.com/sasasakaz/bayesian/blob/main/bayesian_estimation_for_change_point_detection.ipynb&lt;/a&gt;

&lt;br /&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2020/05/python.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-17718403197442264</guid><pubDate>Sat, 11 Apr 2020 22:43:00 +0000</pubDate><atom:updated>2026-06-02T15:42:31.906+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>2群の平均値の差の検定そしてベイズ推定</title><description>&lt;div class="mdc-info-box"&gt;
&lt;strong&gt;背景&lt;/strong&gt;
&lt;ul&gt;
  &lt;li&gt;2群の平均値に差はあるか？を簡便におこなうならt検定&lt;/li&gt;
  &lt;li&gt;中心極限定理とt分布の頑健性のおかげで、たいていの場面において有用&lt;/li&gt;
  &lt;li&gt;計算簡単でコスパに優れた方法だが、有意差がある/ない以上の情報はもたらしてくれない&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;そこでベイズ推定&lt;/strong&gt;
&lt;ul&gt;
  &lt;li&gt;ここでは2群の観測データそれぞれがt分布から生成されると仮定したモデルを作成する&lt;/li&gt;
  &lt;li&gt;そしてこのモデルにより、2群の平均値の差の事後分布を得る&lt;/li&gt;
  &lt;li&gt;これにより2群の平均の差が一定値以上である確率など、豊かな情報を得ることができる&lt;/li&gt;
&lt;/ul&gt;
&lt;strong&gt;結論&lt;/strong&gt;
&lt;ul&gt;
  &lt;li&gt;ベイズ推定においても、2群の平均の差の平均値や区間推定は、Welchのt検定とほぼ同じ結果が得られた&lt;/li&gt;
  &lt;li&gt;弱情報事前分布の使用により事後分布はほぼ尤度だけで形作られ、しかも単峰だったため&lt;/li&gt;
  &lt;li&gt;不確かさを扱いながらの推定は手間を要するが、手間をかけたぶん実務面での問いに答えやすい情報を得られた&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;


&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;シナリオ&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;背景: カフェチェーンの店頭ディスプレイ改善施策&lt;ul&gt;
&lt;li&gt;あるカフェチェーンで、店内POP（販促物）を刷新することで「ラテ」の売上拡大を企図している&lt;/li&gt;
&lt;li&gt;立地や客層、売上規模、ラテの販売動向が似通っている2店舗を対象に、ABテストを模した実験をおこなった&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;データ構造と検証項目&lt;ul&gt;
&lt;li&gt;2店それぞれの14日間のラテ注文単価データ(日次ラテ売上金額 / 日次ラテ注文数)&lt;/li&gt;
&lt;li&gt;ラテのサイズやトッピングの有無などにより変動しやすい売上金額ではなく注文単価で比較&lt;/li&gt;
&lt;li&gt;処置（テスト店舗での新POP）は結果変数（ラテの日次注文単価）に影響してそうかを検証したい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;観測データ&lt;/h2&gt;
&lt;p&gt;A群（Control）[465.0, 458.6, 466.5, 475.2, 457.7, 457.7, 475.8, 467.7, 455.3, 465.4, 455.4, 455.3, 462.4, 440.9]&lt;/p&gt;
&lt;p&gt;B群（Test）[454.1, 471.6, 464.8, 484.7, 466.4, 458.8, 502.0, 476.6, 481.0, 458.6, 471.8, 481.7, 462.7, 485.6]&lt;/p&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-S9-iBqkx8vZ1qPgHorDNR8k65mml9RUrr26pSVhL4YxJVH68mqphj8hxxzjzo4jIIyCLfBijgE1ETSw8I46jS5gPZiBdq5CPtpVche1PJI8WeTbYFRWX6ekQOmqVjHiLDZsOWG3UfZXLdVUTrSgXlb0gIIjQoNMU1rwjLIN56yBRD3DYbsVJmzZBuMI/s540/diff_mean_01_obs.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="372" data-original-width="540" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-S9-iBqkx8vZ1qPgHorDNR8k65mml9RUrr26pSVhL4YxJVH68mqphj8hxxzjzo4jIIyCLfBijgE1ETSw8I46jS5gPZiBdq5CPtpVche1PJI8WeTbYFRWX6ekQOmqVjHiLDZsOWG3UfZXLdVUTrSgXlb0gIIjQoNMU1rwjLIN56yBRD3DYbsVJmzZBuMI/s320/diff_mean_01_obs.png"/&gt;&lt;/a&gt;&lt;/div&gt;


&lt;h2&gt;Welch t-test&lt;/h2&gt;
&lt;blockquote&gt;&lt;pre&gt;Group A: mean=461.34, unbiased sample variance=81.62, n=14
Group B: mean=472.89, unbiased sample variance=174.83, n=14
calculated degree of freedom: 23.0

&lt;p&gt;Welch's t_test Results
t-value: 2.70 p-value: 0.0128
average diff: 11.55 95%CI: (2.70, 20.41)
&lt;/p&gt;&lt;/pre&gt;&lt;/blockquote&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;統計モデリングのスタンス&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;統計や機械学習においては、今手元にある観測データは、なんらかの確率分布から生成されたという考え方をする。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;例えばこのカフェの場合、ラテ注文者の金額は確率的に決まる（例えば10人中5人くらいは400円の注文をする）という考え方。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;例えば実際の注文額（観測データ）は、平均400円、ばらつき50円くらいの正規分布から発生したのだろうといった捉え方ができる。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;確率分布とパラメータ&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ただし真の確率分布は誰にもわからない（本当は平均380円だったのかも？本当はもっと複雑な形状の分布だったのかも？）。&lt;/li&gt;
&lt;li&gt;分析者はなるべく真の確率分布に近しそうな確率モデルを構築する。この確率モデルの形状を決めるのがパラメータ。&lt;/li&gt;
&lt;li&gt;真の確率分布がわからない以上、適切な確率モデルもパラメータも分析者にはわからない。&lt;/li&gt;
&lt;li&gt;一方、手元には観測データがある。事実としてここにあるからには確からしいであろうと思える。&lt;/li&gt;
&lt;li&gt;そこで、観測データは確からしいであろうを出発点として、このデータを生み出したパラメータを（観測データの生成メカニズムとは）逆向きに探るアプローチをとる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;パラメータの選定&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;手元の観測データを得るのにちょうどいいパラメータもあれば、そうでないものもある。&lt;/li&gt;
&lt;li&gt;良し悪しの判断に用いるのは、データとパラメータの適合度合いを表す指標（likelihood 尤度）。&lt;/li&gt;
&lt;li&gt;データを固定して、パラメータをいろいろと変化させたときに、尤度がどう変わるかをグラフや数式で表現したのが尤度関数(Likelihood Function)。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;古典的統計学の場合&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;尤度が一番しっくりくる箇所を特定してパラメータを推定する（例えば二次関数を微分して極値を求める最尤法など）。t検定の考え方もこれに準ずる。&lt;/li&gt;
&lt;li&gt;計算が速く推定結果がわかりやすい。しかしそのピンポイントのわかりやすさが仇になる場合もある。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;不確実性&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Welchのt検定の結果、新POP導入でTest店のラテ注文単価はControl店を平均的に上回っていたことがわかった。&lt;/li&gt;
&lt;li&gt;だが、14日間のテスト期間中には注文単価が同程度だった日や下回っている日もあった。&lt;/li&gt;
&lt;li&gt;t検定が教えてくれるのは「平均して効果があったかどうか」という1点。&lt;/li&gt;
&lt;li&gt;14日間という限られた観測データから得られた推定値が、不確実性をどの程度含んでいるかは見えない。&lt;/li&gt;
&lt;li&gt;テスト期間の傾向が今後も続くのか、他店導入時に裏目に出るリスク（単価が下がる確率）はどのくらいかなど実務面での問いには答えにくい。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;パラメータの不確かさを含んだ推定&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;であれば、今手元にある限られた観測データから生じる「パラメータの不確かさ」を含んだままに推定してみる。&lt;/li&gt;
&lt;li&gt;これにより、まだ見ぬ場面における不確かさを確率的に表現しやすい、使い勝手のいい推定結果を得ることができるのではないか。&lt;/li&gt;
&lt;li&gt;そこで、尤度以外の情報（すでにわかっている知識、過去経験など）も駆使しながら不確かさをうまく扱えるベイズ推定をおこなう。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ベイズ推定の場合&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ベイズ推定では探索によって得られるパラメータを確率分布(事後分布)で表す。&lt;/li&gt;
&lt;li&gt;メリットとして、推定値の不確かさを自然に表現しやすく、実務面での問いにも答えやすい情報を得られる。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;まずパラメータの探索範囲を確率分布（事前分布）で仮定する。&lt;/li&gt;
&lt;li&gt;次に手元の観測データと事前分布を足がかりにして探索する。&lt;/li&gt;
&lt;li&gt;こうしてパラメータの不確かさを考慮した推定値（事後分布）を得る。&lt;br /&gt;　※事前分布に、データから得られた尤度（情報）を掛け合わせる（更新する）ことで、事後分布を得る&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;なお尤度はあくまで分析者が仮定した確率モデルのパラメータとの適合度合いを表すだけ。観測データとパラメータとの辻褄がもっとも合う尤度だったからといって、最適解のパラメータであることを常時保証してくれるわけではない。&lt;/p&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Bayesian Model Definition&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;ベイズ推定のモデリングで分析者が設定すること&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;観測データの生成プロセス（尤度関数となる確率分布の選定）: 観測データがどんなルール（確率モデル）から生まれたか&lt;/li&gt;
&lt;li&gt;選んだ確率モデルの形状を決めるパラメータの事前分布: 確率モデルの平均やバラツキをコントロールするパラメータの探索範囲&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;観測データの生成プロセス&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;2群の観測データそれぞれが「t分布」から生成されると想定&lt;ul&gt;
&lt;li&gt;t分布は、平均mu 標準偏差std 自由度ν（ニュー）の3つのパラメータで形状が決まる&lt;/li&gt;
&lt;li&gt;t分布は、正規分布よりも両端が厚いぶん、観測データに極端な値があった場合に、たまたま起きたノイズ（標本誤差）として処理しやすい&lt;/li&gt;
&lt;li&gt;t分布は、νが大きくなるにつれて正規分布に近似していく（t分布を想定することで正規分布をも包含できる）&lt;/li&gt;
&lt;li&gt;t分布にすることで、小サンプルでも標本誤差を軽減しやすく、不確かさを考慮した「頑健な」推定がしやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;各パラメータの事前分布&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;muとstd共通&lt;ul&gt;
&lt;li&gt;muとstdの事前分布はかなり広めに設定している（弱情報事前分布 Weakly Informative Prior）&lt;/li&gt;
&lt;li&gt;真の値がどのあたりに位置するか確からしい情報がない（観測データを最優先したい、あまり影響与えたくない）との考えを反映&lt;/li&gt;
&lt;li&gt;この場合、事後分布はほぼ観測データの情報（尤度）だけで形作られる（ので推定結果は検定の結果と近しくなりやすい）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;mu&lt;ul&gt;
&lt;li&gt;観測データ全体での平均と、観測データ全体の標準偏差を2倍した標準偏差からなる、裾が長い正規分布としている&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;std&lt;ul&gt;
&lt;li&gt;観測データ全体のスケールから機械的に算出した、範囲広めの一様分布としている&lt;/li&gt;
&lt;li&gt;下限は0付近ギリギリまで探索できるように設定（標準偏差は0以下にはならない、0近辺に張り付く可能性ある）&lt;/li&gt;
&lt;li&gt;上限は現実的範囲に制限&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ν（ニュー）&lt;ul&gt;
&lt;li&gt;頑健な推定のためにνの値が小さい（＝両端が厚い分布になる）方に高い事前確率を割り当てたい&lt;/li&gt;
&lt;li&gt;0をピークに右に裾が長い指数分布は好都合だが、νは0より大きい必要がある。またt分布はνが30を超えるとほぼ正規分布になる（ν=1はCauchy分布と同じ）&lt;/li&gt;
&lt;li&gt;以上から平均29（ラムダλ=1/29）の指数分布を右に1だけシフトしている&lt;/li&gt;
&lt;li&gt;これにより観測データの外れ値を許容しやすいν=1近辺（典型的なt分布）から、ν=30近辺（ほぼ正規分布）まで広く探索できる&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;関心のある指標自体もモデリング&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;観測データの生成プロセスを推定するついでに、結果の判断や意思決定に有用な情報もモデル化する&lt;/li&gt;
&lt;li&gt;ここでは以下4指標をDeterministic (各種パラメータから導出される決定論的変数)に推定する&lt;ul&gt;
&lt;li&gt;平均の差分: リフト差分（Test群の平均 - Control群の平均）&lt;/li&gt;
&lt;li&gt;標準偏差の差分: バラツキの差（Test群の標準偏差 - Control群の標準偏差）&lt;/li&gt;
&lt;li&gt;効果量: 差の大きさがバラツキに対してどれだけインパクト（大きな効果、意味を持つ差）があるか&lt;/li&gt;
&lt;li&gt;平均の変化率: リフトの比率（Control群を基準としたときの相対比率 1=100%すなわち等倍）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;pre&gt;&lt;code class="language-python"&gt;# Model Definition

# x_A:Control, x_B:Test
x_A = [465.0, 458.6, 466.5, 475.2, 457.7, 457.7, 475.8, 467.7, 455.3, 465.4, 455.4, 455.3, 462.4, 440.9]
x_B = [454.1, 471.6, 464.8, 484.7, 466.4, 458.8, 502.0, 476.6, 481.0, 458.6, 471.8, 481.7, 462.7, 485.6]

# prior distributions of mu 観測データの全体から設定
combined_data = np.concatenate([x_A, x_B])
pooled_mean = combined_data.mean()
pooled_std = combined_data.std() * 2

# prior distributions of sigma データのスケールに応じて動的に設定
std_low = pooled_std * 0.001
std_high = pooled_std * 10

# prior distributions of nu クルシュケさんのベストプラクティスに準じる
lambda_kruschke = 29

# 平均と標準偏差それぞれの2群間差分、効果量、平均の相対比率についてもモデル作成

with pm.Model() as model_weakly:
    mu_A = pm.Normal('mu_A', mu=pooled_mean, sigma=pooled_std)
    mu_B = pm.Normal('mu_B', mu=pooled_mean, sigma=pooled_std)
    # muが負の値を取るのを完全に防ぐなら、TruncatedNormalを使いlowerを指定する方法もあり
    # lower=0よりは、ドメイン知識を反映して、ラテの最低価格にするのがより現実的
    # mu_A = pm.TruncatedNormal('mu_A', mu=pooled_mean, sigma=pooled_std, lower=0)
    # mu_B = pm.TruncatedNormal('mu_B', mu=pooled_mean, sigma=pooled_std, lower=0)

    std_A = pm.Uniform('std_A', lower=std_low, upper=std_high)
    std_B = pm.Uniform('std_B', lower=std_low, upper=std_high)
    nu_kruschke = pm.Exponential('nu', lam=1/lambda_kruschke) + 1

    obs_A = pm.StudentT('obs_A', mu=mu_A, sigma=std_A, nu=nu_kruschke, observed=x_A)
    obs_B = pm.StudentT('obs_B', mu=mu_B, sigma=std_B, nu=nu_kruschke, observed=x_B)

    mu_diff = pm.Deterministic('mean_diff', mu_B - mu_A)
    mu_diff_rr = pm.Deterministic('relative_mean_diff', mu_diff / mu_A)
    std_diff = pm.Deterministic('std_diff', std_B - std_A)
    effect_size = pm.Deterministic('effect_size', mu_diff / np.sqrt((std_A**2 + std_B**2) / 2))


# MCMC Sampling
with model_weakly:
    prior_weakly = pm.sample_prior_predictive()
    trace_weakly = pm.sample(tune=2000, draws=2000, random_seed=42, return_inferencedata=True, chains=4, 
                            #  target_accept=0.95,  # Uncomment if divergences occur (Raise to 0.9-0.95)
                             idata_kwargs={"log_likelihood": True})  # モデル比較に使用する対数尤度を保存
    posterior_predictive_weakly = pm.sample_posterior_predictive(trace_weakly)
&lt;/code&gt;&lt;/pre&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Sampling Quality Check&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;ベイズ推定においては、サンプリング（マルコフ連鎖）が正常に機能し、事後分布に正しく収束しているかを確認する必要がある&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;trace_plotとsummaryを確認し、基準値をクリアしていれば適切な推定結果と解釈しやすい&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;trace_plotによる視覚的チェック&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;左側はKDE（カーネル密度推定）による事後分布の形状、右側はサンプリングの軌跡（トレースライン）。いずれのグラフもchainsで指定した本数（例: 4本）の線がプロットされる&lt;/li&gt;
&lt;li&gt;左側のグラフでは4本の線がだいたい同じ形に、右側のグラフでは毛虫のような見た目（縦軸の値が一定範囲を何度も行き来して変動幅がだいたい同じくらい）になっていれば概ね問題ない&lt;/li&gt;
&lt;li&gt;もしも左右グラフの下部に縦のバーが表示されている場合は、divergence 発散が起きていることを表す（縦バーの箇所ではサンプラーが空間の急斜面で足を踏み外してる、シミュレーションが真の軌道から大きく外れてる、つまりサンプリングがうまくいっていないことを表す）&lt;ul&gt;
&lt;li&gt;対処策1: target_acceptの値を0.90〜0.95程度に上げてみる（歩幅を細かくして慎重に探索させる）&lt;/li&gt;
&lt;li&gt;対処策2: tuneの回数を増やしてみる（ウォーミングアップ期間を伸ばして、地形の学習を確実にする）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;summaryによる数値的チェック&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;r_hat&lt;ul&gt;
&lt;li&gt;chain間の不一致度を表す&lt;/li&gt;
&lt;li&gt;目安として1.05以下（理想は1.00）であれば問題ない&lt;/li&gt;
&lt;li&gt;そうなってない=各chainが同じ分布にたどり着いていない（収束していない）、つまりサンプリングがうまくいっていない&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;mcse_mean, mcse_sd（マルコフ連鎖モンテカルロ誤差）&lt;ul&gt;
&lt;li&gt;サンプリングのブレが原因で生じる推定値の誤差（の平均と標準偏差）を表す&lt;/li&gt;
&lt;li&gt;目安としてmcse_meanが0.01以下（パラメータの変動範囲が0〜1の場合）、またはパラメータの標準偏差の5%以下（できれば2%以下）と十分に小さければ問題ない&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;ess_bulk, ess_tail（有効サンプルサイズ）&lt;ul&gt;
&lt;li&gt;自己相関を考慮した実質的なサンプル数&lt;/li&gt;
&lt;li&gt;事後分布の形状やHDIを安定して推定できているかを表す&lt;/li&gt;
&lt;li&gt;目安として400以上（できれば数千）確保されていれば問題ない&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;plot_autocorrによる自己相関チェック（任意）&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;summaryでess_bulkとr_hatが基準値をクリアしていれば自己相関は心配無用なので実行せずともよい&lt;/li&gt;
&lt;li&gt;問題ありの場合は、該当のパラメータのみを指定して実行（することでグラフが少ないぶん見やすい）&lt;/li&gt;
&lt;li&gt;どこに問題あるかの原因の切り分けに役立つ&lt;ul&gt;
&lt;li&gt;特定のchainだけ自己相関が高い→tuneを増やす、サンプリングの初期化オプションを調整するなど&lt;/li&gt;
&lt;li&gt;どのchainも自己相関が高い→モデルの構造を変える（パラメータ間の相関などが疑われる）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;# trace_plot
az.plot_trace(trace_weakly)
plt.tight_layout();

# summary
az.summary(trace_weakly)

# mcse_meanが各パラメーターの標準偏差の5%以下（できれば2%以下）という基準値に収まっているかをチェック
summary_df = az.summary(trace_weakly)
summary_df['mcse_mean / sd'] = summary_df['mcse_mean'] / summary_df['sd']
summary_df['mcse_mean / sd (%)'] = (summary_df['mcse_mean'] / summary_df['sd']) * 100 
output_df = summary_df[['sd', 'mcse_mean', 'mcse_mean / sd', 'mcse_mean / sd (%)']]
rounded_df = output_df.round({'sd': 1, 'mcse_mean': 3, 'mcse_mean / sd': 4, 'mcse_mean / sd (%)': 2 })
rounded_df

# # 自己相関
# az.plot_autocorr(trace_weakly, var_names=["nu"], figsize=(8,3), textsize=10)
# plt.tight_layout();

# forestplot 
# HDIを一覧で視覚的に解釈しやすい（太線は50%HDI）
az.plot_forest(trace_weakly, figsize=(6,4), textsize=10);
&lt;/code&gt;&lt;/pre&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixigXTguU3W2ag-dcqQJtd7ANQ7sFxVigvkKQ8Y-cV_2fFatdkT_Gt8RI2MTT7mGk2pEWGxjOfsyJHyAZqmZxVW1smtn0iIn-vXd-O4J1pseLw_C573Wd1aQ9DxV1Yu5AJkTZ_FVIUMOlzTOrvd03lj7p8OulWJkqg5ByJySpAY4G4klZqjFeWKju8kWQ/s1789/diff_mean_02_trace.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" height="320" data-original-height="1789" data-original-width="1189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixigXTguU3W2ag-dcqQJtd7ANQ7sFxVigvkKQ8Y-cV_2fFatdkT_Gt8RI2MTT7mGk2pEWGxjOfsyJHyAZqmZxVW1smtn0iIn-vXd-O4J1pseLw_C573Wd1aQ9DxV1Yu5AJkTZ_FVIUMOlzTOrvd03lj7p8OulWJkqg5ByJySpAY4G4klZqjFeWKju8kWQ/s320/diff_mean_02_trace.png"/&gt;&lt;/a&gt;&lt;/div&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIREY92OVnlEow52Hd_3fU2zVTyke-vupijn_sNsBwDEH_luuEW1uTTOWtZhV97dozM40_0WXGp32mEnzEwtqPMknVS6-TtiLn3J4C225AguEqts-G2eS3jMhAPRd0oWibCli8egCuNtyBGbUX890yAhyIt7Plrqphy_k5EyCNiBvBBbu19vuK9LF48Ac/s1452/diff_mean_03_summary.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="464" data-original-width="1452" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjIREY92OVnlEow52Hd_3fU2zVTyke-vupijn_sNsBwDEH_luuEW1uTTOWtZhV97dozM40_0WXGp32mEnzEwtqPMknVS6-TtiLn3J4C225AguEqts-G2eS3jMhAPRd0oWibCli8egCuNtyBGbUX890yAhyIt7Plrqphy_k5EyCNiBvBBbu19vuK9LF48Ac/s320/diff_mean_03_summary.png"/&gt;&lt;/a&gt;&lt;/div&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;PPC&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Posterior Predictive Check: &lt;a href="https://www.pymc.io/projects/docs/en/latest/learn/core_notebooks/posterior_predictive.html"&gt;作成したモデルが観測データをどの程度再現できているかを確認&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;事後分布のchainから任意のパラメータをランダムに取り出す（例: mu_A=450 std_A=20 nu=5）&lt;/li&gt;
&lt;li&gt;取り出したパラメータから成る分布から、観測データと同じサンプルサイズの擬似データを生成する（t分布から14サンプル取り出す）&lt;/li&gt;
&lt;li&gt;このKDE（カーネル密度推定）をプロットしたのが青線&lt;/li&gt;
&lt;li&gt;ここまでを指定の数（num_pp_samples=100）繰り返す。観測データのサンプルサイズが多い場合や分布次第では、青線が帯のように密集状態になる&lt;/li&gt;
&lt;li&gt;青線の平均をとったのがオレンジ点線（=モデルの平均的な予測）&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;読み解き方&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;黒線（観測データのKDE）が青線の変動範囲やオレンジ線と同じような位置、形であれば、モデルは観測データをよく近似していると解釈できる&lt;/li&gt;
&lt;li&gt;大きくズレていたら、分布の選定や事前分布の見直し、例えばt分布以外がよかったかな？事前分布の探索範囲を変えた方がよい？など、モデル修正方針の検討材料になる&lt;/li&gt;
&lt;li&gt;あくまで今手元にある観測データの発生メカニズムを矛盾なくシミュレーションできているかを見てるだけ。観測データやモデル自体の確からしさを裏付けるものではない（観測データが偏ってる可能性や過学習リスクは残る）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;本件の場合&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;観測データのサンプルサイズが少ないため、青線はあまり密集していない&lt;/li&gt;
&lt;li&gt;黒線がモデルの予測範囲（青線たちの広がり）の中に収まっており、いい感じのモデルといえそう&lt;/li&gt;
&lt;li&gt;ダメなモデルだったら、黒線が青線たちの外側に大きく飛び出していたり、山の位置が全くズレてたりするだろう&lt;/li&gt;
&lt;li&gt;muの事前分布をNormalにしたことで、ごく僅かに左端がマイナスの値を取る。これを100サンプルが引き当てた場合には、違和感のあるプロットになる。2群の平均値の差の事後分布にはほぼ影響ないが、どうにも気になる場合はTruncatedモデルを採用する手もある&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;az.plot_ppc(posterior_predictive_weakly, num_pp_samples=100, figsize=(10, 4));
&lt;/code&gt;&lt;/pre&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkcymuWQVovkBvlRzAbYF3H52wN1Jmw3vFu9Q8ArCQGwJUEHpAo5fUUnyhZj1AFcfcZl87n1fpAE4f4FLw75f1OYnt0hkCksjunyjorNt_TrodwZ9HEzlJ125Xry1pxdZGhNOPu74p3t67RoPr79FCKpGjXRnkCYeZaRwr_M4-Slxvakq3C7khiE-rk0E/s794/diff_mean_04_ppc.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="383" data-original-width="794" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkcymuWQVovkBvlRzAbYF3H52wN1Jmw3vFu9Q8ArCQGwJUEHpAo5fUUnyhZj1AFcfcZl87n1fpAE4f4FLw75f1OYnt0hkCksjunyjorNt_TrodwZ9HEzlJ125Xry1pxdZGhNOPu74p3t67RoPr79FCKpGjXRnkCYeZaRwr_M4-Slxvakq3C7khiE-rk0E/s320/diff_mean_04_ppc.png"/&gt;&lt;/a&gt;&lt;/div&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Interpretation&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Posterior Inference and Interpretation: 推論された事後分布の解釈&lt;/li&gt;
&lt;li&gt;plot_posterior&lt;ul&gt;
&lt;li&gt;事後分布のKDE, mean,HDIを一覧表示。視覚的に判断しやすい&lt;/li&gt;
&lt;li&gt;ref_valで指定した値を基準に、その値を上回る（下回る）確率を表示することも可能&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;2群の平均値の差について詳しく&lt;ul&gt;
&lt;li&gt;もっとも関心のあるところなので加工してグラフにいろいろ装飾している&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;# posterior
az.plot_posterior(trace_weakly, figsize=(10,6), textsize=10)
plt.tight_layout();

# posterior
# 差分、効果量、平均の変化率のmeanやhdiの表示

az.plot_posterior(trace_weakly, # hdi_prob=0.95,
                  var_names=["mean_diff", "relative_mean_diff"],
                  ref_val=0, color='#87ceeb', figsize=(8,2), textsize=10);

az.plot_posterior(trace_weakly, # hdi_prob=0.95,
                  var_names=["std_diff", "effect_size"],
                  ref_val=0, color='#87ceeb', figsize=(8,2), textsize=10);



# 下準備

# 多次元配列を一次元のサンプル配列として抽出
mu_diff_samples = az.extract(trace_weakly, var_names="mean_diff").values

# posterior_meanと94%HDIをグラフに表示するために値取得
posterior_mean = mu_diff_samples.mean()
hdi_lower = np.percentile(mu_diff_samples, 3)
hdi_upper = np.percentile(mu_diff_samples, 97)


# 2群間の平均値の差分の事後分布を表示
fig, ax = plt.subplots(figsize=(6,4))
ax.hist(mu_diff_samples, bins='auto', density=True,  # 縦軸を確率密度（全体の面積が1）にする
        color="tab:orange", alpha=0.5)
# bins='auto'にすると、データの四分位範囲とサンプルサイズから、外れ値に影響されにくい最適なビン幅を自動計算してくれる
# density=Trueにすると、ヒストグラムの面積の合計が1になる（確率密度関数と同じ状態）になる！

ax.axvline(0, lw=0.8, linestyle="dashed")  # ゼロのタテ線

# observed_meanと95%CIの描画（観測データの平均値と95%信頼区間）
# y位置を決める（グラフの一番下から少し上げた高さ）
ymin, ymax = ax.get_ylim()
ci_y = ymin + 0.07 * (ymax - ymin)
ax.scatter(diff_mean, ci_y, s=30, facecolors="white", edgecolors='gray', linewidths=2, label= f"Observed Average: {diff_mean:.2f}" , zorder=5)  # mean の点
ax.hlines(y=ci_y, xmin=ci_lower_w, xmax=ci_upper_w, color='gray', linewidth=3, label=f"95% CI: [{ci_lower_w:.2f}, {ci_upper_w:.2f}]")  # 95%CIの横線

# posterior_meanと94%HDIの描画（ベイズ推定での事後分布）
# y位置を決める（グラフの一番下から少し上げた高さ）
ymin, ymax = ax.get_ylim()
hdi_y = ymin + 0.03 * (ymax - ymin)
ax.scatter(posterior_mean, hdi_y, s=30, facecolors="white", edgecolors='#7f2704', linewidths=2, label= f"Posterior Average: {posterior_mean:.2f}" , zorder=5)  # mean の点
ax.hlines(y=hdi_y, xmin=hdi_lower, xmax=hdi_upper, color='#cc5500', linewidth=3, label=f"94% HDI: [{hdi_lower:.2f}, {hdi_upper:.2f}]")  # 94%HDIの横線

ax.legend(loc='upper right')
ax.set_xlabel("Difference in Average (JPY, Test - Control)", fontsize=10)
ax.set_ylabel("Probability Density (Area integrates to 1)", fontsize=10)
ax.set_yticklabels([])  # y軸の目盛りラベルを非表示にする（確率密度関数の値自体に意味を見出さなくていいように）
ax.tick_params(axis='y', which='both', length=0)  # y軸の目盛り線の長さを0にして非表示状態にする
# ax.get_yaxis().set_visible(False)  # これだとlabelも非表示になる
ax.set_title("Estimated Lift of Latte \n(t_dist Weakly Prior Model)", fontsize=12)
plt.tight_layout()
plt.show()

# print('observed average: {0:,.2f} 95%CI: ({1:,.2f}, {2:,.2f})'.format(diff_mean, ci_lower_w, ci_upper_w))
# print('posterior average: {0:,.2f} 94%HDI: ({1:,.2f}, {2:,.2f})'.format(posterior_mean, hdi_lower, hdi_upper))


&lt;/code&gt;&lt;/pre&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1e_A3BVcj30Ey6tSr-16mIZp0pQlfAi5HkXNy3Z5OQXWVNYyK6upSae6dWPVBEvDr3gfA8vAweTOVN4TsdOv1ek636JANHa82blfr51G-nUhlgnPlmvPqUdgZ90KJJq5RKbwwGIPvzdQp8CLQoFiIHQp1aU9XBsw7I9e5EtX5-qCqfw4tJHVsWcgVWlg/s973/diff_mean_05_posterior.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="590" data-original-width="973" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1e_A3BVcj30Ey6tSr-16mIZp0pQlfAi5HkXNy3Z5OQXWVNYyK6upSae6dWPVBEvDr3gfA8vAweTOVN4TsdOv1ek636JANHa82blfr51G-nUhlgnPlmvPqUdgZ90KJJq5RKbwwGIPvzdQp8CLQoFiIHQp1aU9XBsw7I9e5EtX5-qCqfw4tJHVsWcgVWlg/s320/diff_mean_05_posterior.png"/&gt;&lt;/a&gt;&lt;/div&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdVGoYGn7l7PMZN-93mOPr_RHvB8T90xlFElDPW0yjcbIkry2hVPT0Rtdii5n4yEu0_jFxzCa-S32uAzlE9ZA9p4bSxj5UIPjnXiHA65M8Cg8j1EjGpH8XCwZsqHtz4gAOCmF8Zd1M7rsyRUboYi2nPghB0sy7ujsv_ahfGAJ93oedR1vsT1Hnh0hlfTY/s590/diff_mean_06_estimated_lift.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="390" data-original-width="590" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdVGoYGn7l7PMZN-93mOPr_RHvB8T90xlFElDPW0yjcbIkry2hVPT0Rtdii5n4yEu0_jFxzCa-S32uAzlE9ZA9p4bSxj5UIPjnXiHA65M8Cg8j1EjGpH8XCwZsqHtz4gAOCmF8Zd1M7rsyRUboYi2nPghB0sy7ujsv_ahfGAJ93oedR1vsT1Hnh0hlfTY/s320/diff_mean_06_estimated_lift.png"/&gt;&lt;/a&gt;&lt;/div&gt;


&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Informative Model&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;ベイズ推定っぽく、事前分布に事前情報を適用したモデル&lt;/li&gt;
&lt;li&gt;他チェーンでは新POPで単価が50円上がったらしいという事前情報を反映した事前分布に書き換える&lt;/li&gt;
&lt;li&gt;「Test店はControl店よりもあらかじめ50円くらい高くなるポテンシャルを秘めているはずだ」との考えを反映したモデル&lt;/li&gt;
&lt;li&gt;尤度関数は引き続きt分布を想定&lt;/li&gt;
&lt;li&gt;想定される弱事前情報分布モデルからの変化&lt;ul&gt;
&lt;li&gt;Test店の平均値と94%HDIが上ブレする。ベイズ推定は「他チェーンでは50円上がったらしいけど、今回のデータは11円か…じゃあ間をとってこれくらいが真の実力かな」という、データの不確実性と過去の信頼性を天秤にかけた、いわゆる「収縮効果（Shrinkage）」を起こす。&lt;/li&gt;
&lt;li&gt;ひょっとすると94%HDIが狭まるかも。ベイズ推定は「情報が増えて、より確信を持って（不確かさを減らして）真の値を予測できるぞ」という状態になるので、事後分布の山が尖って、94%HDIの横棒が95%CIに比べて狭く引き締まる可能性がある。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;# Model Definition

with pm.Model() as model_informative:
    # A店は、手元のデータの全体平均をベースに緩やかに置いておく
    mu_A = pm.Normal('mu_A', mu=pooled_mean, sigma=pooled_std)
    # B店（Test群）の事前分布に「50円プラス」の知識を組み込む。
    # 過去の実績（50円アップ）を信じつつ、ブレ（sigma）も考慮する
    prior_B_mean = pooled_mean + 50 
    mu_B = pm.Normal('mu_B', mu=prior_B_mean, sigma=pooled_std) 

    std_A = pm.Uniform('std_A', lower=std_low, upper=std_high)
    std_B = pm.Uniform('std_B', lower=std_low, upper=std_high)
    nu_kruschke = pm.Exponential('nu', lam=1/lambda_kruschke) + 1

    obs_A = pm.StudentT('obs_A', mu=mu_A, sigma=std_A, nu=nu_kruschke, observed=x_A)
    obs_B = pm.StudentT('obs_B', mu=mu_B, sigma=std_B, nu=nu_kruschke, observed=x_B)

    mu_diff = pm.Deterministic('mean_diff', mu_B - mu_A)
    mu_diff_rr = pm.Deterministic('relative_mean_diff', mu_diff / mu_A)
    std_diff = pm.Deterministic('std_diff', std_B - std_A)
    effect_size = pm.Deterministic('effect_size', mu_diff / np.sqrt((std_A**2 + std_B**2) / 2))
&lt;/code&gt;&lt;/pre&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Truncated Model&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;結果変数が負の値をとらないようにするモデル&lt;/li&gt;
&lt;li&gt;弱情報事前分布モデルも事前情報を組み込んだモデルも、muの事前分布をNormalにしていた&lt;/li&gt;
&lt;li&gt;推定への影響は軽微だが、現実世界のドメイン知識をより厳密に反映したモデルにする&lt;/li&gt;
&lt;li&gt;尤度関数は引き続きt分布を想定しつつ、muの事前分布をTruncated Normalに変更する&lt;/li&gt;
&lt;li&gt;ドメイン知識を反映したモデルで納得感高めることを企図（副次的にPPCでの違和感ある出力回避可能）&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;with pm.Model() as model_truncated:
    # muが負の値を取るのを完全に防ぐなら、TruncatedNormalを使いlowerを指定する方法もあり
    # lower=0よりは、ドメイン知識を反映して、ラテの最低価格にするのがより現実的
    mu_A = pm.TruncatedNormal('mu_A', mu=pooled_mean, sigma=pooled_std, lower=0)
    mu_B = pm.TruncatedNormal('mu_B', mu=pooled_mean, sigma=pooled_std, lower=0)

    std_A = pm.Uniform('std_A', lower=std_low, upper=std_high)
    std_B = pm.Uniform('std_B', lower=std_low, upper=std_high)
    nu_kruschke = pm.Exponential('nu', lam=1/lambda_kruschke) + 1

    obs_A = pm.StudentT('obs_A', mu=mu_A, sigma=std_A, nu=nu_kruschke, observed=x_A)
    obs_B = pm.StudentT('obs_B', mu=mu_B, sigma=std_B, nu=nu_kruschke, observed=x_B)

    mu_diff = pm.Deterministic('mean_diff', mu_B - mu_A)
    mu_diff_rr = pm.Deterministic('relative_mean_diff', mu_diff / mu_A)
    std_diff = pm.Deterministic('std_diff', std_B - std_A)
    effect_size = pm.Deterministic('effect_size', mu_diff / np.sqrt((std_A**2 + std_B**2) / 2))
&lt;/code&gt;&lt;/pre&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Gamma Model&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Truncated Model同様に、結果変数が負の値をとらないようにするモデル&lt;/li&gt;
&lt;li&gt;尤度関数はガンマ分布を想定&lt;/li&gt;
&lt;li&gt;負の値をとらない連続値であれば、t分布と切断分布の組み合わせよりは、こちらの方が汎用性は高いかも&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;# Model Definition

with pm.Model() as model_gamma:
    # ガンマ分布のパラメータは「正の実数」でないとなので弱情報事前分布としてExponentialやHalfNormalを使うことが多い
    alpha_A = pm.Exponential('alpha_A', lam=0.1)
    beta_A = pm.Exponential('beta_A', lam=0.1)
    alpha_B = pm.Exponential('alpha_B', lam=0.1)
    beta_B = pm.Exponential('beta_B', lam=0.1)

    obs_A = pm.Gamma('obs_A', alpha=alpha_A, beta=beta_A, observed=x_A)
    obs_B = pm.Gamma('obs_B', alpha=alpha_B, beta=beta_B, observed=x_B)
    
    # ガンマ分布の数理特性から、事後分布の平均と標準偏差を逆算する（deterministic用）
    # 各群の期待値（平均値 = alpha / beta）の計算
    mu_A_calc = pm.Deterministic('mu_A_calc', alpha_A / beta_A)
    mu_B_calc = pm.Deterministic('mu_B_calc', alpha_B / beta_B)    
    # 各群の標準偏差（sd = sqrt(alpha) / beta）の計算
    std_A_calc = pm.Deterministic('std_A_calc', np.sqrt(alpha_A) / beta_A)
    std_B_calc = pm.Deterministic('std_B_calc', np.sqrt(alpha_B) / beta_B)

    # 平均と標準偏差それぞれの2群間差分、効果量、平均の相対比率についてもモデル作成
    mu_diff = pm.Deterministic('mean_diff', mu_B_calc - mu_A_calc)
    mu_diff_rr = pm.Deterministic('relative_mean_diff', mu_diff / mu_A_calc)
    std_diff = pm.Deterministic('std_diff', std_B_calc - std_A_calc)
    effect_size = pm.Deterministic('effect_size', mu_diff / np.sqrt((std_A_calc**2 + std_B_calc**2) / 2))
&lt;/code&gt;&lt;/pre&gt;

&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;

&lt;h2&gt;Compare Models&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;どの尤度関数（モデル）が優れているかを比較&lt;/li&gt;
&lt;li&gt;事後分布を丸ごと使って比較する&lt;/li&gt;
&lt;li&gt;LOOやWAICといったベイズ専用の指標を計算する。&lt;/li&gt;
&lt;li&gt;単に手元のデータへのフィット度を見るだけでなく、「パラメータの不確実性も含めた上で、未来の予測能力が一番高いのはどのモデルか？」を厳密にスコアリングしてくれる。&lt;/li&gt;
&lt;li&gt;基本的には WAIC よりも LOO を使う方が推奨とされている。&lt;ul&gt;
&lt;li&gt;理由は数理的な頑健性（ロバストさ）にある。&lt;/li&gt;
&lt;li&gt;WAIC: 計算がめちゃくちゃ高速だけど、データが少なかったり、極端な外れ値があったりすると、ペナルティ項（p_waic）の計算が少し不安定になって、スコアがブレやすいという弱点がある。&lt;/li&gt;
&lt;li&gt;LOO（正確にはPSIS-LOO）: WAIC とほぼ同じ予測力を測る指標なんだけど、内部で「外れ値に対する警告システム（Pareto k 統計量）」が動いてくれるから、14サンプルみたいな少サンプルデータに対して、より安全で正確に機能する。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;&lt;code class="language-python"&gt;# 各モデルのサンプリング結果を格納して、どの観測値の尤度で比較するかを変数名で指定する
model_compare = az.compare({
    "t_dist Weakly Prior Model": trace_weakly,
    "t_dist Informative Prior Model": trace_informative,
    "t_dist Truncated Model": trace_truncated,
    "Gamma Weakly Prior Model": trace_gamma
    },
    var_name="obs_B",
    # ic="waic"  # デフォルトはloo
)
az.plot_compare(model_compare);


model_compare
&lt;/code&gt;&lt;/pre&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzZ-dCb83dcq_qW77-iMCB-gcaKmRK3zNWoMrnmRoZ58HY4Z0uGxnk5_L8DS9oWjCMBr0iuHUMi9aJhAcWlLTjNAfknWOrUrmjW8L56VRYmaZziEgubRWgEvz2HZ80iPRqqNJSXxYvJnSnAnbmf8XRlcYVLW8zxDgpMInc0h9KthKGNqx1FQHKbgDE1T0/s771/diff_mean_07_model_compare.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="422" data-original-width="771" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzZ-dCb83dcq_qW77-iMCB-gcaKmRK3zNWoMrnmRoZ58HY4Z0uGxnk5_L8DS9oWjCMBr0iuHUMi9aJhAcWlLTjNAfknWOrUrmjW8L56VRYmaZziEgubRWgEvz2HZ80iPRqqNJSXxYvJnSnAnbmf8XRlcYVLW8zxDgpMInc0h9KthKGNqx1FQHKbgDE1T0/s320/diff_mean_07_model_compare.png"/&gt;&lt;/a&gt;&lt;/div&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI0s_Xd8-BmvuNFT_u5BukUtw-h-aZW5Y069dYCawPBFfh0AcVvk3f1apI14xXv1Qc6VbMaDBBobLZEWkB3ou1CDr4F6_QTkFEhbzypT343CP5YjkNg0yYK7pem554Os3c6SCXhQxyIXZ46U1NIn-ljSNUfkv89m72POJ1oedNY5jYDyaaAgnqIiEWzz0/s1648/diff_mean_08_model_compare_table.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="246" data-original-width="1648" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI0s_Xd8-BmvuNFT_u5BukUtw-h-aZW5Y069dYCawPBFfh0AcVvk3f1apI14xXv1Qc6VbMaDBBobLZEWkB3ou1CDr4F6_QTkFEhbzypT343CP5YjkNg0yYK7pem554Os3c6SCXhQxyIXZ46U1NIn-ljSNUfkv89m72POJ1oedNY5jYDyaaAgnqIiEWzz0/s320/diff_mean_08_model_compare_table.png"/&gt;&lt;/a&gt;&lt;/div&gt;


&lt;h2&gt;表の見方&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;rank: どのモデルが優秀か。&lt;ul&gt;
&lt;li&gt;予測性能がいい順番。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;elpd_loo(elpd_waic): 予測性能のトータルスコア。&lt;ul&gt;
&lt;li&gt;期待対数予測密度（対数予測密度の期待値 Expected Log Pointwise Predictive Density）。値が大きい、つまり0に近いほど予測性能が優秀。未来のデータをどれだけ精度よく予測できるかを表す。&lt;/li&gt;
&lt;li&gt;t分布たちはほぼ互角だけど、ガンマ分布はかなり低いスコア。つまり「14サンプルの手元のデータに対しては、t分布のほうが圧倒的に座りが良かった」ということを意味している&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;p_loo(p_waic): 有効パラメータ数。&lt;ul&gt;
&lt;li&gt;モデルの複雑さ（過学習のしやすさ、ペナルティの大きさ）を表す。&lt;/li&gt;
&lt;li&gt;パラメータ数が多かったり、観測データに無理やり形を合わせよう（過剰適合）とすると、この数値が大きくなりelpdが減点される仕組み。&lt;/li&gt;
&lt;li&gt;t分布勢に対してガンマ分布は小さい。ガンマ分布モデルは無駄な複雑さがなく、シンプルにデータを表現していることを示している&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;elpd_diff: 1位との予測スコアの差分。&lt;ul&gt;
&lt;li&gt;差が4以上あると有意な差とみなされることが多い&lt;/li&gt;
&lt;li&gt;t分布たちの差分は微量なので1位とほぼ同等と言える。ガンマ分布はずいぶん離れており、今回データにおいては予測力不足と言える。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;weight: 予測ブレンドの重み付け&lt;ul&gt;
&lt;li&gt;もしこれらのモデルを合体させて未来を予測するなら、どのモデルの意見を何割信じるべき？というブレンド比率（0〜1）。&lt;/li&gt;
&lt;li&gt;LOOの場合（内部ではスタッキング法という技術が使われることが多い）、モデルの実力が伯仲していたときに0.6と0.4みたいに綺麗に分散して出力されやすい（複数モデルの予測パワーのバランスをリアルに反映しやすい。重み付けの計算がより安定的になる）&lt;/li&gt;
&lt;li&gt;WAICの場合は微差であっても1位のモデルに 1.0（100%）と極端に全振りされやすい。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;se: トータルスコアの標準誤差&lt;ul&gt;
&lt;li&gt;各モデルのelpd_loo(elpd_waic)が、サンプリングのブレによってどれくらいバラつく可能性があるかを表す不確実性の幅（標準誤差）。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;dse: 差分の標準誤差（elpd_diff自体の標準誤差）。&lt;ul&gt;
&lt;li&gt;elpd_diff ÷ dseの計算結果が2を超えているかどうかが、実務上の超重要ラインになる。&lt;/li&gt;
&lt;li&gt;2未満であれば、1位のモデルと数理的には完全に互角・誤差の範囲内。&lt;/li&gt;
&lt;li&gt;ガンマ分布は2を大きく超えており、ガンマ分布が負けているのはサンプリングの偶然ではなく明確に実力差であると言い切れる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;warning: 計算が破綻していないかの警告&lt;ul&gt;
&lt;li&gt;データの中にLOO(WAIC)の前提を揺るがすような過度なばらつき（極端な値）があり、指標の計算が数理的に変になってないかのフラグ。&lt;/li&gt;
&lt;li&gt;True だと数値が信用できない、False だと健康に計算できたという意味。&lt;/li&gt;
&lt;li&gt;LOOのwarning=Trueは、&lt;ul&gt;
&lt;li&gt;内部で パレートk統計量（Pareto k diagnostics）という厳密なデバッグシステムが動いて警告を出す。&lt;/li&gt;
&lt;li&gt;データ1件1件に対して、このデータはモデルにとって予測しづらい外れ値になってないか？を全件チェックして、基準値（k&amp;gt;0.7）を超えたデータが1件でもあるとwarning=Trueになる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;WAICのwarningは、&lt;ul&gt;
&lt;li&gt;データ全体のバラつきをなんとなく見て、なんか破綻してそうってアバウトに警告を出すだけ。&lt;/li&gt;
&lt;li&gt;WAICではt分布勢はサンプルの少なさや裾の厚さのせいでTrueだが、ガンマ分布モデルは Falseだった。&lt;/li&gt;
&lt;li&gt;ガンマ分布は非負のデータ構造を数理的に正しく捉えているから、警告を出さずにものすごく健康に計算できたという、ガンマ分布の構造的な美しさが証明されている。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;scale: 計算の単位空間。&lt;ul&gt;
&lt;li&gt;対数尤度をどのスケールで計算したか。ArviZでは一律でlog（対数空間）が使われる&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;モデル評価&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;4モデルの中ではTruncated Modelが最も予測能力が高いと評価された（僅差のためサンプリング次第でTOP3の並びは変わる可能性あり）&lt;/li&gt;
&lt;li&gt;t分布の3モデルはほぼ同程度に対し、ガンマ分布モデルは予測能力が劣ると評価された&lt;/li&gt;
&lt;li&gt;ガンマ分布モデルは微量ながらdivergenceが発生していた。また94%HDIの幅が広すぎる推定だった&lt;/li&gt;
&lt;li&gt;以上からすると、ガンマ分布モデルを採用するのはなさそう。t分布についてはどれを採用してもよさそうとの結論&lt;/li&gt;
&lt;/ul&gt;


  
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2020/04/blog-post_12.html</link><author>noreply@blogger.com (sasa)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-S9-iBqkx8vZ1qPgHorDNR8k65mml9RUrr26pSVhL4YxJVH68mqphj8hxxzjzo4jIIyCLfBijgE1ETSw8I46jS5gPZiBdq5CPtpVche1PJI8WeTbYFRWX6ekQOmqVjHiLDZsOWG3UfZXLdVUTrSgXlb0gIIjQoNMU1rwjLIN56yBRD3DYbsVJmzZBuMI/s72-c/diff_mean_01_obs.png" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-5755967200385315573</guid><pubDate>Sat, 11 Apr 2020 05:09:00 +0000</pubDate><atom:updated>2026-06-02T09:43:55.278+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">マーケティング</category><title>ブランディングの科学</title><description>&lt;p&gt;『How Brands Grow : What Marketers Don't Know』バイロン・シャープ&lt;/p&gt;

&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://amzn.to/4v2NxOB" rel="nofollow" target="_blank"&gt;&lt;img alt="" border="0" data-original-height="1500" data-original-width="1032" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPJpaFGrNiq6vkeRhysejz-ILbo1YIYbdTZGIqosXTEx-zhPZrCCWKRPle1zLj611Vzcax6GNg0E7fc1eEiSxasMNVqMXgtMWEj8oa1M3DTvjPEXK2-yp9C9FOcNI41y34_UdWRmVqvOJWS7PepzgI888h0UfwbtguzskbkGWd-puT9Q_rxVgznPNs3b0/s320/71ZUotw0ZnL._SL1500_.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;　
  
&lt;div class="mdc-info-box"&gt;&lt;strong&gt;✅ 3行まとめ&lt;/strong&gt;
&lt;ul&gt;
  &lt;li&gt;ブランドの成長には、購入者数の拡大が重要である&lt;/li&gt;
  &lt;li&gt;特に消費者の大多数を占めるライト/ノンユーザーへのアプローチが欠かせない&lt;/li&gt;
  &lt;li&gt;ブランドの独自性を追求してブランドを識別しやすくすることが購入につながり、ブランドを成長させる&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;


&lt;div class="mdc-warn-box"&gt;
&lt;strong&gt;⚠️ 背景事情&lt;/strong&gt;
&lt;ul&gt;
  &lt;li&gt;人間の脳は注意力散漫でスルースキルが高い。顕著な手がかりがないブランドや広告は存在しないも同然。&lt;/li&gt;
  &lt;li&gt;人間の記憶は不確かで不安定である。明瞭で一貫したマーケティングによる記憶強化が購入を後押しする。&lt;/li&gt;
  &lt;li&gt;消費者が購買行動時に非合理な選択をするのは珍しくない。新規獲得による購入者数拡大なくしてブランドは成長しない。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;

&lt;br&gt;

&lt;h2&gt;概要&lt;/h2&gt;
&lt;p&gt;マーケティング界では常識のように語られている法則や理論の中には、実はなんの裏付けもなかったり、誇大表現がまかり通っているものがある。&lt;/p&gt;
&lt;p&gt;著者バイロン・シャープ Byron Sharpは、従来のマーケティング理論をやみくもに盲信するのではなく、エビデンスに基づいたマーケティングを提唱。実際の販売データや市場調査データの裏付けとともに新たな法則・理論を提示しながら、より効率的なマーケティング活動をおこなうことの重要性を説く。&lt;/p&gt;
&lt;p&gt;エビデンスに欠ける従来思想に固執して出血大サービスのマーケティングを続けるのか、それともデータで検証された確からしい見識を携えてブランドを有意義に成長させるのか。見なかったフリをして進化を止めるのか、それとも積極的に取り込んで自らをも成長させるのか。後者でいたい方には有益な書籍。&lt;/p&gt;

&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;Ch1. エビデンスに基づいたマーケティング&lt;/h2&gt;
&lt;p&gt;Evidence-based Marketing  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;マーケティングの教科書に書かれた理論の大半は、エビデンスの記述がない&lt;/li&gt;
&lt;li&gt;マーケティングの歴史は浅いため、表層的な印象や根拠なき言い伝えに頼っている面がある&lt;/li&gt;
&lt;li&gt;誤った仮説を立てるから、方向を見誤ってしまう&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch2. ブランドはどのように成長するか&lt;/h2&gt;
&lt;p&gt;How Brands Grow&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;小規模ブランドは、大規模ブランドよりも購入者数がはるかに少ない&lt;/li&gt;
&lt;li&gt;小規模ブランドは購入頻度も少ない、これらを合わせて「二重苦の法則」と呼ぶ&lt;/li&gt;
&lt;li&gt;ブランドの成長には購入者数の拡大が重要である&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch3. 顧客基盤を拡大させる&lt;/h2&gt;
&lt;p&gt;How to Grow Your Customer Base  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;「1：5の法則」「5：25の法則」を裏付けるデータはない&lt;/li&gt;
&lt;li&gt;顧客離反率をゼロに抑えられたとしても、ブランド成長度はたかが知れている&lt;/li&gt;
&lt;li&gt;新規顧客獲得に成功するとブランドは成長し、失敗すると衰退する&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch4. ブランドにとってもっとも重要や顧客を探す&lt;/h2&gt;
&lt;p&gt;Which Customers Matter Most?  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ヘビーユーザーはありがたい、だが習慣化した購買行動を変えるのは難しい&lt;/li&gt;
&lt;li&gt;2割のヘビーユーザーが売上に占める割合はせいぜい6割である&lt;/li&gt;
&lt;li&gt;ライトユーザーは、ブランドの大きな売上、大きな成長をもたらす可能性を秘めている&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch5. 顧客のパーソナリティプロファイルを知る&lt;/h2&gt;
&lt;p&gt;Our Buyers Are Different  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;自社ブランド顧客と競合ブランド顧客の属性は似通っている&lt;/li&gt;
&lt;li&gt;競合ブランドの現顧客は、自社ブランドの将来顧客になる可能性がある&lt;/li&gt;
&lt;li&gt;各ブランドの購入者は別人ではあっても、属性が異なるわけではない&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch.6 真の競合ブランドを探す&lt;/h2&gt;
&lt;p&gt;Who Do You Really Compete With?  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;各ブランドは顧客を共有している、各ブランドの顧客はセグメントされていない&lt;/li&gt;
&lt;li&gt;どのブランドも、大規模ブランドとの顧客重複率は高く、小規模ブランドとの顧客重複率は低い&lt;/li&gt;
&lt;li&gt;市場には高品質/高価格帯のような境界線は存在するが、完全に分断された市場とは捉えない方がよい&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch7. 消費者のコミットメントを知る&lt;/h2&gt;
&lt;p&gt;Passionate Consumer Commitment  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ブランドの購入体験がブランド選好を高め、ロイヤルティにつながる&lt;/li&gt;
&lt;li&gt;大規模ブランドほどライトユーザー比率が高いがために、ロイヤルティも高く見える&lt;/li&gt;
&lt;li&gt;ブランドの熱狂的信者は確かに存在するが、マーケティング的な重要性は低い&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch8. 差別化か、それとも独自性か&lt;/h2&gt;
&lt;p&gt;Differentiation versus Distinctiveness  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;差別化は長続きしない、差別化よりも独自性を追い求めるべきである&lt;/li&gt;
&lt;li&gt;消費者はブランド間の差異に気づいてはいる、だがお気に入りブランドの購入を止めるほどではない&lt;/li&gt;
&lt;li&gt;独自のブランド資産は、消費者のブランドへの気づきやすさ、想起しやすさ、購入促進につながる&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch9. 広告の機能&lt;/h2&gt;
&lt;p&gt;How Advertising Really Works  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;広告は売上に寄与している、ただしすぐ売上に効くことも、止めて売上がすぐ落ち込むこともほぼない&lt;/li&gt;
&lt;li&gt;広告は以前の記憶を思い起こさせたり、時に記憶に刷り込まれることで機能する&lt;/li&gt;
&lt;li&gt;広告は独創的な内容によって、ブランドの独自性を維持、構築する&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch10. 価格販促の役割&lt;/h2&gt;
&lt;p&gt;What Price Promotions Really Do &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;価格販促はすぐ売上に効く、だが長続きしないし、非常に大きな犠牲をともなう&lt;/li&gt;
&lt;li&gt;価格販促で新規獲得はできない、購入者の大半はそのブランドの過去購入経験あり&lt;/li&gt;
&lt;li&gt;消費者は幅広い価格帯から商品を選んでいる、低価格志向者だけを狙った価格販促は困難である&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch11. ロイヤルティプログラムが失敗する理由&lt;/h2&gt;
&lt;p&gt;Why Loyalty Programs Don't Work&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ロイヤルティプログラムの効果は少しはある、だが利益やブランド成長への寄与はないに等しい&lt;/li&gt;
&lt;li&gt;大多数を占めるライトユーザーは低購入頻度なぶんプログラム参加可能性が低く、効き目も薄い&lt;/li&gt;
&lt;li&gt;ヘビーユーザーはプログラムに参加しても購買行動に変化はない、つまり多額の投資に見合わない&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch12. メンタル・アベイラビリティとフィジカル・アベイラビリティ&lt;/h2&gt;
&lt;p&gt;Mental and Physical Availability  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;消費者は限られたお気に入りブランドを購入しがち、そもそも大半のブランドは眼中にない&lt;/li&gt;
&lt;li&gt;ブランドを想起してくれる人数と、購入候補に加えてもらえる回数、この2点を増やす努力を&lt;/li&gt;
&lt;li&gt;ブランドの配荷率と店頭での目立ちやすさを確保する、これが購入を後押しする&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Ch13. 最後に一言&lt;/h2&gt;
&lt;p&gt;A Final Word  &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;7つのシンプルなマーケティングの法則&lt;/li&gt;
&lt;/ul&gt;
&lt;ol&gt;
&lt;li&gt;ブランドのサービス/製品カテゴリー内のすべての消費者に、配荷およびマーケティングコミュニケーションの両面から継続的にリーチする&lt;/li&gt;
&lt;li&gt;ブランドの買い求めやすさを確保する&lt;/li&gt;
&lt;li&gt;目立つ。その過程を誤るとブランドコミュニケーションに費やす費用が無駄になる&lt;/li&gt;
&lt;li&gt;ブランドが目立ち、買いやすくなるためにも、ブランド記憶の構造を構築/刷新する&lt;/li&gt;
&lt;li&gt;独自のコミュニケーション資産を創造する&lt;/li&gt;
&lt;li&gt;一貫性を保ちながら、新鮮さと興味を失わない&lt;/li&gt;
&lt;li&gt;競合力を維持しつつ、多くの人に受け入れられる。ブランドを買わない理由を与えてはならない&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;ブランドが成長することは可能だ。新しいブランドである必要はない。優れた広告、優れたブランディング、優れたメディア戦略、優れた店内ディスプレイ、そして前述の7つのルールに従うこと、これらすべてが成長への道だ。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;本書に登場した法則&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;ダブルジョパディの法則 Ch2.&lt;/li&gt;
&lt;li&gt;リテンションダブルジョパディの法則 Ch3.&lt;/li&gt;
&lt;li&gt;パレートの法則（60/20） Ch4.&lt;/li&gt;
&lt;li&gt;購買行動適正化の法則 Ch4.&lt;/li&gt;
&lt;li&gt;自然独占の法則 Ch7.&lt;/li&gt;
&lt;li&gt;顧客基盤が類似する Ch5.&lt;/li&gt;
&lt;li&gt;ブランドに対する態度と思いが行動ロイヤルティに反映される Ch7.&lt;/li&gt;
&lt;li&gt;ブランド使用体験が消費者の態度に影響を与える Ch5.&lt;/li&gt;
&lt;li&gt;プロトタイプの法則 Ch8.&lt;/li&gt;
&lt;li&gt;購買重複の法則 Ch6.&lt;/li&gt;
&lt;li&gt;NBDディリクレ Ch4.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;関連情報&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://amzn.to/4dKrR3m"&gt;書籍「確率思考の戦略論」&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mizuho-ir.co.jp/publication/report/2017/pdf/mhir14_royalty.pdf"&gt;みずほ情報総研「顧客ロイヤルティの先行要因と結果行動 -コンビニエンスストアを事例として-」&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.advertimes.com/20180821/article275883/"&gt;マーケターが陥りやすい「ターゲティングの罠」「ロイヤリティの幻想」&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.advertimes.com/20180828/article276272/"&gt;マーケターが陥りやすい「ブランドポジショニングの罠」「態度変容の幻想」&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.advertimes.com/20181107/article279940/"&gt;なぜ、ハズキルーペとMacはブランドとして目立つのか？　独自ブランド資産の重要性&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.advertimes.com/20150811/article199208/"&gt;あなたのブランドは「差別化」というワナに囚われていませんか？&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;



&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!--respo--&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2020/04/blog-post.html</link><author>noreply@blogger.com (sasa)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiPJpaFGrNiq6vkeRhysejz-ILbo1YIYbdTZGIqosXTEx-zhPZrCCWKRPle1zLj611Vzcax6GNg0E7fc1eEiSxasMNVqMXgtMWEj8oa1M3DTvjPEXK2-yp9C9FOcNI41y34_UdWRmVqvOJWS7PepzgI888h0UfwbtguzskbkGWd-puT9Q_rxVgznPNs3b0/s72-c/71ZUotw0ZnL._SL1500_.jpg" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-1434823650977801912</guid><pubDate>Fri, 16 Aug 2019 02:33:00 +0000</pubDate><atom:updated>2021-05-22T11:45:35.766+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">メモ</category><title>QuickTimeで音声入りで画面を動画キャプチャ</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
macの場合の話&lt;br /&gt;
&lt;div&gt;
&lt;ol style="text-align: left;"&gt;
&lt;li&gt;サウンドで、Soundflower(2ch)を選択&lt;/li&gt;
&lt;li&gt;LadioCastを起動し、入力1：Soundflower(2ch) 出力メイン：内蔵出力　に設定する&lt;/li&gt;
&lt;li&gt;QuickTime Playerを起動、メニューバーのファイル→新規画面収録で録画ボタン横の下向き矢印クリックでSoundflower(2ch)を選択&lt;/li&gt;
&lt;li&gt;収録したい画面範囲をドラッグで選択、決まったら録画ボタン押す&lt;/li&gt;
&lt;li&gt;録画終了はタスクバーの停止ボタンクリック、内容よければファイル保存&lt;/li&gt;
&lt;li&gt;サウンド設定を元（内蔵スピーカー設定）に戻して終わり&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
音声なしの動画保存ならサウンド周り設定不要なのでQuickTimeで新規画面収録でOK&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
https://qiita.com/taki_tflare/items/a03514b93a1bba9cdc01&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;M1 Macの場合&lt;/div&gt;&lt;div&gt;soundflowerが使えない&lt;/div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;BlackHoleをインストール&lt;/li&gt;&lt;li&gt;&lt;a href="https://github.com/ExistentialAudio/BlackHole"&gt;GitHub – ExistentialAudio/BlackHole: BlackHole is a modern macOS virtual audio driver that allows applications to pass audio to other applications with zero additional latency.&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Audio MIDI設定を開く&lt;/li&gt;&lt;li&gt;左下の+ボタン押下して「複数出力機器を作成」を選択&lt;/li&gt;&lt;li&gt;MacBook AirのスピーカーとBlackHole 16chにチェック入れる&lt;/li&gt;&lt;li&gt;左カラムのBlackHole 16chを右クリックして「このサウンド入力装置を使用」を選択して、チャンネルの音量はとりあえず最大にしておく&lt;/li&gt;&lt;li&gt;サウンド設定を、複数出力装置にしておく&lt;/li&gt;&lt;li&gt;&lt;strike&gt;QuickTime Player起動して、新規画面収録&lt;/strike&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="https://support.apple.com/ja-jp/HT208721"&gt;&lt;strike&gt;https://support.apple.com/ja-jp/HT208721&lt;/strike&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;shift + command + 5&lt;/li&gt;&lt;li&gt;オプション右側あたりを右クリックで、マイクをBlackHole 16chにする&lt;/li&gt;&lt;li&gt;収録開始&lt;/li&gt;&lt;li&gt;「command + control + esc」キーで収録終了&lt;/li&gt;&lt;li&gt;サウンド設定は戻しておく（とfunctionキーで音量調節できる）&lt;/li&gt;&lt;li&gt;uninstallしたいときは&lt;/li&gt;&lt;li&gt;&lt;a href="https://github.com/ExistentialAudio/BlackHole/wiki/Uninstallation"&gt;https://github.com/ExistentialAudio/BlackHole/wiki/Uninstallation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="https://pc.watch.impress.co.jp/docs/column/yajiuma-mini-review/1262744.html"&gt;https://pc.watch.impress.co.jp/docs/column/yajiuma-mini-review/1262744.html&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2019/08/quicktime.html</link><author>noreply@blogger.com (sasa)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-5029396231837577966</guid><pubDate>Mon, 07 Jan 2019 02:06:00 +0000</pubDate><atom:updated>2026-04-29T16:50:46.078+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">書評</category><title>書評</title><description>&lt;h2&gt;&lt;a href="https://amzn.to/4mRSwOL"&gt;途上国の人々との話し方&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;和田信明 中田豊一  &lt;/p&gt;
&lt;p&gt;国際援助においては、現地の人々の合意を得ながら開発プログラムが進む。だが後で振り返ってみると、プログラム内容が最適な解決策になっていなかったり、一過性に終わっている場合もある。その原因の一つに、援助する側とされる側の認識のズレが挙げられる。&lt;/p&gt;
&lt;p&gt;例えば「この村では何が問題で困ってますか？」「水汲みが大変です」「井戸はないんですか？」「自分たちでは作れません」「では作るのを手伝いましょう」井戸が作られたおかげで水汲みに遠出しなくて済むようになりました、めでたしめでたし。
ところが数年後に村を訪れると井戸が使われていない。井戸のレバーが壊れたらしい。住民は以前のように水汲みをしている。井戸の修理方法がわからないし、水汲みはもともとやっていたし、そこまで不便とも思っていないらしい。井戸作成プログラムは一定の役には立った。だがさして困っていない様子を見ると、井戸はあれば便利かなぐらいの要望であって、真に解決すべき重大な問題が他にあったのかもしれない。&lt;/p&gt;
&lt;p&gt;認識のズレをなくすにはどうすればよいのか？その&lt;mark&gt;カギは相手への質問の仕方&lt;/mark&gt;にあった。NGOとして途上国に赴いた著者達が、現地の住民やスタッフとの会話で実践しながら編み出したコミュニケーション方法を体系化。実際の出来事を紹介しながら具体的な手順、注意点について解説している。&lt;/p&gt;
&lt;h3&gt;ポイント&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;認識のズレをなくすには&lt;mark&gt;「事実」&lt;/mark&gt;をたずねる&lt;/li&gt;
&lt;li&gt;「いつ」「どこで」「誰が」「何が」のように事実を答えやすい投げかけをする&lt;/li&gt;
&lt;li&gt;「なぜ」「どうして」と尋ねてしまうと、事実ではなく「感情」や「解釈」を答えてしまう&lt;/li&gt;
&lt;li&gt;「事実」「感情」「解釈」を切り分けることで、俯瞰で状況把握するメタ認知が醸成される&lt;/li&gt;
&lt;li&gt;自分たちを客観的に捉えることができると、課題の整理がしやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;詳細（引用含む）&lt;/h3&gt;
&lt;p&gt;想起しやすい事実を口にしながら過去の出来事を整理してもらうことで、相手の記憶の棚卸を手伝う。
「その問題が最初に起こったのはいつ？」「最近その問題が発生したのはどこで？」
「その問題で誰が困っている？」「その問題に対してこれまでに対処したことは何？」
事実を重ねる対話を続けることで、相手は気づきを得やすくなる。&lt;/p&gt;
&lt;p&gt;「なぜ」「どうして」は相手の負担が大きい、詰問されてるようにも感じる。回答が難しい。
空気を読んで、質問者が欲しがっている答えを口にしてしまう。質問する側も自分の思い込みで質問してしまう。
そうすると事実から遠ざかる。対話の焦点が揃わない。問題が的確に定義されない。解決方法も的外れになる。
事実をたずねることで、本当に解決したい問題の定義、そして的確な答えへとつながる。&lt;/p&gt;
&lt;h3&gt;結論と展望&lt;/h3&gt;
&lt;p&gt;書籍タイトルからは遠い途上国の話に見える。だがその応用範囲は広い。日常のあらゆるコミュニケーションに通じる。ビジネスにおけるファシリテーション、問題解決にも使える。&lt;/p&gt;
&lt;p&gt;答えを急がない。問題を取り違えない。相手と違う景色を見ない。なぜをたずねるよりも&lt;mark&gt;「事実」を着々と&lt;/mark&gt;積み重ねる。
地味に見えるこの対話術は、途上国に限らずあらゆる場面で有効に機能する。&lt;/p&gt;
&lt;h3&gt;関連書籍&lt;/h3&gt;
&lt;p&gt;同著者の手により、実社会において適用しやすいようにエッセンスを抽出した後続書籍あり。おそらくこちらの方が入手しやすく、かつ読みやすいと思われる。&lt;/p&gt;
&lt;p&gt;&lt;a href="https://amzn.to/3R1ERIO"&gt;「良い質問」を40年磨き続けた対話のプロがたどり着いた 「なぜ」と聞かない質問術&lt;/a&gt; 中田 豊一&lt;/p&gt;

&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;&lt;a href="https://amzn.to/4tKrj31"&gt;ベイズモデリングによるマーケティング分析&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;照井伸彦&lt;/p&gt;
&lt;p&gt;タイトル通り、ベイズ統計モデリングの手法をマーケティング場面に活用することを目指した本&lt;/p&gt;
&lt;p&gt;難解な点は、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ベイズやモデリングに明るい人には、マーケティングの説明が薄い&lt;/li&gt;
&lt;li&gt;マーケティングに明るい人には、ベイズやモデリングの説明が薄い&lt;/li&gt;
&lt;li&gt;両方明るい人にはちょうどいいが、そんな人はそうそういない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;違う表現をすると、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;数式がバンバン出てくるので苦手意識がある人には向いてない&lt;/li&gt;
&lt;li&gt;プログラミングのコードは出てこないので写経したい人には向いてない&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;消費者行動場面を、ベイズ的観点からモデリングしてみる際の手順をちょっと知ってみたい人にはおすすめ
書かれてることを自分の中で咀嚼して応用が効かせられる人にもおすすめ&lt;/p&gt;

&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;&lt;a href="https://amzn.to/4ubyVv5"&gt;広告マネジメント&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;木戸 茂&lt;/p&gt;
&lt;p&gt;マーケティングをデータに基づいて科学的に意思決定する際の手法や応用手順を体系的に紹介するシリーズ書籍。&lt;/p&gt;
&lt;p&gt;テレビや紙の媒体でかつて実際におこなわれてきた、以下のような統計的、計量的手法によるモデル構築と検証結果を説明&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;広告予算配分の最適化&lt;/li&gt;
&lt;li&gt;各媒体のリーチ推定モデル&lt;/li&gt;
&lt;li&gt;広告認知率の推定モデル&lt;/li&gt;
&lt;li&gt;広告効果の因果モデル&lt;/li&gt;
&lt;li&gt;ブランド連想と広告評価の因果モデル&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;広告の短期的効果と長期的成果を区別したり、企業ブランドと製品ブランドを区別するなど、シンプルなモデルを目指してるのは好感持てる。広告の継続出稿有意義性を後押しする材料にも使いやすそう&lt;/p&gt;
&lt;p&gt;GRPのような広告につきものの説明変数だけでなく、同一市場内での競合との広告シェア、自社の値引率、自社の相対的なシェア、平均購入個数、継続購入率、市場自体の成長率、市場が寡占的か激戦区かなども変数として採用しており、広告出稿に閉じた話に終わらず、ソリューション全体の提案として使いやすい&lt;/p&gt;
&lt;p&gt;プリファレンスという1つの説明変数で購買予測するUSJ森岡モデルに比べて、本書はプリファレンスに集約してしまう前の段階、すなわちブランド・エクイティの説明変数が具体的でわかりやすい&lt;/p&gt;
&lt;p&gt;またマーケティング全般というよりは広告業界視点で語られている点は、広告業界関係者にはとっつきやすく感じられるだろう&lt;/p&gt;
&lt;p&gt;数学的方面からのアプローチや、サイエンス方面からの理解を深めたい人にはおすすめ&lt;/p&gt;

&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;&lt;a href="https://amzn.to/4ukKuAw"&gt;現場主義統計学のすすめ: 野外調査のデータ解析&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;統計スポットライト・シリーズ&lt;/p&gt;
&lt;h3&gt;内容&lt;/h3&gt;
&lt;p&gt;野外の生き物を観察して得たデータを分析しながら統計手法を学ぶ本。
-クマさんにGPSをつけて計測した移動軌跡をクラスター解析でデータ集約して生態環境を研究&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;樹木の年輪幅から成長量を推定する状態空間モデルを作成、ベイズで推定、平滑化して森林の長期動態を研究&lt;/li&gt;
&lt;li&gt;スズランの果実が実る割合を目的変数に、花粉散布をロジスティック式でモデル化、対数尤度やAICでモデル検討、&lt;/li&gt;
&lt;li&gt;ランダムウォークモデルを作成してシミュレーション&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;といった事例を紹介しながら、データの計測の仕方、記録方法、データ集約手順や解析を説明。&lt;/p&gt;
&lt;h3&gt;ここはよかった&lt;/h3&gt;
&lt;p&gt;自然観察から得られる複雑な事象を数値化、図示化するのはなかなか手間に思えますが、そういうのができるソフトの紹介やデータ加工手順については参考になりそう。&lt;/p&gt;
&lt;h3&gt;ここはちょっと&lt;/h3&gt;
&lt;p&gt;具体的なコードなどの記載まではなく、さらっと概要を紹介した薄い本なので、そういうのが欲しい場合は緑本の方が向いてそう。&lt;/p&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;&lt;a href="https://amzn.to/4egYjem"&gt;ポアソン分布・ポアソン回帰・ポアソン過程&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;統計スポットライト・シリーズ&lt;/p&gt;
&lt;h3&gt;内容&lt;/h3&gt;
&lt;p&gt;ポアソン分布の理解を深めることを目的にした本。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;式だけ見ても直感的に理解しにくい。二項分布ならまだしも、ごく稀に発生する事象の分布と言われても想像しにくい。&lt;/li&gt;
&lt;li&gt;ならばエクセルでシミュレーションしてポアソン分布を作りながら不安感を解消しよう。&lt;/li&gt;
&lt;li&gt;その延長で最尤法,AIC,非定常ポアソン過程を学びましょう。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;ここはよかった&lt;/h3&gt;
&lt;p&gt;へーエクセルでそういうこともできるんだ&lt;/p&gt;
&lt;h3&gt;ここはちょっと&lt;/h3&gt;
&lt;p&gt;上の野外調査ともども、緑本と内容がカブってる。緑本は実践に重きを置いてるので原理や理由の詳細説明はあまりない。それを補えると捉えればこの2冊は有用なんだが、副読本の立ち位置でよさそう。&lt;/p&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;&lt;a href="https://amzn.to/48xqLoB"&gt;社会シミュレーション ―世界を「見える化」する―&lt;/a&gt;&lt;/h2&gt;
&lt;h3&gt;内容&lt;/h3&gt;
&lt;p&gt;シミュレーションで社会問題を解決しよう、その取り組みや事例を提示、入門となる本。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;現代は学問・研究領域の専門化、細分化が進んでおり、研究分野が違うと共通言語が乏しくて相互理解が大変。&lt;/li&gt;
&lt;li&gt;一方で、世の中の事象は様々な要因が絡んで複雑化しており、単一領域の学問・技術だけでは解決が難しい。&lt;/li&gt;
&lt;li&gt;そこでシミュレーションが共通言語となり、社会を解明する、課題解決の役割を担うと期待されている。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;共有地の悲劇がもたらす環境問題、エージェント・ベース・モデリング、データ分析でシミュレーション、デマツイートとウィルス感染、都市形成、居住民族の構成変化、三次元物体の透視可視化などを紹介しながら、シミュレーションの楽しさや難しさを語る。&lt;/p&gt;
&lt;h3&gt;ここはよかった&lt;/h3&gt;
&lt;p&gt;いろんなテーマをちょっとずつ紹介してあり、また実生活とも関わり合いの多い事象を取り上げてるので、読みやすかった。&lt;/p&gt;
&lt;h3&gt;ここはちょっと&lt;/h3&gt;
&lt;p&gt;興味を持ってもらうための導入とわりきってもともと作ってあるため、詳しくは参考文献見て自助努力でと放り出される。&lt;/p&gt;
&lt;p&gt;放送大学のソーシャルシティ（&amp;#39;17）講座は続きとしてよいかも。
&lt;a href="http://www.ouj.ac.jp/hp/kamoku/H30/kyouyou/C/seikatu/1519077.html"&gt;http://www.ouj.ac.jp/hp/kamoku/H30/kyouyou/C/seikatu/1519077.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;放送大学のははシミュレーション関係ない。都市問題つながり。福岡の繁華街、天神に新しい商業施設がオープン、駐車場は足りるの？大分市の駅高架化で、駅ビルがきれいになったら商店街との人の行き来はどう変わった？梅田とか落合氏とかきゅんくんなども登場。&lt;/p&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;


&lt;h2&gt;&lt;a href="https://amzn.to/3OLG7PM"&gt;なぜベイズを使わないのか! ? _臨床試験デザインのために&lt;/a&gt;&lt;/h2&gt;
&lt;h3&gt;内容&lt;/h3&gt;
&lt;p&gt;臨床試験での実験計画において従来使われてきた頻度流統計の利点と欠点を述べつつ、それを補う形でベイズ流を説明する本。&lt;/p&gt;
&lt;h3&gt;ここはよかった&lt;/h3&gt;
&lt;p&gt;頻度流との対比でベイズ流を説明してるので違いやそれぞれのよさがわかりやすい&lt;/p&gt;
&lt;h3&gt;ここはちょっと&lt;/h3&gt;
&lt;p&gt;残念ポイントは特に見当たらない。じゃあNPSが高いかというとそういう気もしない。なんでだろう、これ一冊では完結しないからだろうか。うまく転用することで有効活用できそうな気はする（ちゃんと咀嚼できてない）&lt;/p&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

  
&lt;br /&gt;

&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2019/01/blog-post_7.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-5210820927742115584</guid><pubDate>Sat, 05 Jan 2019 01:58:00 +0000</pubDate><atom:updated>2020-04-12T07:36:44.365+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>画像の圧縮</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
画像の大きさはそのままに、ファイルサイズを小さくする&lt;br /&gt;
&lt;div&gt;
ImageMagickでできる&lt;br /&gt;
&lt;br /&gt;
$mogrify -quality 85 *.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ただし一度プレビューで品質下げて書き出すなどしたのを改めてやると、ファイルサイズが大きくなることもある&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
コマンドで画像を一括処理！ ImageMagickの便利な使い方&lt;br /&gt;
https://liginc.co.jp/394506&lt;br /&gt;
&lt;br /&gt;
画像を最適化する&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
https://developers.google.com/speed/docs/insights/OptimizeImages?hl=ja&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
フォルダ内のjpegファイルをjpgにする&lt;br /&gt;
for file in *.jpeg ; do mv $file ${file/%.jpeg/.jpg} ; done&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2019/01/blog-post.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-503879715222997522</guid><pubDate>Sat, 29 Dec 2018 01:57:00 +0000</pubDate><atom:updated>2026-05-18T17:20:27.943+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>PythonでMCA（コレスポンデンス分析）</title><description>&lt;p&gt;Pythonでコレポンをやる  &lt;/p&gt;
&lt;h1&gt;コレスポンデンス分析&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;略してコレポン&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;数量化III類（Quantification Theory III）、対応分析（CA: Correspondence Analysis）、多重対応分析（MCA: Multiple Correspondence Analysis）、双対尺度法（Dual Scaling）など、呼び方や近縁手法が複数存在し、数理的には非常に近い関係にある&lt;/li&gt;
&lt;li&gt;ここでは「コレポン」表現をメインに据えている。実際にはCAだったりMCAだったりするが数理的背景は非常に近いため細かい区別は気にしない&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;point&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;観測データを単純化することで、データの背後にある潜在的な要素を解釈しやすくする&lt;/li&gt;
&lt;li&gt;質的データ（カテゴリデータ）の関係構造を探索するのに適している&lt;/li&gt;
&lt;li&gt;主成分分析（Principal Component Analysis）と数理的に近い構造を持つ&lt;/li&gt;
&lt;li&gt;PCA同様にデータを縮約して、2次元プロットなどで可視化できる&lt;/li&gt;
&lt;li&gt;統計的厳密性よりは、結果解釈のしやすさや仮説探索的手法として喜ばれやすい（コレポンに限らない）&lt;/li&gt;
&lt;li&gt;大雑把な傾向把握にとどめるのが望ましい（細かいことを気にしないことこそコレポンらしさかも）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Rの場合&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;インストールして &lt;code&gt;library(ca)&lt;/code&gt; &lt;/li&gt;
&lt;li&gt;読み込んで実行して &lt;code&gt;ca(table.T)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;可視化 &lt;code&gt;plot(ca(table.T))&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Pythonの場合&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ここではmcaライブラリを使用 &lt;code&gt;python -m pip install mca&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;単機能でシンプルではあるが、新規に始めるならprinceライブラリの方がいろんなことに使いやすいかも&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;コレポンとPCA&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;コレポンの特徴&lt;ul&gt;
&lt;li&gt;カテゴリデータや頻度データの関連構造を少数の軸で表現する手法。期待頻度からのズレ（カイ二乗統計量）が大きい方向を探す。&lt;/li&gt;
&lt;li&gt;カイ二乗距離に基づく幾何を前提としている。行・列の周辺度数で基準化した行列を特異値分解する。&lt;/li&gt;
&lt;li&gt;行と列を双対的に扱い、同一空間上に同時布置できる。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;PCA（主成分分析）の特徴 &lt;ul&gt;
&lt;li&gt;数値データの分散構造を少数の軸で表現する手法。データのばらつき（分散）が最大になる方向を探す。&lt;/li&gt;
&lt;li&gt;ユークリッド距離に基づく幾何を前提としている。共分散行列または相関行列を固有値分解する。&lt;/li&gt;
&lt;li&gt;行（サンプル）は主成分スコア、列（変数、特徴量）は負荷量として表現される。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;コレポンとPCAの共通点&lt;ul&gt;
&lt;li&gt;多変量データの構造を少数の軸で要約・可視化する次元圧縮手法（データの背後にある構造を捉えるためのもの）&lt;/li&gt;
&lt;li&gt;データ中の「似たパターン」や「関係構造」を低次元空間へ埋め込む（低次元に圧縮して、似た回答傾向を可視化する）&lt;/li&gt;
&lt;li&gt;元データを座標空間へ変換し、近い点ほど似た性質を持つと解釈できる&lt;/li&gt;
&lt;li&gt;軸ごとの構造を使って、クラスタ傾向や潜在的な特徴を読み解ける&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;コレポンとPCAの相違点&lt;ul&gt;
&lt;li&gt;コレポンとPCAは少なくとも数理的な骨格は同じなんだが&lt;/li&gt;
&lt;li&gt;軸の解釈に対する考え方の違い、解析結果の安定性など運用上は多くの相違点が存在する（PCAにおける軸は量的な増減方向として解釈しやすい。コレポンにおける軸はカテゴリの対立軸として表れやすい）&lt;/li&gt;
&lt;li&gt;だがコレポンは適用範囲が広い。理論的前提から多少外れていても、大まかな構造把握用途では有用な場合が多い。特に順序尺度のアンケートデータなどでは、PCA的に見るかコレポン的に見るかの境界が曖昧になることも多い&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;コレポンの注意点&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;仮説探索や構造把握に向いた手法であり、推定や検定のような厳密性を主目的とする分析とは少し性格が異なる&lt;/li&gt;
&lt;li&gt;適用範囲が広い（深く捉えなくともなんでも実行しやすい）とはいえ、本来持っていた情報を相当捨てていることは気に留めておく&lt;/li&gt;
&lt;li&gt;変数間で尺度の意味が大きく異なるデータには向かない（例えば年収と身長と気温を同列の変数として扱うのは不適切）&lt;/li&gt;
&lt;li&gt;PCA同様に異常値や希少カテゴリは空間構造をゆがめやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;コレポンの実情&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;特にマーケティング分野におけるアンケート調査データにおいて重宝されやすい&lt;/li&gt;
&lt;li&gt;「結果の見た目がわかりやすい」「直感的に理解しやすい」「解釈やストーリーを考察しやすいので話が弾む」などが主な理由として考えられる&lt;/li&gt;
&lt;li&gt;他に「クロス数表があればできちゃう」「たいていの設問形式に対応できちゃう（ように感じやすい）」「簡単な操作で簡単なアウトプットが得られちゃう」もありそう&lt;/li&gt;
&lt;li&gt;理論的美しさよりも、実行しやすさや適用範囲の広さ、データの背後構造の見えやすさが魅力と言える&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;コレポンの守備範囲&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;理論的には、行・列ともにカテゴリデータの頻度表（人数、出現数などのcountデータ）を対象としている&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;例えば、行に「カフェのメニュー」、列に「性年代区分」を置いたデータセット（各メニューを好きと回答した人数の性年代別集計値）でおこなうのが王道&lt;/li&gt;
&lt;li&gt;だがクロス数表を読み慣れている場合はコレポンやる意義を感じにくいかも&lt;/li&gt;
&lt;li&gt;性別や年代による違いは想像がしやすいため（ある程度わかってる顕在的要素をなぞってるだけに見えるぶんコレポンの利点が活かされにくい）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;コレポンをよく使う場面&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;例えば、行に「カフェのメニュー」、列に「イメージワード」を置いたデータセット（各メニューの印象にあてはまるワードを選択した人数のワード別集計値）&lt;/li&gt;
&lt;li&gt;イメージが似てるメニューはどれとどれなのか、逆に似ていないのはどれかといった解釈がしやすい（クロス数表からは読み解きにくい）&lt;/li&gt;
&lt;li&gt;コレポンの理論的枠組みからはやや外れるが、コレポンやる意義を感じさせやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;他に、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;行に「回答者」、列に「イメージワード」を置いたデータセット（回答者各自がカフェの印象にあてはまるワードに5段階評価したローデータ）&lt;/li&gt;
&lt;li&gt;これも理論的枠組みからは外れる（PCAっぽいともいえる）が、ある人がどんなワードを重視してるか、似た者同士は誰かといった解釈がしやすい&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;比率表（回答者数全体に占める割合、%データ）のデータセット&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;コレポン自体は実行できるし、頻度表よりも入手しやすい場面もあるなどこちらでおこなう人が多数派かもしれない&lt;/li&gt;
&lt;li&gt;これまた理論的枠組みからは外れるが、単純化するという性質からさほど弊害が表れにくい（頻度表での実行結果と大差ないなど）&lt;/li&gt;
&lt;li&gt;同様理由で、表の縦%や横%が100を超える場合（複数回答形式設問）でもおこなわれているだろう&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;コレポン結論&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;理論を超えて使いやすいが、わかりやすさに引きづられない&lt;/li&gt;
&lt;li&gt;簡単に得られる情報と引き換えに、捨てている情報も多いことを忘れない&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;コレポン実行例&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;あるカフェのお客様アンケート結果をコレポンしてみる&lt;/li&gt;
&lt;li&gt;メニュー × イメージワード&lt;ul&gt;
&lt;li&gt;実務においてありがちなコレポンの使い方&lt;/li&gt;
&lt;li&gt;お店のメニュー（8品）それぞれに対して、印象にあてはまるイメージワード（8項目）をMA（複数回答可能形式）で聴取&lt;/li&gt;
&lt;li&gt;行（メニュー）、列（イメージワード）のクロス数表（選択した人数の頻度表）&lt;/li&gt;
&lt;li&gt;MA選択率よりはイメージワード各5段階評価のTOP2人数の方がコレポン理論には近い。とはいえ回答者負荷の高い設問形式を推奨したくない意図&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;



&lt;pre&gt;&lt;code class="python"&gt;# import
import pandas as pd
import numpy as np
from matplotlib import pyplot as plt
import mca

# version
import sys;print(&amp;quot;Python&amp;quot;, sys.version.split()[0])
import platform;print(&amp;quot;OS&amp;quot;, platform.platform())
print(&amp;quot;is_google_colab:&amp;quot;, &amp;quot;google.colab&amp;quot; in sys.modules)
from importlib.metadata import version
packages = [
&amp;quot;pandas&amp;quot;,
&amp;quot;numpy&amp;quot;,
&amp;quot;matplotlib&amp;quot;,
&amp;quot;mca&amp;quot;
]
for pkg in packages:
    try:
        print(pkg, version(pkg))
    except Exception as e:
        print(pkg, &amp;quot;not installed&amp;quot;)
&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote&gt;&lt;pre&gt;
Python 3.11.15
OS macOS-26.5-arm64-arm-64bit
is_google_colab: False
pandas 2.2.0
numpy 1.26.4
matplotlib 3.10.9
mca 1.0.4
&lt;/pre&gt;&lt;/blockquote&gt;



&lt;pre&gt;&lt;code class="python"&gt;# サンプルのdataframeを生成する

# メニュー（行）
menus = [&amp;#39;Coffee&amp;#39;, &amp;#39;Tea&amp;#39;, &amp;#39;Latte&amp;#39;, &amp;#39;Espresso&amp;#39;, &amp;#39;Cake&amp;#39;, &amp;#39;Sandwich&amp;#39;, &amp;#39;Cookie&amp;#39;, &amp;#39;Toast&amp;#39;]

# イメージワード（列）
words = [&amp;#39;香り高い&amp;#39;, &amp;#39;コスパが良い&amp;#39;, &amp;#39;見た目が映える&amp;#39;, &amp;#39;濃厚な味わい&amp;#39;, 
         &amp;#39;ボリューム満点&amp;#39;, &amp;#39;手軽に食べれる&amp;#39;, &amp;#39;贅沢な気分&amp;#39;, &amp;#39;健康的なイメージ&amp;#39;]

# プロットがある程度バラつくように、『Tea』『Cookie』『手軽に食べれる』が中心近辺にくるように平均的な値に寄せている
data = [
    [50, 25,  5, 15,  5, 30, 10,  5], # Coffee
    [25, 20, 15, 10, 10, 35, 15, 15], # Tea
    [10, 10, 45, 35, 10, 20, 30,  5], # Latte
    [40, 10, 10, 55,  5, 15, 25,  5], # Espresso
    [10, 10, 50, 30, 10, 15, 45,  5], # Cake
    [ 5, 25, 10,  5, 50, 40,  5, 30], # Sandwich
    [20, 20, 18, 15, 15, 30, 15, 12], # Cookie
    [10, 40,  5,  5, 35, 40,  5, 20], # Toast
]

df = pd.DataFrame(data, index=menus, columns=words)


# MCAの実行
ncol = df.shape[1]
mca_ben = mca.MCA(df, ncols=ncol, benzecri=False, TOL=1e-8)


# 行スコア（=座標）
result_by_row = pd.DataFrame(mca_ben.fs_r(N=2))
result_by_row.index = list(df.index)
print (&amp;quot;Score by row:&amp;quot;)
print(result_by_row.round(3))
&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote&gt;&lt;pre&gt;
Score by row:
              0      1
Coffee    0.010 -0.686
Tea       0.132 -0.137
Latte    -0.513  0.348
Espresso -0.535 -0.413
Cake     -0.594  0.440
Sandwich  0.771  0.284
Cookie    0.080 -0.020
Toast     0.710  0.047
&lt;/pre&gt;&lt;/blockquote&gt;




&lt;pre&gt;&lt;code class="python"&gt;# 列スコア（=座標）
result_by_column = pd.DataFrame(mca_ben.fs_c(N=2))
result_by_column.index = list(df.columns)
print (&amp;quot;Score by column:&amp;quot;)
print(result_by_column.round(3))
&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote&gt;&lt;pre&gt;
Score by column:
              0      1
香り高い     -0.184 -0.727
コスパが良い    0.433 -0.130
見た目が映える  -0.533  0.537
濃厚な味わい   -0.629 -0.123
ボリューム満点   0.724  0.326
手軽に食べれる   0.339 -0.065
贅沢な気分    -0.579  0.227
健康的なイメージ  0.642  0.160
&lt;/pre&gt;&lt;/blockquote&gt;


&lt;pre&gt;&lt;code class="python"&gt;# 固有値と寄与率

# MCAでは「行と列のどちらか少ない方の数-1」 が固有値（eigenvalue）の最大数になるためそれを算出
num_of_eigenvalue = min(len(df.index), len(df.columns)) - 1

data = {
    &amp;#39;Factor&amp;#39;: range(1, len(mca_ben.L) + 1),
    &amp;#39;value&amp;#39;: pd.Series(mca_ben.L),
    &amp;#39;ratio&amp;#39;: mca_ben.expl_var(greenacre=False, N=num_of_eigenvalue)
}
columns = [&amp;#39;Factor&amp;#39;, &amp;#39;value&amp;#39;, &amp;#39;ratio&amp;#39;]
table2 = pd.DataFrame(data=data, columns=columns).fillna(0)

# ratioの累計（cumulative_ratio）列を追加
table2[&amp;#39;cum_ratio&amp;#39;] = table2[&amp;#39;ratio&amp;#39;].cumsum()

print(&amp;quot;Principal &amp;amp; Inertia(固有値 寄与率):&amp;quot;)
print(table2.round(3).to_string(index=False))
&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote&gt;&lt;pre&gt;
Principal &amp;amp; Inertia(固有値 寄与率):
 Factor  value  ratio  cum_ratio
      1  0.266  0.598      0.598
      2  0.131  0.296      0.894
      3  0.033  0.075      0.969
      4  0.007  0.016      0.986
      5  0.004  0.008      0.994
      6  0.003  0.006      1.000
      7  0.000  0.000      1.000
&lt;/pre&gt;&lt;/blockquote&gt;





&lt;pre&gt;&lt;code class="python"&gt;
# 上記Factor1,2でプロット
plt.figure(figsize=(7, 6))

# plt.rcParams[&amp;#39;font.family&amp;#39;] = [&amp;#39;sans-serif&amp;#39;, &amp;#39;Meiryo&amp;#39;]  # windows
plt.rcParams[&amp;#39;font.family&amp;#39;] = [&amp;#39;sans-serif&amp;#39;, &amp;#39;Hiragino Sans&amp;#39;]  # mac

# plot by row
plt.scatter(result_by_row[0], result_by_row[1], color=&amp;#39;tab:blue&amp;#39;, s=20, marker=&amp;quot;o&amp;quot;, label=&amp;quot;Row&amp;quot;)
for k, v in result_by_row.iterrows():
    plt.annotate(k, v, xytext=(2, 2), textcoords=&amp;quot;offset points&amp;quot;)

# plot by column
plt.scatter(result_by_column[0], result_by_column[1], color=&amp;#39;tab:orange&amp;#39;, s=20, marker=&amp;#39;s&amp;#39;, facecolors=&amp;quot;none&amp;quot;, label=&amp;quot;Column&amp;quot;)
for k, v in result_by_column.iterrows():
    plt.annotate(k, v, xytext=(2, 2), textcoords=&amp;quot;offset points&amp;quot;)

plt.axhline(0, color=&amp;#39;gray&amp;#39;, linestyle=&amp;#39;dashed&amp;#39;)
plt.axvline(0, color=&amp;#39;gray&amp;#39;, linestyle=&amp;#39;dashed&amp;#39;)
plt.xlabel(&amp;#39;Factor 1&amp;#39;)
plt.ylabel(&amp;#39;Factor 2&amp;#39;)
plt.title(&amp;quot;Correspondence Analysis\n(Customer Satisfaction Survey Example)&amp;quot;)
plt.legend(loc=&amp;#39;best&amp;#39;)
# plt.gca().set_aspect(&amp;quot;equal&amp;quot;)
plt.show()
&lt;/code&gt;&lt;/pre&gt;



&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibprWJzu-Yf4u-WCPr8Z6GnGs3keAwty5JG6oVgNpzzFAIlSXOQKLxc_TrCtNikTx8tFPTT1MGWWxa4Y2jjxoNeAHwMpES1KooHL1nK_ApfZjvAaAJNu2smVPIjWUKYexZGzZsQwi6s1mABIW_vwlaEXfX_SAJs1yUBeh-W4uG4SG7Rf61ZolYGGjD2pg/s683/mca_plot_result.png" style="display: block; padding: 1em 0; text-align: center; "&gt;&lt;img alt="" border="0" width="320" data-original-height="568" data-original-width="683" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibprWJzu-Yf4u-WCPr8Z6GnGs3keAwty5JG6oVgNpzzFAIlSXOQKLxc_TrCtNikTx8tFPTT1MGWWxa4Y2jjxoNeAHwMpES1KooHL1nK_ApfZjvAaAJNu2smVPIjWUKYexZGzZsQwi6s1mABIW_vwlaEXfX_SAJs1yUBeh-W4uG4SG7Rf61ZolYGGjD2pg/s320/mca_plot_result.png"/&gt;&lt;/a&gt;&lt;/div&gt;

&lt;h1&gt;結果の解釈例&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;左上のCakeとLatteは似たイメージでお客様から捉えられている&lt;/li&gt;
&lt;li&gt;CakeとLatteはともに「映える」「贅沢」といったリッチなイメージが強そう&lt;/li&gt;
&lt;li&gt;これらとは対極の右側にはSandwich, Toastが「手軽に食べれる」日常的なMenuとの評価&lt;/li&gt;
&lt;li&gt;横軸（第1軸）はハレと日常を表すような背後要因が考えられる&lt;/li&gt;
&lt;li&gt;下方のCoffeeはハレと日常の中間的ポジションながらも、Espressoともども「香り高い」イメージ&lt;/li&gt;
&lt;li&gt;縦軸（第2軸）は寄与率が1軸ほど大きくなく、背後要因はやや読み解きにくい（今回使用したイメージワードでは不足だった可能性も考えられる）&lt;/li&gt;
&lt;li&gt;中心付近にプロットされた「Cookie」「Tea」は他のMenuほどには強い特徴がみられなかったと解釈できる&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;（2026年5月更新）&lt;/p&gt;

  
  
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;
</description><link>http://thinknote.blogspot.com/2018/12/pythonmca.html</link><author>noreply@blogger.com (sasa)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibprWJzu-Yf4u-WCPr8Z6GnGs3keAwty5JG6oVgNpzzFAIlSXOQKLxc_TrCtNikTx8tFPTT1MGWWxa4Y2jjxoNeAHwMpES1KooHL1nK_ApfZjvAaAJNu2smVPIjWUKYexZGzZsQwi6s1mABIW_vwlaEXfX_SAJs1yUBeh-W4uG4SG7Rf61ZolYGGjD2pg/s72-c/mca_plot_result.png" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-3324978190247259260</guid><pubDate>Sat, 17 Nov 2018 01:16:00 +0000</pubDate><atom:updated>2018-12-29T09:39:32.961+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">プログラミング</category><title>exif情報の一括削除</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
ImageMagickでできる&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
フォルダ内のExif情報を削除したい場合はオプションの「-strip」で可能&lt;/div&gt;
&lt;div&gt;
該当フォルダに移動した後、一括操作の「mogrify」を使う&lt;/div&gt;
&lt;div&gt;
mogrify -strip *.jpg&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
イメージマジックでフォルダ内のExif情報を一括削除する&lt;/div&gt;
&lt;div&gt;
https://www.s-oj.com/ec-business/system/imagemagick%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%B5%E3%83%96%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AEexif%E6%83%85%E5%A0%B1%E3%82%92%E4%B8%80%E6%8B%AC%E5%89%8A%E9%99%A4/&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
----&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
すべてのpng画像をjpgに変更&lt;/div&gt;
&lt;div&gt;
mogrify -format jpg *.png&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
（元画像は残る）&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
https://liginc.co.jp/394506&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
----&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
ImageMagick基本編：Mogrifyを用いた画像の一括処理について&lt;/div&gt;
&lt;div&gt;
http://shumilinux.blogspot.com/2016/06/imagemagick-mogrify.html&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2018/11/exif.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-7300983646147162955</guid><pubDate>Sat, 13 Oct 2018 08:08:00 +0000</pubDate><atom:updated>2026-09-01T09:39:02.795+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">インターネット</category><title>AWSとGoogle CloudとHadoop</title><description>
&lt;p&gt;AWSとGoogle CloudとHadoop（やその元になったGoogleサービス）を対比。&lt;/p&gt;
&lt;br&gt;



&lt;h2&gt;Amazon S3 ≒ Google Cloud Storage ≒ オンプレ（HDFS / GFS）&lt;/h2&gt;
&lt;p&gt;巨大なデータを、安価に、壊れないように保存するための仕組み。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;安価な構成&lt;/strong&gt;: 特別な高級ハードウェアではなく、普通のハードウェア（サーバーやハードディスク）を大量に並べて巨大な保存スペースを作る。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;自動バックアップ&lt;/strong&gt;: どこかのハードディスクが1台や2台壊れてもデータが消えないよう、自動的にデータを3つ以上の場所にコピーして保存する仕組み（レプリケーション）を持っている。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align="left"&gt;特徴&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;Amazon S3（AWS）&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;Storage（Google Cloud）&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;オンプレ（GFS / HDFS）&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td align="left"&gt;実体&lt;/td&gt;
&lt;td align="left"&gt;AWSが管理する、インターネット経由の「純粋なデータ保存スペース」。&lt;/td&gt;
&lt;td align="left"&gt;Googleが管理する、インターネット経由の「純粋なデータ保存スペース」。仕組みはS3とほぼ同じ立ち位置。&lt;/td&gt;
&lt;td align="left"&gt;自分たちで用意した「サーバー（CPU＋ハードディスク）」の集まり。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;拡張方法&lt;/td&gt;
&lt;td align="left"&gt;ユーザーは何もしなくてよい。データを入れれば入れるだけ、容量が無限に自動拡張される。&lt;/td&gt;
&lt;td align="left"&gt;同様にユーザー側での容量管理は不要。データを入れれば入れるだけ自動拡張される。&lt;/td&gt;
&lt;td align="left"&gt;容量が足りなくなると、サーバーを丸ごと1台買い足してネットワークに繋ぐ作業が必要。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;計算方法との関係&lt;/td&gt;
&lt;td align="left"&gt;保存に特化している。計算するときは、別の計算用サーバー（EC2やEMRなど）を必要な時にだけ起動してS3に接続する。&lt;/td&gt;
&lt;td align="left"&gt;同様に保存に特化。計算するときは、Dataprocなど別の計算用サービスを必要な時にだけ起動してGCSに接続する。&lt;/td&gt;
&lt;td align="left"&gt;データを保存しているサーバーそのものに計算（MapReduceなど）をさせる。&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

&lt;br&gt;

&lt;h2&gt;Amazon EMR / AWS Glue ≒ Google Cloud Dataproc ≒ オンプレ（Hadoop MapReduce）&lt;/h2&gt;
&lt;p&gt;大量のデータを並列で処理・加工する役割&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;大量データの並列処理&lt;/strong&gt;: 1台のコンピューターでは処理できないテラバイト・ペタバイト級のデータを、数百〜数千台のマシンに分散して同時に計算する。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;データの変換（ETL）&lt;/strong&gt;: 散らばった生データ（ログやCSVなど）を読み込み、きれいに整えて、分析しやすい形に変換して別の場所（S3など）に書き出す。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align="left"&gt;特徴&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;Amazon EMR / Glue（AWS）&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;Dataproc（Google Cloud）&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;オンプレ（Hadoop MapReduce）&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td align="left"&gt;処理のスピードと仕組み&lt;/td&gt;
&lt;td align="left"&gt;EMRやGlueの主流である「Apache Spark」は、データをメモリ（RAM）上で処理するため、MapReduceより最大100倍高速。&lt;/td&gt;
&lt;td align="left"&gt;DataprocもSpark/Hadoopを動かせるマネージドサービスで、同じくメモリ処理のSparkが主流。ストレージはHDFSではなくGCSを使う設計。&lt;/td&gt;
&lt;td align="left"&gt;データを処理する際、一工程ごとにハードディスク（ストレージ）への書き込みが発生するため、処理が遅い。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;サーバーの管理&lt;/td&gt;
&lt;td align="left"&gt;EMR： 処理するときだけ自動で数百台のサーバーを起動し、終わったら消せる（使った分だけ課金）。Glue： サーバーの存在すら意識しない（サーバーレス）。&lt;/td&gt;
&lt;td align="left"&gt;処理するときだけクラスターを起動し、終わったら消せる（使った分だけ課金）。さらに「Dataproc Serverless」を使えば、クラスターの管理自体が不要になる。&lt;/td&gt;
&lt;td align="left"&gt;処理をするために、常に数千台のサーバーを自前で起動・維持しておく必要がある（使っていなくても電気代や管理費がかかる）。&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

&lt;br&gt;

&lt;h2&gt;Amazon DynamoDB ≒ Google Cloud Bigtable ≒ オンプレ（Apache HBase）&lt;/h2&gt;
&lt;p&gt;大量のデータから特定のデータを一瞬で読み書きするデータベース&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;超高速レスポンス（低レイテンシー）&lt;/strong&gt;: データ量がペタバイト級に増えても、アクセスが1秒間に数百件〜数百万件に激増しても、常に「1桁ミリ秒（1000分の数秒）」という超高速でデータを返す。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NoSQL&lt;/strong&gt;（キー・バリュー型 / ワイドカラム型）: 行と列でガチガチに固められた従来のRDB(SQL)とは違い、特定のキー（鍵）を指定して一直線にデータを取り出す仕組み。データの構造（項目）を後から自由に追加・変更できる柔軟性を持っている。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th align="left"&gt;特徴&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;Amazon DynamoDB（AWS）&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;Bigtable（Google Cloud）&lt;/th&gt;
&lt;th style="width: 30%" align="left"&gt;オンプレ（Apache HBase）&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;&lt;tr&gt;
&lt;td align="left"&gt;データの管理単位（アーキテクチャ）&lt;/td&gt;
&lt;td align="left"&gt;進化型KVS（ドキュメント/ワイドカラム対応）：基本の骨組みは、列を後からいくらでも横に広げられるワイドカラム型（KVS）。その中にJSONのような複雑なデータの塊（ドキュメント）をそのまま丸ごと放り込める柔軟な構造に進化。&lt;/td&gt;
&lt;td align="left"&gt;ワイドカラム型の元祖サービス。巨大な1つのスプレッドシートのような構造で、データは「行（Row Key）」ごとにアルファベット順で並べられて管理される。&lt;/td&gt;
&lt;td align="left"&gt;Google BigtableをモデルにHadoopエコシステム向けに作られたOSS実装。データの並び方や設計思想はBigtableとほぼ同じ。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td align="left"&gt;運用のハードル&lt;/td&gt;
&lt;td align="left"&gt;完全サーバーレス： データの読み書きの回数や、保存したデータ量だけで課金される。小さな個人アプリから、Amazonのプライムデーのような超巨大イベントまで自動で伸縮する。&lt;/td&gt;
&lt;td align="left"&gt;フルマネージドではあるが、DynamoDBほどの完全サーバーレスではなく、クラスター（ノード）を明示的に確保して動かす方式。オートスケーリング設定はできるが、自前HBase運用に比べると圧倒的に楽、という立ち位置。&lt;/td&gt;
&lt;td align="left"&gt;安定して高速に動かすためには、最低でも数台（できれば数十台）のサーバー（ノード）をクラスターとして維持する必要があり、初期コストが高い。&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;

&lt;br&gt;

&lt;h3&gt;キー・バリュー型（ドキュメント型）とは？&lt;/h3&gt;
&lt;p&gt;鍵（Key）と中身（Value）がペアになって保存されている、非常にシンプルなデータ構造のこと。コインロッカーのようなイメージ。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;キー（Key）： ロッカーの番号。世界に一つだけで絶対に重複しない&lt;/li&gt;
&lt;li&gt;バリュー（Value）： ロッカーの中に放り込まれている荷物（データ）そのもの&lt;/li&gt;
&lt;/ul&gt;

&lt;br&gt;

&lt;h3&gt;なぜ超高速なの？&lt;/h3&gt;
&lt;p&gt;従来の一般的なデータベース（SQL）は、Excelのように列と行が複雑に組まれており、データを検索するときは「A列が〇〇で、かつB列が××のデータを上から順番に探す…」という複雑な探索（計算）をする。そのためデータが増えると重くなる。&lt;/p&gt;
&lt;p&gt;一方、DynamoDBのようなキー・バリュー型は、「105番のロッカーを開けて」と指示するだけ。データが100万件あろうが1億件あろうが、目的のロッカーへ一直線に向かうため、常に一瞬（1桁ミリ秒）でデータを取り出すことができるのが最大の強み。&lt;/p&gt;
&lt;p&gt;DynamoDBは、ロッカーの中に入れる「バリュー（荷物）」の形として、JSONという書類（ドキュメント）のような複雑な階層構造のテキスト形式をそのまま丸ごと放り込める柔軟性（ドキュメント型としての特徴）を、ワイドカラムな骨組みの上に持たせている。&lt;/p&gt;
&lt;p&gt;ワイドカラム型は、ロッカーの中にさらに細かく仕切られた小さな引き出し（カラム）が大量に並んでいるイメージ。鍵（行キー）でロッカーを開けたあと、3番目の引き出し（列）のデータだけを読み込むことができる。そして引き出しは10個だったり100個だったり、後からいくらでも横に広げる、ワイドにできるためワイドカラム型と呼ばれる。&lt;/p&gt;

&lt;br&gt;
&lt;br&gt;

&lt;h2&gt;AWSタイムライン&lt;/h2&gt;
&lt;p&gt;2006年3月：Amazon S3誕生。巨大なデータ保存庫。AWSというクラウドサービスのほぼ最初のサービスとして誕生。クラウドの歴史が始まる。&lt;/p&gt;
&lt;p&gt;2009年4月：Amazon EMR誕生。Hadoopをクラウドで動かす基盤として登場（当時はまだMapReduce処理が全盛期）。&lt;/p&gt;
&lt;p&gt;2012年1月：Amazon DynamoDB誕生。リアルタイムを支える超高速NoSQLデータベース。&lt;/p&gt;
&lt;p&gt;2012年11月： Amazon Redshift誕生。大量のデータを高速で集計・分析（SQLクエリ）するための超巨大なデータベース。普通のビジネスマンやアナリストが、使い慣れたSQLでペタバイト級のデータを一瞬で集計できる。企業のデータ分析が一気に大衆化。&lt;/p&gt;
&lt;p&gt;2016年11月： Amazon Athena誕生。S3のデータに直接SQLを投げるサーバーレス・クエリの決定版。S3に置いてあるデータ（CSVやログなど）に対して、データベースに移し替えることなく、S3にある状態のまま、直接SQLを投げて一瞬で集計できるサービス。データはあるけどわざわざデータベース（Redshift）を起動してインポートするのは面倒という常識を破壊。現在のデータレイク（S3に全部貯める）という設計思想を決定づけた主役。&lt;/p&gt;
&lt;p&gt;2017年8月：AWS Glue誕生。サーバーの管理を不要にし、Apache Sparkなどを使ったモダンなデータ加工を自動化する、サーバーレスETLとして登場。&lt;/p&gt;
&lt;p&gt;2017年11月： Amazon SageMaker誕生。貯まったビッグデータを使って、AI（機械学習・ディープラーニング・生成AI・LLM）のモデルを開発・学習・デプロイするためのオールインワン環境。ビッグデータの最終ゴールを、集計からAIによる予測や生成へとシフト。Glueなどできれいに加工したビッグデータを、そのままAIの学習に流し込むための心臓部。&lt;/p&gt;

&lt;br&gt;
&lt;br&gt;

&lt;h2&gt;AWSの進化&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;貯める（S3）から始まり、&lt;/li&gt;
&lt;li&gt;処理する（EMR）&lt;/li&gt;
&lt;li&gt;分析する（Redshift/Athena/Glue）&lt;/li&gt;
&lt;li&gt;AIで活用する（SageMaker）へと発展してきた&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;AWSでビッグデータシステムを組む場合、S3 + Glue + Redshift/Athena + SageMakerの組み合わせが王道&lt;/p&gt;

&lt;br&gt;
&lt;br&gt;

&lt;h2&gt;Amazon S3が革命的だった理由&lt;/h2&gt;
&lt;p&gt;以下の条件を、世界で初めて同時に満たしたから。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;初期費用ゼロ、使った分だけの従量課金： 数億円の初期投資をせずとも、クレジットカード1枚で使い始められる。&lt;/li&gt;
&lt;li&gt;API（ネット経由）での全自動操作： 人間がサーバーをセットアップするのではなく、プログラム（HTTPリクエスト）から一瞬でデータを保存・取得できる。&lt;/li&gt;
&lt;li&gt;容量が最初から「実質無限」： ユーザー側で「来年はデータが何ギガ増えるか」を予測してハードディスクを買い足す必要がなくなった。&lt;/li&gt;
&lt;/ul&gt;


&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;

&lt;h2&gt;AWS誕生の経緯&lt;/h2&gt;

&lt;p&gt;IT革命があって、ビッグデータが溢れるようになって、GoogleとYahoo!が頑張って、Hadoopが生まれたから。&lt;/p&gt;
&lt;p&gt;詳しくはこれ → &lt;a href="https://amzn.to/45ZeW95" target="_blank" rel="noopener noreferrer"&gt;書籍『AI 70年：思考する機械からChatGPTへの道のり』&lt;/a&gt;&lt;/p&gt;





  
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2018/10/blog-post_31.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8964437807708328205.post-1371919417261880910</guid><pubDate>Sat, 13 Oct 2018 08:07:00 +0000</pubDate><atom:updated>2018-10-13T17:07:43.065+09:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">心理学</category><category domain="http://www.blogger.com/atom/ns#">歴史</category><title>心理学の成り立ち</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
哲学の時代&lt;/div&gt;
&lt;div&gt;
自分の感覚（外部世界）と、知識は一致していた&lt;/div&gt;
&lt;div&gt;
ヒポクラテスの四体液説みたいな感じ&lt;/div&gt;
&lt;div&gt;
宗教の教えみたいな感じ（万物は神が創ったものだとか）&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
ところが、科学や技術が進歩してくると、どうもそうでもないらしいことが判明してきた&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
医学、物理学、天文学、科学いろいろ&lt;/div&gt;
&lt;div&gt;
コペルニクス、ガリレオ、ダーウィンとかとか&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
どうやら自分の感覚を疑わざるを得ないようだ&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
こうした知識・感覚と事実に矛盾があることから、&lt;/div&gt;
&lt;div&gt;
人の心の動きを明らかにしたいという学問的欲求、探究心が発生&lt;/div&gt;
&lt;div&gt;
心理学という学問が萌芽し始める&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
考えてるだけでは哲学の領域を出ない&lt;/div&gt;
&lt;div&gt;
科学的学問として成り立たせたい&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
哲学を科学化させたのはヴントの功績かも&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
数量化、客観化、機械化、解釈の排除、演繹&lt;/div&gt;
&lt;div&gt;
誰もが納得しやすい、わかりやすい、結果だけをみればOKというふうにしたい&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
客観性：再現可能性、反証可能性&lt;/div&gt;
&lt;div&gt;
信頼性：確実性（手堅さ）、監査可能性&lt;/div&gt;
&lt;div&gt;
内的妥当性：有意味性、真正性（迫真性ではない）&lt;/div&gt;
&lt;div&gt;
外的妥当性：転用可能性、一般化限定性&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
観察者であるか、行為者であるか&lt;/div&gt;
&lt;div&gt;
目の前で猫がエサを食べているのを&lt;/div&gt;
&lt;div&gt;
じっと見守って事実を伝えるか&lt;/div&gt;
&lt;div&gt;
エサを食べさせようとするか&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
前者がシャルコー&lt;/div&gt;
&lt;div&gt;
催眠で、体の症状だけでなく、心の症状が引き起こす事態があることを明確にした&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
後者がフロイト&lt;/div&gt;
&lt;div&gt;
催眠で治療しようと思った&lt;br /&gt;
&lt;br /&gt;
（2009年3月メモ）&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;script async="" src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"&gt;&lt;/script&gt;
&lt;!-- respo --&gt;
&lt;br /&gt;
&lt;ins class="adsbygoogle" data-ad-client="ca-pub-9116606926327320" data-ad-format="auto" data-ad-slot="7804053592" style="display: block;"&gt;&lt;/ins&gt;&lt;script&gt;
(adsbygoogle = window.adsbygoogle || []).push({});
&lt;/script&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://thinknote.blogspot.com/2018/10/blog-post_13.html</link><author>noreply@blogger.com (sasa)</author><thr:total>0</thr:total></item></channel></rss>