私の人生の 73% は、Web パフォーマンスについて考えています。低スペックの電話で 60 FPS を達成すること、リソースを順番に読み込むこと、オフラインでキャッシュできるものはすべてキャッシュすることなどです。他にもいくつか最適化があります。 最近、Web パフォーマンスの定義が狭すぎるかもしれないということ、そしてこれらはユーザーの観点から見た Web パフォーマンスのほんの一部に過ぎないということに気付きました。 そこで、よく利用するウェブサイトを開いて、考えられるすべてのユーザー操作を試し、かかった時間を記録しました。 (ユーザー操作用のタイムラインツールが必要です) その後、パフォーマンスを向上させる実行可能な解決策を見つけました。 以下の記事では、特定の Web サイトの具体的な操作手順に焦点を当てています。しかし、このソリューション (そうです、機械学習) は他の多くの種類の Web サイトにも適用できると思います。 質問: どうすれば時間を節約できますか? このウェブサイトは、売り手が役に立たないものを販売し、買い手がそれらのものを購入して価値のあるものを見つけるために使用されます。 販売者がウェブサイトで何かを販売したい場合、まずカテゴリーを選択し、対応するテンプレートを選択し、詳細を入力してプレビューし、最後に公開する必要があります。 しかし、最初のステップであるカテゴリーの選択で、私は遠回りをしてしまいました。 まず、カテゴリーは 674 もあり、あなたの古くてボロボロのカヤックがどのカテゴリーに属するのか全く分かりません (Steve Krug が言ったように、ユーザーに考えさせないでください)。 2 番目のステップでは、アイテムが属するカテゴリ、サブカテゴリ、サブサブカテゴリがわかっているにもかかわらず、少なくとも 12 秒かかります。 ページの読み込み時間を 12 秒短縮できると言ったら、気が狂ったと思われるでしょう。では、その 12 秒をどこか別の場所で節約してみませんか。 ジュリアス・シーザーが言ったように、時間は貴重です。 私は常に、ユーザーの無知は幸福であると信じてきました。製品のタイトル、説明、価格を機械学習モデルに入力すると、システムは製品が属するカテゴリを自動的に計算できるはずです。 これにより、ユーザーはカテゴリを選択する時間を節約できます。彼らはその時間を、Reddit で DIY 二段ベッドを探すことに楽しく費やすことができます。 機械学習 - 逃げるのではなく、受け入れるべきです 最初は機械学習について何も知りませんでした。私がゲーム AI について知ったのは、AlphaGo が人間のトップクラスの囲碁プレイヤーを破った後でした。 それで、私はそれについて学び始めるつもりです。次のいくつかのステップは 1 時間もかかりません。
(著者注:私は機械学習を体系的に研究していないため、記事内の専門用語の一部が誤って使用されている可能性があります。) シンプルな実装プロセス Amazon が機械学習に関するドキュメントを公開しました。この文書に興味がなく、5 時間かけて読む予定がない場合は、私が書いた要約をご覧ください。 要約すると次のようになります。
実際の戦闘シミュレーション 以下は、販売者が情報を公開するためのいくつかの重要なプロセスをシミュレートする、私が作成したフォームです。 以下の結果は、機械学習への興味をさらに深めるものとなるでしょう。信じてください。提案されたカテゴリはディープラーニングシミュレーションによって予測されます。 冷蔵庫を売りましょう。 水槽を売ってみます。 このクラウドロボットは実際に水族館を認識できます! この結果を見たとき、嬉しくて小躍りしてしまいました。素晴らしいと思いませんか? (どのように実装したかをこっそり教えましょう: React、Redux、JQuery、Mox、RxJs、BlueBird、Bootstrap、Sass、Compass、NodeJs、Express、Loadsh。プロジェクトは webpack を使用してパッケージ化されています。最終的に生成されるファイルは約 1 MB です) えーと。もうナンセンスはやめましょう。さあ、本題に入りましょう。 当初は機械学習のためのデータを取得するためでした。私もこれについては頭を悩ませてきました。約10K件のレコードが必要です。その後、地元の取引ウェブサイトでこのデータを見つけました。 URL と DOM 構造を確認した後、Google Scraper プラグインを使用してデータを抽出しました。 CSV ファイルにエクスポートします。このデータに約 4 時間を費やしました。プロジェクト期間のほぼ半分が完了しました。 データが整理された後、Amazon S3 にアップロードされ、機械学習パラメータが設定され、データモデルが設定されました。学習プロセス全体は CPU 上でわずか 3 分しかかかりませんでした。 インターフェースにはリアルタイム予測機能もあるので、いくつかのパラメータでテストしてみるつもりです。 えーと。かなり便利ですよ。 Amazon API をブラウザに公開しないようにするために、API を Node サーバーに配置しました。 バックグラウンドコード(ノード) 使い方はとても簡単です。インターフェース パラメーターは modelId であり、サーバーは予測を返します。
ここでのパラメータは大文字で始まっていますが、これを変更するつもりでした。後で考えた結果、諦めることにしました。 レコードは JSON オブジェクトです。属性値は(タイトル、説明、価格)です 単にコードスニペットを提供するだけでは不十分です。誰もがよりよく理解できるようにするためです。サーバー側のコードをすべて貼り付けました。 server.js:
aws-credentials.json:
(.gitignore 内の /private フォルダは無視してください) バックグラウンドコードはこれだけです。 フロントエンドコード フォーム内のコード機能は比較的単純です。
上記がフロントエンドのコード全体です。 ああ…クラウドサービスは有料です。 急いで帽子をしまわないでください。マジックショーが無料になるなんてあり得ません。 上記で使用したモデル データ (10K 行/4 列) は 6.3 MB です。クラウドは、リクエストの受け入れを待機している間に 6.3 MB のメモリを消費します。これらのリソースのコストは 1 時間あたり 0.0001 ドルです。または年間 8 ドル。 私はこれよりも多くのお金を手袋に使ったことがあります。 予測を行うたびに、0.0001 ドルの費用がかかります。したがって、この API を気軽に呼び出さないでください。 このサービスを提供しているのは Amazon だけではありませんが、他の 2 つの大手メーカーの価格表はまだ見つけていません。 Google には TensorFlow がありますが、入門チュートリアルを見ただけで逃げてしまいました。 Microsoft は機械学習を提供していますが、IE6 はまだ少し気になります (近い将来、Amazon と Microsoft の間で大きな戦いが起こるかもしれません)。 いくつかの結論 ちょっと驚いているだけかもしれませんが(「ニュース」が「新しい」の複数形だと気づいたときのことを今でも覚えています)、これはすべてかなり驚くべきことだと思います。これにより、あなたや私のような一般人(開発への影響力は小さい)が機械学習を詳しく調べることができるようになり、それらのユーザーにとって大きな改善につながる可能性があります。 次はどこへ行く? 上記の例は明らかに不自然なものであり、いくつかのトピックを省略したことは認めます。 できればすべての問題をリストアップしたいのですが、自分でやってみて自分で問題を見つけ出すのも楽しいでしょう。 ぜひ挑戦してみてください。成功したら、ぜひコメント欄で教えてください。 |
>>: 闇の奥:人工知能の奥にはどんな闇が隠されているのか?
はじめに: この記事で紹介するリポジトリには、Python で実装された一般的な機械学習アルゴリズム...
最近、国家インターネット金融セキュリティ技術専門家委員会と上海振聯公司は共同で「ブロックチェーン+A...
6月23日、オーストラリアの量子コンピューティング企業SQC(Silicon Quantum Com...
[[258702]] [51CTO.com クイック翻訳] 機械学習 (ML) と人工知能 (AI)...
昨年後半から、インターネット業界の人々は生活がますます困難になっていると感じています。かつてセルフメ...
2017年5月に世界保健機関が発表したデータによると、世界中で毎年約125万人が交通事故で亡くなって...
[[206273]]人々は 1960 年代から HAL のような SF レベルの AI を...
翻訳者 | ブガッティレビュー | Chonglou最近、ChatGPT は、与えられたあらゆる入力...
ビッグデータダイジェスト制作著者: カレブ氷は地球の盾とも言え、余分な熱を宇宙に反射して地球の地層と...
これまで、多くのメディアがニューラルネットワークの「ブラックボックス」問題について熱く議論してきまし...
[[210219]] 2017 年には、モバイル アプリケーション向けのディープラーニングにおいて大...
機械学習で大規模なデータセットを処理する方法ビッグデータではありません…。データセットは、共通のプロ...