多言語
まず、ユーザーインターフェイス開発に対する最新のUX / UIアプローチの機能を示す例を考えてみましょう。 あなたが世界中の多国籍サービス会社の所有者であるとします。
購入するたびに、顧客に商品のフィードバックをお願いします。 技術的には、現在のソフトウェアは、ユーザーがどの言語をフィードバックしても、製品の「地下室」に無差別に分類されるように編成されています。 問題は、どの言語でレビューが残されているか、その調性は何であるか、そして最良の場合、それをいくつかの言語に翻訳し、元の言語に関係なく、現在のユーザーのすべてのレビューの適切な翻訳を母国語で示す方法の問題です。
今すぐ開発者に連絡すると、ほとんどの場合、言語を選択するタスクをユーザーの肩に割り当てるオプションが提供されます。 おそらく次のようになります
ユーザーは長いリストから言語を選択するように求められ、言語が翻訳なしでリストされる場合があり、これがユーザーを混乱させます。 こんな感じ
ほとんどのユーザーが2つの言語を話すという事実に基づいて、2行だけが明確になります。実際、選択は「拷問」に変わります。
彼らがあなたに提供することができるもう一つの、それほど一般的ではないアプローチは、IPアドレスによる地域の定義であり、その結果、最も可能性の高い共通言語です。 現代のグローバル化の条件は、その欠点を示すための最良のアプローチではありません。あなたの場所の地域に関する現代のソフトウェアの重要性に注意するだけで十分です、この点でモスクワの居住者だけが幸運でした、おそらく彼らの地域は常に正しく決定されています。
機械学習
このような問題を解決するエレガントな方法の1つは、機械学習です。 現在、これは数学に深く熟達している必要さえありません。 たとえば、MS Azure Cognitive Serviceを使用するだけです
入力されたフレーズによって、言語、キーフレーズ、およびその調性を含む、入力されたテキストの多くのインジケータを決定することができます。 検討中のケースでは、これによりインターフェイスが次のように簡素化されます。
入力言語とユーザー評価を要求する必要がなくなりました-これらの事実は自動的に続きます。 その後、地域の支店に通話を配信し、顧客の流出を監視するタスクが大幅に簡素化されます
労力の大部分は、ユーザーと従業員から、疲れることなく、素早く動作し、機械的な面での誤認がはるかに少ないマシンにシフトされます。
認知サービス
まず、MS Azure Cognitive Serviceに接続し、指定されたテキストを分析してその特性を返すAPIにアクセスする必要があります。 このプロセスは複雑ではなく、別の記事で詳しく説明します
HTTPリクエストとクライアントを使用してAPIにアクセスするには、2つの方法があります。 特に、.netの場合は、パッケージを接続する必要があります
APIをさらに呼び出す
var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://northeurope.api.cognitive.microsoft.com/text/analytics/v2.0/languages"); httpWebRequest.Method = "POST"; httpWebRequest.Headers.Add("Content-Type:application/json"); httpWebRequest.Headers.Add("Ocp-Apim-Subscription-Key:61..."); var documents = new Documents(); documents.Add(new Document(Description)); using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { string json = JsonConvert.SerializeObject(documents); streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); }
受信した回答を解析します
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); String response; using (var streamReader = new StreamReader(httpResponse.GetResponseStream(), Encoding.UTF8)) { response = streamReader.ReadToEnd(); } var result = JsonConvert.DeserializeObject<DocumentsResult>(response); var doc = result.documents[0].detectedLanguages[0];
受信したデータをデータベースに書き込むと、次のようになります
(ユーザーが記事にコメントした後に例が追加されます)
結果分析
結果を分析します。このため、配信にオープンソースバージョンが含まれるFastReportソフトウェアパッケージを使用して、いくつかのレポートを作成します。
youtu.be/Tyu7v24zer0
調性(1ポジティブ、0ネガティブ)による並べ替えが含まれ、ポジティブレビューは上部にグループ化され、ネガティブレビューは下部にグループ化されます。
youtu.be/HbuXMuDZFmo
必要に応じて、言語ごとにレビューをグループ化し、関連するレポートを地域単位に送信できます
youtu.be/YF8RG3g5FRs
おわりに
新しいテクノロジーは、ユーザーインターフェイスを大幅に改善するだけでなく、従業員の作業を最適化し、開発コストを削減します。 既存のソフトウェアへの高価な変更を拒否します。 近い将来の機械学習の見通しにより、ソフトウェアの品質とユーザーの満足度が大幅に向上します。 簡単に実装できるレポート作成ソリューションを使用すると、より多くのユーザーがプログラミングをしなくてもデータにアクセスできます。
参照資料
github.com/ufocombat/Languages-open
azure.microsoft.com/en-us/services/cognitive-services/text-analytics
www.fast-report.com/en
youtu.be/Tyu7v24zer0
youtu.be/HbuXMuDZFmo
youtu.be/YF8RG3g5FRs