My favorites | Sign in
Project Home Wiki Source
Checkout   Browse   Changes    
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
1
00:00:00,000 --> 00:00:05,734
Google Wave: Обработка естественных языков.

2
00:00:05,734 --> 00:00:08,234
Вайтлоу: Привет. Я Кэйси Вайтлоу.

3
00:00:08,234 --> 00:00:09,234
Я технический руководитель

4
00:00:09,234 --> 00:00:10,567
группы обработки естественных языков

5
00:00:10,567 --> 00:00:12,501
здесь в Сиднее,
и сегодня я собираюсь немного

6
00:00:12,501 --> 00:00:13,901
поговорить с вами

7
00:00:13,901 --> 00:00:16,601
о тех крутых вещах,
которые мы внедрили в Google Wave.

8
00:00:16,601 --> 00:00:18,834
Одна из главных целей,

9
00:00:18,834 --> 00:00:21,834
преследуемых нами в Google Wave -
это эффективность.

10
00:00:21,834 --> 00:00:23,734
Мы хотим, чтобы пользователи
продолжали эффективно работать

11
00:00:23,734 --> 00:00:25,734
как при чтении,
так и при наборе текста.

12
00:00:25,734 --> 00:00:27,601
Один из способов,
который мы разработали для этой цели

13
00:00:27,601 --> 00:00:29,267
- это наша
система проверки орфографии.

14
00:00:29,267 --> 00:00:32,234
Мы бы хотели, чтобы
пользователи могли

15
00:00:32,234 --> 00:00:34,534
сосредоточиться на том, что они пишут
и не беспокоиться

16
00:00:34,534 --> 00:00:36,801
опечатались они где-нибудь,
или нет.

17
00:00:36,801 --> 00:00:39,000
Мы считаем, что если люди
могли бы чуть-чуть расслабиться

18
00:00:39,000 --> 00:00:41,100
или просто печатать на 5% быстрее,

19
00:00:41,100 --> 00:00:43,400
то они бы тратили
на 5% меньше времени на набор текста.

20
00:00:43,400 --> 00:00:45,734
Итак, я приведу пример.

21
00:00:45,734 --> 00:00:47,801
Это, наверное,
самый легкий способ для объяснения.

22
00:00:47,801 --> 00:00:51,133
Представим, что Вы хотите встретиться
с кем-то из друзей.

23
00:00:51,133 --> 00:00:52,300
Вы договариваетесь о встрече.

24
00:00:52,300 --> 00:00:54,534
И пишете...

25
00:00:54,534 --> 00:00:56,467
[пишет]
Let's [Давай]

26
00:00:56,467 --> 00:00:58,434
met [встретились]...

27
00:00:58,434 --> 00:01:00,067
упс...

28
00:01:00,067 --> 00:01:03,767
tomorrow [завтра].

29
00:01:03,767 --> 00:01:05,567
Вы видите, что
я допустил ошибку

30
00:01:05,567 --> 00:01:07,516
Я тут написал "met" [встретились],
вместо "meet" [встретимся].

31
00:01:07,516 --> 00:01:09,501
Мой палец пропустил букву "e".

32
00:01:09,501 --> 00:01:13,534
Мы реализовали проверку орфографии

33
00:01:13,534 --> 00:01:16,968
путем создания автоматизированного
участника и назвали его Спелли.

34
00:01:16,968 --> 00:01:19,767
Он работает прямо как
ещё один пользователь,

35
00:01:19,767 --> 00:01:21,767
который участвует
в волне наравне с вами

36
00:01:21,767 --> 00:01:24,334
Итак, Спелли на волне
с вами,

37
00:01:24,334 --> 00:01:29,267
и он может увидеть, что вы
написали "Let's met tomorrow"
[Давай встретились завтра]

38
00:01:29,267 --> 00:01:31,367
и попробует проверить
правильность написанного.

39
00:01:31,367 --> 00:01:32,901
По каждому слову...

40
00:01:32,901 --> 00:01:35,534
У него нет никаких
словарей,

41
00:01:35,534 --> 00:01:39,534
так что он не может знать,
правильное ли слово "met" [встретились]

42
00:01:39,534 --> 00:01:40,834
или ошибка.

43
00:01:40,834 --> 00:01:43,100
Для начала он
предлагает список

44
00:01:43,100 --> 00:01:46,634
возможных кандидатов
для исправления этого слова.

45
00:01:46,634 --> 00:01:50,367
Например, это могут быть

46
00:01:50,367 --> 00:01:53,400
"meat" [мясо], т.е. еда...

47
00:01:53,400 --> 00:01:56,868
или "meet" [встретимся], правильный
вариант в нашем случае.

48
00:01:56,868 --> 00:01:59,367
Вы можете придумать ещё
множество подобных вариантов.

49
00:01:59,367 --> 00:02:02,200
Например "set" [установим],
или "net" [сеть],
или "me" [мне] —

50
00:02:02,200 --> 00:02:05,367
все варианты слов,
какие мы могли бы рассматривать,

51
00:02:05,367 --> 00:02:09,200
чтоб понять, что же вы
на самом деле хотели написать.

52
00:02:09,200 --> 00:02:12,734
Мы научились у Интернета,

53
00:02:12,734 --> 00:02:14,934
какого рода опечатки
допускают люди,

54
00:02:14,934 --> 00:02:17,200
и какие варианты более
или менее подходят.

55
00:02:17,200 --> 00:02:18,834
Итак мы понимаем, что,
к примеру,

56
00:02:18,834 --> 00:02:20,634
случайная вставка буквы "a"

57
00:02:20,634 --> 00:02:22,300
вполне вероятна,

58
00:02:22,300 --> 00:02:25,434
а пропуск самой первой буквы слова

59
00:02:25,434 --> 00:02:28,467
менее вероятен
в данном случае.

60
00:02:28,467 --> 00:02:32,667
Итак, у нас есть некие предположения,
и далее мы собираемся

61
00:02:32,667 --> 00:02:34,667
оценить наши предположения
в контексте.

62
00:02:34,667 --> 00:02:38,067
Некоторые сервисы Google уже используют

63
00:02:38,067 --> 00:02:40,434
подобную статистическую
языковую модель,

64
00:02:40,434 --> 00:02:42,467
например, Google Переводчик,

65
00:02:42,467 --> 00:02:44,367
который обрабатывает информацию

66
00:02:44,367 --> 00:02:46,133
о том, как используется язык.

67
00:02:46,133 --> 00:02:47,968
Данные системы обучались Интернетом,

68
00:02:47,968 --> 00:02:49,734
прорабатывая миллиарды веб-страниц,

69
00:02:49,734 --> 00:02:51,217
и дали нам по-настоящему хорошее представление

70
00:02:51,217 --> 00:02:53,734
о том, как же на самом деле
общаются люди.

71
00:02:53,734 --> 00:02:55,434
Далее мы бы оценивали

72
00:02:55,434 --> 00:02:58,834
вероятность правильности предложений
типа "Давай встретились завтра"

73
00:02:58,834 --> 00:03:02,067
и "Давай мясо завтра" - они менее вероятны,

74
00:03:02,067 --> 00:03:03,767
и "Давай встретимся завтра"

75
00:03:03,767 --> 00:03:06,267
которое больше похоже на правду,
нежели предыдущие.

76
00:03:06,267 --> 00:03:08,300
Для этого мы совмещаем статистическую модель
с нашей моделью ошибок,

77
00:03:08,300 --> 00:03:10,200
которая высчитает вероятность каждой
опечатки,

78
00:03:10,200 --> 00:03:13,834
не учитывая контекст, для финального определения

79
00:03:13,834 --> 00:03:15,901
тех слов,

80
00:03:15,901 --> 00:03:19,200
которые вы могли подразумевать при написании.

81
00:03:19,200 --> 00:03:22,000
Так, в данном случае мы бы предложили
"встретимся" [meet].

82
00:03:22,000 --> 00:03:25,467
Как только мы поняли, что в слове ошибка,

83
00:03:25,467 --> 00:03:29,100
мы должны отобразить
эту информацию в Google Wave-клиенте,

84
00:03:29,100 --> 00:03:31,667
чтобы пользователь мог увидеть ее

85
00:03:31,667 --> 00:03:34,701
и исправить ее вручную, либо же автоматически.

86
00:03:34,701 --> 00:03:36,067
Наша система проверки орфографии

87
00:03:36,067 --> 00:03:38,834
несколько отличается от существующих систем.

88
00:03:38,834 --> 00:03:42,000
Одно из отличий в том,
что система работает на сервере.

89
00:03:42,000 --> 00:03:44,100
А это значит, что качество проверки

90
00:03:44,100 --> 00:03:46,033
орфографии не зависит

91
00:03:46,033 --> 00:03:49,434
от того, с какого устройства Вы работаете.

92
00:03:49,434 --> 00:03:52,767
Так что независимо от того, используете ли Вы
стационарный компьютер

93
00:03:52,767 --> 00:03:56,000
или же ноутбук - вы получите такую же
качественную проверку орфографии.

94
00:03:56,000 --> 00:03:57,901
Это же справедливо и в языковом плане,

95
00:03:57,901 --> 00:03:59,467
то есть мы реализовали это

96
00:03:59,467 --> 00:04:01,267
и для других алфавитных языков.

97
00:04:01,267 --> 00:04:06,667
Как я говорил, мы используем огромные
статистические языковые модели.

98
00:04:06,667 --> 00:04:07,801
Под огромными я подразумеваю

99
00:04:07,801 --> 00:04:09,801
модели с миллиардами слов.

100
00:04:09,801 --> 00:04:12,033
Которые вылились в много-много гигабайт данных.

101
00:04:12,033 --> 00:04:15,501
Их невозможно запустить на одной машине,

102
00:04:15,501 --> 00:04:17,601
но это совсем не проблематично в датацентре,

103
00:04:17,601 --> 00:04:19,234
где множество машин работают

104
00:04:19,234 --> 00:04:22,200
над языковой и орфографической моделью вместе.

105
00:04:22,200 --> 00:04:27,167
Более того, мы можем сделать эту орфографическую
систему

106
00:04:27,167 --> 00:04:28,734
доступной всем пользователям,

107
00:04:28,734 --> 00:04:30,767
поэтому стоимость в расчете на пользователя
очень незначительна.

108
00:04:30,767 --> 00:04:33,534
Поэтому для нас это очень выгодно.

109
00:04:33,534 --> 00:04:35,667
После того, как приходит осознание, что
у вас есть система,

110
00:04:35,667 --> 00:04:37,801
которая поддерживает совместное одновременное
редактирование,

111
00:04:37,801 --> 00:04:39,501
которая обладает структурированной моделью
данных,

112
00:04:39,501 --> 00:04:42,667
и что вы можете менять
пользовательский интерфейс,

113
00:04:42,667 --> 00:04:45,167
приглашая удаленных участников,

114
00:04:45,167 --> 00:04:47,200
тогда действительно понимаешь, что
нет предела совершенству.

115
00:04:47,200 --> 00:04:49,434
Я имею ввиду,
что мы можем применять

116
00:04:49,434 --> 00:04:51,367
все существующие технологии обработки
естественных языков,

117
00:04:51,400 --> 00:04:53,100
типа проверки орфографии
или перевода

118
00:04:53,100 --> 00:04:55,667
и продолжаем искать
новые приложения,

119
00:04:55,667 --> 00:04:57,667
так как наши способы и методы
общения постоянно меняются.

120
00:04:57,667 --> 00:05:00,868
Я считаю, нас ждут
по-настоящему удивительные времена.

Change log

r41 by naomi.bilodeau on Aug 8, 2009   Diff
[No log message]
Go to: 
Project members, sign in to write a code review

Older revisions

All revisions of this file

File info

Size: 13153 bytes, 545 lines

File properties

url
http://www.youtube.com/watch?v=Sx3Fpw0XCXk
title
Google Wave: Natural Language Processing
translation-by
habratranslation
Powered by Google Project Hosting