Jのブログ

人生の記録

2020年の豊富

もう2020年2月中旬だけど、やっていくぞ

2019年振り返り

  • 6月から始めた糖質ダイエットにより、3ヶ月で5kgやせた
    • 忙しくなって、食べもの美味しい!😋 > +2kg
  • AWS認定試験11冠!
  • 部長になった
    • エンジニアリングから離れたけど、エンジニアとしても衰えないようにしたい
    • 部長は大変だけど、チームとか会社とか顧客にいいもっとサービス提供したいのでやっていく
    • ピープルマネジメント要素強めにだったけど、今後はビジネスリーダー要素強めで行きたい
    • ピープル部分はマネージャーに移譲していく
    • 国内に加え海外出張おおめになりそう
  • レザーバッグ買った
    • Herzのナレッジバッグとソフトダレスどちらもセミオーダー
    • キーファーノイのフラップバッグを買った、雨の日用
  • 釣り始めた
    • 会社の釣り部活動が活発に
    • 来年はいっぱい釣るぞ
  • 本執筆チャンス到来
    • 入社時に本書きたい!が現実のものに
    • 共著だけど、2冊みんなでわいわい書いた。嬉しみ半端ない
  • 韓国旅行いった
    • 飛行機ホテル代込み、2泊3日で2万、激安
    • 焼肉まじうまかった、まじうまかった
    • 韓国のサウナ激アツやった、整い半端ない
  • 本は12冊よんだ
    • 来年は20冊は読むぞ
    • 読んだけど普段使わないようなものは身になってない感あるけど、どっかでまた役立つ時がくるといいな
  • 英語できてない
    • 2020年こそ英語がんばるんだ...
  • ツール・ド・ちばが中止
    • エントリーしてたけど台風の影響で中止に
    • 仕方ないけど残念
    • また懲りずにエントリーしようかな

会社

  • 根幹となるビジネスを1つ立ち上げる
  • 部の自立化をさらに推進し、自分がいなくてもまわるようにする。自分はもっとビジネスにコミットする。
  • 自分のタスク整理と移譲
  • ファンになってもらいたい、感動してもらいたい、Think Big
  • 認定試験更新(DevOps/SAP)
  • ITIL取得
  • ブログ書けてないので書く

プライベート

  • キャンプ10回
    • キャンプ道具そろったのでいっぱいいくぞ!
    • 温泉にも行く
  • 釣り5回
  • TOEIC800点
  • 本10冊
  • 週3回運動(自転車/筋トレ/ジョギング)
    • 体力不足なので体力つける
    • スーツが似合う人かっこいい(つまりトニースターク

AWS認定 機械学習 合格しました

いやー、難しかったー。認定試験合格できたけど、奥が深いので実践できるかというと別かなって印象です。10年インフラエンジニアとしてやってきましたが、統計学とかの知識も必要だったり、機械学習アルゴリズムの理解、アルゴリズムの評価、トレーニングデータのチューニングなどなど、今まで経験したことがないジャンルだったので言葉もわからないし、考え方もわからないって感じで、新卒時代を彷彿させる時間を過ごしました。でも、これが楽しんですよね。エンジニアだし!新しいジャンルのことに触れる機会を得られてかなりいい試験でした。もっと実践でやってきたい。

やったこと

調査したこと

教師あり学習

線形回帰

特徴量に対し、方程式(モデル)を導く。傾きとか接点とか。次元が増えるとモデルが複雑化する。トレーニングデータにあわせすぎると、未知のデータに対する検証ができなくなる。これを過学習という。過学習を防ぐには、モデルをシンプル化する正則化を用いて汎化性能を向上させる。

正則化

Lasso回帰とRide回帰

ロジスティック回帰

ある事象が起こる確率を出す、2値分類

サポートベクトルマシン

分類と回帰、どちらにも利用可 直線、曲線、円など複雑なデータにも対応 線形カーネル、シグモイドカーネル、多項カーネル、RBFカーネルなど様々な形で分類できるカーネルがある

ナイーブベイズ

自然言語における分類。例えば、スパムメール。確率を出す。 文章をカテゴリに分けたり

ランダムフォレスト

複数のモデルを束ねて高性能のモデルを作成する。回帰、分類どちらにも適用できる。決定木を利用し、複数の弱学習機を組み合わせる。森の数を深くしても過学習がなく途中で収束する

ニューラルネットワーク

回帰、分類に使えるが応用では分類に使われることが多い

教師なし学習

PCA(Principal Component Analysis)

歴史が深い主成分分析。例えば変数が100個あるデータを分析する場合、そのまま分析するよりも、変数を減らして例えば5個にした方が、後の分析が楽になる。減らす方法は2通り。1つは、重要なデータのみを選択する、もう一つは元データから新たな変数を生成する。主成分分析は、新たな変数を生成することでデータの変数を削減する方式。高次元データを低次元データとして扱う。

LSA(Latent Semantiv Analysis)

次元削減手法として、情報検索の分野で活躍 LSAによって、大量の文書データから単語が持つ潜在的な関連性を見つけ出す。通常は単語に対してindexwをつけることで検索していた。

NMF

LDA

K-means法

混合ガウス分布

LLE

t-SNE

分類における評価法

f:id:iron_breaker:20200125083127j:plain
混合行列

  • 混合行列
  • 緑:正解率、正確さ(Accuracy)> TN+TP/全体。予測値がどれくらい正解しているか。
  • 黄:適合率、精度(Precision)> TP/FP+TP。1と予測したものがどれくらい正解しているか。例えば、20歳以上のコンテンツ判定で利用した場合、適合率が低いと子供でも見ていいコンテンツが20歳以上と判定されているということ。
  • 赤:再現性(Recall)> TP/FN+TP。実際のデータに対して、どれくらい正解しているか。この値が低いと、20歳以上コンテンツでも通常コンテンツと判定されてしまう。適合率と再現率は相関関係にあるので、どっちかの正解率をあげるともう一方の正解率がさがる。あいまいなものを20歳以上のコンテンツと判定する(再現性率を上げる)と、誤って通常のコンテンツも含まれてしまうイメージ。つまり適合率がさがる。
  • F値:2x(適合率x再現率)/(適合率+再現率)。適合率と再現率のバランスをみたいときに利用。
  • 予測確率:分類結果に何%の確率であっているかを出す
  • ROC曲線AUC: ポジティブデータ数とネガティブデータ数にかなり差がある場合、適正なモデルにならない。不均衡データの指標としてAUCを用いる

回帰における評価

  • 平均二乗誤差:実際の値と予測値の差がどれだけあるか。誤差の二条を全て計算し平均をとったもの。この誤差が少ないほど予測が正しい。
  • 決定係数:平均二乗誤差を使って学習したモデルの予測の当てはまり度を示す数値。R2と言われている係数。最大で1、この数値が誤差が一番ない状態。

バッチサイズ

  • ディープラーニングでは、内部的にデータを分けて学習する
  • 異常値の影響を少なくするため
  • 習慣として2のN乗の値が利用される

イテレーション

  • バッチサイズが決まれば自然と決まる
  • 1000件データあり、バッチサイズ200とするとイテレーションは5

エポック数

    1. バッチサイズに従い、データを分割
    1. 分割データ数分、学習を行う
  • 1と2でワンセット。ワンセットをエポックという。
  • 損失関数(コスト関数)が収束するまで、エポックを繰り返す
  • ただし、収束しすぎると過学習がおこる

損失関数

  • 予測と実際の直のずれを表す
  • 直が小さいほど正確なモデル
  • 平均二乗誤差など
  • バッチサイズ: 大きくすると汎化性能が落ちる
  • 学習率: バッチサイズに合わせた最適な学習率を選択。バッチサイズと学習率は比例の関係にあるので、バッチサイズを下げたら学習率も下げる

サンプリング

  • クラス比率が不均衡の場合、データを増やしたり減らしたりしてバランスをとる
  • オーバーサンプリング: 件数が少ないデータを増やす
  • アンダーサンプリング: 件数が多いデータを減らす

不均衡データの学習

  • 目的変数の分布に大きな偏りがあるデータ
  • 滅多に発生しないデータにどうやって対応するモデルを作るのか?
  • 不均衡データでは正解率を上げるのではなく、再現性を上げることが多い(例えば、データが偏っているのでTrueと全て予測すれば正解率があがる)。でも、実際はそうじゃい。
  • アプローチ
    • データレベル:オーバーサンプリング(少ないラベルデータを増やす)またはアンダーサンプリング(多いラベルデータを減らす)を行う。オーバーサンプリングの代表的な手法がSMOTE
    • コスト思考型学習:損失関数にて、誤分類したときの重み付けを多くする
    • 異常検知:教師なし学習で対応する

欠損値データの学習

  • 欠損の種類
    • ランダム欠損
    • 観測データに依存する欠損
    • 欠損データに依存する欠損
  • データ量が単純に多い場合:削除または固定値を入れる
  • データ量が少ない場合:平均値または頻繁値を入れる、平均からばらつきを考慮して値を入れる
  • 多重代入法:欠損値を推定して入れる

ハイパーパラメータ探索

  • ベイズ最適化:形状がわからない関数(ブラックボックス関数)の最大値を求める手法。グリッドサーチより軽量。どこのパラメータが一番精度があがるかを、結果を考慮し探索していく
  • グリッドサーチ: グリッドを作り、交点のパラメータをすべて組みあせて、一つずつ試す。計算数が多くなるので時間がかかる。

モデルの過学習

  • 学習データでの予測は成功、未学習のデータに対する予測がだめ > 学習しすぎている過学習状態
  • 学習データが少ない、変数が多い、パラメータが大きいことが原因
  • 汎化性能が重要
  • 解決策
    • 学習データと検証データに分割する(7:3)学習データ多い6:4、学習データ少ない8:2など工夫する
      • 交差検証(クロスバリデーション):データセット全体に対して、学習用データ・検証用データのパターンを複数用意し、かたよったモデルにならないようにする
    • ベイズ最適化。最大値になる確率や期待値を定義しパラメータを予測する。グリッドサーチに比べてコストが少ない。学習データを増やすの
    • 特徴量削減
    • L1正則化: 変数を減らす lasso
    • L2正則化: 過学習を防ぐ ridge 重みの二乗を足す。変数は減らないので、変数多い場合はモデルが複雑になる
    • アーリーストッピング
    • アンサンブル学習法
    • 特徴量と次元は同義
    • 次元の呪い:特徴量が多いと効率的に学習させるのが難しい 活性化関数
  • ニューラルネットワークにおいて、線の形を司る関数。
  • シグモイド: s字 2値分類
  • ソフトマックス: 二乗曲線 多項分類
  • ReLU: 0以下は0 、0より大きいと入力。プラス値のみを、利用するとき
  • 恒等関数: 入力をそのまま。何も変更しない場合

RecordIO

  • mxnetで利用するデータセットのフォーマット
  • jpg,pngをバイナリに変換
  • データと一緒にラベルも管理できる
  • ディスク容量削減、連続読み取り可能、分散設定が可能になる

学習率

  • 学習するときに動かす最適化関数のパラメータの割合
  • 学習率を低くすると、ちょっとずつ動かすので回数こなす必要あるので時間がかかる。ただし、最適値を見つけやすくなる。
  • 学習率を高くすると、大きく動かすので回数こなさなくても大丈夫。ただし、大まかなため最適値を見逃しやすくなる。

次元削減

  • 説明変数を減らす
  • 例えば体重と身長を二次元でプロット。これを一次元にしたとき、直線は体格をあらわす。次元削減しても体格という軸で見れる。
  • データ圧縮、データの可視化
  • 手法としてPCA(主成分分析)がある

SageMaker組み込みモデル

自然言語処理

BlazingText(Word2Vec)

  • 単語ベクトルを生成し、テキストを分類
  • 似た意味の単語であれば、似たようなベクトルになる
  • 教師あり
  • 用途:単語分類、文章の意味を解析、感情分析、エンティティ認識、機械翻訳など

Sequence to Sequence

潜在的ディリクレ配分(LDA)

  • トピックモデル
  • 教師なし
  • ドキュメントがどういうトピックで構成されているかを調べる
  • 特徴は単語の出現回数、カテゴリはトピック
  • 類似の単語が使われてるドキュメントを分析できる
  • 文書に限らず、さまざまな離散データに隠された潜在的トピックを推定する(画像、音楽情報処理、SNS解析など)

ニューラルトピックモデル(NTM)

  • 教師なし
  • ドキュメントのトピックを抽出
  • ニューラルネットワークを利用
  • 文章分類機の前段で利用
  • 単語ベースのモデル(LDA)よりも、優れたパフォーマンスが期待される

コンピュータビジョン

イメージ分類

オブジェクト検出(SSD: Single Shot MultiBox Detector)

セマンティックセグメンテーション

  • セマンティックとは意味、セグメントの意味を理解する
  • コンピュータビジョン、ピクセルレベルのアプローチ
  • 自動運転、医療用画像診断、ロボットセンシングなど
  • イメージ分類アルゴリズムは、イメージ全体を分析する教師あり
  • オブジェクト検出アルゴリズムは、イメージ内のオブジェクトを全て検出し分類する教師あり。長方形の境界ボックスで示す
  • セマンティックセグメンテーションは、イメージ内の全てのピクセルを分類。オブジェクトの形状を検出。

分類・回帰ハイブリッド

XGBoost

  • 教師あり学習
  • 回帰、分類、ランキングに対応
  • アワビの年齢予測(回帰
  • ハイパーパラメータが豊富
  • ハイパーパラメータ、分類はロジスティック、回帰はライナーかっこいいので線形)

Object2Vec

  • 高次元ベクトルを低次元化し、類似したオブジェクトを近距離に配置する手法。物事の関係性を計算する
  • 動画のレコメンド、ドキュメント分類、文章類似性、自然言語理解、情報検索
  • 分類、回帰に使える
  • 教師あり学習

線形学習

因数分解

  • 分類、回帰
  • 教師あり
  • 高次元データの相互作用を経済的に予測するようにチューニングされている
  • 特定のカテゴリの広告を特定のカテゴリのwebページに配置した時のクリック率の予測

k近傍法(k-NN)

  • 距離が近いデータをk個集め、多数決から目的値を求める。学習にあたる部分がない
  • レコメンドなどで利用される
  • 分類、回帰

データ解析

主成分分析法(PCA)

  • 教師なし
  • データを選択、または新しいデータを作ることで次元を減らす
  • 10科目あるテストで、学生の能力を分析するなどデータ解析に利用
  • 表形式のデータを利用する
  • 2つのモード
    • regular: 疎データと標準的な数の観測および特徴を備えたデータセット
    • randomized: 多数の観測および特徴の両方を備えたデータセット

時系列データの予測

DeepAR

異常検知

IP Insights

  • 教師なし
  • IPv4の使用パターンを学習する
  • ipv4、ユーザーidやアカウントidをキャプチャし、例えば異常なipからのログインを検知
  • 履歴データを取り込みモデルを作る

ランダムカットフォレスト(RCF)

  • 異常なデータポイントを検出する、異常値スコアを返す
  • 教師なしアルゴリズム
  • 時系列データのスパイク、周期性の中断、分類できないデータポイントなどを検出
  • 異常値とは、外れ値建築、変化検知、異常部位検知
  • 異常購入、銀行へのサイバー侵入、MRIスキャンの異常、不正な保険請求、異常な機械動作、ネットワーク侵入検知など

K-Means

  • クラスタリング
  • 教師なし学習
  • 購入履歴や行動データから顧客を分類、類似画像の分類、不正取引検知、ネットワーク侵入検知、嵐を予測するなど収集データの異常検知

Sagnaker 運用

パイプモード

  • s3からストリーミング
  • EBSの消費が少ない
  • 読み込みが高速

ファイルモード

  • EBSにデータをダウンロードしてから処理
  • 容量を消費する
  • 読み込みが遅い

パイプラインモード

  • 前処理を含めた形でモデル作成まで行う
  • 処理A用のコンテナ、処理B用のコンテナ、モデル作成用のコンテナと順番に実行する
  • パイプラインは同じEC2上で処理するのでローカルデータを利用するため、処理が早くなる
  • record io形式だとさらに高速

デプロイ方式

  • 永続エンドポイント:リアルタイム推論。deployメソッド。APIで取得。
  • バッチ変換:データセット全体を推論。create_transform_jobメソッド。結果はS3に保存。
  • ローカルモード: オンプレミスでコンテナを起動し、学習や推論を行う

Amazon ML

コンセプト

  • データソース: データそのものではなく、s3への参照アドレスが保存
  • MLモデル:バイナリ分類、複数クラス分類、回帰の3種類
  • 評価
    • AUC: 不均衡データの指標
    • F1: 正確度と再現率のバランスを見る
    • RMSE: 二乗平均平方根誤差、回帰に対するパフォーマンス評価
    • カットオフ: 数値予測スコアを0と1に丸める
    • Accuracy: 精度。全体に対する予測正解率
    • リコール: 実際の正の合計数に対し、正と予測した割合
  • バッチ予測
    • 全てを一度に予測。リアルタイム性の要件がないものに適用
  • リアルタイム予測

データの分割

  • レーニングデータとテストデータに分ける
  • データの事前分割:自分で好きに分割する
  • シーケンシャル分割:時系列データは順番に取得する
  • ランダム分割:カテゴリ別のデータは、カテゴリごとにランダムに取得する

モデル

  • バイナリ分類(ロジスティック回帰):スパムメールか?購入するか?ボットレビューか?
  • 複数クラス分類(ロジスティック回帰):書籍、映画、衣類か?コメディ、スリラー、ドキュメンタリーか?
  • 回帰モデル(線形回帰):明日の温度は?販売予測は?どれくらいの値段で売れる?

データ変換

  • Nグラム変換:N=1にすると、単語分割 {"I", "really", "enjoyed", "reading", "this", "book"}
  • 直角のスパースなバイグラム(OSB)変換:バイグラム変換(N=2)に変わるもの
  • 小文字変換:文字を小文字にする
  • 句読点除去変換:N=1グラム変換を行い、-や!などを削除する
  • 四分位ビニング変換:
  • 正則化変換:異常値をならす
  • デカルト積変換:

AWS認定 機械学習サンプル問題の日本語メモ

認定試験受けて無事合格しました。サンプル問題が英語だったので、日本語翻訳したのでここに置いておきます。

aws.amazon.com

MLSサンプル問題

1)a Machine Learningチームには、Amazon S3にいくつかの大きなCSVデータセットがあります。歴史的に、構築されたモデル Amazon SageMaker Linear Learnerアルゴリズムを使用すると、同様のサイズのデータ​​セットのトレーニングに数時間かかりました。チームのリーダーはトレーニングプロセスを加速する必要があります。 機械学習スペシャリストは、この懸念に対処するために何ができますか?

  1. Amazon SageMaker Pipeモードを使用します。
  2. Amazon Machine Learningを使用してモデルをトレーニングします。
  3. Amazon Kinesisを使用して、データをAmazon SageMakerにストリーミングします。
  4. AWS Glueを使用して、CSVデータセットJSON形式に変換します。

2)a ユニグラムとバイグラムの両方を使用する用語頻度-逆文書頻度(tf-idf)マトリックスは、次の2つの文で構成されるテキストコーパスから構築されます。 1.以下の番号に電話してください。 2.電話しないでください。 tf–idf行列の次元は何ですか?

A.(2、16) B.(2、8) C(2、10) D.(8、10)

3)b 会社は、Amazon S3に保存されているすべてのデータセットを管理するシステムをセットアップしています。会社は、データでの変換ジョブの実行を自動化し、データセットに関するメタデータのカタログを維持したいと考えています。このソリューションでは、最小限のセットアップとメンテナンスが必要です。 会社が目標を達成できるソリューションはどれですか?

  1. Apache HiveがインストールされたAmazon EMRクラスターを作成します。次に、Hiveメタストアとスクリプトを作成して、スケジュールに従って変換ジョブを実行します。
  2. AWS Glueクローラーを作成して、AWS Glueデータカタログに入力します。次に、AWS Glue ETLを作成します ジョブ、およびデータ変換ジョブのスケジュールを設定します。
  3. Apache SparkがインストールされたAmazon EMRクラスターを作成します。次に、Apache Hiveメタストアを作成します また、スケジュールに従って変換ジョブを実行するスクリプト。 D.データを変換するAWS Data Pipelineを作成します。次に、Apache Hiveメタストアとスクリプトを作成して、スケジュールに従って変換ジョブを実行します。

4)b データサイエンティストは、トレーニングプロセス中に複数のパラメーターを変更することでモデルの最適化に取り組んでいます。データサイエンティストは、同一のパラメーターを使用した複数の実行中に、損失関数が異なるが安定した値に収束することを観察しています。 データサイエンティストは、トレーニングプロセスを改善するために何をすべきですか?

A.学習率を上げます。バッチサイズを同じに保ちます。 B.バッチサイズを小さくします。学習率を下げます。 C.バッチサイズを同じに保ちます。学習率を下げます。 D.学習率を変更しないでください。バッチサイズを増やします。

5)d データサイエンティストは、さまざまなバイナリ分類モデルを評価しています。偽陽性の結果は、偽陰性の結果の5倍(ビジネスの観点から)高くなります。 モデルは、次の基準に基づいて評価する必要があります。 1)80%以上のリコール率が必要 2)10%以下の誤検知率が必要 3)ビジネスコストを最小限に抑える必要がある各バイナリ分類モデルを作成した後、データサイエンティストは対応する混同マトリックスを生成します。 どの混同マトリックスは、要件を満たすモデルを表しますか?

  1. TN = 91、FP = 9 FN = 22、TP = 78
  2. TN = 99、FP = 1 FN = 21、TP = 79
  3. TN = 96、FP = 4 FN = 10、TP = 90
  4. TN = 98、FP = 2 FN = 18、TP = 82

6)b データサイエンティストは、ロジスティック回帰を使用して不正検出モデルを構築します。モデルの精度は99%ですが、不正事例の90%はモデルによって検出されません。 モデルが詐欺事件の10%以上を検出するのに役立つアクションは何ですか?

A.アンダーサンプリングを使用してデータセットのバランスをとる B.クラス確率のしきい値を下げる C.正則化を使用して過剰適合を減らす D.オーバーサンプリングを使用してデータセットのバランスをとる

7)c 企業は、不正行為検出モデルの構築に関心を持っています。現在、データサイエンティストは、不正事例の数が少ないため、十分な量の情報を持っていません。有効な不正事例の最大数を検出する可能性が最も高いのはどの方法ですか?

A.ブートストラップを使用したオーバーサンプリング B.アンダーサンプリング C. SMOTEを使用したオーバーサンプリング D.クラスの重量調整

8)d 機械学習エンジニアは、Amazon SageMaker Linear Learnerアルゴリズムを使用して、教師あり学習タスクのデータフレームを準備しています。 MLエンジニアは、ターゲットラベルクラスが 非常に不均衡で複数の機能列に欠損値が含まれています。データフレーム全体の欠損値の割合は5%未満です。 MLエンジニアは、欠損値によるバイアスを最小限に抑えるために何をすべきですか?

A.各欠損値を、同じ行の非欠損値の平均値または中央値に置き換えます。 B.欠損値がデータの5%未満を表すため、欠損値を含む観測値を削除します。 C.各欠損値を、同じ列の欠損値以外の平均値または中央値で置き換えます。 D.各機能について、他の機能に基づく教師あり学習を使用して欠損値を近似します。

9)b 企業は、決定木を使用して、製品に関する顧客のコメントを収集し、安全または安全でないと評価しました。トレーニング データセットには次の機能があります:id、日付、完全なレビュー、完全なレビューの要約、およびバイナリのセーフ/アンセーフタグ。トレーニング中に、機能が欠落しているデータサンプルは削除されました。いくつかの例では、テストセットに完全なレビューテキストフィールドがないことがわかりました。 このユースケースでは、機能が欠落しているテストデータサンプルに対処するための最も効果的なアクションコースはどれですか?

A.完全なレビューテキストフィールドが欠落しているテストサンプルをドロップし、テストセットを実行します。 B.要約テキストフィールドをコピーし、それらを使用して不足している完全なレビューテキストフィールドに入力し、テストセットを実行します。 C.決定木よりも欠損データをうまく処理するアルゴリズムを使用します。 D.欠落データのあるフィールドに入力する合成データを生成し、テストセットを実行します。

10)d 人間のレビューは費用がかかり、エラーが発生しやすいため、保険会社はクレームコンプライアンスレビューを自動化する必要があります。同社には多数のクレームとコンプライアンスラベルがあります。 各クレームは英語のいくつかの文で構成され、その多くには関連する複雑な文が含まれています 情報。経営陣は、Amazon SageMaker組み込みアルゴリズムを使用して、各クレームを読み取り、クレームが準拠しているかどうかを予測するようにトレーニングできる機械学習監視モデルを設計したいと考えています。 ダウンストリームの監視タスクの入力として使用されるクレームから機能を抽出するには、どのアプローチを使用する必要がありますか?

A.データセット全体のクレームからトークンの辞書を取得します。トレーニングセットの各クレームで見つかったトークンにワンホットエンコーディングを適用します。派生フィーチャスペースを入力としてAmazon SageMakerの組み込みの監視付き学習アルゴリズムに送信します。 B. Word2VecモードでAmazon SageMaker BlazingTextをトレーニングセットのクレームに適用します。派生フィーチャスペースを、ダウンストリームの監視対象タスクの入力として送信します。 C.トレーニングセットのラベル付きクレームに分類モードのAmazon SageMaker BlazingTextを適用して、準拠ラベルと非準拠ラベルにそれぞれ対応するクレームの機能を導出します。 D. Amazon SageMaker Object2Vecをトレーニングセットのクレームに適用します。派生フィーチャスペースを、ダウンストリームの監視対象タスクの入力として送信します。

回答

1) A – Amazon SageMaker Pipeモードは、データを直接コンテナにストリーミングします。これにより、トレーニングジョブのパフォーマンスが向上します。 (サポート情報については、このリンクを参照してください。)パイプモードでは、トレーニングジョブはAmazon S3から直接データをストリーミングします。ストリーミングにより、トレーニングジョブの開始時間が短縮され、スループットが向上します。パイプモードでは、トレーニンインスタンスAmazon EBSボリュームのサイズも削減します。 Bはこのシナリオには適用されません。 Cはストリーミング取り込みソリューションですが、このシナリオには適用できません。 Dはデータ構造を変換します。

2) A – 2つの文、8つのユニークなユニグラム、8つのユニークなバイグラムがあるため、結果は(2,16)になります。の フレーズは「下の番号に電話してください」と「私たちに電話しないでください」です。それぞれの単語(ユニグラム)は、「お願い」、「電話」、「the」、「番号」、「下」、「do」、「ユニークなバイグラムは、「お電話ください」、「お電話ください」、「番号」、「下の番号」、「お願い」、「しない」、「電話しない」、「 tf–idfベクトライザーについては、このリンクで説明しています。

3) B – AWS Glueは、サーバーレスであり、インフラストラクチャの管理を必要としないため、セットアップとメンテナンスの必要量が最も少ないため、正解です。サポート情報については、このリンクを参照してください。 A、C、およびDはすべて問題を解決できるソリューションですが、構成にはより多くの手順が必要であり、実行と保守にはより高い運用オーバーヘッドが必要です

4) B –損失関数は非常に曲線的であり、トレーニングが行き詰まっている複数の極小値を持っている可能性が最も高い。バッチサイズを小さくすると、データサイエンティストは確率的にローカルミニマルサドルから抜け出すことができます。学習率を下げると、グローバル損失関数の最小値をオーバーシュートできなくなります。説明については、このリンクのペーパーを参照してください。

5) D – The following calculations are required:

6) B –クラスの確率のしきい値を下げると、モデルの感度が高くなるため、より多くのケースをポジティブクラスとしてマークします。この場合は不正です。これにより、不正検出の可能性が高まります。ただし、精度を下げるという代償が伴います。これについては、このリンクのホワイトペーパーの「ディスカッション」セクションで説明しています。

7) C –完全に設定されていないデータセットの場合、Synthetic Minority Over-sampling Technique(SMOTE)は、合成データポイントをマイノリティクラスに追加することにより、新しい情報を追加します。このシナリオでは、この手法が最も効果的です。サポート情報については、このリンクのセクション4.2を参照してください。

8) D –教師あり学習を使用して、他の特徴の値に基づいて欠損値を予測します。教師あり学習アプローチによってパフォーマンスが異なる場合がありますが、適切に実装された教師あり学習アプローチでは、応答AおよびCで提案されているように、平均または中央値近似と同等以上の近​​似を提供する必要があります。欠損値の代入に適用される教師あり学習はアクティブなフィールドです研究の。例については、このリンクを参照してください。

9) B –この場合、完全なレビューの要約には通常、レビュー全体の最も記述的なフレーズが含まれており、欠落している完全なレビューテキストフィールドの有効な標準入力です。サポート情報については、このリンクの1627ページ、およびこのリンクとこのリンクを参照してください。

10) D – Amazon SageMaker Object2Vecは、WordsのWord2Vec埋め込み技術を、文章や段落などのより複雑なオブジェクトに一般化します。教師あり学習タスクは、ラベルが存在するクレーム全体のレベルにあり、単語レベルで使用可能なラベルがないため、Word2Vecの代わりにObject2Vecを使用する必要があります。サポート情報については、このリンクとこのリンクを参照してください。

【学習メモ】AWS 認定 Alexa スキルビルダー

無事合格しました。何をインプットしてたかを残しておきます。 まずは、試験要項をみて出題範囲と参考資料がのってるのでそれをインプットとします。これで、ほぼ合格です!w 一番参考になったのがAlexa 道場というYoutube動画ですね。コレ見ながら実際に手を動かすことで、だいたい把握できます。あとは、細かい仕様をドキュメントでみたり、模擬試験受けたり、Developers.IO見たり、手を動かしたりで合格できました。試験勉強は多分2週間くらいで、合計20時間くらいかな?あとはAWSの知識としてLambdaだったり、DynamoDBだったり、IAMだったり、CloudFrontの知識があった方がいいですね。

基本 Alexa道場 - Alexa道場の動画を全部みつつ、実際に手を動かす - 基礎ができるので、あとはDevelopers.IO見たり、Alexa開発ドキュメント読んだり、ひたすら手を動かしていろいろ触ってみる

スキルタイプ - カスタムスキル:例としてはWebサービスの情報を検索、商品を注文、対話ゲームなど、なんでも。画面での操作も作れる。 - スマートホームスキル:照明、ドアロック、カメラ、テレビなど、スマートホーム対応デバイスを制御。機能制限されているが音声UIを独自に作成不要で開発が簡単。Alexa、リビングの照明を付けてでリクエストができる。特定のインテントに対するLambda関数を作成する。呼び出し名を言う必要がない。 - ビデオスキル:ビデオサービスの対応。映画再生、テレビ検索、チャネル切り替え。呼び出し名を言う必要がない。 - フラッシュブリーフィング:ニュースなどのアプリを起動せずとも利用できるスキル。ニュースを教えて、だけでスキルが起動できる(起動の優先順位は、スキルを有効化した順?)。開発者はコンテンツフィードを作成するだけ。呼び出し名を言う必要がない。 - 音楽スキル:音楽をストリーミング再生するスキル。開発者はコンテンツの再生と検索や検索結果を表示するスキルを開発するだけ。 - リストスキル:リスト項目の追加、削除、更新。開発者はリストイベントを受信するエンドポイント、応答するハンドラーを開発する。スキル名でまるまるを再生してという必要がある。

ホスティングタイプ - Lambda、S3、CloudWatch - 独自システム

開発要件 - カスタムスキル:LambdaまたはHTTPSWebサービス。画像、オーディオファイル、ビデオファイルのホスト、S3が楽。テスト用のAlexaデバイス、シュミレータでテストも可。ただし、シュミレータでは対話型に対応していないため、デバイスが必要。 - スマートホームスキル:制御可能なデバイス、Lambda(必須)。テスト用のAlexaデバイス、なければシミュレータでテスト可能。 - ビデオスキル:ビデオサービスプロバイダ。Lambda(必須)。テスト用のAlexaデバイス。シミュレータは使えない。 - フラッシュブリーフィングスキル:RSSまたはJSON - 音楽スキル:Alexaデバイス、音楽ストリーミングサービス、音楽カタログのメタデータ。Lambda(必須)。 - 共通:Node.js, Java, Python, C#, Go

カスタムスキル

スマートホームスキル

フラッシュブリーフィングスキル - RSSのURLを指定するだけで、スキル完成 - スキルを有効にすると「今日の」ニュースは?」でRSSの内容を読んでくれる

音楽スキル - 必要なインテント - 必須:AMAZON.ResumeIntent、AMAZON.PauseIntent - 再生開始 > LaunchRequest、PlayAudioIntent - 次へ、戻す > AMAZON.NextIntent、AMAZON.PreviousIntent - 停止 > AMAZON.CancelIntent、AMAZON.StopIntent、AMAZON.PauseIntent - 再開 > AMAZON.ResumeIntent - ループ、シャッフル > AMAZON.StartOverIntent、AMAZON.LoopOnIntent、AMAZON.LoopOffIntent、AMAZON.ShuffleOnIntent、AMAZON.ShuffleOffIntent - Playback系のリクエスト - リクエスト受けるだけ。speakなどの応答はできない。ログ残すなどの処理を入れる。 - AudioPlayer.PlaybackStarted、AudioPlayer.PlaybackFinished、AudioPlayer.PlaybackStopped - AudioPlayer.PlaybackNearlyFinished > 終了間近に次のキューを書き換えるなどする - AudioPlayer.PlaybackFailed > エラーなので再度再生させる - 画面操作によるリクエスト - PlaybackController.PlayCommandIssued、PlaybackController.NextCommandIssued、PlaybackController.PreviousCommandIssued、PlaybackController.PauseCommandIssued SSML - phoneme > 歌詞 - 発音を指定する(人によって異なる場合のものでも指定できる) - 国産音声記号(IPA),X−SAMPAフォーマットで指定 - prosody > メロディ - 音量、高さ、速さを変更する - emphasis > 強弱 - 強調をlevel(strong, moderate, reduced)で指定する - say-as - 解釈方法を指定 - 文字ごと、数値、分数、単位、日付、時間、電話番号、住所、感嘆、ピー - w - Say-asと類似した働き - Aliasとして動詞、過去分詞、名詞を指定 - amazon:domain - 英語のみ対応 - コンテキストにあった発話 - music、newsを指定できる。 - amazon:effect - ささやき声 - whisperedを指定できる - amazon:emotion - 感情表現 - 感情(name):excited, disappointed - 感情の強さ(intensity):low, medium, high - audio - mp3のURLを指定 - 240秒以内、48kbps - HTTPS(自己署名はNG) - HTLSも指定可能 - break - 休止を入れる - time(s, ms), strength(medium, strongなど)で指定する - lang - 言語を指定する - p - 段落。間をおく。 - s - センテンス - 文の間に一時停止が入る - speak - SSMLを利用するときのタグ - - sub - 単語のを別のフレーズで発音 - aliasで指定 - 例:私が好きな化学元素はAlです。 > Alをアルミニウムと発音。 - voice - 声を指定できる。日本だと、観月さん、匠さん

インテント履歴 - 1日10人以上が利用した場合に、履歴が表示される - 取得できる情報 - 発話 - 信頼度:高中低でインテントの信頼度。低や中を減らすようにインテントのサンプル発話を調整する - 解決されたインテント:実際に振り分けられたインテント - 解決されたスロット:解決されたスロットと値 - ダイアログ:ダイアログモードの場合の欄。情報を引き出すスロット、確認スロット、確認インテントいづれか - 対話モデルタイプ:ONE_SHOT(スキル呼び出しと同うじにインテントへ)、MODAL(スキル呼び出し後の対話でインテントへ)

ダイアログモード(スロットの入力を委譲する) - スロットについてLambda側ではなく、モデル側で入力を完結する - Lambdaのコードがシンプルになる(スロットが入力された前提でコードを書けば良い) - スロットに対し - 必須の値か - 値のバリデーション(以上、以下など) - 再入力を促したり、入力内容を確認したりできる - ダイアログモードのリクエスト - dialogStateがSTARTED、IN_PROGRESS、COMPLETEDのいづれか - COMPLETEDで無ければ、addDelegateDirective()でレスポンスを返す - COMPLETEDの場合は、スロットが埋まった状態になる。処理を任意の処理を実施する。 - ディレクティブ - Dialog.Delegate:フロント側にスロットのやりとりを委譲する - Dialog.ElicitSlot:特定のスロット値についてユーザーに尋ねる。スロット名を指定する。 - Dialog.ConfirmSlot:特定のスロットの値を確認する。スロット名を指定する。 - Dialog.ConfirmIntent:インテントに提供したすべての情報をユーザーに確認する。スロットの指定はしない。speakで全スロットの値を確認する。

アノテーションセット - Alexaスキルの自然言語理解(NLU)モデルの精度を評価するためのツール - 予想される発話をデータ(インデント、スロット)をデータファイル化 > アノテーションセット - NLU評価ツールを使って、想定通りスキルのモデルが動作しているかテストを行う - モデル変更しても過去できていたことができない、などのテストとしても利用できる - 評価したケース数と評価結果を一覧で見ることができる、これは便利

レポート - 概要:セッション数、発話数、呼ばれたインデントの割合など確認できる - カスタマー:アクセス数 - セッション:セッション数、セッションに対する成功、失敗、応答なし - 発話:発話の総数、成功、失敗、応答なし - インデント:それぞれのインデントが処理した総数 - リテンション率:継続利用数 - 対話パス:インデントがどのパスで呼ばれているかを確認する - エンドポイントのレイテンシ:エンドポイントでかかった時間ms - エンドポイントのレスポンス:レスポンスに成功、失敗した数

アカウントリンク - ユーザーIDと別システムのユーザーアカウントを結びつける - スキル詳細ページにアカウントリンクを有効にするボタンが表示される - ランディングページ(ログイン画面)は、スキル所有者が保有するページであること(例えばGoogleのログインページはNG

【読了】詰め合わせぱっく【4冊】

読書したのですが、アウトプットできてなかったのでまとめてアウトプット。読んでから時間経ってしまったので、ほぼ覚えてない。これはよくない。最近インプット要素多めなので、アウトプットモードにチェンジしていきます。

フィンテックエンジニア養成読本 (Software Design plusシリーズ)

フィンテックエンジニア養成読本 (Software Design plusシリーズ)

超筋トレが最強のソリューションである 筋肉が人生を変える超科学的な理由

超筋トレが最強のソリューションである 筋肉が人生を変える超科学的な理由

アマゾンのすごいルール

アマゾンのすごいルール

たった1分で相手をやる気にさせる話術 ペップトーク

たった1分で相手をやる気にさせる話術 ペップトーク

キーファーノイのミニフラップショルダーバッグを買った

近所にテラスモール松戸がオープン。スポーツジムが併設されていて子供が毎週土曜日プールに通ってます。で、プールの間ぶらぶらウィンドウショッピング。小型のショルダーバッグが欲しいなーと思ってたんですが、丁度いいのを発見しました。キーファーノイのミニフラップショルダーバッグです。

f:id:iron_breaker:20191130114820j:plain
キーファーノイ ミニフラップショルダー

iPad Pro 11が丁度入るくらいのサイズで、レザーの質感もとても気に入りました。そして、50%オフの特価で悩んだんですが購入しました。メンテナンスしながら末永く大切に使っていきたいと思います。

f:id:iron_breaker:20191130115034j:plain

f:id:iron_breaker:20191130115105j:plain

f:id:iron_breaker:20191130115121j:plain

パスポートケースをレザークラフト

海外出張控えているので、パスポートケースを作ってみたました。今回は、上質なイタリアンレザーをふんだんに活用してます。こんな感じで仕上がりました。

f:id:iron_breaker:20191008225019j:plain

f:id:iron_breaker:20191008225038j:plain

f:id:iron_breaker:20191008225057j:plain

f:id:iron_breaker:20191008225119j:plain

f:id:iron_breaker:20191008225146j:plain