logo
最近の検索
機械学習の勉強歴が半年の初心者が、 Kaggle で銅メダルを取得した話
2022.05.06

機械学習の勉強歴が半年の初心者が、 Kaggle で銅メダルを取得した話

R&D 事業部所属のデータサイエンティスト・機械学習エンジニア見習い(機械学習の勉強歴 約半年)が、 Kaggle の銅メダル*を獲得した手法を、解説していきます。
* 順位は4551人中356位でした

想定する読者

  • Kaggle ? なにそれ、おいしいの?
  • Kaggle の順位が中間以下で、上位入賞するコツを知りたい
  • 機械学習に多少でも触れたことはある

上記に合う人が対象です。 Kaggle 上位ランカー、普段からデータ分析業務に従事されている方にはちょっと物足りないかもしれません。

Kaggle とは

Kaggle (カグル)は、世界中の機械学習・データサイエンスに携わっている人が、データ分析力や機械学習のモデリング力を競い合うコンペティションまたはそのプラットフォームです。最近では、国内でもそれなりに知名度が上がり、日本勢の上位入賞者もちらほら見かけます。
自分のデータ分析力がどのレベルにあるのか、客観的に知ることができるので、興味のある方はぜひ参加してみてください。

Toxic Comment Classification Challenge

ここからは、筆者が銅メダルを獲得したコンテストについて説明します。
Toxic Comment Classification Challenge は、 Alphabet 傘下の Jigsaw が主催する、荒らしコメントを分類するコンペティションです*。 ( *数週間前にこのコンペティションは終了しました。)
Wikipedia の編集議論板で書き込まれた約15万のコメントを1つずつ、“荒らし( toxic )”、“ひどい荒らし ( severe toxic )”、“卑猥( obscene )”、“脅迫( threat )”、“侮辱( insult )”、“個人攻撃( identity_hate )”であるか分類します(下図)。
01
コンペティションの参加者は、上の6種類をどれだけうまく分類できるかを競い合います。今回は、これらをうまく分類できている度合い(スコア)を評価するために、 Area under the curve ( AUC )という指標が用いられています。本記事では AUC について解説いたしませんが、その内容を知りたい方はここが参考になります。
スコアは、以下の流れで採点されます。

  1. 主催者から与えられた訓練データによってモデルを学習させる
  2. 1.で学習済みのモデルからテストデータを入力して推論を行い、出力データを作成する
  3. 作成した推論結果をコンペティションの提出ページにアップロードすることで、 AUC が算出される

ここで採点されたスコアに基づき、 Leaderboard と呼ばれる表に参加者の順位が表示されます。 Learderboard には、 Public Leaderboard と Private Leaderboard の2種類があります。
Public は、コンペティション開催中に表示される順位表であり、テストデータの25%のみから算出されたスコアに基づいて、順位付けされます。 Private は、コンペティション終了後に表示される最終順位であり、残り75%のスコアに基づいて、順位付されます。最終結果は、 Private のスコアが採用されます。
参加者の間では、 Leaderboard に表示されているスコアを" LB "という略語で表現しています。参加者は、この LB スコアと、ローカルのデータ分析環境で算出された交差検証( Cross validation, CV )のスコアを判断材料にして、最終的に投稿する出力データを選定します。

Kernels の手法

Kernels とは、コンペティション参加者が自分のアイディアやソースコードを他の参加者と共有する場です。 Kernels では、機械学習のモデリングは勿論のこと、データ観察方法やデータの前処理・特徴抽出のノウハウがハイレベルに議論されているので、これらを読むだけで最先端のデータ分析技術をキャッチアップできます。
本項では、 Toxic コンペティションで議論の中心になった手法を紹介します。

性能の良いモデルを考える

できるだけ上手く分類できるようなモデル(分類器)を考えます。所謂、正攻法でありコンペティションの意義に合った素直なアプローチです。
以下に、議論されていた手法とその参考文献を列挙します。(ここでは、各種手法に深入りしません。詳細はリンク先の参考文献をご覧ください。)

CapsuleNet といった最新の手法から、 Logistic Regression といった古典的な手法まで、多岐に渡るモデルが検証されていました。スコア( LB )は、アンサンブル学習 > Deep Learning 手法の組み合わせ > GRU, CNN > LSTM > その他 という順で、良好に出ていました。コンペティション残り1~2週間ではだいたいのアプローチは出尽くしていたような気がします。

出力データ同士をブレンドする

モデルから推論された出力データを、適当な配分で足し合わせて、出力データ数で割ることで、新しい出力データを作成する方法です(下図)。つまり、各種手法で求められた推論値のいいとこ取りをしようとする発想です。できるだけ異なる手法同士を組み合わせることで、スコア上昇がしやすくなるようです。(詳細はこちらをご覧ください。)
02
このブレンディングですが、 Kaggle 参加者の間で物議を醸していました。 Kernels で投稿された成果物のタダ乗りに近い行為が、可能になってしまうからです。 Kernels では、モデルを公開した人が、その出力データを添付できるのですが、その出力データを適当に組み合わせてブレンドすることで、簡単に上位層のスコアに食い込めてしまうのです。実際、モデリングの議論が出尽くした残り1~2週間では、 Kernels でブレンド合戦が繰り広げられ、 Public LB ではスコアが僅か0.0002の範囲(0.9871~0.9868)に、約380人(223位~605位)も食い込んでいました(下図)。全員が、 Kernels の出力データを使ったブレンドを行なっているとは思えませんが、相当数の参加者がこの方法に恩恵を受けたのではないかと思います。
03
Kernels を良心的で有意義な共有の場にするためにも、ブレンド手法をとるのであれば、少なくとも自分で学習させたモデルの出力データを使う、という配慮が必要かもしれません。

どうやって銅メダルを獲得したか

ここからは、筆者が取った解法を紹介します。
注目した視点は、入力データを改変する“前処理”と、他者が提案したモデルを良いとこ取りする“モデルの流用”です。筆者が、 Toxic コンペティションへ本格的に参加したのは開催終了日の2週間前でしたので、モデリングの議論はだいたい出尽くしている段階でした。また、最新のモデリング手法の理論を学び、それを使いこなすほどの時間は残されていませんでした。
そこで、自分でできそうなことは、モデリング以外の処理で他者と差をつけることと定め、次のような手法を考えました。

入力データの改変

クリーニング

与えられた入力データをそのまま利用するのではなく、学習の邪魔になりそうな文字列を改変・削除 します。

  • 省略語の変換
    • 例: won’t → will not, I’m → i am 等
  • 絵文字の変換
    • 例: :) → smile, :( → sad 等
  • Emoji、特殊記号の除去
    • 例: 😡→ (なし)、♨️→(なし)等

上記3種類を適用した結果、LBが上昇 しました(具体的な数値は覚えておりません)。しかし、これらの発想は典型的なものであり、恐らくこの部分では他者とあまり差が付かなかったかと思います。

  • 大文字・小文字の扱い

Kernels では、大文字・小文字全てを小文字に統一する手法が主流でした。恐らく、英単語を学習済みワードベクトル (FastText, Glove 等)でタグ付けするときに、(大・小文字関係なく)“同じ単語は同じベクトルとして表現した方が良い性能が出る”と判断したからと推測します。
しかし、英語で大文字を羅列するということは、その “文を強調している” という重要な情報が含まれています(参考)。筆者は、この情報を特徴量として入れようと考え、次のようなルールを定めて大文字・小文字の変換処理を行いました。

  • 単語に2文字以上大文字が含まれている場合は、大文字に変換する。
    • 例: TOXICやToXiC → TOXIC
  • 大文字が2文字未満の場合は、小文字に変換する
    • 例: Toxicやtoxic → toxic

この手法を適用した結果、LBが若干上昇 しました。多少は効果があったようです。

非英語コメントの扱い

与えられた入力データを観察したところ、訓練データに体感1%、テストデータに体感5%の非英語テキスト(下図)が混ざっていました。非英語系テキスト が、ノイズとなっていそうなので、これらを全て英語に翻訳しました。翻訳のソースコードは、 Translation APIpythonクライアントライブラリ を利用して作成しました。
04
この手法を適用した結果、LBが上昇するどころか、若干下降 してしまいました。

入力データの水増し(時間切れ)

前項の翻訳手法を考えているうちに、“英語コメントを別の言語に翻訳して、さらに英語に再翻訳 すればデータの水増しができるのでは?”と考えました。
日本語→英語→日本語の例を示すと、

志摩さんは、冬場に一人でキャンプをするのが趣味です。

Shima is a hobby to camp alone in the winter.

志摩は冬に一人でキャンプする趣味です。

という感じになります。文章が破綻せずに、元の文章とは異なる文を生成できる ことを上手く利用しよう、という発想です。
しかし、この手法はコンペティション終了間際に思い付いたので、実際には検証できませんでした。
実は、この 再翻訳によるデータの水増しはとても有効な手法 であり、(後ほど紹介する)1位チームがこの手法で差をつけたと述べていました!これができていれば、銀メダルを狙えたので物凄く悔しいです。

他者のモデルを良いとこ取りする

Kernels で提案されていた各種 Deep Learning 手法を、並列に掛け合わせたらどうなるか、という検証を行いました。異なる手法から生成された出力データをブレンドすることで、LBが上昇するという知見から、“モデル同士を並列に組んでも効果があるのでは?” と考えました(下図)。(執筆者の調査不足で、このような手法が既に存在しているのかは分かりません。)
05
この手法を適用した結果、 Bi-directional GRU と 2DCNN の組み合わせが最良となり、Public LB が、個々のモデルと比較して 0.0007~0.0009ほど上昇 しました。

簡易的な感度解析によるブレンド最適化

最後に、良いとこ取り手法で生成した出力データと、 Deep Learning を用いないモデルの出力データを組み合わせて、ブレンドを行いました。単純にブレンドすると芸がないので、簡易的な感度解析(感度分析)によってLBの上昇を試みました(例 下図)。
06
簡易的な感度解析の手順は次の通りです。

  1. ランダムに重みの範囲(探索空間)を取り、新しい出力データを多数生成する
  2. 一番良いスコアをとるブレンドデータの重みを基準( Baseline )とする
  3. 重みのうち、“値が相対的に大きいものが、 LB スコアに貢献している”と仮定する
  4. 値が相対的に大きい重みを、0.5倍, 2倍に変化させる
  5. 4.で、スコアがさらに良くなった方に局所最適解が存在すると仮定する
  6. 局所最適解方向に、更に重みを大きく・小さくする
  7. LB スコアが上昇し終えたところが局所最適解の近傍であるとし、2~6で操作した重みをこれ以上動かさないようにする
  8. 他の重みを変化させて、さらに LB スコアの上昇を狙う

つまり、下図のように
発見的に LB の良好な解を探索(手順1, 2)→ LB を表現する関数の勾配方向を推測する(3~5)→ LB スコアの谷(局所最適解)になっていそうな重みの組み合わせを探索する(6~)
という流れで、できる限り LB を上昇させようという試みです。
07

1位の解法

Kaggle では、 discussion 掲示板で上位入賞者が自身の解法を投稿してくれる場合があります。 Toxic コンペでは、1位の人が解法を公開しているので、簡単に内容をみてみましょう。

  • 学習済みモデルを色々変える
    • Common Crawl, Wikipedia, Twitter に対して事前学習したワードベクトル( FastText, Glove )をすべて試したようです。( Public LB 0.9877)
  • 英語の再翻訳
    • 基本的なアイディアは前項で説明したものと変わらないです。英語→仏語→英語、英語→独語→英語、英語→西語→英語の3通りで検証し、テストデータの出力値は平均値を用いたようです。( Public LB 0.9877→ 0.9880)
  • その他
    • Pesuedo-labeling とアンサンブル学習によるスコア向上をとことん突き詰めていました。詳細はソース元を確認ください。( Public LB 0.9880→ 0.9890)

最上位の人は、天才的なアイディアを思いついているわけではなく、データ分析の経験者であれば思いつきそうなアイディアを丁寧に検証していた、という所が意外でした。また、モデルの改良ではなく前処理を重視していた点は、自分の着眼点がそこそこ良い線を行っていたことになるので、自信がつきました。そして、英語の再翻訳が大当たり だったことが嬉しかったのと同時に、これさえやっておけば銀メダルが……という後悔が若干残りました。

まとめ

今回、 Toxic コンペティションに参加して、

  • データ分析の経験者であれば大概思いつきそうなアイディアを、一つ一つ丁寧に検証すれば、スコアは着実に上がる。
  • Kernels を使えば、洗練されていないアイディアでも上位入賞は狙える

という感想を持ちました。つまり、 データ分析としてやるべきことをしっかり行えば、上位入賞どころか最上位も夢ではない と言えます!

おわりに

まずは、最後までお読みいただき、ありがとうございました!
機械学習初心者が Kaggle で銅メダル取った手法を振り返りましたが、いかがでしたでしょうか?本記事を読んだあなたが、“自分でも Kaggle で上位を狙えそう!” と自信を持っていただければ幸いです。
トップゲートでは “Kaggle 部” というサークルがあり、メンバーは積極的に Kaggle のコンペティションに参加し、ノウハウの共有やスコアの競い合いを行なっています。 Kaggle 部員になると、特典としてデータ分析で用いる高性能な Datalab GPU インスタンス環境や Cloud ML Engine, BigQuery などの GCP の環境を自由に使用できます! また、トップゲートには、 ** GCP を活用したデータ分析に強いエンジニアが所属しているので、分からないことがあればいつでも質問できます!**
本記事を読んで、 Kaggle や Kaggle 部について興味を持っていただいた方は、是非とも弊社の門を叩いていただければ幸いです。
採用サイトはこちら



弊社トップゲートでは、Google Cloud (GCP) 利用料3%OFFや支払代行手数料無料、請求書払い可能などGoogle Cloud (GCP)をお得に便利に利用できます。さらに専門的な知見を活かし、

など幅広くあなたのビジネスを加速させるためにサポートをワンストップで対応することが可能です。

Google Workspace(旧G Suite)に関しても、実績に裏付けられた技術力やさまざまな導入支援実績があります。あなたの状況に最適な利用方法の提案から運用のサポートまでのあなたに寄り添ったサポートを実現します!

Google Cloud (GCP)、またはGoogle Workspace(旧G Suite)の導入をご検討をされている方はお気軽にお問い合わせください。

お問合せはこちら


メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
Google Cloud(GCP)、Google Workspace(旧G Suite) 、TOPGATEの最新情報が満載!

メルマガ登録はこちら

ライター

TOPGATE 編集部

Related Article !

View all

クラウドの主流である SaaS とは何か?仕組みやメリットまでわかりやすく解説!

データセンターとは何か?クラウドとの違いや使い分け方法を解説!

データセンターとは何か?クラウドとの違いや使い分け方法を解説!

ビッグデータとは何か?クラウドによるデータ活用事例を紹介!

ビッグデータとは何か?7業種のクラウドによるデータ活用事例をご紹介!

アジャイル開発とウォーターフォール開発との違いとは?自社に合った開発手法の選び方まで徹底解説!

アジャイル開発とウォーターフォール開発との違いとは?自社に合った開発手法の選び方まで徹底解説!

SIer(エスアイヤー)とは何か?業務内容、種類、年収まで徹底解説!

SIer(エスアイヤー)とは何か?業務内容、種類、年収まで徹底解説!

エンジニアってどんな職種?仕事内容、種類、年収を徹底解説!

エンジニアってどんな職種?仕事内容、種類、年収を徹底解説!

Google Cloudの新DBMS、AlloyDB for PostgreSQLを触ってみた Vol.6 (最終回)

Pulumi を Google Cloud で使ってみた

Google Cloudの新DBMS、AlloyDB for PostgreSQLを触ってみた Vol.5

Google Cloudの新DBMS、AlloyDB for PostgreSQLを触ってみた Vol.4

VPN接続の最小構成を例に: アーキテクチャ設計図の効果的な作り方

2023年7月新登場!Google Cloud SQLの最上位エディション「Enterprise Plus」を触ってみた

クラウドファーストとは?クラウド導入のメリットやコストを解説

効率的なデータ活用を実現!データマートの作り方を7ステップでご紹介!

クラウドとオンプレミスの減価償却と会計処理・税務処理について

クラウドとオンプレミスの減価償却と会計処理・税務処理について

コンテナ化とは?仮想化との違いやメリット、デメリット、ユースケースまで詳しく紹介!

クラウドコンピューティングとは何か?仕組みやメリットまで徹底解説!

クラウドコンピューティングとは何か?仕組みやメリットまで徹底解説!

テレワークをするなら知らなきゃ!【Googleのゼロトラスト】BeyondCorp」の特徴、メリットをご紹介!

テレワークをするなら知らなきゃ!【Googleのゼロトラスト】BeyondCorpの特徴、メリットをご紹介!

Google Cloudの新DBMS、AlloyDB for PostgreSQLを触ってみた Vol.3

Google Cloudの新DBMS、AlloyDB for PostgreSQLを触ってみた Vol.2

Google Cloudの新DBMS、AlloyDB for PostgreSQLを触ってみた Vol.1

データベース運用を効率化する SQL とは何か?メリットやデメリット、活用事例まで一挙に紹介!

データベース運用を効率化する SQL とは何か?メリットやデメリット、活用事例まで一挙に紹介!

失敗しないシステム/ソフトウェア開発会社の選び方!判断指標から判断基準まで一挙公開

失敗しないシステム/ソフトウェア開発会社の選び方!判断指標から判断基準まで一挙公開

藤原秀平

目前に迫る! Google Cloud Next ’17 の見どころを TOPGATE エンジニアに訊いてみた

石村真吾

第二弾! Google Cloud Next ’17 の見どころを TOPGATE エンジニアに訊いてみた

新卒エンジニアが日々の学習内容を発信する「ルーキーズブログ」

新卒エンジニアが日々の学習内容を発信する「ルーキーズブログ」を始めます!

REST とは

【GCP入門編・第14回】 Cloud Functions を使ってサーバレスアーキテクチャを体験しよう!

Python と Twitter API でリツイートしたユーザーの情報を取得する

Python と Twitter API でリツイートしたユーザーの情報を取得する

目前に迫る!Google I/O 2018 の見どころを TOPGATE エンジニアに訊いてみた (前編)

目前に迫る!Google I/O 2018 の見どころを TOPGATE エンジニアに訊いてみた (前編)

マイコンで CO2 を計測し、サーバーに計測値を投げるシステムを作る

マイコンで CO2 を計測し、サーバーに計測値を投げるシステムを作る

失敗する確率を大幅に減らすために開発依頼の仕方とフェーズごとのチェックポイント

失敗する確率を大幅に減らすために開発依頼の仕方とフェーズごとのチェックポイント

ITシステム開発における自社開発と委託開発の違いと開発の流れについて一挙公開!

ITシステム開発における自社開発と委託開発の違いと開発の流れについて一挙公開!

優れた開発チームが成功の鍵!ITシステム開発のチーム編成方法と新規メンバーの調達方法とは?

優れた開発チームが成功の鍵!ITシステム開発のチーム編成方法と新規メンバーの調達方法とは?

企業のクラウド化が加速中!クラウド導入のメリットとは?

企業のクラウド化が加速中!クラウド導入のメリットとは?

ランニングコスト削減も可能?開発者が知っておきたいインフラ設計のポイント10選

ランニングコスト削減も可能?開発者が知っておきたいインフラ設計のポイント10選

【徹底解説】ウィズコロナにおけるニューノーマルとクラウド

【徹底解説】ウィズコロナにおけるニューノーマルとクラウド

次世代BIツール「Looker」の概要と導入時の注意点をご紹介!

次世代BIツール「Looker」の概要と導入時の注意点をご紹介!

政府が提唱するクラウド・バイ・デフォルト原則とは?企業における導入メリット6選

政府が提唱するクラウド・バイ・デフォルト原則とは?企業における導入メリット6選

クラウドエンジニアとは何か?仕事内容・必要スキル・資格・将来性を徹底解説!

クラウドエンジニアとは何か?仕事内容・必要スキル・資格・将来性を徹底解説!

クラウドで自社にあったカスタマイズは可能か?オンプレ利用者の悩みを解決!

デジタルトランスフォーメーション(DX)とは?概要と5つの事例をご紹介!

デジタルトランスフォーメーション(DX)とは?概要と5つの事例をご紹介!

クラウドベンダーから自社に最適な提案を引き出す!RFP(提案依頼書)の作成方法とは?

クラウドベンダーから自社に最適な提案を引き出す!RFP(提案依頼書)の作成方法とは?

クラウドネイティブ・アプリケーションとは?メリット、活用例、開発方法まで徹底解説!

クラウドネイティブ・アプリケーションとは?メリット、活用例、開発方法まで徹底解説!

【IoTとは?】ビッグデータ、クラウドとの違いや関係性まで一挙紹介

データ分析の歴史から紐解く!データウェアハウスとデータマートの違いを徹底解説

データ分析の歴史から紐解く!データウェアハウスとデータマートの違いを徹底解説

データレイクとデータウェアハウス(DWH)の違いとは?

データの定義からデータレイクとデータウェアハウス(DWH)の違いをわかりやすく解説!

データ分析基盤の一つであるデータマート概要と設計ポイントをご紹介!

データ分析基盤の一つであるデータマート概要と設計ポイントをご紹介!

クラウドアプリケーション開発とは?普及背景やメリットを解説!

クラウドアプリケーション開発とは?普及背景やメリットを解説!

マネージドサービスとフルマネージドサービスの違いとは?メリット・デメリットまで徹底解説!

マネージドサービスとフルマネージドサービスの違いとは?メリット・デメリットまで徹底解説!

ハイブリッドクラウドにした際のネットワーク構成と注意すべきポイントとは?

ハイブリッドクラウドにした際のネットワーク構成と注意すべきポイントとは?

クラウド化の社内合意を得るためには?説得するための5つのポイントをご紹介!

クラウド化の社内合意を得るためには?説得するための5つのポイントをご紹介!

クラウドインテグレーターとは何か?役割やメリット、会社の選び方まで徹底解説!

クラウドインテグレーターとは何か?役割やメリット、会社の選び方まで徹底解説!

【知らないとマズイ】2025年の崖とは?DXの推進にはクラウド化が必要不可欠!

【知らないとマズイ】2025年の崖とは?DXの推進にはクラウド化が必要不可欠!

【片山さんまだ】オンプレミス、クラウド開発における違いとそれぞれの特徴とは?

オンプレミス、クラウド開発における違いとそれぞれの特徴とは?

【実例つき】クラウド移行で失敗する原因と解決策を紹介

【実例つき】クラウド移行で失敗する原因と解決策を紹介

クラウド移行は費用対効果が重要!ROIで効果を見える化しよう!

クラウド移行は費用対効果が重要!ROIで効果を見える化しよう!

【知って納得!】クラウドの高額請求を避けるための5つの確認項目とは?

【知って納得!】クラウドの高額請求を避けるための5つの確認項目とは?

【あなたは知っている?】AI(人工知能)の仕組み、作り方、活用事例まで徹底解説!

エンジニア教育における課題と効果を出すために大切なポイントとは?

データの活用で生産性向上!「BIツール」と「DWH」や「ETL」との違いとは?

【徹底解説!】人工知能(AI)の機械学習と深層学習の違いとは?

【徹底解説!】人工知能(AI)の機械学習と深層学習の違いとは?

レンタルサーバーとクラウドの違いとは?あらゆる観点から徹底比較!

レンタルサーバーとクラウドの違いとは?あらゆる観点から徹底比較!

【万が一に備えよう】クラウドの高額請求が届いたときの対処法とは?

【万が一に備えよう】クラウドの高額請求が届いたときの対処法とは?

クラウドCoEとは?社内のクラウド推進に必要な考え方を理解しよう!

クラウド導入を成功させるための鍵!クラウドアーキテクトを徹底解説!

クラウド導入を成功させるための鍵!クラウドアーキテクトを徹底解説!

クラウドサービス安全利用には理解必須!情報セキュリティマネジメントガイドラインとは?

クラウドサービス安全利用には理解必須!情報セキュリティマネジメントガイドラインとは?

【会社のセキュリティを強化しよう!】専用線と VPN の違いとは?

専用線と VPN の違いとは?違いを理解して会社のセキュリティを強化しよう!

機械学習の仕組みとは?学習方法や活用事例まで徹底解説!

機械学習の仕組みとは?学習方法や活用事例まで徹底解説!

オンプレよりも安全?クラウドがBCP対策に選ばれる理由とは

オンプレよりも安全?クラウドがBCP対策に選ばれる理由とは

「 Society 5.0」とは何か?新しい社会を支える IT 技術を一挙にご紹介!

「 Society 5.0」とは何か?新しい社会を支える IT 技術を一挙にご紹介!

Cloud IoT Core を使用してセンサー情報を Cloud Storage にストリーミングしてみた!

Cloud IoT Core を使用してセンサー情報を Cloud Storage にストリーミングしてみた!

Flutter とは何か?メリット、デメリット、採用しているプロダクト(アプリ)まで一挙にご紹介!

Flutter とは何か?メリット、デメリット、採用しているプロダクト(アプリ)まで一挙にご紹介!

BI ツールとは何か?メリット、デメリット、活用事例まで、一挙に紹介!

BI ツールとは何か?メリット、デメリット、活用事例まで、一挙に紹介!

負荷分散の重要性とは?ロードバランサーのメリット、デメリット、選び方を徹底解説!

負荷分散の重要性とは?ロードバランサーのメリット、デメリット、選び方を徹底解説!

移行コストがボトルネック?コストを抑えながらオンプレからクラウドに DWH を移行する方法とは?

移行コストがボトルネック?コストを抑えながらオンプレからクラウドに DWH を移行する方法とは?

データウェアハウス( DWH )とデータベースとの違いとは?5つのポイントを理解して最適なサービスを選択しよう!

データウェアハウス( DWH )とデータベースとの違いとは?5つのポイントを理解して最適なサービスを選択しよう!

テレワーク導入には必須!テレワークセキュリティガイドラインとは何か?

【古いシステムからの脱却を!】レガシーシステムが抱える5つの課題とは?

【古いシステムからの脱却を!】レガシーシステムが抱える5つの課題とは?

効率的なデータ活用を実現!分析したデータを有効活用するためのテクニックを4ステップで紹介

効率的なデータ活用を実現!分析したデータを有効活用するためのテクニックを4ステップで紹介

システム担当者必見!オンプレミスからクラウドデータベースへの移行で注意すべき11のポイントとは?

システム担当者必見!オンプレミスからクラウドデータベースへの移行で注意すべき11のポイントとは?

政府が提唱する「デジタル・ガバメント実行計画」とは?民間企業への影響まで徹底解説!

政府が提唱する「デジタル・ガバメント実行計画」とは?民間企業への影響まで徹底解説!

API 活用の最前線に迫る! Apigee の3大活用パターン、国内事例、最新情報まで徹底解説!

Looker で次世代のデータ活用を実現!データの民主化における課題と解決法とは?

Looker で次世代のデータ活用を実現!データの民主化における課題と解決法とは?

図解】Google データポータルとは?機能、導入方法、使い方まで徹底解説!

【図解】Google データポータルとは?機能、導入方法、使い方まで徹底解説!

クラウドサーバーとは何か?導入時のポイントや選び方まで徹底解説!

クラウドサーバーとは何か?導入時のポイントや選び方まで徹底解説!

社内のコラボレーションを加速する Googleグループとは?概要、できること、実際の作り方まで徹底解説!

情報漏えいが起こる原因とは?過去事例や防ぐための方法まで徹底解説!

成功する DXの進め方とは?具体的な手順を9ステップでわかりやすく解説!

Chrome OS で動くビデオ会議システム? Google の最新 AI を搭載した Series One を徹底解説!

【経営者必見!】IT 化が進まないことによるリスクとは?進まない理由や推進するための方法まで徹底解説!

【経営者必見!】IT 化が進まないことによるリスクとは?進まない理由や推進するための方法まで徹底解説!

システム導入に反対する現場を説得するには?ステークホルダーマネジメントと大切な3つのポイントを徹底解説!

システム導入に反対する現場を説得するには?ステークホルダーマネジメントと大切な3つのポイントを徹底解説!

【 IT に強い人材を育てる!】「社員の IT リテラシーを向上させる3つの方法」と「 IT リテラシーが低いことによる5つのリスク」とは?

【 IT に強い人材を育てる!】「社員の IT リテラシーを向上させる3つの方法」と「 IT リテラシーが低いことによる5つのリスク」とは?

IT モダナイゼーションとは?種類、メリット、実現するためのポイントまで徹底解説!

IT モダナイゼーションとは?種類、メリット、実現するためのポイントまで徹底解説!

複数プロジェクト構成の Cloud Monitoring がより使いやすくなりました

複数プロジェクト構成の Cloud Monitoring がより使いやすくなりました

Cloud Run 2020 年のアップデートおさらい

Cloud Run 2020 年のアップデートおさらい

「 Lift & Shift 」 とは?クラウド移行の手順を5ステップで解説!

Lift & Shift とは?クラウド移行の手順を5ステップで解説!

スプレッドシートの定期作業を GAS で自動化する

スプレッドシートの定期作業を GAS で自動化する

Cloud SDK のインストールについて

Cloud SDK のインストールについて

iOS アプリと Android アプリを同時に開発!Flutter とは??

iOS アプリと Android アプリを同時に開発!Flutter とは??

Cloud SDK から VM へ安全に接続する方法

Cloud SDK から VM へ安全に接続する方法

データマネジメントとは何か?成功させるための3つのポイントと具体的な進め方を5ステップで解説!

データドリブン経営とは?実現に向けた4ステップや成功事例まで徹底解説!

Excel作業の属人化を回避する方法とは?組織全体のデータ活用が課題解決の鍵!

Cloud Spanner vs Cloud SQL

Cloud Spanner vs Cloud SQL

データ活用に欠かせないデータクレンジングとは?具体的な方法を4ステップで解説!

BYODとは?導入時のメリットとデメリットや導入時に押さえておきたいポイントを徹底解説

効率的なデータ保護を実現! DLP の概要、機能、メリット、活用事例まで一挙に紹介!

効率的なデータ保護を実現! DLP の概要、機能、メリット、活用事例まで一挙に紹介!

【実況ツイートまとめ】 Google Cloud Next '18 トップゲートエンジニアの3日目

【実況ツイートまとめ】 Google Cloud Next '18 トップゲートエンジニアの3日目

【実況ツイートまとめ】 Google Cloud Next '18 トップゲートエンジニアの2日目

【実況ツイートまとめ】 Google Cloud Next '18 トップゲートエンジニアの2日目

【実況ツイートまとめ】 Google Cloud Next '18 トップゲートエンジニアの1日目

【実況ツイートまとめ】 Google Cloud Next '18 トップゲートエンジニアの1日目

画像

GCP Live November 2014

画像

Managed VMs with Docker

画像

GAE Managed VMs誕生までの歴史を振り返る

画像

GAE ModulesをSimpleに使う

画像

Web Componentsを使ってみよう!

画像

Android Wearアプリケーション開発入門

画像

TypeScriptの型定義ファイルを共有しよう!

画像

Google Cloud Platform Live Report

画像

yeomanを用いてWeb開発を楽にする

画像

Topgate Golang勉強会 Report No.1