SEが最近起こったことを書くブログ

ITエンジニアが試したこと、気になったことを書いていきます。

Udemyの「実践データサイエンス&機械学習 with Python -統計学の基礎からビッグデータまで-」を受講しました

Udemyの「実践データサイエンス&機械学習 with Python -統計学の基礎からビッグデータまで-」を受講したので、 ブログに記録を残す

この講座で学びたかったこと

  • 機械学習の必要最低限の知識
    • 自分には何の知識が足りないかを理解する

講座の感想

  • 浅く広くではあるが、機械学習について多くのことを学べた
  • Pythonが2系だったのが、すこし残念に感じた

講座でためになったこと

  • アンサンブル学習について理解が甘いことがわかった
    • バギング
    • ブースティング
  • Apache Sparkを利用した実装が全く分かってないことが分かった
  • A/Bテストの落とし穴が非常に参考になるコンテンツだった
    • どれも考えてみれば、当たり前とも考えられるが、自分は無知で具体的な事象の名称を全然知らなかった
    • novelty effect
      • 目新しさにより、一時的に効果を高めること。時間が経過すると、効果が小さくなること。
      • 時間が経過してからのデータと従来のデータを比べるように気を付ける必要がある
    • 季節効果
    • 選択のバイアス
    • 帰属の誤り

これからどのように生かすか

  • Apache Sparkを動かしたことがないので、一度環境を作成して動かしてみる
  • A/Bテストの落とし穴で出てきたキーワードについてもう少し調べて、ちゃんと理解する

TF-IDFについて調べたことを簡単にメモ

これも何度も調べることになりがちな、TF-IDFについて調べたので、 メモを残しておく

  • TF-IDF

    • いくつかの文書があるときに、ある文書にとって重要な単語が何かを数値化する手法
    • この後記述するTFとIDFの乗算で計算する
  • TF

    • ある文書における、ある単語の出現頻度
    • 高いほどある文書で何度も現れる単語であるので、その単語が文書にとって重要である可能性が高い
  • IDF

    • ある単語の文書への出現頻度の逆数
    • 高いほど、その単語はその文書でしか現れないことを示すため、ある文書にとって大事な単語である可能性が高い

参考資料

qiita.com

Sysmonについて全くわかってなかったので、調べてみた

以下の記事を見て、そもそもSysmonとは?ってなったので、Sysmonについて、 調べてみた

blogs.jpcert.or.jp

Sysmonとは

  • Windowsの以下のようなアクティビティをイベントログに保存するWindows Sysinternalsツール
    • プロセスの作成
    • ネットワーク接続
    • ファイルの作成日変更
    • プロセス終了
  • システムのスタートアップからシャットダウンまでの間、保存する
  • config.xml でどのアクティビティを記録するかを選択できる
    • 必要なフィルタが設定されたconfigファイルがネット上に公開されている

      参考資料

www.atmarkit.co.jp

qiita.com

blog.ipswitch.com

「学び効率が最大化するインプット大全」を読みました

「学び効率が最大化するインプット大全」を読んだので、 読んで学んだことをメモ

読もうと思ったきっかけ

  • どのようにインプットすることで、同じインプットから多くのことを学べるかを知りたかった

自分は、インプットを頑張ってやっているとは思っているが、いまいち学びにつながっていないと感じることが多い。 その問題を本を読んで解決したかった

印象的だった内容

  • アウトプットできた量がインプット量

インプットしても何もアウトプットできなければ、何も学んでいないのと同じ。 このインプットから何を学びたいか、どのようなアウトプットをしたいかを意識からインプットしないといけないですね。 個人的には猛省の内容でした。

  • 多くのことを学ぼうとしない。一度のインプットから学ぶことは3つ程度にする

自分は、一度のインプットで聞き漏らさず、すべてのことを持ち帰ろうとすることが多いが、 それは間違っていることがよく分かった。まずは、3つの学びを得ることにしてインプットをする。 もっと学びたい場合は、もう一度同じインプットをして、別の学びを得ると考える。

  • 覚えるときは、ただ繰り返すのではなく、背景追加情報をつけたり、整理して覚える

インプット内容を元にそのまま写すのではなく、自分の言葉で言い換えたり、 自分で図や表を作成する。

今後どのように生かしたいか

  • 勉強会に参加するときに以下をする
    • その勉強会で学びたいことを考えてから参加する
    • その勉強会での気づき3つをアウトプットする
  • スライドの内容を見るだけでなく、スライドの内容に自分で調べた内容、登壇者が口頭で説明していた内容を追加したメモを作成する
  • アウトプットしようと思えないインプットはできるだけ断つ

できるだけ次の日には何も残っていない無駄なインプットを減らすように頑張ろうと思います。

バイアスとバリアンス

何度も調べなおしているバイアスとバリアンスについて、また調べたので 簡単ではあるが記録しておく。

バイアス

  • 作成したモデルから得られる予測データが学習データとの差
  • 大きいときは、モデルが硬すぎて、データにフィットできないアンダーフィッティングとなっている

バリアンス

  • 作成したモデルが学習データによりどれぐらい変化するか
    • 学習データをひとつ増やすことでどれだけモデルが変化するか
  • 大きいときは、モデルが柔らかすぎて、学習データには非常にフィットするが、学習データに含まれないデータにはフィットできないオーバーフィッティングが起こる

一般的に、バイアスとバリアンスはトレードオフなので、 バイアスもバリアンスも両方確認して、どちらも小さくなるようなモデルを探すことが重要

参考URL

punhundon-lifeshift.com

qiita.com

クリップボードのパスのフォルダを開くPowershell

仕事でメールに張られたパスのフォルダやファイルを開くことが多いと思い、 クリップボードのパスのフォルダを開くPowershellを書いた。

思っていたよりも、簡単に実現できた。

$path = Get-Clipboard
Invoke-Item $path

github.com

これでパスをコピーしてエクスプローラで開く作業が効率よくなるはず。

Huper-Vの仮想マシンで通信速度が遅いときにやったこと

先日、Hyper-V上で仮想マシンを構築したところ、非常に通信速度が遅い(数KB/sぐらいしか出ない)ことが発生し、 解決したので、その解決方法をメモする。

やったこと

  • Hyper-Vで作成した外部ネットワークスイッチのオフロード処理を無効にする

やり方

  • コントロールパネルから「ネットワークと共有センター」を開く
  • 「アダプターの設定の変更」をクリックする
  • Hyper-Vで作成した外部ネットワークスイッチに対応するアダプターを選択する
  • 「構成」をクリックする
  • 「詳細設定」タブを選択する
  • 「オフロード」と文字が入っているプロパティの値をオフにする

参考情報